==> Synchronizing chroot copy [/home/alhp/workspace/chroot/root] -> [build_d7b77cee-b2a0-4388-b5e5-df3e64c3a9ac]...done ==> Making package: curl 8.15.0-1.1 (Fri Jul 18 09:33:04 2025) ==> Retrieving sources... -> Cloning curl git repo... Cloning into bare repository '/home/alhp/workspace/build/x86-64-v4/curl-8.15.0-1/curl'... ==> Validating source files with sha512sums... curl ... Passed ==> Verifying source file signatures with gpg... curl git repo ... Passed ==> Making package: curl 8.15.0-1.1 (Fri Jul 18 07:33:37 2025) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Installing missing dependencies... resolving dependencies... looking for conflicting packages... Package (9) New Version Net Change core/debuginfod 0.193-2 0.42 MiB core/libmicrohttpd 1.0.2-1 0.61 MiB extra/perl-error 0.17030-2 0.04 MiB extra/perl-mailtools 2.22-2 0.10 MiB extra/perl-timedate 2.33-8 0.08 MiB extra/zlib-ng 2.2.4-1 0.26 MiB extra/git 2.50.1-3 29.40 MiB extra/patchelf 0.18.0-3 0.24 MiB extra/valgrind 3.25.1-1 74.38 MiB Total Installed Size: 105.53 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing perl-error... installing perl-timedate... installing perl-mailtools... installing zlib-ng... installing git... Optional dependencies for git git-zsh-completion: upstream zsh completion tk: gitk and git gui openssh: ssh transport and crypto man: show help with `git command --help` perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-mediawiki-api: git mediawiki support perl-datetime-format-iso8601: git mediawiki support perl-lwp-protocol-https: git mediawiki https support perl-cgi: gitweb (web interface) support python: git svn & git p4 subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] less: the default pager for git installing patchelf... installing libmicrohttpd... installing debuginfod... Optional dependencies for debuginfod elfutils=0.193: for translations installing valgrind... Optional dependencies for valgrind lib32-glibc: 32-bit ABI support [installed] python: cg_* scripts :: Running post-transaction hooks... (1/5) Creating system user accounts... Creating group 'git' with GID 971. Creating user 'git' (git daemon user) with UID 971 and GID 971. (2/5) Reloading system manager configuration... Skipped: Current root is not booted. (3/5) Arming ConditionNeedsUpdate... (4/5) Checking for old perl modules... (5/5) Updating the info directory file... ==> Retrieving sources... ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources... -> Creating working copy of curl git repo... Cloning into 'curl'... done. Switched to a new branch 'makepkg' ==> Starting prepare()... libtoolize: putting auxiliary files in '.'. libtoolize: copying file './ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' libtoolize: Remember to add 'LT_INIT' to configure.ac. configure.ac:128: installing './compile' configure.ac:418: installing './config.guess' configure.ac:418: installing './config.sub' configure.ac:128: installing './install-sh' configure.ac:134: installing './missing' docs/examples/Makefile.am: installing './depcomp' ==> Starting build()... checking whether to enable maintainer-specific portions of Makefiles... no checking whether make supports nested variables... yes checking whether to enable debug build options... no checking whether to enable compiler optimizer... (assumed) yes checking whether to enable strict compiler warnings... no checking whether to enable compiler warnings as errors... no checking whether to enable curl debug memory tracking... no checking whether to enable hiding of library internal symbols... yes checking whether to enable c-ares for DNS lookups... no checking whether to disable dependency on -lrt... (assumed no) checking whether to enable HTTPSRR support... no checking whether to enable ECH support... no checking whether to enable SSL session export support... no checking for path separator... : checking for sed... /usr/bin/sed checking for grep... /usr/bin/grep checking that grep -E works... yes checking for ar... /usr/bin/ar checking for a BSD-compatible install... /usr/bin/install -c checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for stdatomic.h... yes checking if _Atomic is available... yes checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for code coverage support... no checking whether sleep supports fractional seconds... yes checking filesystem timestamp resolution... 0.01 checking whether build environment is sane... yes checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports the include directive... yes (GNU style) checking xargs -n works... yes checking whether UID '1002' is supported by ustar format... yes checking whether GID '1002' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking dependency style of gcc... gcc3 checking curl version... 8.15.0 checking for httpd... no checking for apache2... no checking for apxs... no configure: httpd/apache2 not in PATH, http tests disabled configure: apxs not in PATH, http tests disabled checking for nghttpx... no checking for caddy... no checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for egrep -e... /usr/bin/grep -E checking if OS is AIX (to define _ALL_SOURCE)... no checking if _THREAD_SAFE is already defined... no checking if _THREAD_SAFE is actually needed... no checking if _THREAD_SAFE is onwards defined... no checking if _REENTRANT is already defined... no checking if _REENTRANT is actually needed... no checking if _REENTRANT is onwards defined... no checking for gcc option to enable large file support... none needed checking how to print strings... printf checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for grep that handles long lines and -e... (cached) /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for file... file checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ranlib... ranlib checking for archiver @FILE support... @ checking for strip... strip checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for mt... no checking if : is a manifest tool... no checking for dlfcn.h... yes checking which variant of shared library versioning to provide... (default) aix checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether to build shared libraries with -version-info... yes checking whether to build shared libraries with -no-undefined... no checking whether to build shared libraries with -mimpure-text... no checking whether to build shared libraries with PIC... yes checking whether to build static libraries with PIC... yes checking whether to build shared libraries only... no checking whether to build static libraries only... no checking for windres... no checking if cpp -P is needed... yes checking if cpp -P works... yes checking if compiler is DEC/Compaq/HP C... no checking if compiler is HP-UX C... no checking if compiler is IBM C... no checking if compiler is Intel C... no checking if compiler is clang... no checking if compiler is GNU C... yes checking compiler version... gcc '1501' (raw: '15.1.1') checking if compiler is SunPro C... no checking if compiler is Tiny C... no checking whether build target is a native Windows one... no checking if compiler accepts some basic options... yes configure: compiler options added: -Werror-implicit-function-declaration checking if compiler optimizer assumed setting might be used... no checking if compiler accepts strict warning options... yes configure: compiler options added: -Wno-system-headers checking if compiler halts on compilation errors... yes checking if compiler halts on negative sized arrays... yes checking if compiler halts on function prototype mismatch... yes checking if compiler supports hiding library internal symbols... yes checking whether build target supports Win32 crypto API... no checking whether to build libcurl and curl in "unity" mode... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... yes checking whether to support IPFS... yes checking whether to support ldap... no checking whether to support ldaps... no checking whether to support rtsp... yes checking whether to support proxies... yes checking whether to support dict... yes checking whether to support telnet... yes checking whether to support tftp... yes checking whether to support pop3... yes checking whether to support imap... yes checking whether to support smb... yes checking whether to support smtp... yes checking whether to support gopher... yes checking whether to support mqtt... no checking whether to provide built-in manual... no checking whether to build documentation... yes checking whether to enable generation of C code... yes checking whether to use libgcc... no checking if X/Open network library is required... no checking for gethostbyname... yes checking whether build target is a native Windows one... (cached) no checking for proto/bsdsocket.h... no checking for connect in libraries... yes checking for sys/types.h... (cached) yes checking for monotonic clock_gettime... yes checking for clock_gettime in libraries... no additional lib required checking if monotonic clock_gettime works... yes checking for sys/types.h... (cached) yes checking for raw monotonic clock_gettime... yes checking for pkg-config... /usr/bin/pkg-config checking for zlib options with pkg-config... found checking for zlib.h... yes configure: found both libz and libz.h header checking for BrotliDecoderDecompress in -lbrotlidec... yes checking for brotli/decode.h... yes checking for ZSTD_createDStream in -lzstd... yes checking for zstd.h... yes checking whether to enable IPv6... yes checking if struct sockaddr_in6 has sin6_scope_id member... yes checking if argv can be written to... yes checking if GSS-API support is requested... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking for gss.h... no checking for gssapi/gssapi.h... yes checking for gssapi/gssapi_generic.h... yes checking for gssapi/gssapi_krb5.h... yes checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking if we can link against GSS-API library... yes checking whether to enable Windows native SSL/TLS... no checking whether to enable Amiga native SSL/TLS (AmiSSL v5)... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for openssl options with pkg-config... found configure: pkg-config: SSL_LIBS: "-lssl -lcrypto" configure: pkg-config: SSL_LDFLAGS: "" configure: pkg-config: SSL_CPPFLAGS: "" checking for HMAC_Update in -lcrypto... yes checking for SSL_connect in -lssl... yes checking for openssl/x509.h... yes checking for openssl/rsa.h... yes checking for openssl/crypto.h... yes checking for openssl/pem.h... yes checking for openssl/ssl.h... yes checking for openssl/err.h... yes checking for BoringSSL... no checking for AWS-LC... no checking for LibreSSL... no checking for OpenSSL >= v3... yes checking for SSL_set_quic_use_legacy_codepoint... no checking for SSL_set_quic_tls_cbs... yes configure: OpenSSL with QUIC APIv2 checking for SRP support in OpenSSL... yes checking for QUIC support and OpenSSL >= 3.3... yes configure: built with one SSL backend checking default CA cert bundle/path... /etc/ssl/certs/ca-certificates.crt checking whether to use built-in CA store of SSL library... no checking CA cert bundle path to embed in the curl tool... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for libpsl options with pkg-config... found checking for psl_builtin in -lpsl... yes checking for libpsl.h... yes checking for library containing gsasl_init... no configure: WARNING: libgsasl was not found checking for pkg-config... (cached) /usr/bin/pkg-config checking for libssh2 options with pkg-config... found checking for libssh2_free in -lssh2... yes checking for libssh2.h... yes checking for RTMP_Init in -lrtmp... no checking whether versioned symbols are wanted... yes checking if libraries can be versioned... yes checking whether to build with libidn2... (assumed) yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libidn2 options with pkg-config... found configure: pkg-config: IDN_LIBS: "-lidn2" configure: pkg-config: IDN_LDFLAGS: "" configure: pkg-config: IDN_CPPFLAGS: "" configure: pkg-config: IDN_DIR: "" checking if idn2_lookup_ul can be linked... yes checking for idn2.h... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libnghttp2 options with pkg-config... found configure: -l is -lnghttp2 configure: -I is configure: -L is checking for nghttp2_session_get_stream_local_window_size in -lnghttp2... yes checking for nghttp2/nghttp2.h... yes configure: Added to CURL_LIBRARY_PATH checking for pkg-config... (cached) /usr/bin/pkg-config checking for libnghttp3 options with pkg-config... found configure: -l is -lnghttp3 configure: -I is configure: -L is checking for nghttp3_conn_client_new_versioned in -lnghttp3... yes checking for nghttp3/nghttp3.h... yes configure: Added to CURL_LIBRARY_PATH configure: HTTP3 support is experimental checking for sys/types.h... (cached) yes checking for sys/select.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for arpa/inet.h... yes checking for net/if.h... yes checking for netinet/in.h... yes checking for netinet/in6.h... no checking for sys/un.h... yes checking for linux/tcp.h... yes checking for netinet/tcp.h... yes checking for netinet/udp.h... yes checking for netdb.h... yes checking for sys/sockio.h... no checking for sys/param.h... yes checking for termios.h... yes checking for termio.h... yes checking for fcntl.h... yes checking for io.h... no checking for pwd.h... yes checking for utime.h... yes checking for sys/utime.h... no checking for sys/poll.h... yes checking for poll.h... yes checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for stdint.h... (cached) yes checking for sys/filio.h... no checking for sys/eventfd.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for struct timeval... yes checking run-time libs availability... fine checking size of size_t... 8 checking size of long... 8 checking size of int... 4 checking size of time_t... 8 checking size of off_t... 8 checking size of curl_off_t... 8 checking size of curl_socket_t... 4 checking for long long... yes checking for ssize_t... yes checking for bool... yes checking for sa_family_t... yes checking for suseconds_t... yes checking if time_t is unsigned... no checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for MSG_NOSIGNAL... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking if alarm can be linked... yes checking if alarm is prototyped... yes checking if alarm is compilable... yes checking if alarm usage allowed... yes checking if alarm might be used... yes checking for sys/types.h... (cached) yes checking for strings.h... (cached) yes checking for sys/types.h... (cached) yes checking for libgen.h... (cached) yes checking if basename can be linked... yes checking if basename is prototyped... yes checking if basename is compilable... yes checking if basename usage allowed... yes checking if basename might be used... yes checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking if CloseSocket can be linked... no checking if CloseSocket might be used... no checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for fcntl.h... (cached) yes checking if fcntl can be linked... yes checking if fcntl is prototyped... yes checking if fcntl is compilable... yes checking if fcntl usage allowed... yes checking if fcntl might be used... yes checking if fcntl O_NONBLOCK is compilable... yes checking if fcntl O_NONBLOCK usage allowed... yes checking if fcntl O_NONBLOCK might be used... yes checking whether build target is a native Windows one... (cached) no checking for sys/types.h... (cached) yes checking for netdb.h... (cached) yes checking if freeaddrinfo can be linked... yes checking if freeaddrinfo is prototyped... yes checking if freeaddrinfo is compilable... yes checking if freeaddrinfo usage allowed... yes checking if freeaddrinfo might be used... yes checking for sys/types.h... (cached) yes checking for sys/xattr.h... yes checking if fsetxattr can be linked... yes checking if fsetxattr is prototyped... yes checking if fsetxattr takes 5 args.... yes checking if fsetxattr is compilable... yes checking if fsetxattr usage allowed... yes checking if fsetxattr might be used... yes checking if ftruncate can be linked... yes checking if ftruncate is prototyped... yes checking if ftruncate is compilable... yes checking if ftruncate usage allowed... yes checking if ftruncate might be used... yes checking for sys/types.h... (cached) yes checking if getaddrinfo can be linked... yes checking if getaddrinfo is prototyped... yes checking if getaddrinfo is compilable... yes checking if getaddrinfo seems to work... yes checking if getaddrinfo usage allowed... yes checking if getaddrinfo might be used... yes checking if getaddrinfo is threadsafe... yes checking if gethostbyname_r can be linked... yes checking if gethostbyname_r is prototyped... yes checking if gethostbyname_r takes 3 args.... no checking if gethostbyname_r takes 5 args.... no checking if gethostbyname_r takes 6 args.... yes checking if gethostbyname_r is compilable... yes checking if gethostbyname_r usage allowed... yes checking if gethostbyname_r might be used... yes checking if gethostname can be linked... yes checking if gethostname is prototyped... yes checking if gethostname is compilable... yes checking for gethostname arg 2 data type... size_t checking if gethostname usage allowed... yes checking if gethostname might be used... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for ifaddrs.h... yes checking if getifaddrs can be linked... yes checking if getifaddrs is prototyped... yes checking if getifaddrs is compilable... yes checking if getifaddrs seems to work... yes checking if getifaddrs usage allowed... yes checking if getifaddrs might be used... yes checking if getpeername can be linked... yes checking if getpeername is prototyped... yes checking if getpeername is compilable... yes checking if getpeername usage allowed... yes checking if getpeername might be used... yes checking if getsockname can be linked... yes checking if getsockname is prototyped... yes checking if getsockname is compilable... yes checking if getsockname usage allowed... yes checking if getsockname might be used... yes checking for sys/types.h... (cached) yes checking if gmtime_r can be linked... yes checking if gmtime_r is prototyped... yes checking if gmtime_r is compilable... yes checking if gmtime_r seems to work... yes checking if gmtime_r usage allowed... yes checking if gmtime_r might be used... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/ioctl.h... (cached) yes checking for stropts.h... no checking if ioctl can be linked... yes checking if ioctl is prototyped... yes checking if ioctl is compilable... yes checking if ioctl usage allowed... yes checking if ioctl might be used... yes checking if ioctl FIONBIO is compilable... yes checking if ioctl FIONBIO usage allowed... yes checking if ioctl FIONBIO might be used... yes checking if ioctl SIOCGIFADDR is compilable... yes checking if ioctl SIOCGIFADDR usage allowed... yes checking if ioctl SIOCGIFADDR might be used... yes checking if ioctlsocket can be linked... no checking if ioctlsocket might be used... no checking if IoctlSocket can be linked... no checking if IoctlSocket might be used... no checking if memrchr can be linked... yes checking if memrchr is prototyped... yes checking if memrchr is compilable... yes checking if memrchr usage allowed... yes checking if memrchr might be used... yes checking for sys/types.h... (cached) yes checking if sigaction can be linked... yes checking if sigaction is prototyped... yes checking if sigaction is compilable... yes checking if sigaction usage allowed... yes checking if sigaction might be used... yes checking if siginterrupt can be linked... yes checking if siginterrupt is prototyped... yes checking if siginterrupt is compilable... yes checking if siginterrupt usage allowed... yes checking if siginterrupt might be used... yes checking if signal can be linked... yes checking if signal is prototyped... yes checking if signal is compilable... yes checking if signal usage allowed... yes checking if signal might be used... yes checking for sys/types.h... (cached) yes checking if sigsetjmp can be linked... no checking if sigsetjmp seems a macro... yes checking if sigsetjmp is compilable... yes checking if sigsetjmp usage allowed... yes checking if sigsetjmp might be used... yes checking if socket can be linked... yes checking if socket is prototyped... yes checking if socket is compilable... yes checking if socket usage allowed... yes checking if socket might be used... yes checking if socketpair can be linked... yes checking if socketpair is prototyped... yes checking if socketpair is compilable... yes checking if socketpair usage allowed... yes checking if socketpair might be used... yes checking if strdup can be linked... yes checking if strdup is prototyped... yes checking if strdup is compilable... yes checking if strdup usage allowed... yes checking if strdup might be used... yes checking if strerror_r can be linked... yes checking if strerror_r is prototyped... yes checking if strerror_r is compilable... yes checking if strerror_r is glibc like... yes checking if strerror_r seems to work... yes checking if strerror_r usage allowed... yes checking if strerror_r might be used... yes checking for accept4... yes checking for eventfd... yes checking for fnmatch... yes checking for geteuid... yes checking for getpass_r... no checking for getppid... yes checking for getpwuid... yes checking for getpwuid_r... yes checking for getrlimit... yes checking for gettimeofday... yes checking for if_nametoindex... yes checking for mach_absolute_time... no checking for pipe... yes checking for pipe2... yes checking for poll... yes checking for sendmmsg... yes checking for sendmsg... yes checking for setlocale... yes checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes checking for realpath... yes checking for sched_yield... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for arpa/inet.h... (cached) yes checking if inet_ntop can be linked... yes checking if inet_ntop is prototyped... yes checking if inet_ntop is compilable... yes checking if inet_ntop seems to work... yes checking if inet_ntop usage allowed... yes checking if inet_ntop might be used... yes checking if inet_pton can be linked... yes checking if inet_pton is prototyped... yes checking if inet_pton is compilable... yes checking if inet_pton seems to work... yes checking if inet_pton usage allowed... yes checking if inet_pton might be used... yes checking if strcasecmp can be linked... yes checking if strcasecmp is prototyped... yes checking if strcasecmp is compilable... yes checking if strcasecmp usage allowed... yes checking if strcasecmp might be used... yes checking if strcmpi can be linked... no checking if strcmpi might be used... no checking if stricmp can be linked... no checking if stricmp might be used... no checking for setmode... no checking for fseeko... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether fseeko is declared... yes checking how to set a socket into non-blocking mode... fcntl O_NONBLOCK checking for perl... /usr/bin/perl checking whether to enable the threaded resolver... yes checking for pthread.h... yes checking for pthread_create... yes checking for dirent.h... yes checking for opendir... yes checking convert -I options to -isystem... yes checking whether to enable verbose strings... yes checking whether to enable SSPI support (Windows native builds only)... no checking whether to enable basic authentication method... yes checking whether to enable bearer authentication method... yes checking whether to enable digest authentication method... yes checking whether to enable kerberos authentication method... yes checking whether to enable negotiate authentication method... yes checking whether to enable aws sig methods... yes checking whether to support NTLM... yes checking whether to enable TLS-SRP authentication... yes checking whether to enable Unix domain sockets... auto checking for struct sockaddr_un.sun_path... yes checking whether to support cookies... yes checking whether to support socketpair... yes checking whether to support HTTP authentication... yes checking whether to support DoH... yes checking whether to support the MIME API... yes checking whether to support binding connections locally... yes checking whether to support the form API... yes checking whether to support date parsing... yes checking whether to support netrc parsing... yes checking whether to support progress-meter... yes checking whether to support the SHA-512/256 hash algorithm... yes checking whether to support DNS shuffling... yes checking whether to support curl_easy_option*... yes checking whether to support alt-svc... yes checking whether to support headers-api... yes checking whether to support HSTS... yes checking whether to enable HTTPS-RR support... no checking for SSL_set0_wbio... yes checking whether to support WebSockets... yes checking whether hiding of library internal symbols will actually happen... yes checking if this build supports HTTPS-proxy... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating docs/Makefile config.status: creating docs/examples/Makefile config.status: creating docs/libcurl/Makefile config.status: creating docs/libcurl/opts/Makefile config.status: creating docs/cmdline-opts/Makefile config.status: creating include/Makefile config.status: creating include/curl/Makefile config.status: creating src/Makefile config.status: creating lib/Makefile config.status: creating scripts/Makefile config.status: creating lib/libcurl.vers config.status: creating tests/Makefile config.status: creating tests/config config.status: creating tests/configurehelp.pm config.status: creating tests/certs/Makefile config.status: creating tests/data/Makefile config.status: creating tests/server/Makefile config.status: creating tests/libtest/Makefile config.status: creating tests/unit/Makefile config.status: creating tests/tunit/Makefile config.status: creating tests/client/Makefile config.status: creating tests/http/config.ini config.status: creating tests/http/Makefile config.status: creating packages/Makefile config.status: creating packages/vms/Makefile config.status: creating curl-config config.status: creating libcurl.pc config.status: creating lib/curl_config.h config.status: executing depfiles commands config.status: executing libtool commands configure: Configured to build curl/libcurl: Host setup: x86_64-pc-linux-gnu Install prefix: /usr Compiler: gcc CFLAGS: -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/curl -flto=auto -falign-functions=32 -Werror-implicit-function-declaration -Wno-system-headers CFLAGS extras: CPPFLAGS: -D_GNU_SOURCE LDFLAGS: -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -falign-functions=32 curl-config: LIBS: -lnghttp3 -lnghttp2 -lidn2 -lssh2 -lssh2 -lpsl -lssl -lcrypto -lssl -lcrypto -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.15.0 SSL: enabled (OpenSSL v3+) SSH: enabled (libssh2) zlib: enabled brotli: enabled (libbrotlidec) zstd: enabled (libzstd) GSS-API: enabled (MIT Kerberos/Heimdal) GSASL: no (libgsasl not found) TLS-SRP: enabled resolver: POSIX threaded IPv6: enabled Unix sockets: enabled IDN: enabled (libidn2) Build docs: enabled (--disable-docs) Build libcurl: Shared=yes, Static=yes Built-in manual: no (--enable-manual) --libcurl option: enabled (--disable-libcurl-option) Verbose errors: enabled (--disable-verbose) Code coverage: disabled SSPI: no (--enable-sspi) ca cert bundle: /etc/ssl/certs/ca-certificates.crt ca cert path: no ca cert embed: no ca fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) IPFS/IPNS: enabled RTSP: enabled RTMP: no (--with-librtmp) PSL: enabled Alt-svc: enabled (--disable-alt-svc) Headers API: enabled (--disable-headers-api) HSTS: enabled (--disable-hsts) HTTP1: enabled (internal) HTTP2: enabled (nghttp2) HTTP3: enabled (openssl + nghttp3) ECH: no (--enable-ech) HTTPS RR: no (--enable-httpsrr) SSLS-EXPORT: no (--enable-ssls-export) Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd configure: WARNING: HTTP3 is enabled but marked EXPERIMENTAL. Use with caution! Making all in lib make[1]: Entering directory '/startdir/src/build-curl/lib' make all-am make[2]: Entering directory '/startdir/src/build-curl/lib' CC libcurl_la-amigaos.lo CC libcurl_la-altsvc.lo CC libcurl_la-asyn-base.lo CC libcurl_la-asyn-ares.lo CC libcurl_la-asyn-thrdd.lo CC libcurl_la-bufq.lo CC libcurl_la-bufref.lo CC libcurl_la-cf-h1-proxy.lo CC libcurl_la-cf-h2-proxy.lo CC libcurl_la-cf-haproxy.lo CC libcurl_la-cf-https-connect.lo CC libcurl_la-cf-socket.lo CC libcurl_la-cfilters.lo CC libcurl_la-conncache.lo CC libcurl_la-connect.lo CC libcurl_la-content_encoding.lo CC libcurl_la-cookie.lo CC libcurl_la-cshutdn.lo CC libcurl_la-curl_addrinfo.lo CC libcurl_la-curl_des.lo CC libcurl_la-curl_endian.lo CC libcurl_la-curl_fnmatch.lo CC libcurl_la-curl_get_line.lo CC libcurl_la-curl_gethostname.lo CC libcurl_la-curl_gssapi.lo CC libcurl_la-curl_memrchr.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_range.lo CC libcurl_la-curl_rtmp.lo CC libcurl_la-curl_sasl.lo CC libcurl_la-curl_sha512_256.lo CC libcurl_la-curl_sspi.lo CC libcurl_la-curl_threads.lo CC libcurl_la-curl_trc.lo CC libcurl_la-cw-out.lo CC libcurl_la-cw-pause.lo CC libcurl_la-dict.lo CC libcurl_la-doh.lo CC libcurl_la-dynhds.lo CC libcurl_la-easy.lo CC libcurl_la-easyoptions.lo CC libcurl_la-easygetopt.lo CC libcurl_la-escape.lo CC libcurl_la-fake_addrinfo.lo CC libcurl_la-file.lo CC libcurl_la-fileinfo.lo CC libcurl_la-fopen.lo CC libcurl_la-formdata.lo CC libcurl_la-ftp.lo CC libcurl_la-ftplistparser.lo CC libcurl_la-getenv.lo CC libcurl_la-getinfo.lo CC libcurl_la-gopher.lo CC libcurl_la-hash.lo CC libcurl_la-headers.lo CC libcurl_la-hmac.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostip6.lo CC libcurl_la-hsts.lo CC libcurl_la-http.lo CC libcurl_la-http1.lo CC libcurl_la-http2.lo CC libcurl_la-http_aws_sigv4.lo CC libcurl_la-http_chunks.lo CC libcurl_la-http_digest.lo CC libcurl_la-http_negotiate.lo CC libcurl_la-http_ntlm.lo CC libcurl_la-http_proxy.lo CC libcurl_la-httpsrr.lo CC libcurl_la-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-krb5.lo CC libcurl_la-ldap.lo CC libcurl_la-llist.lo CC libcurl_la-macos.lo CC libcurl_la-md4.lo CC libcurl_la-md5.lo CC libcurl_la-memdebug.lo CC libcurl_la-mime.lo CC libcurl_la-mprintf.lo CC libcurl_la-mqtt.lo CC libcurl_la-multi.lo CC libcurl_la-multi_ev.lo CC libcurl_la-netrc.lo CC libcurl_la-noproxy.lo CC libcurl_la-openldap.lo CC libcurl_la-parsedate.lo CC libcurl_la-pingpong.lo CC libcurl_la-pop3.lo CC libcurl_la-progress.lo CC libcurl_la-psl.lo CC libcurl_la-rand.lo CC libcurl_la-rename.lo CC libcurl_la-request.lo CC libcurl_la-rtsp.lo CC libcurl_la-select.lo CC libcurl_la-sendf.lo CC libcurl_la-setopt.lo CC libcurl_la-sha256.lo CC libcurl_la-share.lo CC libcurl_la-slist.lo CC libcurl_la-smb.lo CC libcurl_la-smtp.lo CC libcurl_la-socketpair.lo CC libcurl_la-socks.lo CC libcurl_la-socks_gssapi.lo CC libcurl_la-socks_sspi.lo CC libcurl_la-speedcheck.lo CC libcurl_la-splay.lo CC libcurl_la-strcase.lo CC libcurl_la-strdup.lo CC libcurl_la-strequal.lo CC libcurl_la-strerror.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-transfer.lo CC libcurl_la-uint-bset.lo CC libcurl_la-uint-hash.lo CC libcurl_la-uint-spbset.lo CC libcurl_la-uint-table.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-ws.lo CC libcurlu_la-amigaos.lo CC libcurlu_la-altsvc.lo CC libcurlu_la-asyn-ares.lo CC libcurlu_la-asyn-base.lo CC libcurlu_la-asyn-thrdd.lo CC libcurlu_la-bufq.lo CC libcurlu_la-bufref.lo CC libcurlu_la-cf-h1-proxy.lo CC libcurlu_la-cf-h2-proxy.lo CC libcurlu_la-cf-haproxy.lo CC libcurlu_la-cf-https-connect.lo CC libcurlu_la-cf-socket.lo CC libcurlu_la-cfilters.lo CC libcurlu_la-conncache.lo CC libcurlu_la-connect.lo CC libcurlu_la-content_encoding.lo CC libcurlu_la-cookie.lo CC libcurlu_la-cshutdn.lo CC libcurlu_la-curl_addrinfo.lo CC libcurlu_la-curl_des.lo CC libcurlu_la-curl_endian.lo CC libcurlu_la-curl_fnmatch.lo CC libcurlu_la-curl_get_line.lo CC libcurlu_la-curl_gethostname.lo CC libcurlu_la-curl_gssapi.lo CC libcurlu_la-curl_memrchr.lo CC libcurlu_la-curl_ntlm_core.lo CC libcurlu_la-curl_range.lo CC libcurlu_la-curl_rtmp.lo CC libcurlu_la-curl_sasl.lo CC libcurlu_la-curl_sha512_256.lo CC libcurlu_la-curl_sspi.lo CC libcurlu_la-curl_threads.lo CC libcurlu_la-curl_trc.lo CC libcurlu_la-cw-out.lo CC libcurlu_la-cw-pause.lo CC libcurlu_la-dict.lo CC libcurlu_la-doh.lo CC libcurlu_la-dynhds.lo CC libcurlu_la-easy.lo CC libcurlu_la-easygetopt.lo CC libcurlu_la-easyoptions.lo CC libcurlu_la-escape.lo CC libcurlu_la-fake_addrinfo.lo CC libcurlu_la-file.lo CC libcurlu_la-fileinfo.lo CC libcurlu_la-fopen.lo CC libcurlu_la-formdata.lo CC libcurlu_la-ftp.lo CC libcurlu_la-ftplistparser.lo CC libcurlu_la-getenv.lo CC libcurlu_la-getinfo.lo CC libcurlu_la-gopher.lo CC libcurlu_la-hash.lo CC libcurlu_la-headers.lo CC libcurlu_la-hmac.lo CC libcurlu_la-hostip.lo CC libcurlu_la-hostip4.lo CC libcurlu_la-hostip6.lo CC libcurlu_la-hsts.lo CC libcurlu_la-http.lo CC libcurlu_la-http1.lo CC libcurlu_la-http2.lo CC libcurlu_la-http_aws_sigv4.lo CC libcurlu_la-http_chunks.lo CC libcurlu_la-http_digest.lo CC libcurlu_la-http_negotiate.lo CC libcurlu_la-http_ntlm.lo CC libcurlu_la-http_proxy.lo CC libcurlu_la-httpsrr.lo CC libcurlu_la-idn.lo CC libcurlu_la-if2ip.lo CC libcurlu_la-imap.lo CC libcurlu_la-krb5.lo CC libcurlu_la-ldap.lo CC libcurlu_la-llist.lo CC libcurlu_la-macos.lo CC libcurlu_la-md4.lo CC libcurlu_la-md5.lo CC libcurlu_la-memdebug.lo CC libcurlu_la-mime.lo CC libcurlu_la-mprintf.lo CC libcurlu_la-mqtt.lo CC libcurlu_la-multi.lo CC libcurlu_la-multi_ev.lo CC libcurlu_la-netrc.lo CC libcurlu_la-noproxy.lo CC libcurlu_la-openldap.lo CC libcurlu_la-parsedate.lo CC libcurlu_la-pingpong.lo CC libcurlu_la-pop3.lo CC libcurlu_la-progress.lo CC libcurlu_la-psl.lo CC libcurlu_la-rand.lo CC libcurlu_la-rename.lo CC libcurlu_la-request.lo CC libcurlu_la-rtsp.lo CC libcurlu_la-select.lo CC libcurlu_la-sendf.lo CC libcurlu_la-setopt.lo CC libcurlu_la-sha256.lo CC libcurlu_la-share.lo CC libcurlu_la-slist.lo CC libcurlu_la-smb.lo CC libcurlu_la-smtp.lo CC libcurlu_la-socketpair.lo CC libcurlu_la-socks.lo CC libcurlu_la-socks_gssapi.lo CC libcurlu_la-socks_sspi.lo CC libcurlu_la-speedcheck.lo CC libcurlu_la-splay.lo CC libcurlu_la-strcase.lo CC libcurlu_la-strdup.lo CC libcurlu_la-strequal.lo CC libcurlu_la-strerror.lo CC libcurlu_la-system_win32.lo CC libcurlu_la-telnet.lo CC libcurlu_la-tftp.lo CC libcurlu_la-transfer.lo CC libcurlu_la-uint-bset.lo CC libcurlu_la-uint-hash.lo CC libcurlu_la-uint-spbset.lo CC libcurlu_la-uint-table.lo CC libcurlu_la-url.lo CC libcurlu_la-urlapi.lo CC libcurlu_la-version.lo CC libcurlu_la-ws.lo CC vauth/libcurlu_la-cleartext.lo CC vauth/libcurlu_la-cram.lo CC vauth/libcurlu_la-digest.lo CC vauth/libcurlu_la-digest_sspi.lo CC vauth/libcurlu_la-gsasl.lo CC vauth/libcurlu_la-krb5_gssapi.lo CC vauth/libcurlu_la-krb5_sspi.lo CC vauth/libcurlu_la-ntlm.lo CC vauth/libcurlu_la-ntlm_sspi.lo CC vauth/libcurlu_la-oauth2.lo CC vauth/libcurlu_la-spnego_gssapi.lo CC vauth/libcurlu_la-spnego_sspi.lo CC vauth/libcurlu_la-vauth.lo CC vtls/libcurlu_la-cipher_suite.lo CC vtls/libcurlu_la-gtls.lo CC vtls/libcurlu_la-hostcheck.lo CC vtls/libcurlu_la-keylog.lo CC vtls/libcurlu_la-mbedtls.lo CC vtls/libcurlu_la-mbedtls_threadlock.lo CC vtls/libcurlu_la-openssl.lo CC vtls/libcurlu_la-rustls.lo CC vtls/libcurlu_la-schannel.lo CC vtls/libcurlu_la-schannel_verify.lo CC vtls/libcurlu_la-vtls.lo CC vtls/libcurlu_la-vtls_scache.lo CC vtls/libcurlu_la-vtls_spack.lo CC vtls/libcurlu_la-wolfssl.lo CC vtls/libcurlu_la-x509asn1.lo CC vquic/libcurlu_la-curl_msh3.lo CC vquic/libcurlu_la-curl_ngtcp2.lo CC vquic/libcurlu_la-curl_osslq.lo CC vquic/libcurlu_la-curl_quiche.lo CC vquic/libcurlu_la-vquic.lo CC vquic/libcurlu_la-vquic-tls.lo CC vssh/libcurlu_la-libssh.lo CC vssh/libcurlu_la-libssh2.lo CC vssh/libcurlu_la-curl_path.lo CC vssh/libcurlu_la-wolfssh.lo CC curlx/libcurlu_la-base64.lo CC curlx/libcurlu_la-dynbuf.lo CC curlx/libcurlu_la-inet_ntop.lo CC curlx/libcurlu_la-inet_pton.lo CC curlx/libcurlu_la-multibyte.lo CC curlx/libcurlu_la-nonblock.lo CC curlx/libcurlu_la-strparse.lo CC curlx/libcurlu_la-timediff.lo CC curlx/libcurlu_la-timeval.lo CC curlx/libcurlu_la-version_win32.lo CC curlx/libcurlu_la-wait.lo CC curlx/libcurlu_la-warnless.lo CC curlx/libcurlu_la-winapi.lo UNITPR unitprotos.h CC vauth/libcurl_la-cleartext.lo CC vauth/libcurl_la-cram.lo CC vauth/libcurl_la-digest.lo CC vauth/libcurl_la-digest_sspi.lo CC vauth/libcurl_la-gsasl.lo CC vauth/libcurl_la-krb5_gssapi.lo CC vauth/libcurl_la-krb5_sspi.lo CC vauth/libcurl_la-ntlm.lo CC vauth/libcurl_la-ntlm_sspi.lo CC vauth/libcurl_la-oauth2.lo CC vauth/libcurl_la-spnego_gssapi.lo CC vauth/libcurl_la-spnego_sspi.lo CC vauth/libcurl_la-vauth.lo CC vtls/libcurl_la-cipher_suite.lo CC vtls/libcurl_la-gtls.lo CC vtls/libcurl_la-hostcheck.lo CC vtls/libcurl_la-keylog.lo CC vtls/libcurl_la-mbedtls.lo CC vtls/libcurl_la-mbedtls_threadlock.lo CC vtls/libcurl_la-openssl.lo CC vtls/libcurl_la-rustls.lo CC vtls/libcurl_la-schannel.lo CC vtls/libcurl_la-schannel_verify.lo CC vtls/libcurl_la-vtls.lo CC vtls/libcurl_la-vtls_scache.lo CC vtls/libcurl_la-vtls_spack.lo CC vtls/libcurl_la-wolfssl.lo CC vtls/libcurl_la-x509asn1.lo CC vquic/libcurl_la-curl_msh3.lo CC vquic/libcurl_la-curl_ngtcp2.lo CC vquic/libcurl_la-curl_osslq.lo CC vquic/libcurl_la-curl_quiche.lo CC vquic/libcurl_la-vquic.lo CC vquic/libcurl_la-vquic-tls.lo CC vssh/libcurl_la-libssh.lo CC vssh/libcurl_la-libssh2.lo CC vssh/libcurl_la-curl_path.lo CC vssh/libcurl_la-wolfssh.lo CC curlx/libcurl_la-base64.lo CC curlx/libcurl_la-dynbuf.lo CC curlx/libcurl_la-inet_ntop.lo CC curlx/libcurl_la-inet_pton.lo CC curlx/libcurl_la-multibyte.lo CC curlx/libcurl_la-nonblock.lo CC curlx/libcurl_la-strparse.lo CC curlx/libcurl_la-timediff.lo CC curlx/libcurl_la-timeval.lo CC curlx/libcurl_la-version_win32.lo CC curlx/libcurl_la-wait.lo CC curlx/libcurl_la-warnless.lo CC curlx/libcurl_la-winapi.lo CCLD libcurlu.la CCLD libcurl.la make[2]: Leaving directory '/startdir/src/build-curl/lib' make[1]: Leaving directory '/startdir/src/build-curl/lib' Making all in docs make[1]: Entering directory '/startdir/src/build-curl/docs' RENDER mk-ca-bundle.1 RENDER curl-config.1 RENDER runtests.1 RENDER testcurl.1 Making all in . make[2]: Entering directory '/startdir/src/build-curl/docs' RENDER wcurl.1 make[2]: Leaving directory '/startdir/src/build-curl/docs' Making all in cmdline-opts make[2]: Entering directory '/startdir/src/build-curl/docs/cmdline-opts' GENERATE curl.1 GENERATE curl.txt make[2]: Leaving directory '/startdir/src/build-curl/docs/cmdline-opts' Making all in libcurl make[2]: Entering directory '/startdir/src/build-curl/docs/libcurl' Making all in opts make[3]: Entering directory '/startdir/src/build-curl/docs/libcurl/opts' RENDER CURLINFO_ACTIVESOCKET.3 RENDER CURLINFO_APPCONNECT_TIME.3 RENDER CURLINFO_APPCONNECT_TIME_T.3 RENDER CURLINFO_CAPATH.3 RENDER CURLINFO_CAINFO.3 RENDER CURLINFO_CERTINFO.3 RENDER CURLINFO_CONN_ID.3 RENDER CURLINFO_CONDITION_UNMET.3 RENDER CURLINFO_CONNECT_TIME.3 RENDER CURLINFO_CONNECT_TIME_T.3 RENDER CURLINFO_CONTENT_LENGTH_DOWNLOAD.3 RENDER CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3 RENDER CURLINFO_CONTENT_LENGTH_UPLOAD.3 RENDER CURLINFO_CONTENT_LENGTH_UPLOAD_T.3 RENDER CURLINFO_CONTENT_TYPE.3 RENDER CURLINFO_COOKIELIST.3 RENDER CURLINFO_EARLYDATA_SENT_T.3 RENDER CURLINFO_EFFECTIVE_METHOD.3 RENDER CURLINFO_EFFECTIVE_URL.3 RENDER CURLINFO_FILETIME.3 RENDER CURLINFO_FILETIME_T.3 RENDER CURLINFO_FTP_ENTRY_PATH.3 RENDER CURLINFO_HEADER_SIZE.3 RENDER CURLINFO_HTTP_CONNECTCODE.3 RENDER CURLINFO_HTTP_VERSION.3 RENDER CURLINFO_HTTPAUTH_USED.3 RENDER CURLINFO_HTTPAUTH_AVAIL.3 RENDER CURLINFO_LASTSOCKET.3 RENDER CURLINFO_LOCAL_IP.3 RENDER CURLINFO_LOCAL_PORT.3 RENDER CURLINFO_NAMELOOKUP_TIME.3 RENDER CURLINFO_NUM_CONNECTS.3 RENDER CURLINFO_NAMELOOKUP_TIME_T.3 RENDER CURLINFO_OS_ERRNO.3 RENDER CURLINFO_PRETRANSFER_TIME.3 RENDER CURLINFO_PRETRANSFER_TIME_T.3 RENDER CURLINFO_POSTTRANSFER_TIME_T.3 RENDER CURLINFO_PRIMARY_PORT.3 RENDER CURLINFO_PRIMARY_IP.3 RENDER CURLINFO_PROTOCOL.3 RENDER CURLINFO_PRIVATE.3 RENDER CURLINFO_PROXY_ERROR.3 RENDER CURLINFO_PROXY_SSL_VERIFYRESULT.3 RENDER CURLINFO_PROXYAUTH_USED.3 RENDER CURLINFO_PROXYAUTH_AVAIL.3 RENDER CURLINFO_QUEUE_TIME_T.3 RENDER CURLINFO_REDIRECT_COUNT.3 RENDER CURLINFO_REDIRECT_TIME.3 RENDER CURLINFO_REDIRECT_TIME_T.3 RENDER CURLINFO_REDIRECT_URL.3 RENDER CURLINFO_REFERER.3 RENDER CURLINFO_REQUEST_SIZE.3 RENDER CURLINFO_RETRY_AFTER.3 RENDER CURLINFO_RESPONSE_CODE.3 RENDER CURLINFO_RTSP_CLIENT_CSEQ.3 RENDER CURLINFO_RTSP_CSEQ_RECV.3 RENDER CURLINFO_RTSP_SERVER_CSEQ.3 RENDER CURLINFO_RTSP_SESSION_ID.3 RENDER CURLINFO_SCHEME.3 RENDER CURLINFO_SIZE_DOWNLOAD.3 RENDER CURLINFO_SIZE_DOWNLOAD_T.3 RENDER CURLINFO_SIZE_UPLOAD.3 RENDER CURLINFO_SIZE_UPLOAD_T.3 RENDER CURLINFO_SPEED_DOWNLOAD.3 RENDER CURLINFO_SPEED_DOWNLOAD_T.3 RENDER CURLINFO_SPEED_UPLOAD.3 RENDER CURLINFO_SPEED_UPLOAD_T.3 RENDER CURLINFO_SSL_ENGINES.3 RENDER CURLINFO_SSL_VERIFYRESULT.3 RENDER CURLINFO_STARTTRANSFER_TIME.3 RENDER CURLINFO_STARTTRANSFER_TIME_T.3 RENDER CURLINFO_TOTAL_TIME.3 RENDER CURLINFO_TLS_SSL_PTR.3 RENDER CURLINFO_TLS_SESSION.3 RENDER CURLINFO_TOTAL_TIME_T.3 RENDER CURLINFO_XFER_ID.3 RENDER CURLINFO_USED_PROXY.3 RENDER CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3 RENDER CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3 RENDER CURLMOPT_MAX_HOST_CONNECTIONS.3 RENDER CURLMOPT_MAX_CONCURRENT_STREAMS.3 RENDER CURLMOPT_MAX_PIPELINE_LENGTH.3 RENDER CURLMOPT_MAX_TOTAL_CONNECTIONS.3 RENDER CURLMOPT_MAXCONNECTS.3 RENDER CURLMOPT_PIPELINING.3 RENDER CURLMOPT_PIPELINING_SERVER_BL.3 RENDER CURLMOPT_PIPELINING_SITE_BL.3 RENDER CURLMOPT_PUSHDATA.3 RENDER CURLMOPT_PUSHFUNCTION.3 RENDER CURLMOPT_SOCKETFUNCTION.3 RENDER CURLMOPT_SOCKETDATA.3 RENDER CURLMOPT_TIMERDATA.3 RENDER CURLMOPT_TIMERFUNCTION.3 RENDER CURLOPT_ABSTRACT_UNIX_SOCKET.3 RENDER CURLOPT_ADDRESS_SCOPE.3 RENDER CURLOPT_ACCEPT_ENCODING.3 RENDER CURLOPT_ACCEPTTIMEOUT_MS.3 RENDER CURLOPT_ALTSVC.3 RENDER CURLOPT_ALTSVC_CTRL.3 RENDER CURLOPT_APPEND.3 RENDER CURLOPT_AUTOREFERER.3 RENDER CURLOPT_AWS_SIGV4.3 RENDER CURLOPT_BUFFERSIZE.3 RENDER CURLOPT_CAINFO.3 RENDER CURLOPT_CAINFO_BLOB.3 RENDER CURLOPT_CAPATH.3 RENDER CURLOPT_CA_CACHE_TIMEOUT.3 RENDER CURLOPT_CERTINFO.3 RENDER CURLOPT_CHUNK_BGN_FUNCTION.3 RENDER CURLOPT_CHUNK_DATA.3 RENDER CURLOPT_CHUNK_END_FUNCTION.3 RENDER CURLOPT_CLOSESOCKETDATA.3 RENDER CURLOPT_CLOSESOCKETFUNCTION.3 RENDER CURLOPT_CONNECT_TO.3 RENDER CURLOPT_CONNECT_ONLY.3 RENDER CURLOPT_CONNECTTIMEOUT.3 RENDER CURLOPT_CONNECTTIMEOUT_MS.3 RENDER CURLOPT_CONV_FROM_UTF8_FUNCTION.3 RENDER CURLOPT_CONV_FROM_NETWORK_FUNCTION.3 RENDER CURLOPT_CONV_TO_NETWORK_FUNCTION.3 RENDER CURLOPT_COOKIE.3 RENDER CURLOPT_COOKIEJAR.3 RENDER CURLOPT_COOKIEFILE.3 RENDER CURLOPT_COOKIELIST.3 RENDER CURLOPT_COOKIESESSION.3 RENDER CURLOPT_COPYPOSTFIELDS.3 RENDER CURLOPT_CRLF.3 RENDER CURLOPT_CRLFILE.3 RENDER CURLOPT_CURLU.3 RENDER CURLOPT_CUSTOMREQUEST.3 RENDER CURLOPT_DEBUGDATA.3 RENDER CURLOPT_DEBUGFUNCTION.3 RENDER CURLOPT_DEFAULT_PROTOCOL.3 RENDER CURLOPT_DIRLISTONLY.3 RENDER CURLOPT_DISALLOW_USERNAME_IN_URL.3 RENDER CURLOPT_DNS_CACHE_TIMEOUT.3 RENDER CURLOPT_DNS_INTERFACE.3 RENDER CURLOPT_DNS_LOCAL_IP4.3 RENDER CURLOPT_DNS_SERVERS.3 RENDER CURLOPT_DNS_LOCAL_IP6.3 RENDER CURLOPT_DNS_SHUFFLE_ADDRESSES.3 RENDER CURLOPT_DOH_SSL_VERIFYHOST.3 RENDER CURLOPT_DNS_USE_GLOBAL_CACHE.3 RENDER CURLOPT_DOH_SSL_VERIFYPEER.3 RENDER CURLOPT_DOH_SSL_VERIFYSTATUS.3 RENDER CURLOPT_DOH_URL.3 RENDER CURLOPT_ECH.3 RENDER CURLOPT_EGDSOCKET.3 RENDER CURLOPT_ERRORBUFFER.3 RENDER CURLOPT_EXPECT_100_TIMEOUT_MS.3 RENDER CURLOPT_FAILONERROR.3 RENDER CURLOPT_FILETIME.3 RENDER CURLOPT_FNMATCH_DATA.3 RENDER CURLOPT_FNMATCH_FUNCTION.3 RENDER CURLOPT_FOLLOWLOCATION.3 RENDER CURLOPT_FORBID_REUSE.3 RENDER CURLOPT_FRESH_CONNECT.3 RENDER CURLOPT_FTP_ACCOUNT.3 RENDER CURLOPT_FTP_ALTERNATIVE_TO_USER.3 RENDER CURLOPT_FTP_CREATE_MISSING_DIRS.3 RENDER CURLOPT_FTP_FILEMETHOD.3 RENDER CURLOPT_FTP_SKIP_PASV_IP.3 RENDER CURLOPT_FTP_SSL_CCC.3 RENDER CURLOPT_FTP_USE_EPRT.3 RENDER CURLOPT_FTP_USE_EPSV.3 RENDER CURLOPT_FTP_USE_PRET.3 RENDER CURLOPT_FTPPORT.3 RENDER CURLOPT_FTPSSLAUTH.3 RENDER CURLOPT_GSSAPI_DELEGATION.3 RENDER CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3 RENDER CURLOPT_HAPROXYPROTOCOL.3 RENDER CURLOPT_HAPROXY_CLIENT_IP.3 RENDER CURLOPT_HEADER.3 RENDER CURLOPT_HEADERDATA.3 RENDER CURLOPT_HEADERFUNCTION.3 RENDER CURLOPT_HEADEROPT.3 RENDER CURLOPT_HSTS.3 RENDER CURLOPT_HSTS_CTRL.3 RENDER CURLOPT_HSTSREADDATA.3 RENDER CURLOPT_HSTSREADFUNCTION.3 RENDER CURLOPT_HSTSWRITEFUNCTION.3 RENDER CURLOPT_HSTSWRITEDATA.3 RENDER CURLOPT_HTTP09_ALLOWED.3 RENDER CURLOPT_HTTP200ALIASES.3 RENDER CURLOPT_HTTP_CONTENT_DECODING.3 RENDER CURLOPT_HTTP_TRANSFER_DECODING.3 RENDER CURLOPT_HTTP_VERSION.3 RENDER CURLOPT_HTTPAUTH.3 RENDER CURLOPT_HTTPGET.3 RENDER CURLOPT_HTTPHEADER.3 RENDER CURLOPT_HTTPPOST.3 RENDER CURLOPT_HTTPPROXYTUNNEL.3 RENDER CURLOPT_IGNORE_CONTENT_LENGTH.3 RENDER CURLOPT_INFILESIZE.3 RENDER CURLOPT_INFILESIZE_LARGE.3 RENDER CURLOPT_INTERFACE.3 RENDER CURLOPT_INTERLEAVEDATA.3 RENDER CURLOPT_INTERLEAVEFUNCTION.3 RENDER CURLOPT_IOCTLDATA.3 RENDER CURLOPT_IOCTLFUNCTION.3 RENDER CURLOPT_IPRESOLVE.3 RENDER CURLOPT_ISSUERCERT.3 RENDER CURLOPT_ISSUERCERT_BLOB.3 RENDER CURLOPT_KEEP_SENDING_ON_ERROR.3 RENDER CURLOPT_KEYPASSWD.3 RENDER CURLOPT_KRBLEVEL.3 RENDER CURLOPT_LOCALPORT.3 RENDER CURLOPT_LOCALPORTRANGE.3 RENDER CURLOPT_LOGIN_OPTIONS.3 RENDER CURLOPT_LOW_SPEED_LIMIT.3 RENDER CURLOPT_LOW_SPEED_TIME.3 RENDER CURLOPT_MAIL_AUTH.3 RENDER CURLOPT_MAIL_FROM.3 RENDER CURLOPT_MAIL_RCPT.3 RENDER CURLOPT_MAIL_RCPT_ALLOWFAILS.3 RENDER CURLOPT_MAX_RECV_SPEED_LARGE.3 RENDER CURLOPT_MAX_SEND_SPEED_LARGE.3 RENDER CURLOPT_MAXAGE_CONN.3 RENDER CURLOPT_MAXCONNECTS.3 RENDER CURLOPT_MAXFILESIZE.3 RENDER CURLOPT_MAXFILESIZE_LARGE.3 RENDER CURLOPT_MAXLIFETIME_CONN.3 RENDER CURLOPT_MAXREDIRS.3 RENDER CURLOPT_MIME_OPTIONS.3 RENDER CURLOPT_MIMEPOST.3 RENDER CURLOPT_NETRC.3 RENDER CURLOPT_NETRC_FILE.3 RENDER CURLOPT_NEW_DIRECTORY_PERMS.3 RENDER CURLOPT_NEW_FILE_PERMS.3 RENDER CURLOPT_NOBODY.3 RENDER CURLOPT_NOPROGRESS.3 RENDER CURLOPT_NOPROXY.3 RENDER CURLOPT_NOSIGNAL.3 RENDER CURLOPT_OPENSOCKETDATA.3 RENDER CURLOPT_OPENSOCKETFUNCTION.3 RENDER CURLOPT_PASSWORD.3 RENDER CURLOPT_PATH_AS_IS.3 RENDER CURLOPT_PINNEDPUBLICKEY.3 RENDER CURLOPT_PIPEWAIT.3 RENDER CURLOPT_PORT.3 RENDER CURLOPT_POST.3 RENDER CURLOPT_POSTFIELDS.3 RENDER CURLOPT_POSTFIELDSIZE.3 RENDER CURLOPT_POSTFIELDSIZE_LARGE.3 RENDER CURLOPT_POSTQUOTE.3 RENDER CURLOPT_POSTREDIR.3 RENDER CURLOPT_PRE_PROXY.3 RENDER CURLOPT_PREQUOTE.3 RENDER CURLOPT_PREREQDATA.3 RENDER CURLOPT_PREREQFUNCTION.3 RENDER CURLOPT_PRIVATE.3 RENDER CURLOPT_PROGRESSDATA.3 RENDER CURLOPT_PROGRESSFUNCTION.3 RENDER CURLOPT_PROTOCOLS.3 RENDER CURLOPT_PROTOCOLS_STR.3 RENDER CURLOPT_PROXY.3 RENDER CURLOPT_PROXY_CAINFO.3 RENDER CURLOPT_PROXY_CAINFO_BLOB.3 RENDER CURLOPT_PROXY_CAPATH.3 RENDER CURLOPT_PROXY_CRLFILE.3 RENDER CURLOPT_PROXY_ISSUERCERT.3 RENDER CURLOPT_PROXY_ISSUERCERT_BLOB.3 RENDER CURLOPT_PROXY_KEYPASSWD.3 RENDER CURLOPT_PROXY_PINNEDPUBLICKEY.3 RENDER CURLOPT_PROXY_SERVICE_NAME.3 RENDER CURLOPT_PROXY_SSL_CIPHER_LIST.3 RENDER CURLOPT_PROXY_SSL_OPTIONS.3 RENDER CURLOPT_PROXY_SSL_VERIFYHOST.3 RENDER CURLOPT_PROXY_SSL_VERIFYPEER.3 RENDER CURLOPT_PROXY_SSLCERT.3 RENDER CURLOPT_PROXY_SSLCERT_BLOB.3 RENDER CURLOPT_PROXY_SSLCERTTYPE.3 RENDER CURLOPT_PROXY_SSLKEY.3 RENDER CURLOPT_PROXY_SSLKEY_BLOB.3 RENDER CURLOPT_PROXY_SSLKEYTYPE.3 RENDER CURLOPT_PROXY_SSLVERSION.3 RENDER CURLOPT_PROXY_TLS13_CIPHERS.3 RENDER CURLOPT_PROXY_TLSAUTH_PASSWORD.3 RENDER CURLOPT_PROXY_TLSAUTH_TYPE.3 RENDER CURLOPT_PROXY_TLSAUTH_USERNAME.3 RENDER CURLOPT_PROXY_TRANSFER_MODE.3 RENDER CURLOPT_PROXYAUTH.3 RENDER CURLOPT_PROXYPASSWORD.3 RENDER CURLOPT_PROXYHEADER.3 RENDER CURLOPT_PROXYTYPE.3 RENDER CURLOPT_PROXYPORT.3 RENDER CURLOPT_PROXYUSERNAME.3 RENDER CURLOPT_PROXYUSERPWD.3 RENDER CURLOPT_PUT.3 RENDER CURLOPT_QUICK_EXIT.3 RENDER CURLOPT_QUOTE.3 RENDER CURLOPT_RANDOM_FILE.3 RENDER CURLOPT_RANGE.3 RENDER CURLOPT_READDATA.3 RENDER CURLOPT_REDIR_PROTOCOLS.3 RENDER CURLOPT_READFUNCTION.3 RENDER CURLOPT_REDIR_PROTOCOLS_STR.3 RENDER CURLOPT_REFERER.3 RENDER CURLOPT_REQUEST_TARGET.3 RENDER CURLOPT_RESOLVE.3 RENDER CURLOPT_RESOLVER_START_DATA.3 RENDER CURLOPT_RESOLVER_START_FUNCTION.3 RENDER CURLOPT_RESUME_FROM.3 RENDER CURLOPT_RESUME_FROM_LARGE.3 RENDER CURLOPT_RTSP_CLIENT_CSEQ.3 RENDER CURLOPT_RTSP_REQUEST.3 RENDER CURLOPT_RTSP_SERVER_CSEQ.3 RENDER CURLOPT_RTSP_SESSION_ID.3 RENDER CURLOPT_RTSP_STREAM_URI.3 RENDER CURLOPT_RTSP_TRANSPORT.3 RENDER CURLOPT_SASL_AUTHZID.3 RENDER CURLOPT_SASL_IR.3 RENDER CURLOPT_SEEKDATA.3 RENDER CURLOPT_SEEKFUNCTION.3 RENDER CURLOPT_SERVER_RESPONSE_TIMEOUT.3 RENDER CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.3 RENDER CURLOPT_SERVICE_NAME.3 RENDER CURLOPT_SHARE.3 RENDER CURLOPT_SOCKOPTDATA.3 RENDER CURLOPT_SOCKOPTFUNCTION.3 RENDER CURLOPT_SOCKS5_AUTH.3 RENDER CURLOPT_SOCKS5_GSSAPI_SERVICE.3 RENDER CURLOPT_SOCKS5_GSSAPI_NEC.3 RENDER CURLOPT_SSH_AUTH_TYPES.3 RENDER CURLOPT_SSH_HOSTKEYDATA.3 RENDER CURLOPT_SSH_COMPRESSION.3 RENDER CURLOPT_SSH_HOSTKEYFUNCTION.3 RENDER CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3 RENDER CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.3 RENDER CURLOPT_SSH_KEYDATA.3 RENDER CURLOPT_SSH_KEYFUNCTION.3 RENDER CURLOPT_SSH_KNOWNHOSTS.3 RENDER CURLOPT_SSH_PRIVATE_KEYFILE.3 RENDER CURLOPT_SSH_PUBLIC_KEYFILE.3 RENDER CURLOPT_SSL_CIPHER_LIST.3 RENDER CURLOPT_SSL_CTX_DATA.3 RENDER CURLOPT_SSL_CTX_FUNCTION.3 RENDER CURLOPT_SSL_EC_CURVES.3 RENDER CURLOPT_SSL_ENABLE_ALPN.3 RENDER CURLOPT_SSL_ENABLE_NPN.3 RENDER CURLOPT_SSL_FALSESTART.3 RENDER CURLOPT_SSL_OPTIONS.3 RENDER CURLOPT_SSL_SESSIONID_CACHE.3 RENDER CURLOPT_SSL_SIGNATURE_ALGORITHMS.3 RENDER CURLOPT_SSL_VERIFYHOST.3 RENDER CURLOPT_SSL_VERIFYPEER.3 RENDER CURLOPT_SSL_VERIFYSTATUS.3 RENDER CURLOPT_SSLCERT.3 RENDER CURLOPT_SSLCERT_BLOB.3 RENDER CURLOPT_SSLENGINE.3 RENDER CURLOPT_SSLCERTTYPE.3 RENDER CURLOPT_SSLENGINE_DEFAULT.3 RENDER CURLOPT_SSLKEY.3 RENDER CURLOPT_SSLKEY_BLOB.3 RENDER CURLOPT_SSLKEYTYPE.3 RENDER CURLOPT_SSLVERSION.3 RENDER CURLOPT_STDERR.3 RENDER CURLOPT_STREAM_DEPENDS.3 RENDER CURLOPT_STREAM_DEPENDS_E.3 RENDER CURLOPT_STREAM_WEIGHT.3 RENDER CURLOPT_SUPPRESS_CONNECT_HEADERS.3 RENDER CURLOPT_TCP_FASTOPEN.3 RENDER CURLOPT_TCP_KEEPALIVE.3 RENDER CURLOPT_TCP_KEEPIDLE.3 RENDER CURLOPT_TCP_KEEPINTVL.3 RENDER CURLOPT_TCP_KEEPCNT.3 RENDER CURLOPT_TCP_NODELAY.3 RENDER CURLOPT_TELNETOPTIONS.3 RENDER CURLOPT_TFTP_BLKSIZE.3 RENDER CURLOPT_TFTP_NO_OPTIONS.3 RENDER CURLOPT_TIMECONDITION.3 RENDER CURLOPT_TIMEOUT_MS.3 RENDER CURLOPT_TIMEOUT.3 RENDER CURLOPT_TIMEVALUE.3 RENDER CURLOPT_TIMEVALUE_LARGE.3 RENDER CURLOPT_TLS13_CIPHERS.3 RENDER CURLOPT_TLSAUTH_PASSWORD.3 RENDER CURLOPT_TLSAUTH_TYPE.3 RENDER CURLOPT_TLSAUTH_USERNAME.3 RENDER CURLOPT_TRAILERDATA.3 RENDER CURLOPT_TRAILERFUNCTION.3 RENDER CURLOPT_TRANSFER_ENCODING.3 RENDER CURLOPT_TRANSFERTEXT.3 RENDER CURLOPT_UNIX_SOCKET_PATH.3 RENDER CURLOPT_UNRESTRICTED_AUTH.3 RENDER CURLOPT_UPKEEP_INTERVAL_MS.3 RENDER CURLOPT_UPLOAD.3 RENDER CURLOPT_UPLOAD_BUFFERSIZE.3 RENDER CURLOPT_UPLOAD_FLAGS.3 RENDER CURLOPT_URL.3 RENDER CURLOPT_USE_SSL.3 RENDER CURLOPT_USERAGENT.3 RENDER CURLOPT_USERNAME.3 RENDER CURLOPT_USERPWD.3 RENDER CURLOPT_VERBOSE.3 RENDER CURLOPT_WILDCARDMATCH.3 RENDER CURLOPT_WRITEDATA.3 RENDER CURLOPT_WRITEFUNCTION.3 RENDER CURLOPT_WS_OPTIONS.3 RENDER CURLOPT_XFERINFODATA.3 RENDER CURLOPT_XFERINFOFUNCTION.3 RENDER CURLOPT_XOAUTH2_BEARER.3 RENDER CURLSHOPT_LOCKFUNC.3 RENDER CURLSHOPT_SHARE.3 RENDER CURLSHOPT_UNLOCKFUNC.3 RENDER CURLSHOPT_UNSHARE.3 RENDER CURLSHOPT_USERDATA.3 make[3]: Leaving directory '/startdir/src/build-curl/docs/libcurl/opts' make[3]: Entering directory '/startdir/src/build-curl/docs/libcurl' RENDER curl_easy_duphandle.3 RENDER curl_easy_cleanup.3 RENDER curl_easy_escape.3 RENDER curl_easy_getinfo.3 RENDER curl_easy_header.3 RENDER curl_easy_init.3 RENDER curl_easy_nextheader.3 RENDER curl_easy_option_by_id.3 RENDER curl_easy_option_by_name.3 RENDER curl_easy_option_next.3 RENDER curl_easy_pause.3 RENDER curl_easy_perform.3 RENDER curl_easy_recv.3 RENDER curl_easy_reset.3 RENDER curl_easy_setopt.3 RENDER curl_easy_send.3 RENDER curl_easy_ssls_export.3 RENDER curl_easy_ssls_import.3 RENDER curl_easy_unescape.3 RENDER curl_easy_strerror.3 RENDER curl_easy_upkeep.3 RENDER curl_escape.3 RENDER curl_formfree.3 RENDER curl_formadd.3 RENDER curl_formget.3 RENDER curl_getdate.3 RENDER curl_free.3 RENDER curl_getenv.3 RENDER curl_global_cleanup.3 RENDER curl_global_init_mem.3 RENDER curl_global_init.3 RENDER curl_global_sslset.3 RENDER curl_global_trace.3 RENDER curl_mime_addpart.3 RENDER curl_mime_data.3 RENDER curl_mime_data_cb.3 RENDER curl_mime_encoder.3 RENDER curl_mime_filedata.3 RENDER curl_mime_filename.3 RENDER curl_mime_headers.3 RENDER curl_mime_free.3 RENDER curl_mime_init.3 RENDER curl_mime_name.3 RENDER curl_mime_subparts.3 RENDER curl_mime_type.3 RENDER curl_mprintf.3 RENDER curl_multi_add_handle.3 RENDER curl_multi_assign.3 RENDER curl_multi_cleanup.3 RENDER curl_multi_fdset.3 RENDER curl_multi_get_handles.3 RENDER curl_multi_info_read.3 RENDER curl_multi_init.3 RENDER curl_multi_perform.3 RENDER curl_multi_poll.3 RENDER curl_multi_remove_handle.3 RENDER curl_multi_setopt.3 RENDER curl_multi_socket.3 RENDER curl_multi_socket_action.3 RENDER curl_multi_socket_all.3 RENDER curl_multi_strerror.3 RENDER curl_multi_timeout.3 RENDER curl_multi_wait.3 RENDER curl_multi_waitfds.3 RENDER curl_pushheader_byname.3 RENDER curl_multi_wakeup.3 RENDER curl_pushheader_bynum.3 RENDER curl_share_cleanup.3 RENDER curl_share_init.3 RENDER curl_share_strerror.3 RENDER curl_slist_append.3 RENDER curl_share_setopt.3 RENDER curl_slist_free_all.3 RENDER curl_strnequal.3 RENDER curl_strequal.3 RENDER curl_unescape.3 RENDER curl_url.3 RENDER curl_url_cleanup.3 RENDER curl_url_dup.3 RENDER curl_url_set.3 RENDER curl_url_get.3 RENDER curl_url_strerror.3 RENDER curl_version.3 RENDER curl_version_info.3 RENDER curl_ws_meta.3 RENDER curl_ws_recv.3 RENDER curl_ws_send.3 RENDER libcurl-easy.3 RENDER libcurl-env.3 RENDER libcurl-env-dbg.3 RENDER libcurl-errors.3 RENDER libcurl-multi.3 RENDER libcurl-security.3 RENDER libcurl-share.3 RENDER libcurl-symbols.md RENDER libcurl-thread.3 RENDER libcurl-tutorial.3 RENDER libcurl-url.3 RENDER libcurl-ws.3 RENDER libcurl.3 RENDER libcurl-symbols.3 make[3]: Leaving directory '/startdir/src/build-curl/docs/libcurl' make[2]: Leaving directory '/startdir/src/build-curl/docs/libcurl' make[1]: Leaving directory '/startdir/src/build-curl/docs' Making all in src make[1]: Entering directory '/startdir/src/build-curl/src' CC curl-config2setopts.o CC curl-slist_wc.o CC curl-terminal.o CC curl-tool_bname.o CC curl-tool_cb_dbg.o CC curl-tool_cb_see.o CC curl-tool_cb_rea.o CC curl-tool_cb_prg.o CC curl-tool_cb_hdr.o CC curl-tool_cb_wrt.o CC curl-tool_cb_soc.o CC curl-tool_cfgable.o CC curl-tool_dirhie.o CC curl-tool_doswin.o CC curl-tool_easysrc.o CC curl-tool_filetime.o CC curl-tool_findfile.o CC curl-tool_formparse.o CC curl-tool_getparam.o CC curl-tool_getpass.o CC curl-tool_help.o CC curl-tool_helpers.o CC curl-tool_ipfs.o CC curl-tool_libinfo.o CC curl-tool_listhelp.o CC curl-tool_main.o CC curl-tool_msgs.o CC curl-tool_operate.o CC curl-tool_operhlp.o CC curl-tool_paramhlp.o CC curl-tool_parsecfg.o CC curl-tool_progress.o CC curl-tool_setopt.o CC curl-tool_ssls.o CC curl-tool_stderr.o CC curl-tool_urlglob.o CC curl-tool_strdup.o CC curl-tool_util.o CC curl-tool_writeout.o CC curl-tool_vms.o CC curl-tool_writeout_json.o CC curl-var.o echo '/* !checksrc! disable COPYRIGHT all */' > tool_hugehelp.c; \ echo '#include "tool_hugehelp.h"' >> tool_hugehelp.c CC curl-tool_xattr.o echo '/* !checksrc! disable COPYRIGHT all */' > tool_ca_embed.c CC ../lib/curlx/curl-base64.o echo 'extern const void *curl_ca_embed; const void *curl_ca_embed;' >> tool_ca_embed.c CC ../lib/curlx/curl-multibyte.o CC ../lib/curlx/curl-nonblock.o CC ../lib/curlx/curl-dynbuf.o CC ../lib/curlx/curl-strparse.o CC ../lib/curlx/curl-timediff.o CC ../lib/curlx/curl-timeval.o CC ../lib/curlx/curl-wait.o CC ../lib/curlx/curl-version_win32.o CC ../lib/curlx/curl-warnless.o CC curlinfo.o CC libcurltool_la-config2setopts.lo CC libcurltool_la-slist_wc.lo CC libcurltool_la-tool_bname.lo CC libcurltool_la-terminal.lo CC libcurltool_la-tool_cb_dbg.lo CC libcurltool_la-tool_cb_hdr.lo CC libcurltool_la-tool_cb_prg.lo CC libcurltool_la-tool_cb_rea.lo CC libcurltool_la-tool_cb_see.lo CC libcurltool_la-tool_cb_soc.lo CC libcurltool_la-tool_cb_wrt.lo CC libcurltool_la-tool_cfgable.lo CC libcurltool_la-tool_dirhie.lo CC libcurltool_la-tool_doswin.lo CC libcurltool_la-tool_easysrc.lo CC libcurltool_la-tool_filetime.lo CC libcurltool_la-tool_findfile.lo CC libcurltool_la-tool_formparse.lo CC libcurltool_la-tool_getparam.lo CC libcurltool_la-tool_getpass.lo CC libcurltool_la-tool_help.lo CC libcurltool_la-tool_helpers.lo CC libcurltool_la-tool_ipfs.lo CC libcurltool_la-tool_libinfo.lo CC libcurltool_la-tool_listhelp.lo CC libcurltool_la-tool_main.lo CC libcurltool_la-tool_msgs.lo CC libcurltool_la-tool_operate.lo CC libcurltool_la-tool_operhlp.lo CC libcurltool_la-tool_paramhlp.lo CC libcurltool_la-tool_parsecfg.lo CC libcurltool_la-tool_progress.lo CC libcurltool_la-tool_ssls.lo CC libcurltool_la-tool_setopt.lo CC libcurltool_la-tool_stderr.lo CC libcurltool_la-tool_strdup.lo CC libcurltool_la-tool_urlglob.lo CC libcurltool_la-tool_util.lo CC libcurltool_la-tool_writeout.lo CC libcurltool_la-tool_vms.lo CC libcurltool_la-tool_writeout_json.lo CC libcurltool_la-tool_xattr.lo CC libcurltool_la-var.lo CC ../lib/curlx/libcurltool_la-base64.lo CC ../lib/curlx/libcurltool_la-multibyte.lo CC ../lib/curlx/libcurltool_la-dynbuf.lo CC ../lib/curlx/libcurltool_la-nonblock.lo CC ../lib/curlx/libcurltool_la-strparse.lo CC ../lib/curlx/libcurltool_la-timediff.lo CC ../lib/curlx/libcurltool_la-timeval.lo CC ../lib/curlx/libcurltool_la-version_win32.lo CC ../lib/curlx/libcurltool_la-wait.lo CC ../lib/curlx/libcurltool_la-warnless.lo CC curl-tool_hugehelp.o CC curl-tool_ca_embed.o CCLD curlinfo CCLD curl CCLD libcurltool.la make[1]: Leaving directory '/startdir/src/build-curl/src' Making all in scripts make[1]: Entering directory '/startdir/src/build-curl/scripts' if test -z "/usr/bin/perl"; then echo 'No perl: cannot generate completion script'; else \ /usr/bin/perl /startdir/src/curl/scripts/completion.pl --opts-dir /startdir/src/curl/docs/cmdline-opts --shell zsh > _curl; fi if test -z "/usr/bin/perl"; then echo 'No perl: cannot generate completion script'; else \ /usr/bin/perl /startdir/src/curl/scripts/completion.pl --opts-dir /startdir/src/curl/docs/cmdline-opts --shell fish > curl.fish; fi make[1]: Leaving directory '/startdir/src/build-curl/scripts' make[1]: Entering directory '/startdir/src/build-curl' make[1]: Nothing to be done for 'all-am'. make[1]: Leaving directory '/startdir/src/build-curl' checking whether to enable maintainer-specific portions of Makefiles... no checking whether make supports nested variables... yes checking whether to enable debug build options... no checking whether to enable compiler optimizer... (assumed) yes checking whether to enable strict compiler warnings... no checking whether to enable compiler warnings as errors... no checking whether to enable curl debug memory tracking... no checking whether to enable hiding of library internal symbols... yes checking whether to enable c-ares for DNS lookups... no checking whether to disable dependency on -lrt... (assumed no) checking whether to enable HTTPSRR support... no checking whether to enable ECH support... no checking whether to enable SSL session export support... no checking for path separator... : checking for sed... /usr/bin/sed checking for grep... /usr/bin/grep checking that grep -E works... yes checking for ar... /usr/bin/ar checking for a BSD-compatible install... /usr/bin/install -c checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for stdatomic.h... yes checking if _Atomic is available... yes checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for code coverage support... no checking whether sleep supports fractional seconds... yes checking filesystem timestamp resolution... 0.01 checking whether build environment is sane... yes checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports the include directive... yes (GNU style) checking xargs -n works... yes checking whether UID '1002' is supported by ustar format... yes checking whether GID '1002' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking dependency style of gcc... gcc3 checking curl version... 8.15.0 checking for httpd... no checking for apache2... no checking for apxs... no configure: httpd/apache2 not in PATH, http tests disabled configure: apxs not in PATH, http tests disabled checking for nghttpx... no checking for caddy... no checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for egrep -e... /usr/bin/grep -E checking if OS is AIX (to define _ALL_SOURCE)... no checking if _THREAD_SAFE is already defined... no checking if _THREAD_SAFE is actually needed... no checking if _THREAD_SAFE is onwards defined... no checking if _REENTRANT is already defined... no checking if _REENTRANT is actually needed... no checking if _REENTRANT is onwards defined... no checking for gcc option to enable large file support... none needed checking how to print strings... printf checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for grep that handles long lines and -e... (cached) /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for file... file checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ranlib... ranlib checking for archiver @FILE support... @ checking for strip... strip checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for mt... no checking if : is a manifest tool... no checking for dlfcn.h... yes checking which variant of shared library versioning to provide... (default) aix checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether to build shared libraries with -version-info... yes checking whether to build shared libraries with -no-undefined... no checking whether to build shared libraries with -mimpure-text... no checking whether to build shared libraries with PIC... yes checking whether to build static libraries with PIC... yes checking whether to build shared libraries only... no checking whether to build static libraries only... no checking for windres... no checking if cpp -P is needed... yes checking if cpp -P works... yes checking if compiler is DEC/Compaq/HP C... no checking if compiler is HP-UX C... no checking if compiler is IBM C... no checking if compiler is Intel C... no checking if compiler is clang... no checking if compiler is GNU C... yes checking compiler version... gcc '1501' (raw: '15.1.1') checking if compiler is SunPro C... no checking if compiler is Tiny C... no checking whether build target is a native Windows one... no checking if compiler accepts some basic options... yes configure: compiler options added: -Werror-implicit-function-declaration checking if compiler optimizer assumed setting might be used... no checking if compiler accepts strict warning options... yes configure: compiler options added: -Wno-system-headers checking if compiler halts on compilation errors... yes checking if compiler halts on negative sized arrays... yes checking if compiler halts on function prototype mismatch... yes checking if compiler supports hiding library internal symbols... yes checking whether build target supports Win32 crypto API... no checking whether to build libcurl and curl in "unity" mode... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... yes checking whether to support IPFS... yes checking whether to support ldap... no checking whether to support ldaps... no checking whether to support rtsp... yes checking whether to support proxies... yes checking whether to support dict... yes checking whether to support telnet... yes checking whether to support tftp... yes checking whether to support pop3... yes checking whether to support imap... yes checking whether to support smb... yes checking whether to support smtp... yes checking whether to support gopher... yes checking whether to support mqtt... no checking whether to provide built-in manual... no checking whether to build documentation... yes checking whether to enable generation of C code... yes checking whether to use libgcc... no checking if X/Open network library is required... no checking for gethostbyname... yes checking whether build target is a native Windows one... (cached) no checking for proto/bsdsocket.h... no checking for connect in libraries... yes checking for sys/types.h... (cached) yes checking for monotonic clock_gettime... yes checking for clock_gettime in libraries... no additional lib required checking if monotonic clock_gettime works... yes checking for sys/types.h... (cached) yes checking for raw monotonic clock_gettime... yes checking for pkg-config... /usr/bin/pkg-config checking for zlib options with pkg-config... found checking for zlib.h... yes configure: found both libz and libz.h header checking for BrotliDecoderDecompress in -lbrotlidec... yes checking for brotli/decode.h... yes checking for ZSTD_createDStream in -lzstd... yes checking for zstd.h... yes checking whether to enable IPv6... yes checking if struct sockaddr_in6 has sin6_scope_id member... yes checking if argv can be written to... yes checking if GSS-API support is requested... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking for gss.h... no checking for gssapi/gssapi.h... yes checking for gssapi/gssapi_generic.h... yes checking for gssapi/gssapi_krb5.h... yes checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking if we can link against GSS-API library... yes checking whether to enable Windows native SSL/TLS... no checking whether to enable Amiga native SSL/TLS (AmiSSL v5)... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for openssl options with pkg-config... found configure: pkg-config: SSL_LIBS: "-lssl -lcrypto" configure: pkg-config: SSL_LDFLAGS: "" configure: pkg-config: SSL_CPPFLAGS: "" checking for HMAC_Update in -lcrypto... yes checking for SSL_connect in -lssl... yes checking for openssl/x509.h... yes checking for openssl/rsa.h... yes checking for openssl/crypto.h... yes checking for openssl/pem.h... yes checking for openssl/ssl.h... yes checking for openssl/err.h... yes checking for BoringSSL... no checking for AWS-LC... no checking for LibreSSL... no checking for OpenSSL >= v3... yes checking for SSL_set_quic_use_legacy_codepoint... no checking for SSL_set_quic_tls_cbs... yes configure: OpenSSL with QUIC APIv2 checking for SRP support in OpenSSL... yes checking for QUIC support and OpenSSL >= 3.3... yes configure: built with one SSL backend checking default CA cert bundle/path... /etc/ssl/certs/ca-certificates.crt checking whether to use built-in CA store of SSL library... no checking CA cert bundle path to embed in the curl tool... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for libpsl options with pkg-config... found checking for psl_builtin in -lpsl... yes checking for libpsl.h... yes checking for library containing gsasl_init... no configure: WARNING: libgsasl was not found checking for pkg-config... (cached) /usr/bin/pkg-config checking for libssh2 options with pkg-config... found checking for libssh2_free in -lssh2... yes checking for libssh2.h... yes checking for RTMP_Init in -lrtmp... no checking whether versioned symbols are wanted... no checking whether to build with libidn2... (assumed) yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libidn2 options with pkg-config... found configure: pkg-config: IDN_LIBS: "-lidn2" configure: pkg-config: IDN_LDFLAGS: "" configure: pkg-config: IDN_CPPFLAGS: "" configure: pkg-config: IDN_DIR: "" checking if idn2_lookup_ul can be linked... yes checking for idn2.h... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libnghttp2 options with pkg-config... found configure: -l is -lnghttp2 configure: -I is configure: -L is checking for nghttp2_session_get_stream_local_window_size in -lnghttp2... yes checking for nghttp2/nghttp2.h... yes configure: Added to CURL_LIBRARY_PATH checking for pkg-config... (cached) /usr/bin/pkg-config checking for libnghttp3 options with pkg-config... found configure: -l is -lnghttp3 configure: -I is configure: -L is checking for nghttp3_conn_client_new_versioned in -lnghttp3... yes checking for nghttp3/nghttp3.h... yes configure: Added to CURL_LIBRARY_PATH configure: HTTP3 support is experimental checking for sys/types.h... (cached) yes checking for sys/select.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for arpa/inet.h... yes checking for net/if.h... yes checking for netinet/in.h... yes checking for netinet/in6.h... no checking for sys/un.h... yes checking for linux/tcp.h... yes checking for netinet/tcp.h... yes checking for netinet/udp.h... yes checking for netdb.h... yes checking for sys/sockio.h... no checking for sys/param.h... yes checking for termios.h... yes checking for termio.h... yes checking for fcntl.h... yes checking for io.h... no checking for pwd.h... yes checking for utime.h... yes checking for sys/utime.h... no checking for sys/poll.h... yes checking for poll.h... yes checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for stdint.h... (cached) yes checking for sys/filio.h... no checking for sys/eventfd.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for struct timeval... yes checking run-time libs availability... fine checking size of size_t... 8 checking size of long... 8 checking size of int... 4 checking size of time_t... 8 checking size of off_t... 8 checking size of curl_off_t... 8 checking size of curl_socket_t... 4 checking for long long... yes checking for ssize_t... yes checking for bool... yes checking for sa_family_t... yes checking for suseconds_t... yes checking if time_t is unsigned... no checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for MSG_NOSIGNAL... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking if alarm can be linked... yes checking if alarm is prototyped... yes checking if alarm is compilable... yes checking if alarm usage allowed... yes checking if alarm might be used... yes checking for sys/types.h... (cached) yes checking for strings.h... (cached) yes checking for sys/types.h... (cached) yes checking for libgen.h... (cached) yes checking if basename can be linked... yes checking if basename is prototyped... yes checking if basename is compilable... yes checking if basename usage allowed... yes checking if basename might be used... yes checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking if CloseSocket can be linked... no checking if CloseSocket might be used... no checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for fcntl.h... (cached) yes checking if fcntl can be linked... yes checking if fcntl is prototyped... yes checking if fcntl is compilable... yes checking if fcntl usage allowed... yes checking if fcntl might be used... yes checking if fcntl O_NONBLOCK is compilable... yes checking if fcntl O_NONBLOCK usage allowed... yes checking if fcntl O_NONBLOCK might be used... yes checking whether build target is a native Windows one... (cached) no checking for sys/types.h... (cached) yes checking for netdb.h... (cached) yes checking if freeaddrinfo can be linked... yes checking if freeaddrinfo is prototyped... yes checking if freeaddrinfo is compilable... yes checking if freeaddrinfo usage allowed... yes checking if freeaddrinfo might be used... yes checking for sys/types.h... (cached) yes checking for sys/xattr.h... yes checking if fsetxattr can be linked... yes checking if fsetxattr is prototyped... yes checking if fsetxattr takes 5 args.... yes checking if fsetxattr is compilable... yes checking if fsetxattr usage allowed... yes checking if fsetxattr might be used... yes checking if ftruncate can be linked... yes checking if ftruncate is prototyped... yes checking if ftruncate is compilable... yes checking if ftruncate usage allowed... yes checking if ftruncate might be used... yes checking for sys/types.h... (cached) yes checking if getaddrinfo can be linked... yes checking if getaddrinfo is prototyped... yes checking if getaddrinfo is compilable... yes checking if getaddrinfo seems to work... yes checking if getaddrinfo usage allowed... yes checking if getaddrinfo might be used... yes checking if getaddrinfo is threadsafe... yes checking if gethostbyname_r can be linked... yes checking if gethostbyname_r is prototyped... yes checking if gethostbyname_r takes 3 args.... no checking if gethostbyname_r takes 5 args.... no checking if gethostbyname_r takes 6 args.... yes checking if gethostbyname_r is compilable... yes checking if gethostbyname_r usage allowed... yes checking if gethostbyname_r might be used... yes checking if gethostname can be linked... yes checking if gethostname is prototyped... yes checking if gethostname is compilable... yes checking for gethostname arg 2 data type... size_t checking if gethostname usage allowed... yes checking if gethostname might be used... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for ifaddrs.h... yes checking if getifaddrs can be linked... yes checking if getifaddrs is prototyped... yes checking if getifaddrs is compilable... yes checking if getifaddrs seems to work... yes checking if getifaddrs usage allowed... yes checking if getifaddrs might be used... yes checking if getpeername can be linked... yes checking if getpeername is prototyped... yes checking if getpeername is compilable... yes checking if getpeername usage allowed... yes checking if getpeername might be used... yes checking if getsockname can be linked... yes checking if getsockname is prototyped... yes checking if getsockname is compilable... yes checking if getsockname usage allowed... yes checking if getsockname might be used... yes checking for sys/types.h... (cached) yes checking if gmtime_r can be linked... yes checking if gmtime_r is prototyped... yes checking if gmtime_r is compilable... yes checking if gmtime_r seems to work... yes checking if gmtime_r usage allowed... yes checking if gmtime_r might be used... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/ioctl.h... (cached) yes checking for stropts.h... no checking if ioctl can be linked... yes checking if ioctl is prototyped... yes checking if ioctl is compilable... yes checking if ioctl usage allowed... yes checking if ioctl might be used... yes checking if ioctl FIONBIO is compilable... yes checking if ioctl FIONBIO usage allowed... yes checking if ioctl FIONBIO might be used... yes checking if ioctl SIOCGIFADDR is compilable... yes checking if ioctl SIOCGIFADDR usage allowed... yes checking if ioctl SIOCGIFADDR might be used... yes checking if ioctlsocket can be linked... no checking if ioctlsocket might be used... no checking if IoctlSocket can be linked... no checking if IoctlSocket might be used... no checking if memrchr can be linked... yes checking if memrchr is prototyped... yes checking if memrchr is compilable... yes checking if memrchr usage allowed... yes checking if memrchr might be used... yes checking for sys/types.h... (cached) yes checking if sigaction can be linked... yes checking if sigaction is prototyped... yes checking if sigaction is compilable... yes checking if sigaction usage allowed... yes checking if sigaction might be used... yes checking if siginterrupt can be linked... yes checking if siginterrupt is prototyped... yes checking if siginterrupt is compilable... yes checking if siginterrupt usage allowed... yes checking if siginterrupt might be used... yes checking if signal can be linked... yes checking if signal is prototyped... yes checking if signal is compilable... yes checking if signal usage allowed... yes checking if signal might be used... yes checking for sys/types.h... (cached) yes checking if sigsetjmp can be linked... no checking if sigsetjmp seems a macro... yes checking if sigsetjmp is compilable... yes checking if sigsetjmp usage allowed... yes checking if sigsetjmp might be used... yes checking if socket can be linked... yes checking if socket is prototyped... yes checking if socket is compilable... yes checking if socket usage allowed... yes checking if socket might be used... yes checking if socketpair can be linked... yes checking if socketpair is prototyped... yes checking if socketpair is compilable... yes checking if socketpair usage allowed... yes checking if socketpair might be used... yes checking if strdup can be linked... yes checking if strdup is prototyped... yes checking if strdup is compilable... yes checking if strdup usage allowed... yes checking if strdup might be used... yes checking if strerror_r can be linked... yes checking if strerror_r is prototyped... yes checking if strerror_r is compilable... yes checking if strerror_r is glibc like... yes checking if strerror_r seems to work... yes checking if strerror_r usage allowed... yes checking if strerror_r might be used... yes checking for accept4... yes checking for eventfd... yes checking for fnmatch... yes checking for geteuid... yes checking for getpass_r... no checking for getppid... yes checking for getpwuid... yes checking for getpwuid_r... yes checking for getrlimit... yes checking for gettimeofday... yes checking for if_nametoindex... yes checking for mach_absolute_time... no checking for pipe... yes checking for pipe2... yes checking for poll... yes checking for sendmmsg... yes checking for sendmsg... yes checking for setlocale... yes checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes checking for realpath... yes checking for sched_yield... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for arpa/inet.h... (cached) yes checking if inet_ntop can be linked... yes checking if inet_ntop is prototyped... yes checking if inet_ntop is compilable... yes checking if inet_ntop seems to work... yes checking if inet_ntop usage allowed... yes checking if inet_ntop might be used... yes checking if inet_pton can be linked... yes checking if inet_pton is prototyped... yes checking if inet_pton is compilable... yes checking if inet_pton seems to work... yes checking if inet_pton usage allowed... yes checking if inet_pton might be used... yes checking if strcasecmp can be linked... yes checking if strcasecmp is prototyped... yes checking if strcasecmp is compilable... yes checking if strcasecmp usage allowed... yes checking if strcasecmp might be used... yes checking if strcmpi can be linked... no checking if strcmpi might be used... no checking if stricmp can be linked... no checking if stricmp might be used... no checking for setmode... no checking for fseeko... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether fseeko is declared... yes checking how to set a socket into non-blocking mode... fcntl O_NONBLOCK checking for perl... /usr/bin/perl checking whether to enable the threaded resolver... yes checking for pthread.h... yes checking for pthread_create... yes checking for dirent.h... yes checking for opendir... yes checking convert -I options to -isystem... yes checking whether to enable verbose strings... yes checking whether to enable SSPI support (Windows native builds only)... no checking whether to enable basic authentication method... yes checking whether to enable bearer authentication method... yes checking whether to enable digest authentication method... yes checking whether to enable kerberos authentication method... yes checking whether to enable negotiate authentication method... yes checking whether to enable aws sig methods... yes checking whether to support NTLM... yes checking whether to enable TLS-SRP authentication... yes checking whether to enable Unix domain sockets... auto checking for struct sockaddr_un.sun_path... yes checking whether to support cookies... yes checking whether to support socketpair... yes checking whether to support HTTP authentication... yes checking whether to support DoH... yes checking whether to support the MIME API... yes checking whether to support binding connections locally... yes checking whether to support the form API... yes checking whether to support date parsing... yes checking whether to support netrc parsing... yes checking whether to support progress-meter... yes checking whether to support the SHA-512/256 hash algorithm... yes checking whether to support DNS shuffling... yes checking whether to support curl_easy_option*... yes checking whether to support alt-svc... yes checking whether to support headers-api... yes checking whether to support HSTS... yes checking whether to enable HTTPS-RR support... no checking for SSL_set0_wbio... yes checking whether to support WebSockets... yes checking whether hiding of library internal symbols will actually happen... yes checking if this build supports HTTPS-proxy... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating docs/Makefile config.status: creating docs/examples/Makefile config.status: creating docs/libcurl/Makefile config.status: creating docs/libcurl/opts/Makefile config.status: creating docs/cmdline-opts/Makefile config.status: creating include/Makefile config.status: creating include/curl/Makefile config.status: creating src/Makefile config.status: creating lib/Makefile config.status: creating scripts/Makefile config.status: creating lib/libcurl.vers config.status: creating tests/Makefile config.status: creating tests/config config.status: creating tests/configurehelp.pm config.status: creating tests/certs/Makefile config.status: creating tests/data/Makefile config.status: creating tests/server/Makefile config.status: creating tests/libtest/Makefile config.status: creating tests/unit/Makefile config.status: creating tests/tunit/Makefile config.status: creating tests/client/Makefile config.status: creating tests/http/config.ini config.status: creating tests/http/Makefile config.status: creating packages/Makefile config.status: creating packages/vms/Makefile config.status: creating curl-config config.status: creating libcurl.pc config.status: creating lib/curl_config.h config.status: executing depfiles commands config.status: executing libtool commands configure: Configured to build curl/libcurl: Host setup: x86_64-pc-linux-gnu Install prefix: /usr Compiler: gcc CFLAGS: -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/curl -flto=auto -falign-functions=32 -Werror-implicit-function-declaration -Wno-system-headers CFLAGS extras: CPPFLAGS: -D_GNU_SOURCE LDFLAGS: -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -falign-functions=32 curl-config: LIBS: -lnghttp3 -lnghttp2 -lidn2 -lssh2 -lssh2 -lpsl -lssl -lcrypto -lssl -lcrypto -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.15.0 SSL: enabled (OpenSSL v3+) SSH: enabled (libssh2) zlib: enabled brotli: enabled (libbrotlidec) zstd: enabled (libzstd) GSS-API: enabled (MIT Kerberos/Heimdal) GSASL: no (libgsasl not found) TLS-SRP: enabled resolver: POSIX threaded IPv6: enabled Unix sockets: enabled IDN: enabled (libidn2) Build docs: enabled (--disable-docs) Build libcurl: Shared=yes, Static=yes Built-in manual: no (--enable-manual) --libcurl option: enabled (--disable-libcurl-option) Verbose errors: enabled (--disable-verbose) Code coverage: disabled SSPI: no (--enable-sspi) ca cert bundle: /etc/ssl/certs/ca-certificates.crt ca cert path: no ca cert embed: no ca fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) IPFS/IPNS: enabled RTSP: enabled RTMP: no (--with-librtmp) PSL: enabled Alt-svc: enabled (--disable-alt-svc) Headers API: enabled (--disable-headers-api) HSTS: enabled (--disable-hsts) HTTP1: enabled (internal) HTTP2: enabled (nghttp2) HTTP3: enabled (openssl + nghttp3) ECH: no (--enable-ech) HTTPS RR: no (--enable-httpsrr) SSLS-EXPORT: no (--enable-ssls-export) Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd configure: WARNING: HTTP3 is enabled but marked EXPERIMENTAL. Use with caution! make: Entering directory '/startdir/src/build-curl-compat/lib' make all-am make[1]: Entering directory '/startdir/src/build-curl-compat/lib' CC libcurl_la-altsvc.lo CC libcurl_la-asyn-ares.lo CC libcurl_la-amigaos.lo CC libcurl_la-asyn-base.lo CC libcurl_la-asyn-thrdd.lo CC libcurl_la-bufq.lo CC libcurl_la-bufref.lo CC libcurl_la-cf-h2-proxy.lo CC libcurl_la-cf-https-connect.lo CC libcurl_la-cf-h1-proxy.lo CC libcurl_la-cf-haproxy.lo CC libcurl_la-cfilters.lo CC libcurl_la-conncache.lo CC libcurl_la-cf-socket.lo CC libcurl_la-connect.lo CC libcurl_la-content_encoding.lo CC libcurl_la-cookie.lo CC libcurl_la-cshutdn.lo CC libcurl_la-curl_addrinfo.lo CC libcurl_la-curl_des.lo CC libcurl_la-curl_endian.lo CC libcurl_la-curl_fnmatch.lo CC libcurl_la-curl_get_line.lo CC libcurl_la-curl_gethostname.lo CC libcurl_la-curl_gssapi.lo CC libcurl_la-curl_memrchr.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_range.lo CC libcurl_la-curl_rtmp.lo CC libcurl_la-curl_sasl.lo CC libcurl_la-curl_sha512_256.lo CC libcurl_la-curl_sspi.lo CC libcurl_la-curl_threads.lo CC libcurl_la-curl_trc.lo CC libcurl_la-cw-out.lo CC libcurl_la-cw-pause.lo CC libcurl_la-dict.lo CC libcurl_la-doh.lo CC libcurl_la-dynhds.lo CC libcurl_la-easy.lo CC libcurl_la-easygetopt.lo CC libcurl_la-easyoptions.lo CC libcurl_la-escape.lo CC libcurl_la-fake_addrinfo.lo CC libcurl_la-file.lo CC libcurl_la-fileinfo.lo CC libcurl_la-fopen.lo CC libcurl_la-formdata.lo CC libcurl_la-ftp.lo CC libcurl_la-ftplistparser.lo CC libcurl_la-getenv.lo CC libcurl_la-getinfo.lo CC libcurl_la-gopher.lo CC libcurl_la-hash.lo CC libcurl_la-headers.lo CC libcurl_la-hmac.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostip6.lo CC libcurl_la-hsts.lo CC libcurl_la-http.lo CC libcurl_la-http1.lo CC libcurl_la-http2.lo CC libcurl_la-http_aws_sigv4.lo CC libcurl_la-http_chunks.lo CC libcurl_la-http_digest.lo CC libcurl_la-http_negotiate.lo CC libcurl_la-http_ntlm.lo CC libcurl_la-http_proxy.lo CC libcurl_la-httpsrr.lo CC libcurl_la-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-krb5.lo CC libcurl_la-ldap.lo CC libcurl_la-llist.lo CC libcurl_la-macos.lo CC libcurl_la-md4.lo CC libcurl_la-md5.lo CC libcurl_la-memdebug.lo CC libcurl_la-mime.lo CC libcurl_la-mprintf.lo CC libcurl_la-mqtt.lo CC libcurl_la-multi.lo CC libcurl_la-multi_ev.lo CC libcurl_la-netrc.lo CC libcurl_la-noproxy.lo CC libcurl_la-openldap.lo CC libcurl_la-parsedate.lo CC libcurl_la-pingpong.lo CC libcurl_la-pop3.lo CC libcurl_la-progress.lo CC libcurl_la-psl.lo CC libcurl_la-rand.lo CC libcurl_la-rename.lo CC libcurl_la-request.lo CC libcurl_la-rtsp.lo CC libcurl_la-select.lo CC libcurl_la-sendf.lo CC libcurl_la-setopt.lo CC libcurl_la-sha256.lo CC libcurl_la-share.lo CC libcurl_la-slist.lo CC libcurl_la-smb.lo CC libcurl_la-smtp.lo CC libcurl_la-socketpair.lo CC libcurl_la-socks.lo CC libcurl_la-socks_gssapi.lo CC libcurl_la-socks_sspi.lo CC libcurl_la-speedcheck.lo CC libcurl_la-splay.lo CC libcurl_la-strcase.lo CC libcurl_la-strdup.lo CC libcurl_la-strequal.lo CC libcurl_la-strerror.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-transfer.lo CC libcurl_la-uint-bset.lo CC libcurl_la-uint-hash.lo CC libcurl_la-uint-spbset.lo CC libcurl_la-uint-table.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-ws.lo CC libcurlu_la-altsvc.lo CC libcurlu_la-amigaos.lo CC libcurlu_la-asyn-ares.lo CC libcurlu_la-asyn-base.lo CC libcurlu_la-asyn-thrdd.lo CC libcurlu_la-bufq.lo CC libcurlu_la-bufref.lo CC libcurlu_la-cf-h1-proxy.lo CC libcurlu_la-cf-h2-proxy.lo CC libcurlu_la-cf-haproxy.lo CC libcurlu_la-cf-https-connect.lo CC libcurlu_la-cf-socket.lo CC libcurlu_la-cfilters.lo CC libcurlu_la-conncache.lo CC libcurlu_la-connect.lo CC libcurlu_la-content_encoding.lo CC libcurlu_la-cookie.lo CC libcurlu_la-cshutdn.lo CC libcurlu_la-curl_addrinfo.lo CC libcurlu_la-curl_des.lo CC libcurlu_la-curl_endian.lo CC libcurlu_la-curl_fnmatch.lo CC libcurlu_la-curl_get_line.lo CC libcurlu_la-curl_gethostname.lo CC libcurlu_la-curl_gssapi.lo CC libcurlu_la-curl_memrchr.lo CC libcurlu_la-curl_ntlm_core.lo CC libcurlu_la-curl_range.lo CC libcurlu_la-curl_rtmp.lo CC libcurlu_la-curl_sasl.lo CC libcurlu_la-curl_sha512_256.lo CC libcurlu_la-curl_sspi.lo CC libcurlu_la-curl_threads.lo CC libcurlu_la-curl_trc.lo CC libcurlu_la-cw-out.lo CC libcurlu_la-cw-pause.lo CC libcurlu_la-dict.lo CC libcurlu_la-doh.lo CC libcurlu_la-dynhds.lo CC libcurlu_la-easy.lo CC libcurlu_la-easygetopt.lo CC libcurlu_la-easyoptions.lo CC libcurlu_la-escape.lo CC libcurlu_la-fake_addrinfo.lo CC libcurlu_la-file.lo CC libcurlu_la-fileinfo.lo CC libcurlu_la-fopen.lo CC libcurlu_la-formdata.lo CC libcurlu_la-ftp.lo CC libcurlu_la-ftplistparser.lo CC libcurlu_la-getenv.lo CC libcurlu_la-getinfo.lo CC libcurlu_la-gopher.lo CC libcurlu_la-hash.lo CC libcurlu_la-headers.lo CC libcurlu_la-hmac.lo CC libcurlu_la-hostip.lo CC libcurlu_la-hostip4.lo CC libcurlu_la-hostip6.lo CC libcurlu_la-hsts.lo CC libcurlu_la-http.lo CC libcurlu_la-http1.lo CC libcurlu_la-http2.lo CC libcurlu_la-http_aws_sigv4.lo CC libcurlu_la-http_chunks.lo CC libcurlu_la-http_digest.lo CC libcurlu_la-http_negotiate.lo CC libcurlu_la-http_ntlm.lo CC libcurlu_la-http_proxy.lo CC libcurlu_la-httpsrr.lo CC libcurlu_la-idn.lo CC libcurlu_la-if2ip.lo CC libcurlu_la-imap.lo CC libcurlu_la-krb5.lo CC libcurlu_la-ldap.lo CC libcurlu_la-llist.lo CC libcurlu_la-macos.lo CC libcurlu_la-md4.lo CC libcurlu_la-md5.lo CC libcurlu_la-memdebug.lo CC libcurlu_la-mime.lo CC libcurlu_la-mprintf.lo CC libcurlu_la-mqtt.lo CC libcurlu_la-multi.lo CC libcurlu_la-multi_ev.lo CC libcurlu_la-netrc.lo CC libcurlu_la-noproxy.lo CC libcurlu_la-openldap.lo CC libcurlu_la-parsedate.lo CC libcurlu_la-pingpong.lo CC libcurlu_la-pop3.lo CC libcurlu_la-progress.lo CC libcurlu_la-psl.lo CC libcurlu_la-rand.lo CC libcurlu_la-rename.lo CC libcurlu_la-request.lo CC libcurlu_la-rtsp.lo CC libcurlu_la-select.lo CC libcurlu_la-sendf.lo CC libcurlu_la-setopt.lo CC libcurlu_la-sha256.lo CC libcurlu_la-share.lo CC libcurlu_la-slist.lo CC libcurlu_la-smb.lo CC libcurlu_la-smtp.lo CC libcurlu_la-socketpair.lo CC libcurlu_la-socks.lo CC libcurlu_la-socks_gssapi.lo CC libcurlu_la-socks_sspi.lo CC libcurlu_la-speedcheck.lo CC libcurlu_la-splay.lo CC libcurlu_la-strcase.lo CC libcurlu_la-strdup.lo CC libcurlu_la-strequal.lo CC libcurlu_la-strerror.lo CC libcurlu_la-system_win32.lo CC libcurlu_la-telnet.lo CC libcurlu_la-tftp.lo CC libcurlu_la-transfer.lo CC libcurlu_la-uint-bset.lo CC libcurlu_la-uint-hash.lo CC libcurlu_la-uint-spbset.lo CC libcurlu_la-uint-table.lo CC libcurlu_la-url.lo CC libcurlu_la-urlapi.lo CC libcurlu_la-version.lo CC libcurlu_la-ws.lo CC vauth/libcurlu_la-cleartext.lo CC vauth/libcurlu_la-cram.lo CC vauth/libcurlu_la-digest.lo CC vauth/libcurlu_la-digest_sspi.lo CC vauth/libcurlu_la-gsasl.lo CC vauth/libcurlu_la-krb5_gssapi.lo CC vauth/libcurlu_la-krb5_sspi.lo CC vauth/libcurlu_la-ntlm.lo CC vauth/libcurlu_la-ntlm_sspi.lo CC vauth/libcurlu_la-oauth2.lo CC vauth/libcurlu_la-spnego_gssapi.lo CC vauth/libcurlu_la-spnego_sspi.lo CC vauth/libcurlu_la-vauth.lo CC vtls/libcurlu_la-gtls.lo CC vtls/libcurlu_la-cipher_suite.lo CC vtls/libcurlu_la-hostcheck.lo CC vtls/libcurlu_la-keylog.lo CC vtls/libcurlu_la-mbedtls.lo CC vtls/libcurlu_la-mbedtls_threadlock.lo CC vtls/libcurlu_la-openssl.lo CC vtls/libcurlu_la-rustls.lo CC vtls/libcurlu_la-schannel.lo CC vtls/libcurlu_la-schannel_verify.lo CC vtls/libcurlu_la-vtls.lo CC vtls/libcurlu_la-vtls_scache.lo CC vtls/libcurlu_la-vtls_spack.lo CC vtls/libcurlu_la-wolfssl.lo CC vtls/libcurlu_la-x509asn1.lo CC vquic/libcurlu_la-curl_msh3.lo CC vquic/libcurlu_la-curl_ngtcp2.lo CC vquic/libcurlu_la-curl_osslq.lo CC vquic/libcurlu_la-curl_quiche.lo CC vquic/libcurlu_la-vquic.lo CC vquic/libcurlu_la-vquic-tls.lo CC vssh/libcurlu_la-libssh.lo CC vssh/libcurlu_la-libssh2.lo CC vssh/libcurlu_la-curl_path.lo CC vssh/libcurlu_la-wolfssh.lo CC curlx/libcurlu_la-base64.lo CC curlx/libcurlu_la-dynbuf.lo CC curlx/libcurlu_la-inet_ntop.lo CC curlx/libcurlu_la-inet_pton.lo CC curlx/libcurlu_la-multibyte.lo CC curlx/libcurlu_la-nonblock.lo CC curlx/libcurlu_la-strparse.lo CC curlx/libcurlu_la-timediff.lo CC curlx/libcurlu_la-timeval.lo CC curlx/libcurlu_la-version_win32.lo CC curlx/libcurlu_la-wait.lo CC curlx/libcurlu_la-warnless.lo CC curlx/libcurlu_la-winapi.lo CC vauth/libcurl_la-cleartext.lo CC vauth/libcurl_la-cram.lo CC vauth/libcurl_la-digest.lo CC vauth/libcurl_la-digest_sspi.lo CC vauth/libcurl_la-gsasl.lo CC vauth/libcurl_la-krb5_gssapi.lo CC vauth/libcurl_la-krb5_sspi.lo CC vauth/libcurl_la-ntlm.lo CC vauth/libcurl_la-ntlm_sspi.lo CC vauth/libcurl_la-oauth2.lo CC vauth/libcurl_la-spnego_gssapi.lo CC vauth/libcurl_la-spnego_sspi.lo CC vauth/libcurl_la-vauth.lo CC vtls/libcurl_la-cipher_suite.lo CC vtls/libcurl_la-gtls.lo CC vtls/libcurl_la-hostcheck.lo CC vtls/libcurl_la-keylog.lo CC vtls/libcurl_la-mbedtls.lo CC vtls/libcurl_la-mbedtls_threadlock.lo CC vtls/libcurl_la-openssl.lo CC vtls/libcurl_la-rustls.lo CC vtls/libcurl_la-schannel.lo CC vtls/libcurl_la-schannel_verify.lo CC vtls/libcurl_la-vtls.lo CC vtls/libcurl_la-vtls_scache.lo CC vtls/libcurl_la-vtls_spack.lo CC vtls/libcurl_la-wolfssl.lo CC vtls/libcurl_la-x509asn1.lo CC vquic/libcurl_la-curl_msh3.lo CC vquic/libcurl_la-curl_ngtcp2.lo CC vquic/libcurl_la-curl_osslq.lo CC vquic/libcurl_la-curl_quiche.lo CC vquic/libcurl_la-vquic.lo CC vquic/libcurl_la-vquic-tls.lo CC vssh/libcurl_la-libssh.lo CC vssh/libcurl_la-libssh2.lo CC vssh/libcurl_la-curl_path.lo CC vssh/libcurl_la-wolfssh.lo CC curlx/libcurl_la-base64.lo CC curlx/libcurl_la-dynbuf.lo CC curlx/libcurl_la-inet_ntop.lo CC curlx/libcurl_la-inet_pton.lo CC curlx/libcurl_la-multibyte.lo CC curlx/libcurl_la-nonblock.lo CC curlx/libcurl_la-strparse.lo CC curlx/libcurl_la-timediff.lo CC curlx/libcurl_la-timeval.lo CC curlx/libcurl_la-version_win32.lo CC curlx/libcurl_la-wait.lo CC curlx/libcurl_la-warnless.lo CC curlx/libcurl_la-winapi.lo CCLD libcurlu.la CCLD libcurl.la /usr/bin/nm: .libs/libcurl_la-amigaos.o: no symbols /usr/bin/nm: .libs/libcurl_la-asyn-ares.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_des.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_memrchr.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_rtmp.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_sspi.o: no symbols /usr/bin/nm: .libs/libcurl_la-fake_addrinfo.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip4.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip6.o: no symbols /usr/bin/nm: .libs/libcurl_la-httpsrr.o: no symbols /usr/bin/nm: .libs/libcurl_la-ldap.o: no symbols /usr/bin/nm: .libs/libcurl_la-macos.o: no symbols /usr/bin/nm: .libs/libcurl_la-memdebug.o: no symbols /usr/bin/nm: .libs/libcurl_la-openldap.o: no symbols /usr/bin/nm: .libs/libcurl_la-socks_sspi.o: no symbols /usr/bin/nm: .libs/libcurl_la-system_win32.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-digest_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-gsasl.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-krb5_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-ntlm_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-spnego_sspi.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-cipher_suite.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-gtls.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-mbedtls.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-mbedtls_threadlock.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-rustls.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-schannel.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-schannel_verify.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-vtls_spack.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-wolfssl.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-x509asn1.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_msh3.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_ngtcp2.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_quiche.o: no symbols /usr/bin/nm: vssh/.libs/libcurl_la-libssh.o: no symbols /usr/bin/nm: vssh/.libs/libcurl_la-wolfssh.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-inet_ntop.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-inet_pton.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-multibyte.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-version_win32.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-winapi.o: no symbols make[1]: Leaving directory '/startdir/src/build-curl-compat/lib' make: Leaving directory '/startdir/src/build-curl-compat/lib' checking whether to enable maintainer-specific portions of Makefiles... no checking whether make supports nested variables... yes checking whether to enable debug build options... no checking whether to enable compiler optimizer... (assumed) yes checking whether to enable strict compiler warnings... no checking whether to enable compiler warnings as errors... no checking whether to enable curl debug memory tracking... no checking whether to enable hiding of library internal symbols... yes checking whether to enable c-ares for DNS lookups... no checking whether to disable dependency on -lrt... (assumed no) checking whether to enable HTTPSRR support... no checking whether to enable ECH support... no checking whether to enable SSL session export support... no checking for path separator... : checking for sed... /usr/bin/sed checking for grep... /usr/bin/grep checking that grep -E works... yes checking for ar... /usr/bin/ar checking for a BSD-compatible install... /usr/bin/install -c checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether the compiler supports GNU C... yes checking whether gcc accepts -g... yes checking for gcc option to enable C11 features... none needed checking whether gcc understands -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for stdio.h... yes checking for stdlib.h... yes checking for string.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for strings.h... yes checking for sys/stat.h... yes checking for sys/types.h... yes checking for unistd.h... yes checking for stdatomic.h... yes checking if _Atomic is available... yes checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for code coverage support... no checking whether sleep supports fractional seconds... yes checking filesystem timestamp resolution... 0.01 checking whether build environment is sane... yes checking for a race-free mkdir -p... /usr/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports the include directive... yes (GNU style) checking xargs -n works... yes checking whether UID '1002' is supported by ustar format... yes checking whether GID '1002' is supported by ustar format... yes checking how to create a ustar tar archive... gnutar checking dependency style of gcc... gcc3 checking curl version... 8.15.0 checking for httpd... no checking for apache2... no checking for apxs... no configure: httpd/apache2 not in PATH, http tests disabled configure: apxs not in PATH, http tests disabled checking for nghttpx... no checking for caddy... no checking build system type... x86_64-pc-linux-gnu checking host system type... x86_64-pc-linux-gnu checking for egrep -e... /usr/bin/grep -E checking if OS is AIX (to define _ALL_SOURCE)... no checking if _THREAD_SAFE is already defined... no checking if _THREAD_SAFE is actually needed... no checking if _THREAD_SAFE is onwards defined... no checking if _REENTRANT is already defined... no checking if _REENTRANT is actually needed... no checking if _REENTRANT is onwards defined... no checking for gcc option to enable large file support... none needed checking how to print strings... printf checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for grep that handles long lines and -e... (cached) /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for file... file checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for ranlib... ranlib checking for archiver @FILE support... @ checking for strip... strip checking command to parse /usr/bin/nm -B output from gcc object... ok checking for sysroot... no checking for a working dd... /usr/bin/dd checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1 checking for mt... no checking if : is a manifest tool... no checking for dlfcn.h... yes checking which variant of shared library versioning to provide... (default) aix checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether to build shared libraries with -version-info... yes checking whether to build shared libraries with -no-undefined... no checking whether to build shared libraries with -mimpure-text... no checking whether to build shared libraries with PIC... yes checking whether to build static libraries with PIC... yes checking whether to build shared libraries only... no checking whether to build static libraries only... no checking for windres... no checking if cpp -P is needed... yes checking if cpp -P works... yes checking if compiler is DEC/Compaq/HP C... no checking if compiler is HP-UX C... no checking if compiler is IBM C... no checking if compiler is Intel C... no checking if compiler is clang... no checking if compiler is GNU C... yes checking compiler version... gcc '1501' (raw: '15.1.1') checking if compiler is SunPro C... no checking if compiler is Tiny C... no checking whether build target is a native Windows one... no checking if compiler accepts some basic options... yes configure: compiler options added: -Werror-implicit-function-declaration checking if compiler optimizer assumed setting might be used... no checking if compiler accepts strict warning options... yes configure: compiler options added: -Wno-system-headers checking if compiler halts on compilation errors... yes checking if compiler halts on negative sized arrays... yes checking if compiler halts on function prototype mismatch... yes checking if compiler supports hiding library internal symbols... yes checking whether build target supports Win32 crypto API... no checking whether to build libcurl and curl in "unity" mode... no checking whether to support http... yes checking whether to support ftp... yes checking whether to support file... yes checking whether to support IPFS... yes checking whether to support ldap... no checking whether to support ldaps... no checking whether to support rtsp... yes checking whether to support proxies... yes checking whether to support dict... yes checking whether to support telnet... yes checking whether to support tftp... yes checking whether to support pop3... yes checking whether to support imap... yes checking whether to support smb... yes checking whether to support smtp... yes checking whether to support gopher... yes checking whether to support mqtt... no checking whether to provide built-in manual... no checking whether to build documentation... yes checking whether to enable generation of C code... yes checking whether to use libgcc... no checking if X/Open network library is required... no checking for gethostbyname... yes checking whether build target is a native Windows one... (cached) no checking for proto/bsdsocket.h... no checking for connect in libraries... yes checking for sys/types.h... (cached) yes checking for monotonic clock_gettime... yes checking for clock_gettime in libraries... no additional lib required checking if monotonic clock_gettime works... yes checking for sys/types.h... (cached) yes checking for raw monotonic clock_gettime... yes checking for pkg-config... /usr/bin/pkg-config checking for zlib options with pkg-config... found checking for zlib.h... yes configure: found both libz and libz.h header checking for BrotliDecoderDecompress in -lbrotlidec... yes checking for brotli/decode.h... yes checking for ZSTD_createDStream in -lzstd... yes checking for zstd.h... yes checking whether to enable IPv6... yes checking if struct sockaddr_in6 has sin6_scope_id member... yes checking if argv can be written to... yes checking if GSS-API support is requested... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking for gss.h... no checking for gssapi/gssapi.h... yes checking for gssapi/gssapi_generic.h... yes checking for gssapi/gssapi_krb5.h... yes checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for mit-krb5-gssapi options with pkg-config... found checking if we can link against GSS-API library... yes checking whether to enable Windows native SSL/TLS... no checking whether to enable Amiga native SSL/TLS (AmiSSL v5)... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for gnutls options with pkg-config... found checking for gnutls_x509_crt_get_dn2 in -lgnutls... yes configure: detected GnuTLS version 3.8.10 checking for nettle_MD5Init in -lgnutls... no checking for nettle_MD5Init in -lnettle... yes checking for gnutls_srp_verifier in -lgnutls... yes configure: built with one SSL backend checking default CA cert bundle/path... /etc/ssl/certs/ca-certificates.crt checking whether to use built-in CA store of SSL library... no checking CA cert bundle path to embed in the curl tool... no checking for pkg-config... (cached) /usr/bin/pkg-config checking for libpsl options with pkg-config... found checking for psl_builtin in -lpsl... yes checking for libpsl.h... yes checking for library containing gsasl_init... no configure: WARNING: libgsasl was not found checking for pkg-config... (cached) /usr/bin/pkg-config checking for libssh2 options with pkg-config... found checking for libssh2_free in -lssh2... yes checking for libssh2.h... yes checking for RTMP_Init in -lrtmp... no checking whether versioned symbols are wanted... no checking whether to build with libidn2... (assumed) yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libidn2 options with pkg-config... found configure: pkg-config: IDN_LIBS: "-lidn2" configure: pkg-config: IDN_LDFLAGS: "" configure: pkg-config: IDN_CPPFLAGS: "" configure: pkg-config: IDN_DIR: "" checking if idn2_lookup_ul can be linked... yes checking for idn2.h... yes checking for pkg-config... (cached) /usr/bin/pkg-config checking for libnghttp2 options with pkg-config... found configure: -l is -lnghttp2 configure: -I is configure: -L is checking for nghttp2_session_get_stream_local_window_size in -lnghttp2... yes checking for nghttp2/nghttp2.h... yes configure: Added to CURL_LIBRARY_PATH checking for sys/types.h... (cached) yes checking for sys/select.h... yes checking for sys/ioctl.h... yes checking for unistd.h... (cached) yes checking for arpa/inet.h... yes checking for net/if.h... yes checking for netinet/in.h... yes checking for netinet/in6.h... no checking for sys/un.h... yes checking for linux/tcp.h... yes checking for netinet/tcp.h... yes checking for netinet/udp.h... yes checking for netdb.h... yes checking for sys/sockio.h... no checking for sys/param.h... yes checking for termios.h... yes checking for termio.h... yes checking for fcntl.h... yes checking for io.h... no checking for pwd.h... yes checking for utime.h... yes checking for sys/utime.h... no checking for sys/poll.h... yes checking for poll.h... yes checking for sys/resource.h... yes checking for libgen.h... yes checking for locale.h... yes checking for stdbool.h... yes checking for stdint.h... (cached) yes checking for sys/filio.h... no checking for sys/eventfd.h... yes checking for an ANSI C-conforming const... yes checking for size_t... yes checking for sys/types.h... (cached) yes checking for struct timeval... yes checking run-time libs availability... fine checking size of size_t... 8 checking size of long... 8 checking size of int... 4 checking size of time_t... 8 checking size of off_t... 8 checking size of curl_off_t... 8 checking size of curl_socket_t... 4 checking for long long... yes checking for ssize_t... yes checking for bool... yes checking for sa_family_t... yes checking for suseconds_t... yes checking if time_t is unsigned... no checking for struct sockaddr_storage... yes checking for sys/select.h... (cached) yes checking for select... yes checking for sys/types.h... (cached) yes checking for recv... yes checking for sys/types.h... (cached) yes checking for send... yes checking for sys/types.h... (cached) yes checking for MSG_NOSIGNAL... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking if alarm can be linked... yes checking if alarm is prototyped... yes checking if alarm is compilable... yes checking if alarm usage allowed... yes checking if alarm might be used... yes checking for sys/types.h... (cached) yes checking for strings.h... (cached) yes checking for sys/types.h... (cached) yes checking for libgen.h... (cached) yes checking if basename can be linked... yes checking if basename is prototyped... yes checking if basename is compilable... yes checking if basename usage allowed... yes checking if basename might be used... yes checking if closesocket can be linked... no checking if closesocket might be used... no checking for sys/types.h... (cached) yes checking if CloseSocket can be linked... no checking if CloseSocket might be used... no checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for fcntl.h... (cached) yes checking if fcntl can be linked... yes checking if fcntl is prototyped... yes checking if fcntl is compilable... yes checking if fcntl usage allowed... yes checking if fcntl might be used... yes checking if fcntl O_NONBLOCK is compilable... yes checking if fcntl O_NONBLOCK usage allowed... yes checking if fcntl O_NONBLOCK might be used... yes checking whether build target is a native Windows one... (cached) no checking for sys/types.h... (cached) yes checking for netdb.h... (cached) yes checking if freeaddrinfo can be linked... yes checking if freeaddrinfo is prototyped... yes checking if freeaddrinfo is compilable... yes checking if freeaddrinfo usage allowed... yes checking if freeaddrinfo might be used... yes checking for sys/types.h... (cached) yes checking for sys/xattr.h... yes checking if fsetxattr can be linked... yes checking if fsetxattr is prototyped... yes checking if fsetxattr takes 5 args.... yes checking if fsetxattr is compilable... yes checking if fsetxattr usage allowed... yes checking if fsetxattr might be used... yes checking if ftruncate can be linked... yes checking if ftruncate is prototyped... yes checking if ftruncate is compilable... yes checking if ftruncate usage allowed... yes checking if ftruncate might be used... yes checking for sys/types.h... (cached) yes checking if getaddrinfo can be linked... yes checking if getaddrinfo is prototyped... yes checking if getaddrinfo is compilable... yes checking if getaddrinfo seems to work... yes checking if getaddrinfo usage allowed... yes checking if getaddrinfo might be used... yes checking if getaddrinfo is threadsafe... yes checking if gethostbyname_r can be linked... yes checking if gethostbyname_r is prototyped... yes checking if gethostbyname_r takes 3 args.... no checking if gethostbyname_r takes 5 args.... no checking if gethostbyname_r takes 6 args.... yes checking if gethostbyname_r is compilable... yes checking if gethostbyname_r usage allowed... yes checking if gethostbyname_r might be used... yes checking if gethostname can be linked... yes checking if gethostname is prototyped... yes checking if gethostname is compilable... yes checking for gethostname arg 2 data type... size_t checking if gethostname usage allowed... yes checking if gethostname might be used... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for ifaddrs.h... yes checking if getifaddrs can be linked... yes checking if getifaddrs is prototyped... yes checking if getifaddrs is compilable... yes checking if getifaddrs seems to work... yes checking if getifaddrs usage allowed... yes checking if getifaddrs might be used... yes checking if getpeername can be linked... yes checking if getpeername is prototyped... yes checking if getpeername is compilable... yes checking if getpeername usage allowed... yes checking if getpeername might be used... yes checking if getsockname can be linked... yes checking if getsockname is prototyped... yes checking if getsockname is compilable... yes checking if getsockname usage allowed... yes checking if getsockname might be used... yes checking for sys/types.h... (cached) yes checking if gmtime_r can be linked... yes checking if gmtime_r is prototyped... yes checking if gmtime_r is compilable... yes checking if gmtime_r seems to work... yes checking if gmtime_r usage allowed... yes checking if gmtime_r might be used... yes checking for sys/types.h... (cached) yes checking for unistd.h... (cached) yes checking for sys/ioctl.h... (cached) yes checking for stropts.h... no checking if ioctl can be linked... yes checking if ioctl is prototyped... yes checking if ioctl is compilable... yes checking if ioctl usage allowed... yes checking if ioctl might be used... yes checking if ioctl FIONBIO is compilable... yes checking if ioctl FIONBIO usage allowed... yes checking if ioctl FIONBIO might be used... yes checking if ioctl SIOCGIFADDR is compilable... yes checking if ioctl SIOCGIFADDR usage allowed... yes checking if ioctl SIOCGIFADDR might be used... yes checking if ioctlsocket can be linked... no checking if ioctlsocket might be used... no checking if IoctlSocket can be linked... no checking if IoctlSocket might be used... no checking if memrchr can be linked... yes checking if memrchr is prototyped... yes checking if memrchr is compilable... yes checking if memrchr usage allowed... yes checking if memrchr might be used... yes checking for sys/types.h... (cached) yes checking if sigaction can be linked... yes checking if sigaction is prototyped... yes checking if sigaction is compilable... yes checking if sigaction usage allowed... yes checking if sigaction might be used... yes checking if siginterrupt can be linked... yes checking if siginterrupt is prototyped... yes checking if siginterrupt is compilable... yes checking if siginterrupt usage allowed... yes checking if siginterrupt might be used... yes checking if signal can be linked... yes checking if signal is prototyped... yes checking if signal is compilable... yes checking if signal usage allowed... yes checking if signal might be used... yes checking for sys/types.h... (cached) yes checking if sigsetjmp can be linked... no checking if sigsetjmp seems a macro... yes checking if sigsetjmp is compilable... yes checking if sigsetjmp usage allowed... yes checking if sigsetjmp might be used... yes checking if socket can be linked... yes checking if socket is prototyped... yes checking if socket is compilable... yes checking if socket usage allowed... yes checking if socket might be used... yes checking if socketpair can be linked... yes checking if socketpair is prototyped... yes checking if socketpair is compilable... yes checking if socketpair usage allowed... yes checking if socketpair might be used... yes checking if strdup can be linked... yes checking if strdup is prototyped... yes checking if strdup is compilable... yes checking if strdup usage allowed... yes checking if strdup might be used... yes checking if strerror_r can be linked... yes checking if strerror_r is prototyped... yes checking if strerror_r is compilable... yes checking if strerror_r is glibc like... yes checking if strerror_r seems to work... yes checking if strerror_r usage allowed... yes checking if strerror_r might be used... yes checking for accept4... yes checking for eventfd... yes checking for fnmatch... yes checking for geteuid... yes checking for getpass_r... no checking for getppid... yes checking for getpwuid... yes checking for getpwuid_r... yes checking for getrlimit... yes checking for gettimeofday... yes checking for if_nametoindex... yes checking for mach_absolute_time... no checking for pipe... yes checking for pipe2... yes checking for poll... yes checking for sendmmsg... yes checking for sendmsg... yes checking for setlocale... yes checking for setrlimit... yes checking for snprintf... yes checking for utime... yes checking for utimes... yes checking for realpath... yes checking for sched_yield... yes checking for sys/types.h... (cached) yes checking for netinet/in.h... (cached) yes checking for arpa/inet.h... (cached) yes checking if inet_ntop can be linked... yes checking if inet_ntop is prototyped... yes checking if inet_ntop is compilable... yes checking if inet_ntop seems to work... yes checking if inet_ntop usage allowed... yes checking if inet_ntop might be used... yes checking if inet_pton can be linked... yes checking if inet_pton is prototyped... yes checking if inet_pton is compilable... yes checking if inet_pton seems to work... yes checking if inet_pton usage allowed... yes checking if inet_pton might be used... yes checking if strcasecmp can be linked... yes checking if strcasecmp is prototyped... yes checking if strcasecmp is compilable... yes checking if strcasecmp usage allowed... yes checking if strcasecmp might be used... yes checking if strcmpi can be linked... no checking if strcmpi might be used... no checking if stricmp can be linked... no checking if stricmp might be used... no checking for setmode... no checking for fseeko... yes checking for gcc options needed to detect all undeclared functions... none needed checking whether fseeko is declared... yes checking how to set a socket into non-blocking mode... fcntl O_NONBLOCK checking for perl... /usr/bin/perl checking whether to enable the threaded resolver... yes checking for pthread.h... yes checking for pthread_create... yes checking for dirent.h... yes checking for opendir... yes checking convert -I options to -isystem... yes checking whether to enable verbose strings... yes checking whether to enable SSPI support (Windows native builds only)... no checking whether to enable basic authentication method... yes checking whether to enable bearer authentication method... yes checking whether to enable digest authentication method... yes checking whether to enable kerberos authentication method... yes checking whether to enable negotiate authentication method... yes checking whether to enable aws sig methods... yes checking whether to support NTLM... yes checking whether to enable TLS-SRP authentication... yes checking whether to enable Unix domain sockets... auto checking for struct sockaddr_un.sun_path... yes checking whether to support cookies... yes checking whether to support socketpair... yes checking whether to support HTTP authentication... yes checking whether to support DoH... yes checking whether to support the MIME API... yes checking whether to support binding connections locally... yes checking whether to support the form API... yes checking whether to support date parsing... yes checking whether to support netrc parsing... yes checking whether to support progress-meter... yes checking whether to support the SHA-512/256 hash algorithm... yes checking whether to support DNS shuffling... yes checking whether to support curl_easy_option*... yes checking whether to support alt-svc... yes checking whether to support headers-api... yes checking whether to support HSTS... yes checking whether to enable HTTPS-RR support... no checking whether to support WebSockets... yes checking whether hiding of library internal symbols will actually happen... yes checking if this build supports HTTPS-proxy... yes checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating docs/Makefile config.status: creating docs/examples/Makefile config.status: creating docs/libcurl/Makefile config.status: creating docs/libcurl/opts/Makefile config.status: creating docs/cmdline-opts/Makefile config.status: creating include/Makefile config.status: creating include/curl/Makefile config.status: creating src/Makefile config.status: creating lib/Makefile config.status: creating scripts/Makefile config.status: creating lib/libcurl.vers config.status: creating tests/Makefile config.status: creating tests/config config.status: creating tests/configurehelp.pm config.status: creating tests/certs/Makefile config.status: creating tests/data/Makefile config.status: creating tests/server/Makefile config.status: creating tests/libtest/Makefile config.status: creating tests/unit/Makefile config.status: creating tests/tunit/Makefile config.status: creating tests/client/Makefile config.status: creating tests/http/config.ini config.status: creating tests/http/Makefile config.status: creating packages/Makefile config.status: creating packages/vms/Makefile config.status: creating curl-config config.status: creating libcurl.pc config.status: creating lib/curl_config.h config.status: executing depfiles commands config.status: executing libtool commands configure: Configured to build curl/libcurl: Host setup: x86_64-pc-linux-gnu Install prefix: /usr Compiler: gcc CFLAGS: -march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/curl -flto=auto -falign-functions=32 -Werror-implicit-function-declaration -Wno-system-headers CFLAGS extras: CPPFLAGS: -D_GNU_SOURCE -isystem /usr/include/p11-kit-1 LDFLAGS: -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -falign-functions=32 curl-config: LIBS: -lnghttp2 -lidn2 -lssh2 -lssh2 -lpsl -lnettle -lgnutls -lgssapi_krb5 -lzstd -lbrotlidec -lz curl version: 8.15.0 SSL: enabled (GnuTLS) SSH: enabled (libssh2) zlib: enabled brotli: enabled (libbrotlidec) zstd: enabled (libzstd) GSS-API: enabled (MIT Kerberos/Heimdal) GSASL: no (libgsasl not found) TLS-SRP: enabled resolver: POSIX threaded IPv6: enabled Unix sockets: enabled IDN: enabled (libidn2) Build docs: enabled (--disable-docs) Build libcurl: Shared=yes, Static=yes Built-in manual: no (--enable-manual) --libcurl option: enabled (--disable-libcurl-option) Verbose errors: enabled (--disable-verbose) Code coverage: disabled SSPI: no (--enable-sspi) ca cert bundle: /etc/ssl/certs/ca-certificates.crt ca cert path: no ca cert embed: no ca fallback: no LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib) LDAPS: no (--enable-ldaps) IPFS/IPNS: enabled RTSP: enabled RTMP: no (--with-librtmp) PSL: enabled Alt-svc: enabled (--disable-alt-svc) Headers API: enabled (--disable-headers-api) HSTS: enabled (--disable-hsts) HTTP1: enabled (internal) HTTP2: enabled (nghttp2) HTTP3: no (--with-ngtcp2 --with-nghttp3, --with-quiche, --with-openssl-quic, --with-msh3) ECH: no (--enable-ech) HTTPS RR: no (--enable-httpsrr) SSLS-EXPORT: no (--enable-ssls-export) Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd make: Entering directory '/startdir/src/build-curl-gnutls/lib' make all-am make[1]: Entering directory '/startdir/src/build-curl-gnutls/lib' CC libcurl_la-altsvc.lo CC libcurl_la-amigaos.lo CC libcurl_la-asyn-base.lo CC libcurl_la-asyn-ares.lo CC libcurl_la-asyn-thrdd.lo CC libcurl_la-bufq.lo CC libcurl_la-bufref.lo CC libcurl_la-cf-h1-proxy.lo CC libcurl_la-cf-h2-proxy.lo CC libcurl_la-cf-haproxy.lo CC libcurl_la-cfilters.lo CC libcurl_la-cf-https-connect.lo CC libcurl_la-cf-socket.lo CC libcurl_la-conncache.lo CC libcurl_la-connect.lo CC libcurl_la-content_encoding.lo CC libcurl_la-cookie.lo CC libcurl_la-cshutdn.lo CC libcurl_la-curl_addrinfo.lo CC libcurl_la-curl_des.lo CC libcurl_la-curl_endian.lo CC libcurl_la-curl_fnmatch.lo CC libcurl_la-curl_get_line.lo CC libcurl_la-curl_gethostname.lo CC libcurl_la-curl_gssapi.lo CC libcurl_la-curl_memrchr.lo CC libcurl_la-curl_ntlm_core.lo CC libcurl_la-curl_range.lo CC libcurl_la-curl_rtmp.lo CC libcurl_la-curl_sasl.lo CC libcurl_la-curl_sha512_256.lo CC libcurl_la-curl_sspi.lo CC libcurl_la-curl_threads.lo CC libcurl_la-curl_trc.lo CC libcurl_la-cw-out.lo CC libcurl_la-cw-pause.lo CC libcurl_la-dict.lo CC libcurl_la-doh.lo CC libcurl_la-dynhds.lo CC libcurl_la-easy.lo CC libcurl_la-easygetopt.lo CC libcurl_la-easyoptions.lo CC libcurl_la-escape.lo CC libcurl_la-fake_addrinfo.lo CC libcurl_la-file.lo CC libcurl_la-fileinfo.lo CC libcurl_la-fopen.lo CC libcurl_la-formdata.lo CC libcurl_la-ftp.lo CC libcurl_la-ftplistparser.lo CC libcurl_la-getenv.lo CC libcurl_la-getinfo.lo CC libcurl_la-gopher.lo CC libcurl_la-hash.lo CC libcurl_la-headers.lo CC libcurl_la-hmac.lo CC libcurl_la-hostip4.lo CC libcurl_la-hostip.lo CC libcurl_la-hostip6.lo CC libcurl_la-hsts.lo CC libcurl_la-http.lo CC libcurl_la-http1.lo CC libcurl_la-http2.lo CC libcurl_la-http_aws_sigv4.lo CC libcurl_la-http_chunks.lo CC libcurl_la-http_digest.lo CC libcurl_la-http_negotiate.lo CC libcurl_la-http_ntlm.lo CC libcurl_la-http_proxy.lo CC libcurl_la-httpsrr.lo CC libcurl_la-idn.lo CC libcurl_la-if2ip.lo CC libcurl_la-imap.lo CC libcurl_la-krb5.lo CC libcurl_la-ldap.lo CC libcurl_la-llist.lo CC libcurl_la-macos.lo CC libcurl_la-md4.lo CC libcurl_la-md5.lo CC libcurl_la-memdebug.lo CC libcurl_la-mime.lo CC libcurl_la-mprintf.lo CC libcurl_la-mqtt.lo CC libcurl_la-multi.lo CC libcurl_la-multi_ev.lo CC libcurl_la-netrc.lo CC libcurl_la-noproxy.lo CC libcurl_la-openldap.lo CC libcurl_la-parsedate.lo CC libcurl_la-pingpong.lo CC libcurl_la-pop3.lo CC libcurl_la-progress.lo CC libcurl_la-psl.lo CC libcurl_la-rand.lo CC libcurl_la-rename.lo CC libcurl_la-rtsp.lo CC libcurl_la-request.lo CC libcurl_la-select.lo CC libcurl_la-sendf.lo CC libcurl_la-setopt.lo CC libcurl_la-sha256.lo CC libcurl_la-share.lo CC libcurl_la-slist.lo CC libcurl_la-smb.lo CC libcurl_la-smtp.lo CC libcurl_la-socketpair.lo CC libcurl_la-socks.lo CC libcurl_la-socks_gssapi.lo CC libcurl_la-socks_sspi.lo CC libcurl_la-speedcheck.lo CC libcurl_la-splay.lo CC libcurl_la-strcase.lo CC libcurl_la-strdup.lo CC libcurl_la-strequal.lo CC libcurl_la-strerror.lo CC libcurl_la-system_win32.lo CC libcurl_la-telnet.lo CC libcurl_la-tftp.lo CC libcurl_la-transfer.lo CC libcurl_la-uint-bset.lo CC libcurl_la-uint-hash.lo CC libcurl_la-uint-spbset.lo CC libcurl_la-uint-table.lo CC libcurl_la-url.lo CC libcurl_la-urlapi.lo CC libcurl_la-version.lo CC libcurl_la-ws.lo CC libcurlu_la-altsvc.lo CC libcurlu_la-amigaos.lo CC libcurlu_la-asyn-ares.lo CC libcurlu_la-asyn-base.lo CC libcurlu_la-asyn-thrdd.lo CC libcurlu_la-bufq.lo CC libcurlu_la-bufref.lo CC libcurlu_la-cf-h1-proxy.lo CC libcurlu_la-cf-h2-proxy.lo CC libcurlu_la-cf-haproxy.lo CC libcurlu_la-cf-https-connect.lo CC libcurlu_la-cf-socket.lo CC libcurlu_la-cfilters.lo CC libcurlu_la-conncache.lo CC libcurlu_la-connect.lo CC libcurlu_la-content_encoding.lo CC libcurlu_la-cookie.lo CC libcurlu_la-cshutdn.lo CC libcurlu_la-curl_addrinfo.lo CC libcurlu_la-curl_des.lo CC libcurlu_la-curl_endian.lo CC libcurlu_la-curl_fnmatch.lo CC libcurlu_la-curl_get_line.lo CC libcurlu_la-curl_gethostname.lo CC libcurlu_la-curl_gssapi.lo CC libcurlu_la-curl_memrchr.lo CC libcurlu_la-curl_ntlm_core.lo CC libcurlu_la-curl_range.lo CC libcurlu_la-curl_rtmp.lo CC libcurlu_la-curl_sasl.lo CC libcurlu_la-curl_sha512_256.lo CC libcurlu_la-curl_sspi.lo CC libcurlu_la-curl_threads.lo CC libcurlu_la-curl_trc.lo CC libcurlu_la-cw-pause.lo CC libcurlu_la-cw-out.lo CC libcurlu_la-dict.lo CC libcurlu_la-doh.lo CC libcurlu_la-dynhds.lo CC libcurlu_la-easy.lo CC libcurlu_la-easygetopt.lo CC libcurlu_la-easyoptions.lo CC libcurlu_la-escape.lo CC libcurlu_la-fake_addrinfo.lo CC libcurlu_la-file.lo CC libcurlu_la-fileinfo.lo CC libcurlu_la-fopen.lo CC libcurlu_la-formdata.lo CC libcurlu_la-ftp.lo CC libcurlu_la-ftplistparser.lo CC libcurlu_la-getenv.lo CC libcurlu_la-getinfo.lo CC libcurlu_la-gopher.lo CC libcurlu_la-hash.lo CC libcurlu_la-headers.lo CC libcurlu_la-hmac.lo CC libcurlu_la-hostip.lo CC libcurlu_la-hostip4.lo CC libcurlu_la-hostip6.lo CC libcurlu_la-hsts.lo CC libcurlu_la-http.lo CC libcurlu_la-http1.lo CC libcurlu_la-http_aws_sigv4.lo CC libcurlu_la-http2.lo CC libcurlu_la-http_chunks.lo CC libcurlu_la-http_digest.lo CC libcurlu_la-http_negotiate.lo CC libcurlu_la-http_ntlm.lo CC libcurlu_la-http_proxy.lo CC libcurlu_la-httpsrr.lo CC libcurlu_la-idn.lo CC libcurlu_la-if2ip.lo CC libcurlu_la-imap.lo CC libcurlu_la-krb5.lo CC libcurlu_la-ldap.lo CC libcurlu_la-llist.lo CC libcurlu_la-macos.lo CC libcurlu_la-md4.lo CC libcurlu_la-md5.lo CC libcurlu_la-memdebug.lo CC libcurlu_la-mime.lo CC libcurlu_la-mprintf.lo CC libcurlu_la-mqtt.lo CC libcurlu_la-multi.lo CC libcurlu_la-multi_ev.lo CC libcurlu_la-netrc.lo CC libcurlu_la-noproxy.lo CC libcurlu_la-openldap.lo CC libcurlu_la-parsedate.lo CC libcurlu_la-pingpong.lo CC libcurlu_la-pop3.lo CC libcurlu_la-progress.lo CC libcurlu_la-psl.lo CC libcurlu_la-rand.lo CC libcurlu_la-rename.lo CC libcurlu_la-request.lo CC libcurlu_la-rtsp.lo CC libcurlu_la-select.lo CC libcurlu_la-sendf.lo CC libcurlu_la-setopt.lo CC libcurlu_la-sha256.lo CC libcurlu_la-share.lo CC libcurlu_la-slist.lo CC libcurlu_la-smb.lo CC libcurlu_la-socketpair.lo CC libcurlu_la-smtp.lo CC libcurlu_la-socks.lo CC libcurlu_la-socks_gssapi.lo CC libcurlu_la-socks_sspi.lo CC libcurlu_la-speedcheck.lo CC libcurlu_la-splay.lo CC libcurlu_la-strdup.lo CC libcurlu_la-strcase.lo CC libcurlu_la-strequal.lo CC libcurlu_la-strerror.lo CC libcurlu_la-system_win32.lo CC libcurlu_la-telnet.lo CC libcurlu_la-tftp.lo CC libcurlu_la-transfer.lo CC libcurlu_la-uint-bset.lo CC libcurlu_la-uint-hash.lo CC libcurlu_la-uint-spbset.lo CC libcurlu_la-uint-table.lo CC libcurlu_la-url.lo CC libcurlu_la-urlapi.lo CC libcurlu_la-version.lo CC libcurlu_la-ws.lo CC vauth/libcurlu_la-cleartext.lo CC vauth/libcurlu_la-cram.lo CC vauth/libcurlu_la-digest.lo CC vauth/libcurlu_la-digest_sspi.lo CC vauth/libcurlu_la-gsasl.lo CC vauth/libcurlu_la-krb5_gssapi.lo CC vauth/libcurlu_la-krb5_sspi.lo CC vauth/libcurlu_la-ntlm.lo CC vauth/libcurlu_la-ntlm_sspi.lo CC vauth/libcurlu_la-oauth2.lo CC vauth/libcurlu_la-spnego_gssapi.lo CC vauth/libcurlu_la-spnego_sspi.lo CC vauth/libcurlu_la-vauth.lo CC vtls/libcurlu_la-cipher_suite.lo CC vtls/libcurlu_la-gtls.lo CC vtls/libcurlu_la-hostcheck.lo CC vtls/libcurlu_la-keylog.lo CC vtls/libcurlu_la-mbedtls.lo CC vtls/libcurlu_la-mbedtls_threadlock.lo CC vtls/libcurlu_la-openssl.lo CC vtls/libcurlu_la-rustls.lo CC vtls/libcurlu_la-schannel.lo CC vtls/libcurlu_la-schannel_verify.lo CC vtls/libcurlu_la-vtls.lo CC vtls/libcurlu_la-vtls_scache.lo CC vtls/libcurlu_la-vtls_spack.lo CC vtls/libcurlu_la-wolfssl.lo CC vtls/libcurlu_la-x509asn1.lo CC vquic/libcurlu_la-curl_msh3.lo CC vquic/libcurlu_la-curl_ngtcp2.lo CC vquic/libcurlu_la-curl_osslq.lo CC vquic/libcurlu_la-curl_quiche.lo CC vquic/libcurlu_la-vquic.lo CC vquic/libcurlu_la-vquic-tls.lo CC vssh/libcurlu_la-libssh.lo CC vssh/libcurlu_la-libssh2.lo CC vssh/libcurlu_la-curl_path.lo CC vssh/libcurlu_la-wolfssh.lo CC curlx/libcurlu_la-base64.lo CC curlx/libcurlu_la-dynbuf.lo CC curlx/libcurlu_la-inet_ntop.lo CC curlx/libcurlu_la-inet_pton.lo CC curlx/libcurlu_la-multibyte.lo CC curlx/libcurlu_la-nonblock.lo CC curlx/libcurlu_la-strparse.lo CC curlx/libcurlu_la-timediff.lo CC curlx/libcurlu_la-timeval.lo CC curlx/libcurlu_la-version_win32.lo CC curlx/libcurlu_la-wait.lo CC curlx/libcurlu_la-warnless.lo CC curlx/libcurlu_la-winapi.lo CC vauth/libcurl_la-cleartext.lo CC vauth/libcurl_la-cram.lo CC vauth/libcurl_la-digest.lo CC vauth/libcurl_la-digest_sspi.lo CC vauth/libcurl_la-gsasl.lo CC vauth/libcurl_la-krb5_gssapi.lo CC vauth/libcurl_la-krb5_sspi.lo CC vauth/libcurl_la-ntlm.lo CC vauth/libcurl_la-ntlm_sspi.lo CC vauth/libcurl_la-oauth2.lo CC vauth/libcurl_la-spnego_gssapi.lo CC vauth/libcurl_la-spnego_sspi.lo CC vauth/libcurl_la-vauth.lo CC vtls/libcurl_la-cipher_suite.lo CC vtls/libcurl_la-gtls.lo CC vtls/libcurl_la-hostcheck.lo CC vtls/libcurl_la-keylog.lo CC vtls/libcurl_la-mbedtls.lo CC vtls/libcurl_la-mbedtls_threadlock.lo CC vtls/libcurl_la-openssl.lo CC vtls/libcurl_la-rustls.lo CC vtls/libcurl_la-schannel.lo CC vtls/libcurl_la-schannel_verify.lo CC vtls/libcurl_la-vtls.lo CC vtls/libcurl_la-vtls_scache.lo CC vtls/libcurl_la-vtls_spack.lo CC vtls/libcurl_la-wolfssl.lo CC vtls/libcurl_la-x509asn1.lo CC vquic/libcurl_la-curl_msh3.lo CC vquic/libcurl_la-curl_ngtcp2.lo CC vquic/libcurl_la-curl_osslq.lo CC vquic/libcurl_la-vquic.lo CC vquic/libcurl_la-curl_quiche.lo CC vquic/libcurl_la-vquic-tls.lo CC vssh/libcurl_la-libssh.lo CC vssh/libcurl_la-libssh2.lo CC vssh/libcurl_la-curl_path.lo CC vssh/libcurl_la-wolfssh.lo CC curlx/libcurl_la-base64.lo CC curlx/libcurl_la-dynbuf.lo CC curlx/libcurl_la-inet_ntop.lo CC curlx/libcurl_la-inet_pton.lo CC curlx/libcurl_la-multibyte.lo CC curlx/libcurl_la-nonblock.lo CC curlx/libcurl_la-strparse.lo CC curlx/libcurl_la-timediff.lo CC curlx/libcurl_la-timeval.lo CC curlx/libcurl_la-version_win32.lo CC curlx/libcurl_la-wait.lo CC curlx/libcurl_la-warnless.lo CC curlx/libcurl_la-winapi.lo CCLD libcurlu.la CCLD libcurl.la /usr/bin/nm: .libs/libcurl_la-amigaos.o: no symbols /usr/bin/nm: .libs/libcurl_la-asyn-ares.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_memrchr.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_rtmp.o: no symbols /usr/bin/nm: .libs/libcurl_la-curl_sspi.o: no symbols /usr/bin/nm: .libs/libcurl_la-fake_addrinfo.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip4.o: no symbols /usr/bin/nm: .libs/libcurl_la-hostip6.o: no symbols /usr/bin/nm: .libs/libcurl_la-httpsrr.o: no symbols /usr/bin/nm: .libs/libcurl_la-ldap.o: no symbols /usr/bin/nm: .libs/libcurl_la-macos.o: no symbols /usr/bin/nm: .libs/libcurl_la-memdebug.o: no symbols /usr/bin/nm: .libs/libcurl_la-openldap.o: no symbols /usr/bin/nm: .libs/libcurl_la-socks_sspi.o: no symbols /usr/bin/nm: .libs/libcurl_la-system_win32.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-digest_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-gsasl.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-krb5_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-ntlm_sspi.o: no symbols /usr/bin/nm: vauth/.libs/libcurl_la-spnego_sspi.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-cipher_suite.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-hostcheck.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-mbedtls.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-mbedtls_threadlock.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-openssl.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-rustls.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-schannel.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-schannel_verify.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-vtls_spack.o: no symbols /usr/bin/nm: vtls/.libs/libcurl_la-wolfssl.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_msh3.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_ngtcp2.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_osslq.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-curl_quiche.o: no symbols /usr/bin/nm: vquic/.libs/libcurl_la-vquic-tls.o: no symbols /usr/bin/nm: vssh/.libs/libcurl_la-libssh.o: no symbols /usr/bin/nm: vssh/.libs/libcurl_la-wolfssh.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-inet_ntop.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-inet_pton.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-multibyte.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-version_win32.o: no symbols /usr/bin/nm: curlx/.libs/libcurl_la-winapi.o: no symbols make[1]: Leaving directory '/startdir/src/build-curl-gnutls/lib' make: Leaving directory '/startdir/src/build-curl-gnutls/lib' ==> Starting check()... make[1]: Entering directory '/startdir/src/build-curl/tests' Making all in certs make[2]: Entering directory '/startdir/src/build-curl/tests/certs' /usr/bin/perl /startdir/src/curl/tests/certs/genserv.pl test test-localhost.prm test-localhost.nn.prm test-localhost0h.prm test-localhost-san-first.prm test-localhost-san-last.prm test-client-cert.prm test-client-eku-only.prm /usr/bin/openssl OpenSSL 3.5.1 1 Jul 2025 (Library: OpenSSL 3.5.1 1 Jul 2025) Certificate request self-signature ok subject=C=NN, O=Edel Curl Arctic Illudium Research Cloud, CN=Northern Nowhere Trust Anchor CA root generated: test 6000 days prime256v1 Certificate generated: CA=test 300days prime256v1 test-localhost Certificate generated: CA=test 300days prime256v1 test-localhost.nn Certificate generated: CA=test 300days prime256v1 test-localhost0h Certificate generated: CA=test 300days prime256v1 test-localhost-san-first Certificate generated: CA=test 300days prime256v1 test-localhost-san-last Certificate generated: CA=test 300days prime256v1 test-client-cert Certificate generated: CA=test 300days prime256v1 test-client-eku-only make[2]: Leaving directory '/startdir/src/build-curl/tests/certs' Making all in data make[2]: Entering directory '/startdir/src/build-curl/tests/data' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/startdir/src/build-curl/tests/data' Making all in server make[2]: Entering directory '/startdir/src/build-curl/tests/server' /usr/bin/perl /startdir/src/curl/scripts/mk-unity.pl --include memptr.c getpart.c util.c ../../lib/curlx/base64.c ../../lib/curlx/inet_pton.c ../../lib/curlx/inet_ntop.c ../../lib/curlx/multibyte.c ../../lib/curlx/nonblock.c ../../lib/curlx/strparse.c ../../lib/curlx/timediff.c ../../lib/curlx/timeval.c ../../lib/curlx/version_win32.c ../../lib/curlx/wait.c ../../lib/curlx/warnless.c ../../lib/curlx/winapi.c --test dnsd.c mqttd.c resolve.c rtspd.c sockfilt.c socksd.c sws.c tftpd.c > servers.c RUN checksrc CC servers.o CCLD servers make[2]: Leaving directory '/startdir/src/build-curl/tests/server' Making all in libtest make[2]: Entering directory '/startdir/src/build-curl/tests/libtest' /usr/bin/perl /startdir/src/curl/tests/libtest/mk-lib1521.pl < /startdir/src/curl/include/curl/curl.h lib1521.c /usr/bin/perl /startdir/src/curl/scripts/mk-unity.pl --include memptr.c testutil.c testtrace.c ../../lib/curlx/warnless.c ../../lib/curlx/multibyte.c ../../lib/curlx/timediff.c ../../lib/curlx/timeval.c ../../lib/curl_threads.c ../../lib/curlx/version_win32.c ../../lib/curlx/wait.c --test lib500.c lib501.c lib502.c lib503.c lib504.c lib505.c lib506.c lib507.c lib508.c lib509.c lib510.c lib511.c lib512.c lib513.c lib514.c lib515.c lib516.c lib517.c lib518.c lib519.c lib520.c lib521.c lib523.c lib524.c lib525.c lib526.c lib530.c lib533.c lib536.c lib537.c lib539.c lib540.c lib541.c lib542.c lib543.c lib544.c lib547.c lib549.c lib552.c lib553.c lib554.c lib555.c lib556.c lib557.c lib558.c lib559.c lib560.c lib562.c lib564.c lib566.c lib567.c lib568.c lib569.c lib570.c lib571.c lib572.c lib573.c lib574.c lib575.c lib576.c lib578.c lib579.c lib582.c lib583.c lib586.c lib589.c lib590.c lib591.c lib597.c lib598.c lib599.c lib643.c lib650.c lib651.c lib652.c lib653.c lib654.c lib655.c lib658.c lib659.c lib661.c lib666.c lib667.c lib668.c lib670.c lib674.c lib676.c lib677.c lib678.c lib694.c lib695.c lib751.c lib753.c lib1156.c lib1301.c lib1308.c lib1485.c lib1500.c lib1501.c lib1502.c lib1506.c lib1507.c lib1508.c lib1509.c lib1510.c lib1511.c lib1512.c lib1513.c lib1514.c lib1515.c lib1517.c lib1518.c lib1520.c lib1522.c lib1523.c lib1525.c lib1526.c lib1527.c lib1528.c lib1529.c lib1530.c lib1531.c lib1532.c lib1533.c lib1534.c lib1535.c lib1536.c lib1537.c lib1538.c lib1540.c lib1541.c lib1542.c lib1545.c lib1550.c lib1551.c lib1552.c lib1553.c lib1554.c lib1555.c lib1556.c lib1557.c lib1558.c lib1559.c lib1560.c lib1564.c lib1565.c lib1567.c lib1568.c lib1569.c lib1571.c lib1576.c lib1591.c lib1592.c lib1593.c lib1594.c lib1597.c lib1598.c lib1599.c lib1662.c lib1900.c lib1901.c lib1903.c lib1905.c lib1906.c lib1907.c lib1908.c lib1910.c lib1911.c lib1912.c lib1913.c lib1915.c lib1916.c lib1918.c lib1919.c lib1933.c lib1934.c lib1935.c lib1936.c lib1937.c lib1938.c lib1939.c lib1940.c lib1945.c lib1947.c lib1948.c lib1955.c lib1956.c lib1957.c lib1958.c lib1959.c lib1960.c lib1964.c lib1970.c lib1971.c lib1972.c lib1973.c lib1974.c lib1975.c lib1977.c lib1978.c lib2023.c lib2032.c lib2082.c lib2301.c lib2302.c lib2304.c lib2306.c lib2308.c lib2309.c lib2402.c lib2404.c lib2405.c lib2502.c lib2700.c lib3010.c lib3025.c lib3026.c lib3027.c lib3100.c lib3101.c lib3102.c lib3103.c lib3104.c lib3105.c lib3207.c lib3208.c lib1521.c > libtests.c RUN checksrc CC libtests.o CCLD libtests make[2]: Leaving directory '/startdir/src/build-curl/tests/libtest' Making all in client make[2]: Entering directory '/startdir/src/build-curl/tests/client' /usr/bin/perl /startdir/src/curl/scripts/mk-unity.pl --include ../../lib/curlx/multibyte.c ../../lib/curlx/timediff.c ../../lib/curlx/wait.c --test h2_pausing.c h2_serverpush.c h2_upgrade_extreme.c hx_download.c hx_upload.c tls_session_reuse.c upload_pausing.c ws_data.c ws_pingpong.c > clients.c RUN checksrc CC clients.o CCLD clients make[2]: Leaving directory '/startdir/src/build-curl/tests/client' Making all in http make[2]: Entering directory '/startdir/src/build-curl/tests/http' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/startdir/src/build-curl/tests/http' Making all in unit make[2]: Entering directory '/startdir/src/build-curl/tests/unit' /usr/bin/perl /startdir/src/curl/scripts/mk-unity.pl --test unit1300.c unit1302.c unit1303.c unit1304.c unit1305.c unit1307.c unit1309.c unit1323.c unit1330.c unit1395.c unit1396.c unit1397.c unit1398.c unit1399.c unit1600.c unit1601.c unit1602.c unit1603.c unit1605.c unit1606.c unit1607.c unit1608.c unit1609.c unit1610.c unit1611.c unit1612.c unit1614.c unit1615.c unit1616.c unit1620.c unit1650.c unit1651.c unit1652.c unit1653.c unit1654.c unit1655.c unit1656.c unit1657.c unit1658.c unit1660.c unit1661.c unit1663.c unit1664.c unit1979.c unit1980.c unit2600.c unit2601.c unit2602.c unit2603.c unit2604.c unit3200.c unit3205.c unit3211.c unit3212.c unit3213.c unit3214.c > units.c RUN checksrc CC units.o CCLD units make[2]: Leaving directory '/startdir/src/build-curl/tests/unit' Making all in tunit make[2]: Entering directory '/startdir/src/build-curl/tests/tunit' /usr/bin/perl /startdir/src/curl/scripts/mk-unity.pl --test tool1394.c tool1604.c tool1621.c > tunits.c RUN checksrc CC tunits.o CCLD tunits make[2]: Leaving directory '/startdir/src/build-curl/tests/tunit' make[2]: Entering directory '/startdir/src/build-curl/tests' (cd certs && make) make[3]: Entering directory '/startdir/src/build-curl/tests/certs' make[3]: Nothing to be done for 'all'. make[3]: Leaving directory '/startdir/src/build-curl/tests/certs' make[2]: Leaving directory '/startdir/src/build-curl/tests' srcdir=/startdir/src/curl/tests /usr/bin/perl -I/startdir/src/curl/tests /startdir/src/curl/tests/runtests.pl -a -p ~flaky ~timing-dependent -v -a -k -p -j24 !433 Using curl: ../src/curl CMD (256): valgrind >/dev/null 2>&1 CMD (0): valgrind --help 2>&1 | grep -- --tool >/dev/null 2>&1 CMD (0): ../src/curl --version 1>log/curlverout.log 2>log/curlvererr.log ********* System characteristics ******** * curl 8.15.0 (x86_64-pc-linux-gnu) * libcurl/8.15.0 OpenSSL/3.5.1 zlib/1.3.1 brotli/1.1.0 zstd/1.5.7 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.66.0 nghttp3/1.10.1 * Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss * Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM PSL SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd * Disabled: win32-ca-searchpath, win32-ca-search-safe, override-dns * Host: * System: Linux arch-nspawn-3357794 6.12.31-1-lts #1 SMP PREEMPT_DYNAMIC Thu, 29 May 2025 09:39:59 +0000 x86_64 GNU/Linux * OS: linux * Perl: v5.42.0 (/usr/bin/perl) * diff: available * Args: -a -p ~flaky ~timing-dependent -v -a -k -p -j24 !433 * Jobs: 24 * Env: Valgrind * Seed: 211543 * buildinfo.configure.tool: configure * buildinfo.configure.args: '--prefix=/usr' '--mandir=/usr/share/man' '--disable-ldap' '--disable-ldaps' '--disable-manual' '--enable-ipv6' '--enable-threaded-resolver' '--enable-websockets' '--with-gssapi' '--with-libssh2' '--with-ca-bundle=/etc/ssl/certs/ca-certificates.crt' '--enable-versioned-symbols' '--with-fish-functions-dir=/usr/share/fish/vendor_completions.d/' '--with-openssl' '--with-openssl-quic' '--with-zsh-functions-dir=/usr/share/zsh/site-functions/' 'CFLAGS=-march=x86-64-v4 -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -mpclmul -g -ffile-prefix-map=/startdir/src=/usr/src/debug/curl -flto=auto -falign-functions=32' 'LDFLAGS=-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -flto=auto -falign-functions=32' * buildinfo.host: x86_64-pc-linux-gnu * buildinfo.host.cpu: x86_64 * buildinfo.host.os: linux-gnu * buildinfo.target: x86_64-pc-linux-gnu * buildinfo.target.cpu: x86_64 * buildinfo.target.os: linux-gnu * buildinfo.target.flags: UNIX UNIX GCC * buildinfo.compiler: GNU_C * buildinfo.compiler.version: 15.1.1 * buildinfo.sysroot: * Servers: HTTP-IPv6 HTTP-unix FTP-IPv6 ***************************************** DISABLED: test 323 DISABLED: test 594 DISABLED: test 836 DISABLED: test 882 DISABLED: test 938 DISABLED: test 1182 DISABLED: test 1184 DISABLED: test 1209 DISABLED: test 1211 DISABLED: test 1307 DISABLED: test 1316 DISABLED: test 1512 DISABLED: test 1801 DISABLED: test 2043 test 0096 SKIPPED: curl lacks TrackMemory support test 0159 SKIPPED: curl lacks Debug support test 0356 SKIPPED: curl lacks Debug support test 0358 SKIPPED: curl lacks Debug support test 0375 SKIPPED: curl has proxy support test 0445 SKIPPED: curl lacks ldap support test 0506 SKIPPED: curl has threaded-resolver support test 0558 SKIPPED: curl lacks TrackMemory support Warning: test573 result is ignored due to flaky Warning: test587 result is ignored due to flaky test 0959 SKIPPED: curl has IDN support test 0960 SKIPPED: curl has IDN support test 0961 SKIPPED: curl has IDN support test 1026 SKIPPED: curl lacks manual support Warning: test1086 result is ignored due to flaky Warning: test1086 result is ignored due to timing-dependent Warning: test1112 result is ignored due to timing-dependent Warning: test1113 result is ignored due to flaky Warning: test1162 result is ignored due to flaky Warning: test1163 result is ignored due to flaky test 1179 SKIPPED: curl lacks manual support Warning: test1208 result is ignored due to flaky Warning: test1208 result is ignored due to timing-dependent test 1330 SKIPPED: curl lacks TrackMemory support test 1454 SKIPPED: curl has IPv6 support test 1461 SKIPPED: curl lacks manual support Warning: test1510 result is ignored due to flaky test 1560 SKIPPED: curl lacks ldap support Warning: test1592 result is ignored due to flaky Warning: test1592 result is ignored due to timing-dependent Warning: test1631 result is ignored due to flaky Warning: test1632 result is ignored due to flaky test 1703 SKIPPED: curl lacks Unicode support Warning: test2032 result is ignored due to flaky Warning: test2032 result is ignored due to timing-dependent test 2033 SKIPPED: curl lacks Schannel support test 2070 SKIPPED: curl lacks Schannel support test 2079 SKIPPED: curl lacks Schannel support test 2102 SKIPPED: curl lacks override-dns support test 2103 SKIPPED: curl lacks override-dns support test 2500 SKIPPED: curl lacks nghttpx-h3 support test 2503 SKIPPED: curl lacks nghttpx-h3 support test 4000 SKIPPED: curl lacks ECH support test 4001 SKIPPED: curl lacks ECH support Runner 73840 starting Runner 73838 starting Runner 73837 starting Runner 73839 starting Runner 73841 starting Runner 73832 starting Runner 73836 starting Runner 73834 starting Runner 73830 starting Runner 73827 starting Runner 73829 starting Runner 73828 starting Runner 73835 starting Runner 73825 starting Runner 73826 starting Runner 73833 starting Runner 73824 starting Runner 73819 starting Runner 73831 starting Runner 73820 starting Runner 73821 starting Runner 73818 starting Runner 73822 starting Runner 73823 starting CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind10 ../src/curl -q --output log/15/curl10.out --include --trace-ascii log/15/trace10 --trace-config all --trace-time http://127.0.0.1:36993/we/want/10 -T log/15/test10.txt > log/15/stdout10 2> log/15/stderr10 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind5 ../src/curl -q --output log/20/curl5.out --include --trace-ascii log/20/trace5 --trace-config all --trace-time http://127.0.0.1:37169/we/want/that/page/5#5 -x 127.0.0.1:37169 > log/20/stdout5 2> log/20/stderr5 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind9 ../src/curl -q --output log/16/curl9.out --include --trace-ascii log/16/trace9 --trace-config all --trace-time http://127.0.0.1:46739/we/want/9 -F name=daniel -F tool=curl -F file=@log/16/test9.txt > log/16/stdout9 2> log/16/stderr9 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind8 ../src/curl -q --output log/17/curl8.out --include --trace-ascii log/17/trace8 --trace-config all --trace-time http://127.0.0.1:39089/we/want/8 -b log/17/heads8.txt > log/17/stdout8 2> log/17/stderr8 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/15/server/http_server.pid" --logfile "log/15/http_server.log" --logdir "log/15" --portfile log/15/server/http_server.port --config log/15/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73843 port 36993 * pid http => 73843 73843 test 0010...[simple HTTP PUT from file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind10 ../src/curl -q --output log/15/curl10.out --include --trace-ascii log/15/trace10 --trace-config all --trace-time http://127.0.0.1:36993/we/want/10 -T log/15/test10.txt > log/15/stdout10 2> log/15/stderr10 10: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 10 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind10 ../src/curl -q --output log/15/curl10.out --include --trace-ascii log/15/trace10 --trace-config all --trace-time http://127.0.0.1:36993/we/want/10 -T log/15/test10.txt > log/15/stdout10 2> log/15/stderr10 === End of file commands.log === Start of file http_server.log 07:34:48.835431 Running HTTP IPv4 version on port 36993 07:34:48.835526 Wrote pid 73843 to log/15/server/http_server.pid 07:34:48.835567 Wrote port 36993 to log/15/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 10 === End of file server.cmd === Start of file test10.txt Weird file to upload for testing the PUT feature === End of file test10.txt === Start of file valgrind10 ==74129== ==74129== Process terminating with default action of signal 4 (SIGILL) ==74129== Illegal opcode at address 0x4003082 ==74129== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74129== by 0x4003082: main (tool_main.c:234) === End of file valgrind10 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/20/server/http_server.pid" --logfile "log/20/http_server.log" --logdir "log/20" --portfile log/20/server/http_server.port --config log/20/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73849 port 37169 * pid http => 73849 73849 test 0005...[HTTP over proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind5 ../src/curl -q --output log/20/curl5.out --include --trace-ascii log/20/trace5 --trace-config all --trace-time http://127.0.0.1:37169/we/want/that/page/5#5 -x 127.0.0.1:37169 > log/20/stdout5 2> log/20/stderr5 5: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 5 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind5 ../src/curl -q --output log/20/curl5.out --include --trace-ascii log/20/trace5 --trace-config all --trace-time http://127.0.0.1:37169/we/want/that/page/5#5 -x 127.0.0.1:37169 > log/20/stdout5 2> log/20/stderr5 === End of file commands.log === Start of file http_server.log 07:34:48.837095 Running HTTP IPv4 version on port 37169 07:34:48.837256 Wrote pid 73849 to log/20/server/http_server.pid 07:34:48.837354 Wrote port 37169 to log/20/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 5 === End of file server.cmd === Start of file valgrind5 ==74163== ==74163== Process terminating with default action of signal 4 (SIGILL) ==74163== Illegal opcode at address 0x4003082 ==74163== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74163== by 0x4003082: main (tool_main.c:234) === End of file valgrind5 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/17/server/http_server.pid" --logfile "log/17/http_server.log" --logdir "log/17" --portfile log/17/server/http_server.port --config log/17/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73845 port 39089 * pid http => 73845 73845 prechecked /usr/bin/perl -e 'if("127.0.0.1" !~ /\.0\.0\.1$/) {print "Test only works for HOSTIPs ending with .0.0.1"; exit(1)}' test 0008...[HTTP with cookie parsing from header file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind8 ../src/curl -q --output log/17/curl8.out --include --trace-ascii log/17/trace8 --trace-config all --trace-time http://127.0.0.1:39089/we/want/8 -b log/17/heads8.txt > log/17/stdout8 2> log/17/stderr8 8: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 8 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind8 ../src/curl -q --output log/17/curl8.out --include --trace-ascii log/17/trace8 --trace-config all --trace-time http://127.0.0.1:39089/we/want/8 -b log/17/heads8.txt > log/17/stdout8 2> log/17/stderr8 === End of file commands.log === Start of file heads8.txt HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Content-Type: text/html Funny-head: yesyes Set-Cookie: foobar=name; domain=127.0.0.1; path=/; Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/"; Set-Cookie: partmatch=present; domain=.0.0.1; path=/w; Set-Cookie: duplicate=test; domain=.0.0.1; domain=.0.0.1; path=/donkey; Set-Cookie: cookie=yes; path=/we; Set-Cookie: cookie=perhaps; path=/we/want; Set-Cookie: name with space=is weird but; path=/we/want; Set-Cookie: trailingspace = removed; path=/we/want; Set-Cookie: nocookie=yes; path=/WE; Set-Cookie: blexp=yesyes; domain=127.0.0.1; domain=127.0.0.1; expiry=totally bad; Set-Cookie: partialip=nono; domain=.0.0.1; Set-Cookie: cookie1=-junk Set-Cookie: cookie2=-junk Set-Cookie: cookie3=-junk Set-Cookie: cookie4=-junk Set-Cookie: cookie5=-junk Set-Cookie: cookie6=-junk Set-Cookie: cookie7=-junk Set-Cookie: cookie8=-junk Set-Cookie: cookie9=junk-- Set-Cookie: cookie11= -junk Set-Cookie: cookie12= -junk Set-Cookie: cookie14=-junk Set-Cookie: cookie15=-junk Set-Cookie: cookie16=-junk Set-Cookie: cookie17=-junk Set-Cookie: cookie18=-junk Set-Cookie: cookie19=-junk Set-Cookie: cookie20=-junk Set-Cookie: cookie21=-junk Set-Cookie: cookie22=-junk Set-Cookie: cookie23=-junk Set-Cookie: cookie24=-junk Set-Cookie: cookie25=-junk Set-Cookie: cookie26= -junk Set-Cookie: cookie27=-junk Set-Cookie: cookie28=-junk Set-Cookie: cookie29=-junk Set-Cookie: cookie30=-junk Set-Cookie: cookie31=-junk Set-Cookie: cookie31=-junk === End of file heads8.txt === Start of file http_server.log 07:34:48.837098 Running HTTP IPv4 version on port 39089 07:34:48.837266 Wrote pid 73845 to log/17/server/http_server.pid 07:34:48.837326 Wrote port 39089 to log/17/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 8 === End of file server.cmd === Start of file valgrind8 ==74101== ==74101== Process terminating with default action of signal 4 (SIGILL) ==74101== Illegal opcode at address 0x4003082 ==74101== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74101== by 0x4003082: main (tool_main.c:234) === CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind21 ../src/curl -q --output log/4/curl21.out --include --trace-ascii log/4/trace21 --trace-config all --trace-time -I -d FOOO -F moo=moo localhost > log/4/stdout21 2> log/4/stderr21 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind20 ../src/curl -q --output log/5/curl20.out --include --trace-ascii log/5/trace20 --trace-config all --trace-time --ipv4 non-existing-host.haxx.se. > log/5/stdout20 2> log/5/stderr20 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind27 ../src/curl -q --output log/17/curl27.out --include --trace-ascii log/17/trace27 --trace-config all --trace-time "http://127.0.0.1:39089/want/{27,27,27}" -b none > log/17/stdout27 2> log/17/stderr27 End of file valgrind8 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/16/server/http_server.pid" --logfile "log/16/http_server.log" --logdir "log/16" --portfile log/16/server/http_server.port --config log/16/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73859 port 46739 * pid http => 73859 73859 test 0009...[HTTP RFC1867-type formposting] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind9 ../src/curl -q --output log/16/curl9.out --include --trace-ascii log/16/trace9 --trace-config all --trace-time http://127.0.0.1:46739/we/want/9 -F name=daniel -F tool=curl -F file=@log/16/test9.txt > log/16/stdout9 2> log/16/stderr9 9: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 9 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind9 ../src/curl -q --output log/16/curl9.out --include --trace-ascii log/16/trace9 --trace-config all --trace-time http://127.0.0.1:46739/we/want/9 -F name=daniel -F tool=curl -F file=@log/16/test9.txt > log/16/stdout9 2> log/16/stderr9 === End of file commands.log === Start of file http_server.log 07:34:48.839669 Running HTTP IPv4 version on port 46739 07:34:48.839745 Wrote pid 73859 to log/16/server/http_server.pid 07:34:48.839771 Wrote port 46739 to log/16/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 9 === End of file server.cmd === Start of file test9.txt foo- This is a moo- bar === End of file test9.txt === Start of file valgrind9 ==74017== ==74017== Process terminating with default action of signal 4 (SIGILL) ==74017== Illegal opcode at address 0x4003082 ==74017== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74017== by 0x4003082: main (tool_main.c:234) === End of file valgrind9 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/4/server/http_server.pid" --logfile "log/4/http_server.log" --logdir "log/4" --portfile log/4/server/http_server.port --config log/4/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73862 port 45801 * pid http => 73862 73862 test 0021...[use curl with multiple request methods] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind21 ../src/curl -q --output log/4/curl21.out --include --trace-ascii log/4/trace21 --trace-config all --trace-time -I -d FOOO -F moo=moo localhost > log/4/stdout21 2> log/4/stderr21 curl returned 132, when expecting 2 21: exit FAILED == Contents of files in the log/4/ dir after test 21 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind21 ../src/curl -q --output log/4/curl21.out --include --trace-ascii log/4/trace21 --trace-config all --trace-time -I -d FOOO -F moo=moo localhost > log/4/stdout21 2> log/4/stderr21 === End of file commands.log === Start of file http_server.log 07:34:48.839840 Running HTTP IPv4 version on port 45801 07:34:48.839907 Wrote pid 73862 to log/4/server/http_server.pid 07:34:48.839932 Wrote port 45801 to log/4/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 21 === End of file server.cmd === Start of file valgrind21 ==74150== ==74150== Process terminating with default action of signal 4 (SIGILL) ==74150== Illegal opcode at address 0x4003082 ==74150== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74150== by 0x4003082: main (tool_main.c:234) === End of file valgrind21 * starts no server test 0020...[attempt connect to non-existing host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind20 ../src/curl -q --output log/5/curl20.out --include --trace-ascii log/5/trace20 --trace-config all --trace-time --ipv4 non-existing-host.haxx.se. > log/5/stdout20 2> log/5/stderr20 curl returned 132, when expecting 6 20: exit FAILED == Contents of files in the log/5/ dir after test 20 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind20 ../src/curl -q --output log/5/curl20.out --include --trace-ascii log/5/trace20 --trace-config all --trace-time --ipv4 non-existing-host.haxx.se. > log/5/stdout20 2> log/5/stderr20 === End of file commands.log === Start of file server.cmd Testnum 20 === End of file server.cmd === Start of file valgrind20 ==73865== ==73865== Process terminating with default action of signal 4 (SIGILL) ==73865== Illegal opcode at address 0x4003082 ==73865== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73865== by 0x4003082: main (tool_main.c:234) === End of file valgrind20 test 0027...[Get same cookie page several times] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind27 ../src/curl -q --output log/17/curl27.out --include --trace-ascii log/17/trace27 --trace-config all --trace-time "http://127.0.0.1:39089/want/{27,27,27}" -b none > log/17/stdout27 2> log/17/stderr27 27: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 27 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind27 ../src/curl -q --output log/17/curl27.out --include --trace-ascii log/17/trace27 --trace-config all --trace-time "http://127.0.0.1:39089/want/{27,27,27}" -b none > log/17/stdout27 2> log/17/stderr27 === End of file commands.log === Start of file http_server.log 07:34:50.693922 ====> Client connect 07:34:50.693952 accept_connection 3 returned 4 07:34:50.693967 accept_connection 3 returned 0 07:34:50.693979 Read 93 bytes 07:34:50.693988 Process 93 bytes request 07:34:50.694006 Got request: GET /verifiedserver HTTP/1.1 07:34:50.694014 Are-we-friendly question received 07:34:50.694039 Wrote request (93 bytes) input to log/17/server.input 07:34:50.694058 Identifying ourselves as friends 07:34:50.694116 Response sent (56 bytes) and written to log/17/server.response 07:34:50.694129 special request received, no persistency 07:34:50.694137 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 27 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind27 ==75185== ==75185== Process terminating with default action of signal 4 (SIGILL) ==75185== Illegal opcode at address 0x4003082 ==75185== at 0xCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind29 ../src/curl -q --output log/4/curl29.out --include --trace-ascii log/4/trace29 --trace-config all --trace-time http://127.0.0.1:45801/want/29 -m 2 > log/4/stdout29 2> log/4/stderr29 RUN: Process with pid 73862 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind26 ../src/curl -q --output log/20/curl26.out --include --trace-ascii log/20/trace26 --trace-config all --trace-time http://127.0.0.1:37169/want/26 -o - -o - > log/20/stdout26 2> log/20/stderr26 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind25 ../src/curl -q --output log/15/curl25.out --include --trace-ascii log/15/trace25 --trace-config all --trace-time http://127.0.0.1:36993/want/25 -L --max-redirs 5 > log/15/stdout25 2> log/15/stderr25 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind28 ../src/curl -q --output log/16/curl28.out --include --trace-ascii log/16/trace28 --trace-config all --trace-time http://127.0.0.1:46739/want/28 -L > log/16/stdout28 2> log/16/stderr28 4003082: UnknownInlinedFun (string_fortified.h:59) ==75185== by 0x4003082: main (tool_main.c:234) === End of file valgrind27 test 0026...[specify more -o than URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind26 ../src/curl -q --output log/20/curl26.out --include --trace-ascii log/20/trace26 --trace-config all --trace-time http://127.0.0.1:37169/want/26 -o - -o - > log/20/stdout26 2> log/20/stderr26 26: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 26 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind26 ../src/curl -q --output log/20/curl26.out --include --trace-ascii log/20/trace26 --trace-config all --trace-time http://127.0.0.1:37169/want/26 -o - -o - > log/20/stdout26 2> log/20/stderr26 === End of file commands.log === Start of file http_server.log 07:34:50.693191 ====> Client connect 07:34:50.693227 accept_connection 3 returned 4 07:34:50.693244 accept_connection 3 returned 0 07:34:50.693258 Read 93 bytes 07:34:50.693268 Process 93 bytes request 07:34:50.693285 Got request: GET /verifiedserver HTTP/1.1 07:34:50.693295 Are-we-friendly question received 07:34:50.693322 Wrote request (93 bytes) input to log/20/server.input 07:34:50.693342 Identifying ourselves as friends 07:34:50.693409 Response sent (56 bytes) and written to log/20/server.response 07:34:50.693421 special request received, no persistency 07:34:50.693430 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 26 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind26 ==75175== ==75175== Process terminating with default action of signal 4 (SIGILL) ==75175== Illegal opcode at address 0x4003082 ==75175== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75175== by 0x4003082: main (tool_main.c:234) === End of file valgrind26 test 0025...[looping HTTP Location: following with --max-redirs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind25 ../src/curl -q --output log/15/curl25.out --include --trace-ascii log/15/trace25 --trace-config all --trace-time http://127.0.0.1:36993/want/25 -L --max-redirs 5 > log/15/stdout25 2> log/15/stderr25 25: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 25 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind25 ../src/curl -q --output log/15/curl25.out --include --trace-ascii log/15/trace25 --trace-config all --trace-time http://127.0.0.1:36993/want/25 -L --max-redirs 5 > log/15/stdout25 2> log/15/stderr25 === End of file commands.log === Start of file http_server.log 07:34:50.686934 ====> Client connect 07:34:50.686971 accept_connection 3 returned 4 07:34:50.686989 accept_connection 3 returned 0 07:34:50.687003 Read 93 bytes 07:34:50.687017 Process 93 bytes request 07:34:50.687036 Got request: GET /verifiedserver HTTP/1.1 07:34:50.687047 Are-we-friendly question received 07:34:50.687086 Wrote request (93 bytes) input to log/15/server.input 07:34:50.687109 Identifying ourselves as friends 07:34:50.687180 Response sent (56 bytes) and written to log/15/server.response 07:34:50.687195 special request received, no persistency 07:34:50.687204 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 25 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind25 ==75180== ==75180== Process terminating with default action of signal 4 (SIGILL) ==75180== Illegal opcode at address 0x4003082 ==75180== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75180== by 0x4003082: main (tool_main.c:234) === End of file valgrind25 test 0028...[HTTP Location: following with extra spaces in header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind28 ../src/curl -q --output log/16/curl28.out --include --trace-ascii log/16/trace28 --trace-config all --trace-time http://127.0.0.1:46739/want/28 -L > log/16/stdout28 2> log/16/stderr28 28: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 28 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind28 ../src/curl -q --output log/16/curl28.out --include --trace-ascii log/16/trace28 --trace-config all --trace-time http://127.0.0.1:46739/want/28 -L > log/16/stdout28 2> log/16/stderr28 === End of file commands.log === Start of file http_server.log 07:34:50.696746 ====> Client connect 07:34:50.697611 accept_connection 3 returned 4 07:34:50.697635 accept_connection 3 returned 0 07:34:50.697649 Read 93 bytes 07:34:50.697659 Process 93 bytes request 07:34:50.697678 Got request: GET /verifiedserver HTTP/1.1 07:34:50.697688 Are-we-friendly question received 07:34:50.697717 Wrote request (93 bytes) input to log/16/server.input 07:34:50.697737 Identifying ourselves as friends 07:34:50.697802 Response sent (56 bytes) and written to log/16/server.response 07:34:50.697815 special request received, no persistency 07:34:50.697824 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 28 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind28 ==75197== ==75197== Process terminating with default action of signal 4 (SIGILL) ==75197== Illegal opcode at address 0x4003082 ==7RUN: Process with pid 73862 gracefully died CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind34 ../src/curl -q --output log/15/curl34.out --include --trace-ascii log/15/trace34 --trace-config all --trace-time http://127.0.0.1:36993/34 > log/15/stdout34 2> log/15/stderr34 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind33 ../src/curl -q --output log/16/curl33.out --include --trace-ascii log/16/trace33 --trace-config all --trace-time http://127.0.0.1:46739/33 -Tlog/16/test33.txt -C 50 > log/16/stdout33 2> log/16/stderr33 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind32 ../src/curl -q --output log/20/curl32.out --include --trace-ascii log/20/trace32 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:37169/32 -G > log/20/stdout32 2> log/20/stderr32 5197== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75197== by 0x4003082: main (tool_main.c:234) === End of file valgrind28 test 0029...[HTTP with 2 secs timeout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind29 ../src/curl -q --output log/4/curl29.out --include --trace-ascii log/4/trace29 --trace-config all --trace-time http://127.0.0.1:45801/want/29 -m 2 > log/4/stdout29 2> log/4/stderr29 29: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 29 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind29 ../src/curl -q --output log/4/curl29.out --include --trace-ascii log/4/trace29 --trace-config all --trace-time http://127.0.0.1:45801/want/29 -m 2 > log/4/stdout29 2> log/4/stderr29 === End of file commands.log === Start of file http_server.log 07:34:50.699172 ====> Client connect 07:34:50.699205 accept_connection 3 returned 4 07:34:50.699223 accept_connection 3 returned 0 07:34:50.699238 Read 93 bytes 07:34:50.699248 Process 93 bytes request 07:34:50.699267 Got request: GET /verifiedserver HTTP/1.1 07:34:50.699277 Are-we-friendly question received 07:34:50.699303 Wrote request (93 bytes) input to log/4/server.input 07:34:50.699355 Identifying ourselves as friends 07:34:50.699421 Response sent (56 bytes) and written to log/4/server.response 07:34:50.699433 special request received, no persistency 07:34:50.699443 ====> Client disconnect 0 exit_signal_handler: called 07:34:51.175902 signalled to die 07:34:51.176028 ========> IPv4 sws (port 45801 pid: 73862) exits with signal (15) 07:34:51.176049 ========> sws quits === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45801... * Connected to 127.0.0.1 (127.0.0.1) port 45801 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45801 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73862 === End of file http_verify.out === Start of file server.cmd Testnum 29 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73862 === End of file server.response === Start of file valgrind29 ==75189== ==75189== Process terminating with default action of signal 4 (SIGILL) ==75189== Illegal opcode at address 0x4003082 ==75189== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75189== by 0x4003082: main (tool_main.c:234) === End of file valgrind29 test 0034...[HTTP GET with chunked Transfer-Encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind34 ../src/curl -q --output log/15/curl34.out --include --trace-ascii log/15/trace34 --trace-config all --trace-time http://127.0.0.1:36993/34 > log/15/stdout34 2> log/15/stderr34 34: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 34 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind34 ../src/curl -q --output log/15/curl34.out --include --trace-ascii log/15/trace34 --trace-config all --trace-time http://127.0.0.1:36993/34 > log/15/stdout34 2> log/15/stderr34 === End of file commands.log === Start of file http_server.log 07:34:51.200080 ====> Client connect 07:34:51.200106 accept_connection 3 returned 4 07:34:51.200118 accept_connection 3 returned 0 07:34:51.200127 Read 93 bytes 07:34:51.200134 Process 93 bytes request 07:34:51.200142 Got request: GET /verifiedserver HTTP/1.1 07:34:51.200148 Are-we-friendly question received 07:34:51.200166 Wrote request (93 bytes) input to log/15/server.input 07:34:51.200177 Identifying ourselves as friends 07:34:51.200213 Response sent (56 bytes) and written to log/15/server.response 07:34:51.200220 special request received, no persistency 07:34:51.200226 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 34 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind34 ==75503== ==75503== Process terminating with default action of signal 4 (SIGILL) ==75503== Illegal opcode at address 0x4003082 ==75503== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75503== by 0x4003082: main (tool_main.c:234) === End of file valgrind34 test 0033...[HTTP PUT with resume] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind33 ../src/curl -q --output log/16/curl33.out --include --trace-ascii log/16/trace33 --trace-config all --trace-time http://127.0.0.1:46739/33 -Tlog/16/test33.txt -C 50 > log/16/stdout33 2> log/16/stderr33 33: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 33 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind33 ../src/curl -q --output log/16/curl33.out --include --trace-ascii log/16/trace33 --trace-config all --trace-time http://127.0.0.1:46739/33 -Tlog/16/test33.txt -C 50 > log/16/stdout33 2> log/16/stderr33 === End of file commands.log === Start of file http_server.log 07:34:51.198939 ====> Client connect 07:34:51.198963 accept_connection 3 returned 4 07:34:51.198974 accept_connection 3 returned 0 07:34:51.198984 Read 93 bytes 07:34:51.198990 Process 93 bytes request 07:34:51.198999 Got request: GET /verifiedserver HTTP/1.1 07:34:51.199005 Are-we-friendly question received 07:34:51.199022 Wrote request (93 bytes) input to log/16/server.input 07:34:51.199033 Identifying ourselves as friends 07:34:51.199072 Response sent (56 bytes) and written to log/16/server.response 07:34:51.199079 special request received, no persistency 07:34:51.199084 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 33 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file test33.txt 012345678 012CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind31 ../src/curl -q --output log/17/curl31.out --include --trace-ascii log/17/trace31 --trace-config all --trace-time http://test31.curl:39089/we/want/31 -b none -c log/17/jar31.txt --resolve test31.curl:39089:127.0.0.1 > log/17/stdout31 2> log/17/stderr31 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind38 ../src/curl -q --include --trace-ascii log/17/trace38 --trace-config all --trace-time http://127.0.0.1:39089/want/38 -C - --no-include -o log/17/fewl38.txt > log/17/stdout38 2> log/17/stderr38 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind37 ../src/curl -q --output log/20/curl37.out --include --trace-ascii log/20/trace37 --trace-config all --trace-time http://127.0.0.1:37169/37 > log/20/stdout37 2> log/20/stderr37 345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file test33.txt === Start of file valgrind33 ==75491== ==75491== Process terminating with default action of signal 4 (SIGILL) ==75491== Illegal opcode at address 0x4003082 ==75491== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75491== by 0x4003082: main (tool_main.c:234) === End of file valgrind33 test 0032...[HTTP with -d and -G] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind32 ../src/curl -q --output log/20/curl32.out --include --trace-ascii log/20/trace32 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:37169/32 -G > log/20/stdout32 2> log/20/stderr32 32: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 32 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind32 ../src/curl -q --output log/20/curl32.out --include --trace-ascii log/20/trace32 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:37169/32 -G > log/20/stdout32 2> log/20/stderr32 === End of file commands.log === Start of file http_server.log 07:34:51.198524 ====> Client connect 07:34:51.198548 accept_connection 3 returned 4 07:34:51.198559 accept_connection 3 returned 0 07:34:51.198569 Read 93 bytes 07:34:51.198576 Process 93 bytes request 07:34:51.198583 Got request: GET /verifiedserver HTTP/1.1 07:34:51.198590 Are-we-friendly question received 07:34:51.198607 Wrote request (93 bytes) input to log/20/server.input 07:34:51.198618 Identifying ourselves as friends 07:34:51.198654 Response sent (56 bytes) and written to log/20/server.response 07:34:51.198661 special request received, no persistency 07:34:51.198668 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 32 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind32 ==75486== ==75486== Process terminating with default action of signal 4 (SIGILL) ==75486== Illegal opcode at address 0x4003082 ==75486== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75486== by 0x4003082: main (tool_main.c:234) === End of file valgrind32 setenv TZ = GMT test 0031...[HTTP with weirdly formatted cookies and cookiejar storage] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind31 ../src/curl -q --output log/17/curl31.out --include --trace-ascii log/17/trace31 --trace-config all --trace-time http://test31.curl:39089/we/want/31 -b none -c log/17/jar31.txt --resolve test31.curl:39089:127.0.0.1 > log/17/stdout31 2> log/17/stderr31 31: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 31 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind31 ../src/curl -q --output log/17/curl31.out --include --trace-ascii log/17/trace31 --trace-config all --trace-time http://test31.curl:39089/we/want/31 -b none -c log/17/jar31.txt --resolve test31.curl:39089:127.0.0.1 > log/17/stdout31 2> log/17/stderr31 === End of file commands.log === Start of file http_server.log 07:34:51.191877 ====> Client connect 07:34:51.191900 accept_connection 3 returned 4 07:34:51.191912 accept_connection 3 returned 0 07:34:51.191921 Read 93 bytes 07:34:51.191928 Process 93 bytes request 07:34:51.191938 Got request: GET /verifiedserver HTTP/1.1 07:34:51.191945 Are-we-friendly question received 07:34:51.191961 Wrote request (93 bytes) input to log/17/server.input 07:34:51.191972 Identifying ourselves as friends 07:34:51.192014 Response sent (56 bytes) and written to log/17/server.response 07:34:51.192021 special request received, no persistency 07:34:51.192027 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 31 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind31 ==75483== ==75483== Process terminating with default action of signal 4 (SIGILL) ==75483== Illegal opcode at address 0x4003082 ==75483== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75483== by 0x4003082: main (tool_main.c:234) === End of file valgrind31 test 0038...[HTTP resume request without server supporting it] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind38 ../src/curl -q --include --trace-ascii log/17/trace38 --trace-config all --trace-time http://127.0.0.1:39089/want/38 -C - --no-include -o log/17/fewl38.txt > log/17/stdout38 2> log/17/stderr38 38: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 38 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind38 ../src/curl -q --include --trace-ascii log/17/trace38 --trace-config all --trace-time http://127.0.0.1:39089/want/38 -C - --no-include -o log/17/fewl38.txt > log/17/stdout38 2> log/17/stderr38 === End of file commands.log === Start of file fewl38.txt This text is here to simulate a partly downloaded file to resume download on. === End of file fewl38.txt === Start of file http_server.log 07:34:51.611363 ====> Client connect 07:34:51.611396 accept_connection 3 returned 4 07:34:51.611412 accept_connection 3 returned 0 07:34:51.611426 Read 93 bytes 07:34:51.611436 Process 93 bytes request 07:34:51.611448 Got request: GET /verifiedserver HTTP/1.1 07:34:51.611457 Are-we-friendly question received 07:34:51.611480 Wrote request (93 bytes) input to log/17/server.input 07:34:51.611496 Identifying ourselves as friends 07:34:51.611554 Response sent (56 bytes) and written to log/17/server.response 07:34:51.611564 special request received, no persistency 07:34:51.611573 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind36 ../src/curl -q --output log/15/curl36.out --include --trace-ascii log/15/trace36 --trace-config all --trace-time http://127.0.0.1:36993/36 > log/15/stdout36 2> log/15/stderr36 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind39 ../src/curl -q --output log/16/curl39.out --include --trace-ascii log/16/trace39 --trace-config all --trace-time http://127.0.0.1:46739/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/16/stdout39 2> log/16/stderr39 ely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 38 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind38 ==75751== ==75751== Process terminating with default action of signal 4 (SIGILL) ==75751== Illegal opcode at address 0x4003082 ==75751== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75751== by 0x4003082: main (tool_main.c:234) === End of file valgrind38 test 0037...[HTTP GET with nothing returned from server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind37 ../src/curl -q --output log/20/curl37.out --include --trace-ascii log/20/trace37 --trace-config all --trace-time http://127.0.0.1:37169/37 > log/20/stdout37 2> log/20/stderr37 37: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 37 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind37 ../src/curl -q --output log/20/curl37.out --include --trace-ascii log/20/trace37 --trace-config all --trace-time http://127.0.0.1:37169/37 > log/20/stdout37 2> log/20/stderr37 === End of file commands.log === Start of file http_server.log 07:34:51.611496 ====> Client connect 07:34:51.611525 accept_connection 3 returned 4 07:34:51.611539 accept_connection 3 returned 0 07:34:51.611551 Read 93 bytes 07:34:51.611560 Process 93 bytes request 07:34:51.611570 Got request: GET /verifiedserver HTTP/1.1 07:34:51.611578 Are-we-friendly question received 07:34:51.611605 Wrote request (93 bytes) input to log/20/server.input 07:34:51.611620 Identifying ourselves as friends 07:34:51.611674 Response sent (56 bytes) and written to log/20/server.response 07:34:51.611683 special request received, no persistency 07:34:51.611692 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 37 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind37 ==75749== ==75749== Process terminating with default action of signal 4 (SIGILL) ==75749== Illegal opcode at address 0x4003082 ==75749== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75749== by 0x4003082: main (tool_main.c:234) === End of file valgrind37 test 0036...[HTTP GET with bad chunked Transfer-Encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind36 ../src/curl -q --output log/15/curl36.out --include --trace-ascii log/15/trace36 --trace-config all --trace-time http://127.0.0.1:36993/36 > log/15/stdout36 2> log/15/stderr36 36: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 36 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind36 ../src/curl -q --output log/15/curl36.out --include --trace-ascii log/15/trace36 --trace-config all --trace-time http://127.0.0.1:36993/36 > log/15/stdout36 2> log/15/stderr36 === End of file commands.log === Start of file http_server.log 07:34:51.608318 ====> Client connect 07:34:51.608354 accept_connection 3 returned 4 07:34:51.608370 accept_connection 3 returned 0 07:34:51.608383 Read 93 bytes 07:34:51.608393 Process 93 bytes request 07:34:51.608407 Got request: GET /verifiedserver HTTP/1.1 07:34:51.608416 Are-we-friendly question received 07:34:51.608440 Wrote request (93 bytes) input to log/15/server.input 07:34:51.608457 Identifying ourselves as friends 07:34:51.608509 Response sent (56 bytes) and written to log/15/server.response 07:34:51.608519 special request received, no persistency 07:34:51.608528 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 36 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind36 ==75745== ==75745== Process terminating with default action of signal 4 (SIGILL) ==75745== Illegal opcode at address 0x4003082 ==75745== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75745== by 0x4003082: main (tool_main.c:234) === End of file valgrind36 test 0039...[HTTP RFC1867-type formposting with filename= and type=] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind39 ../src/curl -q --output log/16/curl39.out --include --trace-ascii log/16/trace39 --trace-config all --trace-time http://127.0.0.1:46739/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/16/stdout39 2> log/16/stderr39 39: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 39 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind39 ../src/curl -q --output log/16/curl39.out --include --trace-ascii log/16/trace39 --trace-config all --trace-time http://127.0.0.1:46739/we/want/39 -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/16/stdout39 2> log/16/stderr39 === End of file commands.log === Start of file http_server.log 07:34:51.615954 ====> Client connect 07:34:51.616919 accept_connection 3 returned 4 07:34:51.616939 accept_connection 3 returned 0 07:34:51.616954 Read 93 bytes 07:34:51.616964 Process 93 bytes request 07:34:51.616976 Got request: GET /veriCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind30 ../src/curl -q --output log/5/curl30.out --include --trace-ascii log/5/trace30 --trace-config all --trace-time http://127.0.0.1:46675/want/30 > log/5/stdout30 2> log/5/stderr30 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind11 ../src/curl -q --output log/14/curl11.out --include --trace-ascii log/14/trace11 --trace-config all --trace-time http://127.0.0.1:37963/want/11 -L > log/14/stdout11 2> log/14/stderr11 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind41 ../src/curl -q --output log/20/curl41.out --include --trace-ascii log/20/trace41 --trace-config all --trace-time http://127.0.0.1:37169/want/41 -F moo=@boo > log/20/stdout41 2> log/20/stderr41 fiedserver HTTP/1.1 07:34:51.616986 Are-we-friendly question received 07:34:51.617012 Wrote request (93 bytes) input to log/16/server.input 07:34:51.617028 Identifying ourselves as friends 07:34:51.617088 Response sent (56 bytes) and written to log/16/server.response 07:34:51.617098 special request received, no persistency 07:34:51.617107 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 39 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file test39.txt foo bar This is a bar foo bar foo === End of file test39.txt === Start of file valgrind39 ==75793== ==75793== Process terminating with default action of signal 4 (SIGILL) ==75793== Illegal opcode at address 0x4003082 ==75793== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75793== by 0x4003082: main (tool_main.c:234) === End of file valgrind39 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/5/server/http_server.pid" --logfile "log/5/http_server.log" --logdir "log/5" --portfile log/5/server/http_server.port --config log/5/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 75120 port 46675 * pid http => 75120 75120 test 0030...[HTTP with no data in server reply] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind30 ../src/curl -q --output log/5/curl30.out --include --trace-ascii log/5/trace30 --trace-config all --trace-time http://127.0.0.1:46675/want/30 > log/5/stdout30 2> log/5/stderr30 30: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 30 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind30 ../src/curl -q --output log/5/curl30.out --include --trace-ascii log/5/trace30 --trace-config all --trace-time http://127.0.0.1:46675/want/30 > log/5/stdout30 2> log/5/stderr30 === End of file commands.log === Start of file http_server.log 07:34:50.699897 Running HTTP IPv4 version on port 46675 07:34:50.699980 Wrote pid 75120 to log/5/server/http_server.pid 07:34:50.700018 Wrote port 46675 to log/5/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 30 === End of file server.cmd === Start of file valgrind30 ==75947== ==75947== Process terminating with default action of signal 4 (SIGILL) ==75947== Illegal opcode at address 0x4003082 ==75947== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==75947== by 0x4003082: main (tool_main.c:234) === End of file valgrind30 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/14/server/http_server.pid" --logfile "log/14/http_server.log" --logdir "log/14" --portfile log/14/server/http_server.port --config log/14/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73860 port 37963 * pid http => 73860 73860 test 0011...[simple HTTP Location: following] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind11 ../src/curl -q --output log/14/curl11.out --include --trace-ascii log/14/trace11 --trace-config all --trace-time http://127.0.0.1:37963/want/11 -L > log/14/stdout11 2> log/14/stderr11 11: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 11 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind11 ../src/curl -q --output log/14/curl11.out --include --trace-ascii log/14/trace11 --trace-config all --trace-time http://127.0.0.1:37963/want/11 -L > log/14/stdout11 2> log/14/stderr11 === End of file commands.log === Start of file http_server.log 07:34:48.837330 Running HTTP IPv4 version on port 37963 07:34:48.837468 Wrote pid 73860 to log/14/server/http_server.pid 07:34:48.837503 Wrote port 37963 to log/14/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 11 === End of file server.cmd === Start of file valgrind11 ==74132== ==74132== Process terminating with default action of signal 4 (SIGILL) ==74132== Illegal opcode at address 0x4003082 ==74132== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74132== by 0x4003082: main (tool_main.c:234) === End of file valgrind11 test 0041...[HTTP formpost with missing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind41 ../src/curl -q --output log/20/curl41.out --include --trace-ascii log/20/trace41 --trace-config all --trace-time http://127.0.0.1:37169/want/41 -F moo=@boo > log/20/stdout41 2> log/20/stderr41 curl returned 132, when expecting 26 41: exit FAILED == Contents of files in the log/20/ dir after test 41 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind41 ../src/curl -q --output log/20/curl41.out --include --trace-ascii log/20/trace41 --trace-config all --trace-time http://127.0.0.1:37169/want/41 -F moo=@boo > log/20/stdout41 2> log/20/stderr41 === End of file commands.log === Start of file http_server.log 07:34:52.006518 ====> Client connect 07:34:52.006541 accept_connection 3 returned 4 07:34:52.006552 accept_connection 3 returned 0 07:34:52.006560 Read 93 bytes 07:34:52.006567 Process 93 bytes request 07:34:52.006574 Got request: GET /verifiedserver HTTP/1.1 07:34:52.006583 Are-we-friendly question received 07:34:52.006602 Wrote request (93 bytes) input to log/20/server.input 07:34:52.006612 Identifying ourselves as friends 07:34:52.006647 Response sent (56 bytes) and written to log/20/server.response 07:34:52.006654 special request received, no persistency 07:34:52.006660 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 41 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind41 ==76061== ==76061== Process terminating with default action of signal 4 (SIGILL) ==76061== Illegal opcode at address 0x4003082 ==76061== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76061== by 0x400308CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind43 ../src/curl -q --output log/16/curl43.out --include --trace-ascii log/16/trace43 --trace-config all --trace-time http://127.0.0.1:46739/want/43 -L -x 127.0.0.1:46739 > log/16/stdout43 2> log/16/stderr43 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind42 ../src/curl -q --output log/15/curl42.out --include --trace-ascii log/15/trace42 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/42 -L > log/15/stdout42 2> log/15/stderr42 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind40 ../src/curl -q --output log/17/curl40.out --include --trace-ascii log/17/trace40 --trace-config all --trace-time http://127.0.0.1:39089/we/are/all/twits/40 -L > log/17/stdout40 2> log/17/stderr40 2: main (tool_main.c:234) === End of file valgrind41 test 0043...[HTTP Location: following over HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind43 ../src/curl -q --output log/16/curl43.out --include --trace-ascii log/16/trace43 --trace-config all --trace-time http://127.0.0.1:46739/want/43 -L -x 127.0.0.1:46739 > log/16/stdout43 2> log/16/stderr43 43: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 43 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind43 ../src/curl -q --output log/16/curl43.out --include --trace-ascii log/16/trace43 --trace-config all --trace-time http://127.0.0.1:46739/want/43 -L -x 127.0.0.1:46739 > log/16/stdout43 2> log/16/stderr43 === End of file commands.log === Start of file http_server.log 07:34:52.009868 ====> Client connect 07:34:52.009888 accept_connection 3 returned 4 07:34:52.009899 accept_connection 3 returned 0 07:34:52.009908 Read 93 bytes 07:34:52.009914 Process 93 bytes request 07:34:52.009921 Got request: GET /verifiedserver HTTP/1.1 07:34:52.009927 Are-we-friendly question received 07:34:52.009942 Wrote request (93 bytes) input to log/16/server.input 07:34:52.009952 Identifying ourselves as friends 07:34:52.009986 Response sent (56 bytes) and written to log/16/server.response 07:34:52.009992 special request received, no persistency 07:34:52.009998 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 43 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind43 ==76085== ==76085== Process terminating with default action of signal 4 (SIGILL) ==76085== Illegal opcode at address 0x4003082 ==76085== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76085== by 0x4003082: main (tool_main.c:234) === End of file valgrind43 test 0042...[HTTP redirect with whitespace in path (and conversion)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind42 ../src/curl -q --output log/15/curl42.out --include --trace-ascii log/15/trace42 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/42 -L > log/15/stdout42 2> log/15/stderr42 42: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 42 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind42 ../src/curl -q --output log/15/curl42.out --include --trace-ascii log/15/trace42 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/42 -L > log/15/stdout42 2> log/15/stderr42 === End of file commands.log === Start of file http_server.log 07:34:52.008605 ====> Client connect 07:34:52.008626 accept_connection 3 returned 4 07:34:52.008637 accept_connection 3 returned 0 07:34:52.008646 Read 93 bytes 07:34:52.008652 Process 93 bytes request 07:34:52.008659 Got request: GET /verifiedserver HTTP/1.1 07:34:52.008665 Are-we-friendly question received 07:34:52.008681 Wrote request (93 bytes) input to log/15/server.input 07:34:52.008691 Identifying ourselves as friends 07:34:52.008725 Response sent (56 bytes) and written to log/15/server.response 07:34:52.008731 special request received, no persistency 07:34:52.008737 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 42 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind42 ==76074== ==76074== Process terminating with default action of signal 4 (SIGILL) ==76074== Illegal opcode at address 0x4003082 ==76074== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76074== by 0x4003082: main (tool_main.c:234) === End of file valgrind42 test 0040...[HTTP redirect with whitespace after ? (and conversion)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind40 ../src/curl -q --output log/17/curl40.out --include --trace-ascii log/17/trace40 --trace-config all --trace-time http://127.0.0.1:39089/we/are/all/twits/40 -L > log/17/stdout40 2> log/17/stderr40 40: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 40 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind40 ../src/curl -q --output log/17/curl40.out --include --trace-ascii log/17/trace40 --trace-config all --trace-time http://127.0.0.1:39089/we/are/all/twits/40 -L > log/17/stdout40 2> log/17/stderr40 === End of file commands.log === Start of file http_server.log 07:34:52.006459 ====> Client connect 07:34:52.006479 accept_connection 3 returned 4 07:34:52.006489 accept_connection 3 returned 0 07:34:52.006499 Read 93 bytes 07:34:52.006506 Process 93 bytes request 07:34:52.006515 Got request: GET /verifiedserver HTTP/1.1 07:34:52.006521 Are-we-friendly question received 07:34:52.006536 Wrote request (93 bytes) input to log/17/server.input 07:34:52.006546 Identifying ourselves as friends 07:34:52.006580 Response sent (56 bytes) and written to log/17/server.response 07:34:52.006589 special request received, no persistency 07:34:52.006595 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 40 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind40 ==76066== ==76066== Process terminating with default action of signal 4 (SIGILL) ==76066== Illegal opcode at address 0x4003082 ==76066== atCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind44 ../src/curl -q --output log/5/curl44.out --include --trace-ascii log/5/trace44 --trace-config all --trace-time http://127.0.0.1:46675/we/want/44 -F name=daniel -F tool=curl -F file=@log/5/test44.txt -H "Expect:" > log/5/stdout44 2> log/5/stderr44 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind35 ../src/curl -q --output log/4/curl35.out --include --trace-ascii log/4/trace35 --trace-config all --trace-time http://127.0.0.1:33235/we/want/35 --data-binary @log/4/test35.txt > log/4/stdout35 2> log/4/stderr35 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind45 ../src/curl -q --output log/14/curl45.out --include --trace-ascii log/14/trace45 --trace-config all --trace-time 127.0.0.1:37963/want/45 -L > log/14/stdout45 2> log/14/stderr45 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind46 ../src/curl -q --output log/20/curl46.out --include --trace-ascii log/20/trace46 --trace-config all --trace-time domain..tld:37169/want/46 --resolve domain..tld:37169:127.0.0.1 -c log/20/jar46 -b log/20/injar46 > log/20/stdout46 2> log/20/stderr46 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76066== by 0x4003082: main (tool_main.c:234) === End of file valgrind40 test 0044...[HTTP RFC1867-type formposting without Expect: header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind44 ../src/curl -q --output log/5/curl44.out --include --trace-ascii log/5/trace44 --trace-config all --trace-time http://127.0.0.1:46675/we/want/44 -F name=daniel -F tool=curl -F file=@log/5/test44.txt -H "Expect:" > log/5/stdout44 2> log/5/stderr44 44: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 44 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind44 ../src/curl -q --output log/5/curl44.out --include --trace-ascii log/5/trace44 --trace-config all --trace-time http://127.0.0.1:46675/we/want/44 -F name=daniel -F tool=curl -F file=@log/5/test44.txt -H "Expect:" > log/5/stdout44 2> log/5/stderr44 === End of file commands.log === Start of file http_server.log 07:34:52.029855 ====> Client connect 07:34:52.029880 accept_connection 3 returned 4 07:34:52.029920 accept_connection 3 returned 0 07:34:52.029944 Read 93 bytes 07:34:52.029963 Process 93 bytes request 07:34:52.029978 Got request: GET /verifiedserver HTTP/1.1 07:34:52.029984 Are-we-friendly question received 07:34:52.030008 Wrote request (93 bytes) input to log/5/server.input 07:34:52.030022 Identifying ourselves as friends 07:34:52.030063 Response sent (56 bytes) and written to log/5/server.response 07:34:52.030071 special request received, no persistency 07:34:52.030077 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 44 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file test44.txt foo- This is a moo- bar === End of file test44.txt === Start of file valgrind44 ==76238== ==76238== Process terminating with default action of signal 4 (SIGILL) ==76238== Illegal opcode at address 0x4003082 ==76238== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76238== by 0x4003082: main (tool_main.c:234) === End of file valgrind44 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/4/server/http_server.pid" --logfile "log/4/http_server.log" --logdir "log/4" --portfile log/4/server/http_server.port --config log/4/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 75679 port 33235 * pid http => 75679 75679 test 0035...[HTTP POST binary data with embedded NUL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind35 ../src/curl -q --output log/4/curl35.out --include --trace-ascii log/4/trace35 --trace-config all --trace-time http://127.0.0.1:33235/we/want/35 --data-binary @log/4/test35.txt > log/4/stdout35 2> log/4/stderr35 35: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 35 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind35 ../src/curl -q --output log/4/curl35.out --include --trace-ascii log/4/trace35 --trace-config all --trace-time http://127.0.0.1:33235/we/want/35 --data-binary @log/4/test35.txt > log/4/stdout35 2> log/4/stderr35 === End of file commands.log === Start of file http_server.log 07:34:51.293208 Running HTTP IPv4 version on port 33235 07:34:51.293269 Wrote pid 75679 to log/4/server/http_server.pid 07:34:51.293292 Wrote port 33235 to log/4/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 35 === End of file server.cmd === Start of file test35.txt This is binary data with an embedded NUL byte === End of file test35.txt === Start of file valgrind35 ==76327== ==76327== Process terminating with default action of signal 4 (SIGILL) ==76327== Illegal opcode at address 0x4003082 ==76327== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76327== by 0x4003082: main (tool_main.c:234) === End of file valgrind35 test 0045...[simple HTTP Location: without protocol in initial URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind45 ../src/curl -q --output log/14/curl45.out --include --trace-ascii log/14/trace45 --trace-config all --trace-time 127.0.0.1:37963/want/45 -L > log/14/stdout45 2> log/14/stderr45 45: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 45 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind45 ../src/curl -q --output log/14/curl45.out --include --trace-ascii log/14/trace45 --trace-config all --trace-time 127.0.0.1:37963/want/45 -L > log/14/stdout45 2> log/14/stderr45 === End of file commands.log === Start of file http_server.log 07:34:52.339984 ====> Client connect 07:34:52.340007 accept_connection 3 returned 4 07:34:52.340018 accept_connection 3 returned 0 07:34:52.340027 Read 93 bytes 07:34:52.340037 Process 93 bytes request 07:34:52.340049 Got request: GET /verifiedserver HTTP/1.1 07:34:52.340055 Are-we-friendly question received 07:34:52.340072 Wrote request (93 bytes) input to log/14/server.input 07:34:52.340086 Identifying ourselves as friends 07:34:52.340127 Response sent (56 bytes) and written to log/14/server.response 07:34:52.340136 special request received, no persistency 07:34:52.340142 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 45 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind45 ==76391== ==76391== Process terminating with default action of signal 4 (SIGILL) ==76391== Illegal opcode at address 0x4003082 ==76391== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76391== by 0x4003082: main (tool_main.c:234) === End of file valgrind45 setenv TZ = GMT test 0046...[HTTP with bad domain name, get cookies and store in cookie jar] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --supprCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind47 ../src/curl -q --output log/16/curl47.out --include --trace-ascii log/16/trace47 --trace-config all --trace-time http://127.0.0.1:46739/47 -0 > log/16/stdout47 2> log/16/stderr47 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind50 ../src/curl -q --output log/5/curl50.out --include --trace-ascii log/5/trace50 --trace-config all --trace-time http://127.0.0.1:46675/we/are/all/twits/50 -L > log/5/stdout50 2> log/5/stderr50 essions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind46 ../src/curl -q --output log/20/curl46.out --include --trace-ascii log/20/trace46 --trace-config all --trace-time domain..tld:37169/want/46 --resolve domain..tld:37169:127.0.0.1 -c log/20/jar46 -b log/20/injar46 > log/20/stdout46 2> log/20/stderr46 46: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 46 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind46 ../src/curl -q --output log/20/curl46.out --include --trace-ascii log/20/trace46 --trace-config all --trace-time domain..tld:37169/want/46 --resolve domain..tld:37169:127.0.0.1 -c log/20/jar46 -b log/20/injar46 > log/20/stdout46 2> log/20/stderr46 === End of file commands.log === Start of file http_server.log 07:34:52.395497 ====> Client connect 07:34:52.395533 accept_connection 3 returned 4 07:34:52.395560 accept_connection 3 returned 0 07:34:52.395600 Read 93 bytes 07:34:52.395617 Process 93 bytes request 07:34:52.395628 Got request: GET /verifiedserver HTTP/1.1 07:34:52.395635 Are-we-friendly question received 07:34:52.395715 Wrote request (93 bytes) input to log/20/server.input 07:34:52.395746 Identifying ourselves as friends 07:34:52.395817 Response sent (56 bytes) and written to log/20/server.response 07:34:52.395826 special request received, no persistency 07:34:52.395833 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file injar46 # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This is generated by libcurl! Do not edit. www.fake.come FALSE / FALSE 22147483647 cookiecliente si www.loser.com FALSE / FALSE 22139150993 UID 99 domain..tld FALSE / FALSE 22139150993 mooo indeed #HttpOnly_domain..tld FALSE /want FALSE 22139150993 mooo2 indeed2 domain..tld FALSE /want FALSE 0 empty === End of file injar46 === Start of file server.cmd Testnum 46 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind46 ==76483== ==76483== Process terminating with default action of signal 4 (SIGILL) ==76483== Illegal opcode at address 0x4003082 ==76483== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76483== by 0x4003082: main (tool_main.c:234) === End of file valgrind46 test 0047...[simple HTTP 1.0 GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind47 ../src/curl -q --output log/16/curl47.out --include --trace-ascii log/16/trace47 --trace-config all --trace-time http://127.0.0.1:46739/47 -0 > log/16/stdout47 2> log/16/stderr47 47: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 47 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind47 ../src/curl -q --output log/16/curl47.out --include --trace-ascii log/16/trace47 --trace-config all --trace-time http://127.0.0.1:46739/47 -0 > log/16/stdout47 2> log/16/stderr47 === End of file commands.log === Start of file http_server.log 07:34:52.413245 ====> Client connect 07:34:52.413271 accept_connection 3 returned 4 07:34:52.413284 accept_connection 3 returned 0 07:34:52.413294 Read 93 bytes 07:34:52.413301 Process 93 bytes request 07:34:52.413311 Got request: GET /verifiedserver HTTP/1.1 07:34:52.413317 Are-we-friendly question received 07:34:52.413333 Wrote request (93 bytes) input to log/16/server.input 07:34:52.413348 Identifying ourselves as friends 07:34:52.413391 Response sent (56 bytes) and written to log/16/server.response 07:34:52.413397 special request received, no persistency 07:34:52.413404 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 47 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind47 ==76543== ==76543== Process terminating with default action of signal 4 (SIGILL) ==76543== Illegal opcode at address 0x4003082 ==76543== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76543== by 0x4003082: main (tool_main.c:234) === End of file valgrind47 test 0050...[HTTP follow redirect with ../../] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind50 ../src/curl -q --output log/5/curl50.out --include --trace-ascii log/5/trace50 --trace-config all --trace-time http://127.0.0.1:46675/we/are/all/twits/50 -L > log/5/stdout50 2> log/5/stderr50 50: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 50 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind50 ../src/curl -q --output log/5/curl50.out --include --trace-ascii log/5/trace50 --trace-config all --trace-time http://127.0.0.1:46675/we/are/all/twits/50 -L > log/5/stdout50 2> log/5/stderr50 === End of file commands.log === Start of file http_server.log 07:34:52.420228 ====> Client connect 07:34:52.420251 accept_connection 3 returned 4 07:34:52.420262 accept_connection 3 returned 0 07:34:52.420271 Read 93 bytes 07:34:52.420277 Process 93 bytes request 07:34:52.420284 Got request: GET /verifiedserver HTTP/1.1 07:34:52.420290 Are-we-friendly question received 07:34:52.420305 Wrote request (93 bytes) input to log/5/server.input 07:34:52.420315 Identifying ourselves as friends 07:34:52.420350 Response sent (56 bytes) and written to log/5/server.response 07:34:52.420356 special request received, no persistency 07:34:52.420361 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 50 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind48 ../src/curl -q --output log/17/curl48.out --include --trace-ascii log/17/trace48 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:39089/48 -G -I http://127.0.0.1:39089/48 > log/17/stdout48 2> log/17/stderr48 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind49 ../src/curl -q --output log/15/curl49.out --include --trace-ascii log/15/trace49 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/49 -L > log/15/stdout49 2> log/15/stderr49 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind52 ../src/curl -q --output log/14/curl52.out --include --trace-ascii log/14/trace52 --trace-config all --trace-time http://127.0.0.1:37963/we/are/all/twits/52 -L > log/14/stdout52 2> log/14/stderr52 : 75120 === End of file server.response === Start of file valgrind50 ==76599== ==76599== Process terminating with default action of signal 4 (SIGILL) ==76599== Illegal opcode at address 0x4003082 ==76599== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76599== by 0x4003082: main (tool_main.c:234) === End of file valgrind50 test 0048...[HTTP with -d and -G and -I] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind48 ../src/curl -q --output log/17/curl48.out --include --trace-ascii log/17/trace48 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:39089/48 -G -I http://127.0.0.1:39089/48 > log/17/stdout48 2> log/17/stderr48 48: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 48 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind48 ../src/curl -q --output log/17/curl48.out --include --trace-ascii log/17/trace48 --trace-config all --trace-time -d "foo=moo&moo=poo" http://127.0.0.1:39089/48 -G -I http://127.0.0.1:39089/48 > log/17/stdout48 2> log/17/stderr48 === End of file commands.log === Start of file http_server.log 07:34:52.414275 ====> Client connect 07:34:52.414295 accept_connection 3 returned 4 07:34:52.414306 accept_connection 3 returned 0 07:34:52.414315 Read 93 bytes 07:34:52.414322 Process 93 bytes request 07:34:52.414329 Got request: GET /verifiedserver HTTP/1.1 07:34:52.414335 Are-we-friendly question received 07:34:52.414355 Wrote request (93 bytes) input to log/17/server.input 07:34:52.414366 Identifying ourselves as friends 07:34:52.414540 Response sent (56 bytes) and written to log/17/server.response 07:34:52.414555 special request received, no persistency 07:34:52.414562 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 48 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind48 ==76545== ==76545== Process terminating with default action of signal 4 (SIGILL) ==76545== Illegal opcode at address 0x4003082 ==76545== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76545== by 0x4003082: main (tool_main.c:234) === End of file valgrind48 test 0049...[HTTP follow redirect with ../] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind49 ../src/curl -q --output log/15/curl49.out --include --trace-ascii log/15/trace49 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/49 -L > log/15/stdout49 2> log/15/stderr49 49: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 49 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind49 ../src/curl -q --output log/15/curl49.out --include --trace-ascii log/15/trace49 --trace-config all --trace-time http://127.0.0.1:36993/we/are/all/twits/49 -L > log/15/stdout49 2> log/15/stderr49 === End of file commands.log === Start of file http_server.log 07:34:52.413894 ====> Client connect 07:34:52.413915 accept_connection 3 returned 4 07:34:52.413926 accept_connection 3 returned 0 07:34:52.413934 Read 93 bytes 07:34:52.413941 Process 93 bytes request 07:34:52.413948 Got request: GET /verifiedserver HTTP/1.1 07:34:52.413955 Are-we-friendly question received 07:34:52.413970 Wrote request (93 bytes) input to log/15/server.input 07:34:52.413980 Identifying ourselves as friends 07:34:52.414013 Response sent (56 bytes) and written to log/15/server.response 07:34:52.414020 special request received, no persistency 07:34:52.414025 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 49 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind49 ==76549== ==76549== Process terminating with default action of signal 4 (SIGILL) ==76549== Illegal opcode at address 0x4003082 ==76549== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76549== by 0x4003082: main (tool_main.c:234) === End of file valgrind49 test 0052...[HTTP follow redirect with ./-prefix] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind52 ../src/curl -q --output log/14/curl52.out --include --trace-ascii log/14/trace52 --trace-config all --trace-time http://127.0.0.1:37963/we/are/all/twits/52 -L > log/14/stdout52 2> log/14/stderr52 52: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 52 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind52 ../src/curl -q --output log/14/curl52.out --include --trace-ascii log/14/trace52 --trace-config all --trace-time http://127.0.0.1:37963/we/are/all/twits/52 -L > log/14/stdout52 2> log/14/stderr52 === End of file commands.log === Start of file http_server.log 07:34:52.710366 ====> Client connect 07:34:52.710388 accept_connection 3 returned 4 07:34:52.710399 accept_connection 3 returned 0 07:34:52.710408 Read 93 bytes 07:34:52.710415 Process 93 bytes request 07:34:52.710422 Got request: GET /verifiedserver HTTP/1.1 07:34:52.710429 Are-we-friendly question received 07:34:52.710445 Wrote request (93 bytes) input to log/14/server.input 07:34:52.710456 Identifying ourselves as friends 07:34:52.710496 Response sent (56 bytes) and written to log/14/server.response 07:34:52.710502 special request received, no persistency 07:34:52.710509 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 52 === End of fileCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind53 ../src/curl -q --output log/20/curl53.out --include --trace-ascii log/20/trace53 --trace-config all --trace-time 127.0.0.1:37169/want/53 -b log/20/injar53 -j > log/20/stdout53 2> log/20/stderr53 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind51 ../src/curl -q --output log/4/curl51.out --include --trace-ascii log/4/trace51 --trace-config all --trace-time http://127.0.0.1:33235/we/are/all/twits/51 -L > log/4/stdout51 2> log/4/stderr51 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind55 ../src/curl -q --output log/5/curl55.out --include --trace-ascii log/5/trace55 --trace-config all --trace-time http://127.0.0.1:46675/55 -L > log/5/stdout55 2> log/5/stderr55 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind54 ../src/curl -q --output log/16/curl54.out --include --trace-ascii log/16/trace54 --trace-config all --trace-time http://127.0.0.1:46739/want/54 -L > log/16/stdout54 2> log/16/stderr54 server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind52 ==76801== ==76801== Process terminating with default action of signal 4 (SIGILL) ==76801== Illegal opcode at address 0x4003082 ==76801== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76801== by 0x4003082: main (tool_main.c:234) === End of file valgrind52 test 0053...[HTTP, junk session cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind53 ../src/curl -q --output log/20/curl53.out --include --trace-ascii log/20/trace53 --trace-config all --trace-time 127.0.0.1:37169/want/53 -b log/20/injar53 -j > log/20/stdout53 2> log/20/stderr53 53: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 53 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind53 ../src/curl -q --output log/20/curl53.out --include --trace-ascii log/20/trace53 --trace-config all --trace-time 127.0.0.1:37169/want/53 -b log/20/injar53 -j > log/20/stdout53 2> log/20/stderr53 === End of file commands.log === Start of file http_server.log 07:34:52.766671 ====> Client connect 07:34:52.766698 accept_connection 3 returned 4 07:34:52.766711 accept_connection 3 returned 0 07:34:52.766720 Read 93 bytes 07:34:52.766727 Process 93 bytes request 07:34:52.766737 Got request: GET /verifiedserver HTTP/1.1 07:34:52.766744 Are-we-friendly question received 07:34:52.766776 Wrote request (93 bytes) input to log/20/server.input 07:34:52.766789 Identifying ourselves as friends 07:34:52.766827 Response sent (56 bytes) and written to log/20/server.response 07:34:52.766835 special request received, no persistency 07:34:52.766841 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file injar53 127.0.0.1 FALSE / FALSE 22139150993 mooo indeed 127.0.0.1 FALSE / FALSE 0 moo1 indeed 127.0.0.1 FALSE / FALSE 1 moo2 indeed === End of file injar53 === Start of file server.cmd Testnum 53 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind53 ==76930== ==76930== Process terminating with default action of signal 4 (SIGILL) ==76930== Illegal opcode at address 0x4003082 ==76930== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76930== by 0x4003082: main (tool_main.c:234) === End of file valgrind53 test 0051...[HTTP follow redirect with excessive ../] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind51 ../src/curl -q --output log/4/curl51.out --include --trace-ascii log/4/trace51 --trace-config all --trace-time http://127.0.0.1:33235/we/are/all/twits/51 -L > log/4/stdout51 2> log/4/stderr51 51: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 51 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind51 ../src/curl -q --output log/4/curl51.out --include --trace-ascii log/4/trace51 --trace-config all --trace-time http://127.0.0.1:33235/we/are/all/twits/51 -L > log/4/stdout51 2> log/4/stderr51 === End of file commands.log === Start of file http_server.log 07:34:52.708760 ====> Client connect 07:34:52.708782 accept_connection 3 returned 4 07:34:52.708794 accept_connection 3 returned 0 07:34:52.708803 Read 93 bytes 07:34:52.708810 Process 93 bytes request 07:34:52.708824 Got request: GET /verifiedserver HTTP/1.1 07:34:52.708831 Are-we-friendly question received 07:34:52.708848 Wrote request (93 bytes) input to log/4/server.input 07:34:52.708861 Identifying ourselves as friends 07:34:52.708902 Response sent (56 bytes) and written to log/4/server.response 07:34:52.708912 special request received, no persistency 07:34:52.708918 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 51 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind51 ==76800== ==76800== Process terminating with default action of signal 4 (SIGILL) ==76800== Illegal opcode at address 0x4003082 ==76800== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76800== by 0x4003082: main (tool_main.c:234) === End of file valgrind51 test 0055...[HTTP follow redirect with single slash in path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind55 ../src/curl -q --output log/5/curl55.out --include --trace-ascii log/5/trace55 --trace-config all --trace-time http://127.0.0.1:46675/55 -L > log/5/stdout55 2> log/5/stderr55 55: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 55 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind55 ../src/curl -q --output log/5/curl55.out --include --trace-ascii log/5/trace55 --trace-config all --trace-time http://127.0.0.1:46675/55 -L > log/5/stdout55 2> log/5/stderr55 === End of file commands.log === Start of file http_server.log 07:34:52.786694 ====> Client connect 07:34:52.786717 accept_connection 3 returned 4 07:34:52.786728 accept_connection 3 returned 0 07:34:52.786738 Read 93 bytes 07:34:52.786745 Process 93 bytes request 07:34:52.786754 Got request: GET /verifiedserver HTTP/1.1 07:34:52.786760 Are-we-friendly question received 07:34:52.786776 Wrote request (93 bytes) input to log/5/server.input 07:34:52.786787 Identifying ourselves as friends 07:34:52.786823 Response sent (56 bytes) and written to log/5/server.response 07:34:52.786829 special request received, no persistency 07:34:52.786836 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind57 ../src/curl -q --include --trace-ascii log/15/trace57 --trace-config all --trace-time -w "%{content_type}\n" http://127.0.0.1:36993/57 -o log/15/out57 > log/15/stdout57 2> log/15/stderr57 log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 55 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind55 ==77022== ==77022== Process terminating with default action of signal 4 (SIGILL) ==77022== Illegal opcode at address 0x4003082 ==77022== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77022== by 0x4003082: main (tool_main.c:234) === End of file valgrind55 test 0054...[HTTP with blank Location:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind54 ../src/curl -q --output log/16/curl54.out --include --trace-ascii log/16/trace54 --trace-config all --trace-time http://127.0.0.1:46739/want/54 -L > log/16/stdout54 2> log/16/stderr54 54: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 54 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind54 ../src/curl -q --output log/16/curl54.out --include --trace-ascii log/16/trace54 --trace-config all --trace-time http://127.0.0.1:46739/want/54 -L > log/16/stdout54 2> log/16/stderr54 === End of file commands.log === Start of file http_server.log 07:34:52.780393 ====> Client connect 07:34:52.780416 accept_connection 3 returned 4 07:34:52.780429 accept_connection 3 returned 0 07:34:52.780439 Read 93 bytes 07:34:52.780446 Process 93 bytes request 07:34:52.780456 Got request: GET /verifiedserver HTTP/1.1 07:34:52.780462 Are-we-friendly question received 07:34:52.780479 Wrote request (93 bytes) input to log/16/server.input 07:34:52.780490 Identifying ourselves as friends 07:34:52.780534 Response sent (56 bytes) and written to log/16/server.response 07:34:52.780541 special request received, no persistency 07:34:52.780547 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 54 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind54 ==76992== ==76992== Process terminating with default action of signal 4 (SIGILL) ==76992== Illegal opcode at address 0x4003082 ==76992== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==76992== by 0x4003082: main (tool_main.c:234) === End of file valgrind54 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind56 ../src/curl -q --output log/17/curl56.out --include --trace-ascii log/17/trace56 --trace-config all --trace-time -K - 127.0.0.1:39089/that.site.com/56 log/17/stdout56 2> log/17/stderr56 test 0057...[HTTP content-type with spaces in] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind57 ../src/curl -q --include --trace-ascii log/15/trace57 --trace-config all --trace-time -w "%{content_type}\n" http://127.0.0.1:36993/57 -o log/15/out57 > log/15/stdout57 2> log/15/stderr57 57: stdout FAILED: --- log/15/check-expected 2025-07-18 07:34:53.307111333 +0000 +++ log/15/check-generated 2025-07-18 07:34:53.307111333 +0000 @@ -1 +0,0 @@ -text/html; charset=ISO-8859-4[CR][LF] == Contents of files in the log/15/ dir after test 57 === Start of file check-expected text/html; charset=ISO-8859-4[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind57 ../src/curl -q --include --trace-ascii log/15/trace57 --trace-config all --trace-time -w "%{content_type}\n" http://127.0.0.1:36993/57 -o log/15/out57 > log/15/stdout57 2> log/15/stderr57 === End of file commands.log === Start of file http_server.log 07:34:52.789798 ====> Client connect 07:34:52.789821 accept_connection 3 returned 4 07:34:52.789832 accept_connection 3 returned 0 07:34:52.789841 Read 93 bytes 07:34:52.789848 Process 93 bytes request 07:34:52.789856 Got request: GET /verifiedserver HTTP/1.1 07:34:52.789862 Are-we-friendly question received 07:34:52.789878 Wrote request (93 bytes) input to log/15/server.input 07:34:52.789889 Identifying ourselves as friends 07:34:52.789926 Response sent (56 bytes) and written to log/15/server.response 07:34:52.789933 special request received, no persistency 07:34:52.789939 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 57 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind57 ==77032== ==77032== Process terminating with default action of signal 4 (SIGILL) ==77032== Illegal opcode at address 0x4003082 ==77032== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77032== by 0x4003082: main (tool_main.c:234) === End of file valgrind57 test 0056...[HTTP POST with *HUGE* request and chunked transfer-encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind56 ../src/curl -q --output log/17/curl56.out --include --trace-ascii log/17/trace56 --trace-config all --trace-time -K - 127.0.0.1:39089/that.site.com/56 log/17/stdout56 2> log/17/stderr56 56: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 56 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind56 ../src/curl -q --output log/17/curl56.out --include --trace-ascii log/17/trace56 --trace-config all --trace-time -K - 127.0.0.1:39089/that.site.com/56 log/17/stdout56 2> log/17/stderr56 === End of file commands.log === Start of file http_server.log 07:34:52.790256 ====> Client connect 07:34:52.790277 accept_connection 3 returned 4 07:34:52.790288 accept_connection 3 returned 0 07:34:52.790297 Read 93 bytes 07:34:52.790304 Process 93 bytes request 07:34:52.790311 Got request: GET /verifiedserver HTTP/1.1 07:34:52.790318 Are-we-friendly question received 07:34:52.790333 Wrote request (93 bytes) input to log/17/server.input 07:34:52.790344 Identifying ourselves as friends 07:34:52.790381 Response sent (56 bytes) and written to log/17/server.response 07:34:52.790388 special request received, no persistency 07:34:52.790394 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 56 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stdin-for-56 # data "we post this" # # enforce chunky post header "Transfer-Encoding: chunked" # # Set the user-agent using a short-option: -A "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind19 ../src/curl -q --output log/6/curl19.out --include --trace-ascii log/6/trace19 --trace-config all --trace-time --trace-config all 127.0.0.1:47 > log/6/stdout19 2> log/6/stderr19 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" # === End of file stdin-for-56 === Start of file valgrind56 ==77042== ==77042== Process terminating with default action of signal 4 (SIGILL) ==77042== Illegal opcode at address 0x4003082 ==77042== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77042== by 0x4003082: main (tool_main.c:234) === End of file valgrind56 * starts no server test 0019...[attempt connect to non-listening socket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind19 ../src/curl -q --output log/6/curl19.out --include --trace-ascii log/6/trace19 --trace-config all --trace-time --trace-config all 127.0.0.1:47 > log/6/stdout19 2> log/6/stderr19 curl returned 132, when expecting 7 19: exit FAILED == Contents of files in the log/6/ dir after test 19 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind58 ../src/curl -q --output log/14/curl58.out --include --trace-ascii log/14/trace58 --trace-config all --trace-time http://127.0.0.1:37963/we/want/ -T log/14/58te[]st.txt -g > log/14/stdout58 2> log/14/stderr58 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind60 ../src/curl -q --output log/4/curl60.out --include --trace-ascii log/4/trace60 --trace-config all --trace-time http://127.0.0.1:33235/bzz/60 -T - -H "Content-Length: 1" log/4/stdout60 2> log/4/stderr60 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind59 ../src/curl -q --output log/20/curl59.out --include --trace-ascii log/20/trace59 --trace-config all --trace-time "http://127.0.0.1:37169?mooo/59" > log/20/stdout59 2> log/20/stderr59 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind62 ../src/curl -q --output log/16/curl62.out --include --trace-ascii log/16/trace62 --trace-config all --trace-time http://127.0.0.1:46739/we/want/62 http://127.0.0.1:46739/we/want/62?hoge=fuga -b log/16/jar62.txt -H "Host: www.host.foo.com" > log/16/stdout62 2> log/16/stderr62 tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind19 ../src/curl -q --output log/6/curl19.out --include --trace-ascii log/6/trace19 --trace-config all --trace-time --trace-config all 127.0.0.1:47 > log/6/stdout19 2> log/6/stderr19 === End of file commands.log === Start of file server.cmd Testnum 19 === End of file server.cmd === Start of file valgrind19 ==73867== ==73867== Process terminating with default action of signal 4 (SIGILL) ==73867== Illegal opcode at address 0x4003082 ==73867== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73867== by 0x4003082: main (tool_main.c:234) === End of file valgrind19 test 0058...[HTTP PUT from file with weird letters] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind58 ../src/curl -q --output log/14/curl58.out --include --trace-ascii log/14/trace58 --trace-config all --trace-time http://127.0.0.1:37963/we/want/ -T log/14/58te[]st.txt -g > log/14/stdout58 2> log/14/stderr58 58: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 58 === Start of file 58te[]st.txt a few bytes === End of file 58te[]st.txt === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind58 ../src/curl -q --output log/14/curl58.out --include --trace-ascii log/14/trace58 --trace-config all --trace-time http://127.0.0.1:37963/we/want/ -T log/14/58te[]st.txt -g > log/14/stdout58 2> log/14/stderr58 === End of file commands.log === Start of file http_server.log 07:34:53.154493 ====> Client connect 07:34:53.154518 accept_connection 3 returned 4 07:34:53.154530 accept_connection 3 returned 0 07:34:53.154540 Read 93 bytes 07:34:53.154547 Process 93 bytes request 07:34:53.154557 Got request: GET /verifiedserver HTTP/1.1 07:34:53.154564 Are-we-friendly question received 07:34:53.154583 Wrote request (93 bytes) input to log/14/server.input 07:34:53.154596 Identifying ourselves as friends 07:34:53.154636 Response sent (56 bytes) and written to log/14/server.response 07:34:53.154643 special request received, no persistency 07:34:53.154650 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 58 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind58 ==77294== ==77294== Process terminating with default action of signal 4 (SIGILL) ==77294== Illegal opcode at address 0x4003082 ==77294== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77294== by 0x4003082: main (tool_main.c:234) === End of file valgrind58 test 0060...[HTTP PUT from stdin with wrong content-length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind60 ../src/curl -q --output log/4/curl60.out --include --trace-ascii log/4/trace60 --trace-config all --trace-time http://127.0.0.1:33235/bzz/60 -T - -H "Content-Length: 1" log/4/stdout60 2> log/4/stderr60 60: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 60 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind60 ../src/curl -q --output log/4/curl60.out --include --trace-ascii log/4/trace60 --trace-config all --trace-time http://127.0.0.1:33235/bzz/60 -T - -H "Content-Length: 1" log/4/stdout60 2> log/4/stderr60 === End of file commands.log === Start of file http_server.log 07:34:53.167872 ====> Client connect 07:34:53.167941 accept_connection 3 returned 4 07:34:53.167953 accept_connection 3 returned 0 07:34:53.167961 Read 93 bytes 07:34:53.167968 Process 93 bytes request 07:34:53.167976 Got request: GET /verifiedserver HTTP/1.1 07:34:53.167982 Are-we-friendly question received 07:34:53.167997 Wrote request (93 bytes) input to log/4/server.input 07:34:53.168008 Identifying ourselves as friends 07:34:53.168042 Response sent (56 bytes) and written to log/4/server.response 07:34:53.168049 special request received, no persistency 07:34:53.168054 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 60 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stdin-for-60 more than one byte === End of file stdin-for-60 === Start of file valgrind60 ==77344== ==77344== Process terminating with default action of signal 4 (SIGILL) ==77344== Illegal opcode at address 0x4003082 ==77344== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77344== by 0x4003082: main (tool_main.c:234) === End of file valgrind60 test 0059...[HTTP URL with slash but with "parameter"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind59 ../src/curl -q --output log/20/curl59.out --include --trace-ascii log/20/trace59 --trace-config all --trace-time "http://127.0.0.1:37169?mooo/59" > log/20/stdout59 2> log/20/stderr59 59: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 59 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind59 ../src/curl -q --output log/20/curl59.out --include --trace-ascii log/20/trace59 --trace-config all --trace-time "http://127.0.0.1:37169?mooo/59" > log/20/stdout59 2> log/20/stderr59 === End of file commands.log === Start of file http_server.log 07:34:53.165479 ====> Client connect 07:34:53.165510 accept_connection 3 returned 4 07:34:53.165523 accept_connection 3 returned 0 07:34:53.165535 Read 93 bytes 07:34:53.165543 Process 93 bytes request 07:34:53.165555 Got request: GET /verifiedserver HTTP/1.1 07:34:53.165564 Are-we-friendly question received 07:34:53.165584 Wrote request (93 bytes) input to log/20/server.input 07:34:53.165596 Identifying ourselves as friends 07:34:53.165639 Response sent (56 bytes) and written to log/20/server.response 07:34:53.165646 special request received, no persistency 07:34:53.165652 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind64 ../src/curl -q --output log/17/curl64.out --include --trace-ascii log/17/trace64 --trace-config all --trace-time http://127.0.0.1:39089/64 -u testuser:testpass --digest > log/17/stdout64 2> log/17/stderr64 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind61 ../src/curl -q --output log/5/curl61.out --include --trace-ascii log/5/trace61 --trace-config all --trace-time http://127.0.0.1:46675/we/want/61 -c log/5/jar61.txt -H "Host: www.host.foo.com" > log/5/stdout61 2> log/5/stderr61 ify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 59 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind59 ==77326== ==77326== Process terminating with default action of signal 4 (SIGILL) ==77326== Illegal opcode at address 0x4003082 ==77326== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77326== by 0x4003082: main (tool_main.c:234) === End of file valgrind59 test 0062...[HTTP, send cookies when using custom Host:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind62 ../src/curl -q --output log/16/curl62.out --include --trace-ascii log/16/trace62 --trace-config all --trace-time http://127.0.0.1:46739/we/want/62 http://127.0.0.1:46739/we/want/62?hoge=fuga -b log/16/jar62.txt -H "Host: www.host.foo.com" > log/16/stdout62 2> log/16/stderr62 62: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 62 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind62 ../src/curl -q --output log/16/curl62.out --include --trace-ascii log/16/trace62 --trace-config all --trace-time http://127.0.0.1:46739/we/want/62 http://127.0.0.1:46739/we/want/62?hoge=fuga -b log/16/jar62.txt -H "Host: www.host.foo.com" > log/16/stdout62 2> log/16/stderr62 === End of file commands.log === Start of file http_server.log 07:34:53.175185 ====> Client connect 07:34:53.175207 accept_connection 3 returned 4 07:34:53.175218 accept_connection 3 returned 0 07:34:53.175228 Read 93 bytes 07:34:53.175235 Process 93 bytes request 07:34:53.175244 Got request: GET /verifiedserver HTTP/1.1 07:34:53.175250 Are-we-friendly question received 07:34:53.175268 Wrote request (93 bytes) input to log/16/server.input 07:34:53.175279 Identifying ourselves as friends 07:34:53.175315 Response sent (56 bytes) and written to log/16/server.response 07:34:53.175322 special request received, no persistency 07:34:53.175328 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file jar62.txt # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. #HttpOnly_.foo.com TRUE /we/want/ FALSE 22147483647 test yes .host.foo.com TRUE /we/want/ FALSE 22147483647 test2 yes .fake.host.foo.com TRUE /we/want/ FALSE 22147483647 test4 yes .foo.com TRUE /moo TRUE 0 test3 maybe === End of file jar62.txt === Start of file server.cmd Testnum 62 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind62 ==77391== ==77391== Process terminating with default action of signal 4 (SIGILL) ==77391== Illegal opcode at address 0x4003082 ==77391== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77391== by 0x4003082: main (tool_main.c:234) === End of file valgrind62 test 0064...[HTTP with Digest authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind64 ../src/curl -q --output log/17/curl64.out --include --trace-ascii log/17/trace64 --trace-config all --trace-time http://127.0.0.1:39089/64 -u testuser:testpass --digest > log/17/stdout64 2> log/17/stderr64 64: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 64 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind64 ../src/curl -q --output log/17/curl64.out --include --trace-ascii log/17/trace64 --trace-config all --trace-time http://127.0.0.1:39089/64 -u testuser:testpass --digest > log/17/stdout64 2> log/17/stderr64 === End of file commands.log === Start of file http_server.log 07:34:53.182039 ====> Client connect 07:34:53.182062 accept_connection 3 returned 4 07:34:53.182075 accept_connection 3 returned 0 07:34:53.182085 Read 93 bytes 07:34:53.182092 Process 93 bytes request 07:34:53.182100 Got request: GET /verifiedserver HTTP/1.1 07:34:53.182107 Are-we-friendly question received 07:34:53.182123 Wrote request (93 bytes) input to log/17/server.input 07:34:53.182134 Identifying ourselves as friends 07:34:53.182176 Response sent (56 bytes) and written to log/17/server.response 07:34:53.182183 special request received, no persistency 07:34:53.182189 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 64 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind64 ==77462== ==77462== Process terminating with default action of signal 4 (SIGILL) ==77462== Illegal opcode at address 0x4003082 ==77462== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77462== by 0x4003082: main (tool_main.c:234) === End of file valgrind64 setenv TZ = GMT test 0061...[HTTP with various cookies and custom Host:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind61 ../src/curl -q --output log/5/curl61.out --include --trace-ascii log/5/trace61 --trace-config all --trace-time http://127.0.0.1:46675/we/want/61 -c log/5/jar61.txt -H "Host: www.host.foo.com" > log/5/stdout61 2> log/5/stderr61 61: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 61 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind61 ../src/curl -q --output log/5/curl61.out --include --trace-ascii log/5/trace61 --trace-config all --trace-time http://127.0.0.1:46675/we/want/61 -c log/5/jar61.txt -H "Host: www.host.foo.com" > log/5/stdout61 2> log/5/stderr61 === End of file commands.log === Start of fileCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind63 ../src/curl -q --output log/15/curl63.out --include --trace-ascii log/15/trace63 --trace-config all --trace-time http://we.want.that.site.com/63 > log/15/stdout63 2> log/15/stderr63 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind66 ../src/curl -q --output log/14/curl66.out --include --trace-ascii log/14/trace66 --trace-config all --trace-time http://127.0.0.1:37963/66 --http0.9 > log/14/stdout66 2> log/14/stderr66 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind67 ../src/curl -q --output log/4/curl67.out --include --trace-ascii log/4/trace67 --trace-config all --trace-time http://127.0.0.1:33235/67 -u testuser:testpass --ntlm > log/4/stdout67 2> log/4/stderr67 http_server.log 07:34:53.173941 ====> Client connect 07:34:53.173963 accept_connection 3 returned 4 07:34:53.173974 accept_connection 3 returned 0 07:34:53.173983 Read 93 bytes 07:34:53.173990 Process 93 bytes request 07:34:53.173998 Got request: GET /verifiedserver HTTP/1.1 07:34:53.174004 Are-we-friendly question received 07:34:53.174020 Wrote request (93 bytes) input to log/5/server.input 07:34:53.174031 Identifying ourselves as friends 07:34:53.174068 Response sent (56 bytes) and written to log/5/server.response 07:34:53.174074 special request received, no persistency 07:34:53.174080 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 61 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind61 ==77386== ==77386== Process terminating with default action of signal 4 (SIGILL) ==77386== Illegal opcode at address 0x4003082 ==77386== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77386== by 0x4003082: main (tool_main.c:234) === End of file valgrind61 setenv http_proxy = http://fake:user@127.0.0.1:36993/ test 0063...[HTTP with proxy authorization set in environment] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind63 ../src/curl -q --output log/15/curl63.out --include --trace-ascii log/15/trace63 --trace-config all --trace-time http://we.want.that.site.com/63 > log/15/stdout63 2> log/15/stderr63 63: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 63 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind63 ../src/curl -q --output log/15/curl63.out --include --trace-ascii log/15/trace63 --trace-config all --trace-time http://we.want.that.site.com/63 > log/15/stdout63 2> log/15/stderr63 === End of file commands.log === Start of file http_server.log 07:34:53.179588 ====> Client connect 07:34:53.179610 accept_connection 3 returned 4 07:34:53.179688 accept_connection 3 returned 0 07:34:53.179703 Read 93 bytes 07:34:53.179710 Process 93 bytes request 07:34:53.179719 Got request: GET /verifiedserver HTTP/1.1 07:34:53.179928 Are-we-friendly question received 07:34:53.179955 Wrote request (93 bytes) input to log/15/server.input 07:34:53.179968 Identifying ourselves as friends 07:34:53.180029 Response sent (56 bytes) and written to log/15/server.response 07:34:53.180066 special request received, no persistency 07:34:53.180077 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 63 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind63 ==77423== ==77423== Process terminating with default action of signal 4 (SIGILL) ==77423== Illegal opcode at address 0x4003082 ==77423== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77423== by 0x4003082: main (tool_main.c:234) === End of file valgrind63 test 0066...[HTTP GET without headers in the response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind66 ../src/curl -q --output log/14/curl66.out --include --trace-ascii log/14/trace66 --trace-config all --trace-time http://127.0.0.1:37963/66 --http0.9 > log/14/stdout66 2> log/14/stderr66 66: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 66 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind66 ../src/curl -q --output log/14/curl66.out --include --trace-ascii log/14/trace66 --trace-config all --trace-time http://127.0.0.1:37963/66 --http0.9 > log/14/stdout66 2> log/14/stderr66 === End of file commands.log === Start of file http_server.log 07:34:53.595360 ====> Client connect 07:34:53.595402 accept_connection 3 returned 4 07:34:53.595418 accept_connection 3 returned 0 07:34:53.595429 Read 93 bytes 07:34:53.595437 Process 93 bytes request 07:34:53.595447 Got request: GET /verifiedserver HTTP/1.1 07:34:53.595453 Are-we-friendly question received 07:34:53.595472 Wrote request (93 bytes) input to log/14/server.input 07:34:53.595484 Identifying ourselves as friends 07:34:53.595526 Response sent (56 bytes) and written to log/14/server.response 07:34:53.595533 special request received, no persistency 07:34:53.595540 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 66 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind66 ==77785== ==77785== Process terminating with default action of signal 4 (SIGILL) ==77785== Illegal opcode at address 0x4003082 ==77785== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77785== by 0x4003082: main (tool_main.c:234) === End of file valgrind66 test 0067...[HTTP with NTLM authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind67 ../src/curl -q --output log/4/curl67.out --include --trace-ascii log/4/trace67 --trace-config all --trace-time http://127.0.0.1:33235/67 -u testuser:testpass --ntlm > log/4/stdout67 2> log/4/stderr67 67: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 67 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind67 ../src/curl -q --output log/4/curl67.out --include --trace-ascii log/4/trace67 --trace-config all --trace-time http://127.0.0.1:33235/67 -u testuser:testpass --ntlm > log/4/stdout67 2> log/4/stderr67 === ECMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind68 ../src/curl -q --output log/20/curl68.out --include --trace-ascii log/20/trace68 --trace-config all --trace-time http://127.0.0.1:37169/68 -u testuser:testpass --ntlm > log/20/stdout68 2> log/20/stderr68 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind69 ../src/curl -q --output log/16/curl69.out --include --trace-ascii log/16/trace69 --trace-config all --trace-time http://127.0.0.1:46739/69 -u testuser:testpass --anyauth > log/16/stdout69 2> log/16/stderr69 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind70 ../src/curl -q --output log/17/curl70.out --include --trace-ascii log/17/trace70 --trace-config all --trace-time http://127.0.0.1:39089/70 -u testuser:testpass --anyauth > log/17/stdout70 2> log/17/stderr70 nd of file commands.log === Start of file http_server.log 07:34:53.600917 ====> Client connect 07:34:53.600939 accept_connection 3 returned 4 07:34:53.600950 accept_connection 3 returned 0 07:34:53.600959 Read 93 bytes 07:34:53.600966 Process 93 bytes request 07:34:53.600975 Got request: GET /verifiedserver HTTP/1.1 07:34:53.600981 Are-we-friendly question received 07:34:53.601003 Wrote request (93 bytes) input to log/4/server.input 07:34:53.601013 Identifying ourselves as friends 07:34:53.601052 Response sent (56 bytes) and written to log/4/server.response 07:34:53.601059 special request received, no persistency 07:34:53.601065 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 67 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind67 ==77807== ==77807== Process terminating with default action of signal 4 (SIGILL) ==77807== Illegal opcode at address 0x4003082 ==77807== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77807== by 0x4003082: main (tool_main.c:234) === End of file valgrind67 test 0068...[HTTP with NTLM authorization and wrong password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind68 ../src/curl -q --output log/20/curl68.out --include --trace-ascii log/20/trace68 --trace-config all --trace-time http://127.0.0.1:37169/68 -u testuser:testpass --ntlm > log/20/stdout68 2> log/20/stderr68 68: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 68 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind68 ../src/curl -q --output log/20/curl68.out --include --trace-ascii log/20/trace68 --trace-config all --trace-time http://127.0.0.1:37169/68 -u testuser:testpass --ntlm > log/20/stdout68 2> log/20/stderr68 === End of file commands.log === Start of file http_server.log 07:34:53.605023 ====> Client connect 07:34:53.605046 accept_connection 3 returned 4 07:34:53.605057 accept_connection 3 returned 0 07:34:53.605067 Read 93 bytes 07:34:53.605074 Process 93 bytes request 07:34:53.605082 Got request: GET /verifiedserver HTTP/1.1 07:34:53.605088 Are-we-friendly question received 07:34:53.605106 Wrote request (93 bytes) input to log/20/server.input 07:34:53.605117 Identifying ourselves as friends 07:34:53.605154 Response sent (56 bytes) and written to log/20/server.response 07:34:53.605161 special request received, no persistency 07:34:53.605167 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 68 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind68 ==77824== ==77824== Process terminating with default action of signal 4 (SIGILL) ==77824== Illegal opcode at address 0x4003082 ==77824== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77824== by 0x4003082: main (tool_main.c:234) === End of file valgrind68 test 0069...[HTTP with NTLM, Basic or Wild-and-crazy authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind69 ../src/curl -q --output log/16/curl69.out --include --trace-ascii log/16/trace69 --trace-config all --trace-time http://127.0.0.1:46739/69 -u testuser:testpass --anyauth > log/16/stdout69 2> log/16/stderr69 69: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 69 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind69 ../src/curl -q --output log/16/curl69.out --include --trace-ascii log/16/trace69 --trace-config all --trace-time http://127.0.0.1:46739/69 -u testuser:testpass --anyauth > log/16/stdout69 2> log/16/stderr69 === End of file commands.log === Start of file http_server.log 07:34:53.605511 ====> Client connect 07:34:53.605532 accept_connection 3 returned 4 07:34:53.605543 accept_connection 3 returned 0 07:34:53.605552 Read 93 bytes 07:34:53.605559 Process 93 bytes request 07:34:53.605567 Got request: GET /verifiedserver HTTP/1.1 07:34:53.605573 Are-we-friendly question received 07:34:53.605588 Wrote request (93 bytes) input to log/16/server.input 07:34:53.605599 Identifying ourselves as friends 07:34:53.605637 Response sent (56 bytes) and written to log/16/server.response 07:34:53.605647 special request received, no persistency 07:34:53.605654 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 69 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind69 ==77831== ==77831== Process terminating with default action of signal 4 (SIGILL) ==77831== Illegal opcode at address 0x4003082 ==77831== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77831== by 0x4003082: main (tool_main.c:234) === End of file valgrind69 test 0070...[HTTP with Digest *OR* NTLM authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind70 ../src/curl -q --output log/17/curl70.out --include --trace-ascii log/17/trace70 --trace-config all --trace-time http://127.0.0.1:39089/70 -u testuser:testpass --anyauth > log/17/stdout70 2> log/17/stderr70 70: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 70 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind70 ../src/curl -q --output log/17/curl70.out --include --trace-ascii log/17/trace70 --trace-config aCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind72 ../src/curl -q --output log/15/curl72.out --include --trace-ascii log/15/trace72 --trace-config all --trace-time http://127.0.0.1:36993/72 -u testuser:testpass --anyauth > log/15/stdout72 2> log/15/stderr72 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind71 ../src/curl -q --output log/5/curl71.out --include --trace-ascii log/5/trace71 --trace-config all --trace-time http://127.0.0.1:46675/we/want/71 -K - log/5/stdout71 2> log/5/stderr71 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind75 ../src/curl -q --include --trace-ascii log/20/trace75 --trace-config all --trace-time "http://a-site-never-accessed.example.org/[2-1]" -o "log/20/weee#1.dump" --stderr - > log/20/stdout75 2> log/20/stderr75 ll --trace-time http://127.0.0.1:39089/70 -u testuser:testpass --anyauth > log/17/stdout70 2> log/17/stderr70 === End of file commands.log === Start of file http_server.log 07:34:53.606126 ====> Client connect 07:34:53.606147 accept_connection 3 returned 4 07:34:53.606158 accept_connection 3 returned 0 07:34:53.606167 Read 93 bytes 07:34:53.606174 Process 93 bytes request 07:34:53.606181 Got request: GET /verifiedserver HTTP/1.1 07:34:53.606187 Are-we-friendly question received 07:34:53.606203 Wrote request (93 bytes) input to log/17/server.input 07:34:53.606214 Identifying ourselves as friends 07:34:53.606250 Response sent (56 bytes) and written to log/17/server.response 07:34:53.606257 special request received, no persistency 07:34:53.606263 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 70 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind70 ==77826== ==77826== Process terminating with default action of signal 4 (SIGILL) ==77826== Illegal opcode at address 0x4003082 ==77826== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77826== by 0x4003082: main (tool_main.c:234) === End of file valgrind70 test 0072...[HTTP with Digest *OR* Basic authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind72 ../src/curl -q --output log/15/curl72.out --include --trace-ascii log/15/trace72 --trace-config all --trace-time http://127.0.0.1:36993/72 -u testuser:testpass --anyauth > log/15/stdout72 2> log/15/stderr72 72: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 72 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind72 ../src/curl -q --output log/15/curl72.out --include --trace-ascii log/15/trace72 --trace-config all --trace-time http://127.0.0.1:36993/72 -u testuser:testpass --anyauth > log/15/stdout72 2> log/15/stderr72 === End of file commands.log === Start of file http_server.log 07:34:53.607844 ====> Client connect 07:34:53.607870 accept_connection 3 returned 4 07:34:53.607882 accept_connection 3 returned 0 07:34:53.607892 Read 93 bytes 07:34:53.607899 Process 93 bytes request 07:34:53.607907 Got request: GET /verifiedserver HTTP/1.1 07:34:53.607932 Are-we-friendly question received 07:34:53.607956 Wrote request (93 bytes) input to log/15/server.input 07:34:53.607969 Identifying ourselves as friends 07:34:53.608011 Response sent (56 bytes) and written to log/15/server.response 07:34:53.608017 special request received, no persistency 07:34:53.608024 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 72 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind72 ==77837== ==77837== Process terminating with default action of signal 4 (SIGILL) ==77837== Illegal opcode at address 0x4003082 ==77837== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77837== by 0x4003082: main (tool_main.c:234) === End of file valgrind72 test 0071...[HTTP and -F upload in config file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind71 ../src/curl -q --output log/5/curl71.out --include --trace-ascii log/5/trace71 --trace-config all --trace-time http://127.0.0.1:46675/we/want/71 -K - log/5/stdout71 2> log/5/stderr71 71: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 71 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind71 ../src/curl -q --output log/5/curl71.out --include --trace-ascii log/5/trace71 --trace-config all --trace-time http://127.0.0.1:46675/we/want/71 -K - log/5/stdout71 2> log/5/stderr71 === End of file commands.log === Start of file http_server.log 07:34:53.607653 ====> Client connect 07:34:53.607674 accept_connection 3 returned 4 07:34:53.607686 accept_connection 3 returned 0 07:34:53.607695 Read 93 bytes 07:34:53.607702 Process 93 bytes request 07:34:53.607709 Got request: GET /verifiedserver HTTP/1.1 07:34:53.607715 Are-we-friendly question received 07:34:53.607748 Wrote request (93 bytes) input to log/5/server.input 07:34:53.607760 Identifying ourselves as friends 07:34:53.607800 Response sent (56 bytes) and written to log/5/server.response 07:34:53.607806 special request received, no persistency 07:34:53.607812 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 71 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stdin-for-71 -F name=daniel -F tool=curl -F file=@log/5/test71.txt user-agent = "" === End of file stdin-for-71 === Start of file test71.txt foo- This is a moo- bar === End of file test71.txt === Start of file valgrind71 ==77834== ==77834== Process terminating with default action of signal 4 (SIGILL) ==77834== Illegal opcode at address 0x4003082 ==77834== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==77834== by 0x4003082: main (tool_main.c:234) === End of file valgrind71 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind77 ../src/curl -q --output log/17/curl77.out --include --trace-ascii log/17/trace77 --trace-config all --trace-time http://127.0.0.1:39089/77 -z "dec 12 12:00:00 1999 GMT" > log/17/stdout77 2> log/17/stderr77 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind73 ../src/curl -q --output log/14/curl73.out --include --trace-ascii log/14/trace73 --trace-config all --trace-time http://127.0.0.1:37963/we/want/73 -c log/14/jar73.txt -H "Host: host.NOT_DISCLOSED.se" > log/14/stdout73 2> log/14/stderr73 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind79 ../src/curl -q --output log/5/curl79.out --include --trace-ascii log/5/trace79 --trace-config all --trace-time ftp://127.0.0.1:46675/we/want/that/page/79 -x 127.0.0.1:46675 > log/5/stdout79 2> log/5/stderr79 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind76 ../src/curl -q --output log/16/curl76.out --include --trace-ascii log/16/trace76 --trace-config all --trace-time http://127.0.0.1:46739/76 -u testuser:testpass --anyauth > log/16/stdout76 2> log/16/stderr76 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind78 ../src/curl -q --output log/15/curl78.out --include --trace-ascii log/15/trace78 --trace-config all --trace-time http://127.0.0.1:36993/78 -z "dec 12 11:00:00 1999 GMT" > log/15/stdout78 2> log/15/stderr78 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind74 ../src/curl -q --include --trace-ascii log/4/trace74 --trace-config all --trace-time "http://127.0.0.1:33235/{74,740001}" -o "log/4/dumpit#1.dump" > log/4/stdout74 2> log/4/stderr74 * starts no server test 0075...[HTTP, urlglob retrieval with bad range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind75 ../src/curl -q --include --trace-ascii log/20/trace75 --trace-config all --trace-time "http://a-site-never-accessed.example.org/[2-1]" -o "log/20/weee#1.dump" --stderr - > log/20/stdout75 2> log/20/stderr75 75: stdout FAILED: --- log/20/check-expected 2025-07-18 07:34:54.537111362 +0000 +++ log/20/check-generated 2025-07-18 07:34:54.537111362 +0000 @@ -1,3 +0,0 @@ -curl: (3) bad range in URL position 47:[CR][LF] -http://a-site-never-accessed.example.org/[2-1][CR][LF] - ^[CR][LF] == Contents of files in the log/20/ dir after test 75 === Start of file check-expected curl: (3) bad range in URL position 47:[CR][LF] http://a-site-never-accessed.example.org/[2-1][CR][LF] ^[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind75 ../src/curl -q --include --trace-ascii log/20/trace75 --trace-config all --trace-time "http://a-site-never-accessed.example.org/[2-1]" -o "log/20/weee#1.dump" --stderr - > log/20/stdout75 2> log/20/stderr75 === End of file commands.log === Start of file server.cmd Testnum 75 === End of file server.cmd === Start of file valgrind75 ==78178== ==78178== Process terminating with default action of signal 4 (SIGILL) ==78178== Illegal opcode at address 0x4003082 ==78178== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78178== by 0x4003082: main (tool_main.c:234) === End of file valgrind75 test 0079...[FTP over HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind79 ../src/curl -q --output log/5/curl79.out --include --trace-ascii log/5/trace79 --trace-config all --trace-time ftp://127.0.0.1:46675/we/want/that/page/79 -x 127.0.0.1:46675 > log/5/stdout79 2> log/5/stderr79 79: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 79 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind79 ../src/curl -q --output log/5/curl79.out --include --trace-ascii log/5/trace79 --trace-config all --trace-time ftp://127.0.0.1:46675/we/want/that/page/79 -x 127.0.0.1:46675 > log/5/stdout79 2> log/5/stderr79 === End of file commands.log === Start of file http_server.log 07:34:53.998032 ====> Client connect 07:34:53.998054 accept_connection 3 returned 4 07:34:53.998066 accept_connection 3 returned 0 07:34:53.998075 Read 93 bytes 07:34:53.998082 Process 93 bytes request 07:34:53.998089 Got request: GET /verifiedserver HTTP/1.1 07:34:53.998095 Are-we-friendly question received 07:34:53.998111 Wrote request (93 bytes) input to log/5/server.input 07:34:53.998122 Identifying ourselves as friends 07:34:53.998163 Response sent (56 bytes) and written to log/5/server.response 07:34:53.998170 special request received, no persistency 07:34:53.998176 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 79 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind79 ==78299== ==78299== Process terminating with default action of signal 4 (SIGILL) ==78299== Illegal opcode at address 0x4003082 ==78299== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78299== by 0x4003082: main (tool_main.c:234) === End of file valgrind79 test 0073...[HTTP, receive cookies when using custom Host:, domain using only two dots] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind73 ../src/curl -q --output log/14/curl73.out --include --trace-ascii log/14/trace73 --trace-config all --trace-time http://127.0.0.1:37963/we/want/73 -c log/14/jar73.txt -H "Host: host.NOT_DISCLOSED.se" > log/14/stdout73 2> log/14/stderr73 73: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 73 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind73 ../src/curl -q --output log/14/curl73.out --include --trace-ascii log/14/trace73 --trace-config all --trace-time http://127.0.0.1:37963/we/want/73 -c log/14/jar73.txt -H "Host: host.NOT_DISCLOSED.se" > log/14/stdout73 2> log/14/stderr73 === End of file commands.log === Start of file http_server.log 07:34:53.987107 ====> Client connect 07:34:53.987129 accept_connection 3 returned 4 07:34:53.987140 accept_connection 3 returned 0 07:34:53.987149 Read 93 bytes 07:34:53.987157 Process 93 bytes request 07:34:53.987166 Got request: GET /verifiedserver HTTP/1.1 07:34:53.987173 Are-we-friendly question received 07:34:53.987190 Wrote request (93 bytes) input to log/14/server.input 07:34:53.987201 Identifying ourselves as friends 07:34:53.987238 Response sent (56 bytes) and written to log/14/server.response 07:34:53.987244 special request received, no persistency 07:34:53.987251 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 73 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind73 ==78246== ==78246== Process terminating with default action of signal 4 (SIGILL) ==78246== Illegal opcode at address 0x4003082 ==78246== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78246== by 0x4003082: main (tool_main.c:234) === End of file valgrind73 test 0076...[HTTP with comma-separated WWW-Authenticate header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind76 ../src/curl -q --output log/16/curl76.out --include --trace-ascii log/16/trace76 --trace-config all --trace-time http://127.0.0.1:46739/76 -u testuser:testpass --anyauth > log/16/stdout76 2> log/16/stderr76 76: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 76 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind76 ../src/curl -q --output log/16/curl76.out --include --trace-ascii log/16/trace76 --trace-config all --trace-time http://127.0.0.1:46739/76 -u testuser:testpass --anyauth > log/16/stdout76 2> log/16/stderr76 === End of file commands.log === Start of file http_server.log 07:34:53.995487 ====> Client connect 07:34:53.995507 accept_connection 3 returned 4 07:34:53.995519 accept_connection 3 returned 0 07:34:53.995528 Read 93 bytes 07:34:53.995535 Process 93 bytes request 07:34:53.995543 Got request: GET /verifiedserver HTTP/1.1 07:34:53.995549 Are-we-friendly question received 07:34:53.995565 Wrote request (93 bytes) input to log/16/server.input 07:34:53.995576 Identifying ourselves as friends 07:34:53.995614 Response sent (56 bytes) and written to log/16/server.response 07:34:53.995620 special request received, no persistency 07:34:53.995626 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 76 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind76 ==78310== ==78310== Process terminating with default action of signal 4 (SIGILL) ==78310== Illegal opcode at address 0x4003082 ==78310== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78310== by 0x4003082: main (tool_main.c:234) === End of file valgrind76 test 0077...[HTTP with -z "older date"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind77 ../src/curl -q --output log/17/curl77.out --include --trace-ascii log/17/trace77 --trace-config all --trace-time http://127.0.0.1:39089/77 -z "dec 12 12:00:00 1999 GMT" > log/17/stdout77 2> log/17/stderr77 77: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 77 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind77 ../src/curl -q --output log/17/curl77.out --include --trace-ascii log/17/trace77 --trace-config all --trace-time http://127.0.0.1:39089/77 -z "dec 12 12:00:00 1999 GMT" > log/17/stdout77 2> log/17/stderr77 === End of file commands.log === Start of file http_server.log 07:34:53.996163 ====> Client connect 07:34:53.996185 accept_connection 3 returned 4 07:34:53.996196 accept_connection 3 returned 0 07:34:53.996206 Read 93 bytes 07:34:53.996213 Process 93 bytes request 07:34:53.996222 Got request: GET /verifiedserver HTTP/1.1 07:34:53.996229 Are-we-friendly question received 07:34:53.996244 Wrote request (93 bytes) input to log/17/server.input 07:34:53.996255 Identifying ourselves as friends 07:34:53.996293 Response sent (56 bytes) and written to log/17/server.response 07:34:53.996300 special request received, no persistency 07:34:53.996306 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 77 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind77 ==78284== ==78284== Process terminating with default action of signal 4 (SIGILL) ==78284== Illegal opcode at address 0x4003082 ==78284== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78284== by 0x4003082: main (tool_main.c:234) === End of file valgrind77 test 0074...[HTTP, urlglob {}-retrieval and -o #[num] usage] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind74 ../src/curl -q --include --trace-ascii log/4/trace74 --trace-config all --trace-time "http://127.0.0.1:33235/{74,740001}" -o "log/4/dumpit#1.dump" > log/4/stdout74 2> log/4/stderr74 74: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 74 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind74 ../src/curl -q --include --trace-ascii log/4/trace74 --trace-config all --trace-time "http://127.0.0.1:33235/{74,740001}" -o "log/4/dumpit#1.dump" > log/4/stdout74 2> log/4/stderr74 === End of file commands.log === Start of file http_server.log 07:34:53.992115 ====> Client connect 07:34:53.992140 accept_connection 3 returned 4 07:34:53.992152 accept_connection 3 returned 0 07:34:53.992162 Read 93 bytes 07:34:53.992169 Process 93 bytes request 07:34:53.992177 Got request: GET /verifiedserver HTTP/1.1 07:34:53.992195 Are-we-friendly question received 07:34:53.992222 Wrote request (93 bytes) input to log/4/server.input 07:34:53.992234 Identifying ourselves as friends 07:34:53.992278 Response sent (56 bytes) and written to log/4/server.response 07:34:53.992285 special request received, no persistency 07:34:53.992291 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 74 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind74 ==78269== ==78269== Process terminating with default action of signal 4 (SIGILL) ==78269== Illegal opcode at address 0x4003082 ==78269== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78269== by 0x4003082: main (tool_main.c:234) === End of file valgrind74 test 0078...[HTTP with -z "newer date"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind78 ../src/curl -q --output log/15/curl78.out --include --trace-ascii log/15/trace78 --trace-config all --trace-time http://127.0.0.1:36993/78 -z "dec 12 11:00:00 1999 GMT" > log/15/stdout78 2> log/15/stderr78 78: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 78 === Start of file commands.log CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind65 ../src/curl -q --output log/6/curl65.out --include --trace-ascii log/6/trace65 --trace-config all --trace-time http://127.0.0.1:35775/65 -u testuser:test2pass --digest > log/6/stdout65 2> log/6/stderr65 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind84 ../src/curl -q --output log/16/curl84.out --include --trace-ascii log/16/trace84 --trace-config all --trace-time http://127.0.0.1:46739/we/want/that/page/84 -x 127.0.0.1:46739 --user iam:myself > log/16/stdout84 2> log/16/stderr84 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind81 ../src/curl -q --output log/17/curl81.out --include --trace-ascii log/17/trace81 --trace-config all --trace-time http://127.0.0.1:39089/81 --proxy-user testuser:testpass -x http://127.0.0.1:39089 --proxy-ntlm > log/17/stdout81 2> log/17/stderr81 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind86 ../src/curl -q --include --trace-ascii log/5/trace86 --trace-config all --trace-time "http://127.0.0.1:46675/[860001-860003]" -o "log/5/dumpit#1.dump" > log/5/stdout86 2> log/5/stderr86 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind85 ../src/curl -q --output log/14/curl85.out --include --trace-ascii log/14/trace85 --trace-config all --trace-time http://127.0.0.1:37963/we/want/that/page/85 -x 127.0.0.1:37963 --user iam:myself --proxy-user testing:this > log/14/stdout85 2> log/14/stderr85 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind82 ../src/curl -q --output log/15/curl82.out --include --trace-ascii log/15/trace82 --trace-config all --trace-time http://127.0.0.1:36993/82 --proxy-user testuser:testpass -x http://127.0.0.1:36993 > log/15/stdout82 2> log/15/stderr82 ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind78 ../src/curl -q --output log/15/curl78.out --include --trace-ascii log/15/trace78 --trace-config all --trace-time http://127.0.0.1:36993/78 -z "dec 12 11:00:00 1999 GMT" > log/15/stdout78 2> log/15/stderr78 === End of file commands.log === Start of file http_server.log 07:34:53.997349 ====> Client connect 07:34:53.997370 accept_connection 3 returned 4 07:34:53.997381 accept_connection 3 returned 0 07:34:53.997390 Read 93 bytes 07:34:53.997397 Process 93 bytes request 07:34:53.997404 Got request: GET /verifiedserver HTTP/1.1 07:34:53.997411 Are-we-friendly question received 07:34:53.997427 Wrote request (93 bytes) input to log/15/server.input 07:34:53.997437 Identifying ourselves as friends 07:34:53.997472 Response sent (56 bytes) and written to log/15/server.response 07:34:53.997479 special request received, no persistency 07:34:53.997485 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 78 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind78 ==78300== ==78300== Process terminating with default action of signal 4 (SIGILL) ==78300== Illegal opcode at address 0x4003082 ==78300== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78300== by 0x4003082: main (tool_main.c:234) === End of file valgrind78 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/6/server/http_server.pid" --logfile "log/6/http_server.log" --logdir "log/6" --portfile log/6/server/http_server.port --config log/6/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 77685 port 35775 * pid http => 77685 77685 test 0065...[HTTP with Digest authorization with bad password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind65 ../src/curl -q --output log/6/curl65.out --include --trace-ascii log/6/trace65 --trace-config all --trace-time http://127.0.0.1:35775/65 -u testuser:test2pass --digest > log/6/stdout65 2> log/6/stderr65 65: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 65 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind65 ../src/curl -q --output log/6/curl65.out --include --trace-ascii log/6/trace65 --trace-config all --trace-time http://127.0.0.1:35775/65 -u testuser:test2pass --digest > log/6/stdout65 2> log/6/stderr65 === End of file commands.log === Start of file http_server.log 07:34:53.344375 Running HTTP IPv4 version on port 35775 07:34:53.344439 Wrote pid 77685 to log/6/server/http_server.pid 07:34:53.344463 Wrote port 35775 to log/6/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 65 === End of file server.cmd === Start of file valgrind65 ==78579== ==78579== Process terminating with default action of signal 4 (SIGILL) ==78579== Illegal opcode at address 0x4003082 ==78579== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78579== by 0x4003082: main (tool_main.c:234) === End of file valgrind65 test 0081...[HTTP with proxy using NTLM authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind81 ../src/curl -q --output log/17/curl81.out --include --trace-ascii log/17/trace81 --trace-config all --trace-time http://127.0.0.1:39089/81 --proxy-user testuser:testpass -x http://127.0.0.1:39089 --proxy-ntlm > log/17/stdout81 2> log/17/stderr81 81: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 81 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind81 ../src/curl -q --output log/17/curl81.out --include --trace-ascii log/17/trace81 --trace-config all --trace-time http://127.0.0.1:39089/81 --proxy-user testuser:testpass -x http://127.0.0.1:39089 --proxy-ntlm > log/17/stdout81 2> log/17/stderr81 === End of file commands.log === Start of file http_server.log 07:34:54.411006 ====> Client connect 07:34:54.411027 accept_connection 3 returned 4 07:34:54.411039 accept_connection 3 returned 0 07:34:54.411049 Read 93 bytes 07:34:54.411056 Process 93 bytes request 07:34:54.411065 Got request: GET /verifiedserver HTTP/1.1 07:34:54.411072 Are-we-friendly question received 07:34:54.411087 Wrote request (93 bytes) input to log/17/server.input 07:34:54.411099 Identifying ourselves as friends 07:34:54.411137 Response sent (56 bytes) and written to log/17/server.response 07:34:54.411143 special request received, no persistency 07:34:54.411150 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 81 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind81 ==78744== ==78744== Process terminating with default action of signal 4 (SIGILL) ==78744== Illegal opcode at address 0x4003082 ==78744== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78744== by 0x4003082: main (tool_main.c:234) === End of file valgrind81 test 0086...[HTTP, urlglob []-retrieval and -o #[num] usage] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind86 ../src/curl -q --include --trace-ascii log/5/trace86 --trace-config all --trace-time "http://127.0.0.1:46675/[860001-860003]" -o "log/5/dumpit#1.dump" > log/5/stdout86 2> log/5/stderr86 86: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 86 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind86 ../src/curl -q --include --trace-ascii log/5/trace86 --trace-config all --trace-time "http://127.0.0.1:46675/[860001-860003]" -o "log/5/dumpit#1.dump" > log/5/stdout86 2> log/5/stderr86 === End of file commands.log === Start of file http_server.log 07:34:54.413335 ====> Client connect 07:34:54.413359 accept_connection 3 returned 4 07:34:54.413372 accept_connection 3 returned 0 07:34:54.413381 Read 93 bytes 07:34:54.413388 Process 93 bytes request 07:34:54.413396 Got request: GET /verifiedserver HTTP/1.1 07:34:54.413403 Are-we-friendly question received 07:34:54.413420 Wrote request (93 bytes) input to log/5/server.input 07:34:54.413432 Identifying ourselves as friends 07:34:54.413473 Response sent (56 bytes) and written to log/5/server.response 07:34:54.413481 special request received, no persistency 07:34:54.413488 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 86 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind86 ==78750== ==78750== Process terminating with default action of signal 4 (SIGILL) ==78750== Illegal opcode at address 0x4003082 ==78750== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78750== by 0x4003082: main (tool_main.c:234) === End of file valgrind86 test 0085...[HTTP over proxy with site and proxy authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind85 ../src/curl -q --output log/14/curl85.out --include --trace-ascii log/14/trace85 --trace-config all --trace-time http://127.0.0.1:37963/we/want/that/page/85 -x 127.0.0.1:37963 --user iam:myself --proxy-user testing:this > log/14/stdout85 2> log/14/stderr85 85: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 85 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind85 ../src/curl -q --output log/14/curl85.out --include --trace-ascii log/14/trace85 --trace-config all --trace-time http://127.0.0.1:37963/we/want/that/page/85 -x 127.0.0.1:37963 --user iam:myself --proxy-user testing:this > log/14/stdout85 2> log/14/stderr85 === End of file commands.log === Start of file http_server.log 07:34:54.413282 ====> Client connect 07:34:54.413305 accept_connection 3 returned 4 07:34:54.413315 accept_connection 3 returned 0 07:34:54.413325 Read 93 bytes 07:34:54.413331 Process 93 bytes request 07:34:54.413339 Got request: GET /verifiedserver HTTP/1.1 07:34:54.413346 Are-we-friendly question received 07:34:54.413364 Wrote request (93 bytes) input to log/14/server.input 07:34:54.413376 Identifying ourselves as friends 07:34:54.413413 Response sent (56 bytes) and written to log/14/server.response 07:34:54.413420 special request received, no persistency 07:34:54.413426 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 85 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind85 ==78743== ==78743== Process terminating with default action of signal 4 (SIGILL) ==78743== Illegal opcode at address 0x4003082 ==78743== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78743== by 0x4003082: main (tool_main.c:234) === End of file valgrind85 test 0082...[HTTP with proxy requiring NTLM, but we send Basic] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind82 ../src/curl -q --output log/15/curl82.out --include --trace-ascii log/15/trace82 --trace-config all --trace-time http://127.0.0.1:36993/82 --proxy-user testuser:testpass -x http://127.0.0.1:36993 > log/15/stdout82 2> log/15/stderr82 82: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 82 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind82 ../src/curl -q --output log/15/curl82.out --include --trace-ascii log/15/trace82 --trace-config all --trace-time http://127.0.0.1:36993/82 --proxy-user testuser:testpass -x http://127.0.0.1:36993 > log/15/stdout82 2> log/15/stderr82 === End of file commands.log === Start of file http_server.log 07:34:54.412375 ====> Client connect 07:34:54.412402 accept_connection 3 returned 4 07:34:54.412423 accept_connection 3 returned 0 07:34:54.412433 Read 93 bytes 07:34:54.412439 Process 93 bytes request 07:34:54.412447 Got request: GET /verifiedserver HTTP/1.1 07:34:54.412454 Are-we-friendly question received 07:34:54.412478 Wrote request (93 bytes) input to log/15/server.input 07:34:54.412489 Identifying ourselves as friends 07:34:54.412527 Response sent (56 bytes) and written to log/15/server.response 07:34:54.412534 special request received, no persistency 07:34:54.412540 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 82 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind82 ==78740== ==78740== Process terminating with default action of signal 4 (SIGILL) ==78740== Illegal opcode at address 0x4003082 ==78740== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78740== by 0x4003082: main (tool_main.c:234) === End of file valgrind82 test 0084...[HTTP over proxy with site authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind84 ../src/curl -q --output log/16/curl84.out --include --trace-ascii log/16/trace84 --trace-config all --trace-time http://127.0.0.1:46739/we/want/that/page/84 -x 127.0.0.1:46739 --user iam:myself > log/16/stdout84 2> log/16/stderr84 84: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 84 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind84 ../src/curl -q --output log/16/curl8CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind87 ../src/curl -q --include --trace-ascii log/6/trace87 --trace-config all --trace-time "http://127.0.0.1:35775/[870001-870002]" -o "log/6/dumpit87-#2.dump" > log/6/stdout87 2> log/6/stderr87 4.out --include --trace-ascii log/16/trace84 --trace-config all --trace-time http://127.0.0.1:46739/we/want/that/page/84 -x 127.0.0.1:46739 --user iam:myself > log/16/stdout84 2> log/16/stderr84 === End of file commands.log === Start of file http_server.log 07:34:54.412987 ====> Client connect 07:34:54.413008 accept_connection 3 returned 4 07:34:54.413019 accept_connection 3 returned 0 07:34:54.413028 Read 93 bytes 07:34:54.413035 Process 93 bytes request 07:34:54.413042 Got request: GET /verifiedserver HTTP/1.1 07:34:54.413049 Are-we-friendly question received 07:34:54.413064 Wrote request (93 bytes) input to log/16/server.input 07:34:54.413075 Identifying ourselves as friends 07:34:54.413114 Response sent (56 bytes) and written to log/16/server.response 07:34:54.413120 special request received, no persistency 07:34:54.413126 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 84 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind84 ==78741== ==78741== Process terminating with default action of signal 4 (SIGILL) ==78741== Illegal opcode at address 0x4003082 ==78741== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==78741== by 0x4003082: main (tool_main.c:234) === End of file valgrind84 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind88 ../src/curl -q --output log/17/curl88.out --include --trace-ascii log/17/trace88 --trace-config all --trace-time http://127.0.0.1:39089/88 -T log/17/put88 -u testuser:testpass --digest > log/17/stdout88 2> log/17/stderr88 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind89 ../src/curl -q --output log/16/curl89.out --include --trace-ascii log/16/trace89 --trace-config all --trace-time http://127.0.0.1:46739/89 -u testuser:testpass --ntlm -L > log/16/stdout89 2> log/16/stderr89 test 0087...[urlglob with out of range -o #[num] usage] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind87 ../src/curl -q --include --trace-ascii log/6/trace87 --trace-config all --trace-time "http://127.0.0.1:35775/[870001-870002]" -o "log/6/dumpit87-#2.dump" > log/6/stdout87 2> log/6/stderr87 87: output (log/6/dumpit87-#2.dump) FAILED: --- log/6/check-expected 2025-07-18 07:34:55.277111378 +0000 +++ log/6/check-generated 2025-07-18 07:34:55.277111378 +0000 @@ -1,5 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 16[CR][LF] -[CR][LF] -two is nice too[LF] == Contents of files in the log/6/ dir after test 87 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 16[CR][LF] [CR][LF] two is nice too[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind87 ../src/curl -q --include --trace-ascii log/6/trace87 --trace-config all --trace-time "http://127.0.0.1:35775/[870001-870002]" -o "log/6/dumpit87-#2.dump" > log/6/stdout87 2> log/6/stderr87 === End of file commands.log === Start of file http_server.log 07:34:54.723762 ====> Client connect 07:34:54.723802 accept_connection 3 returned 4 07:34:54.723820 accept_connection 3 returned 0 07:34:54.723830 Read 93 bytes 07:34:54.723837 Process 93 bytes request 07:34:54.723849 Got request: GET /verifiedserver HTTP/1.1 07:34:54.723856 Are-we-friendly question received 07:34:54.723875 Wrote request (93 bytes) input to log/6/server.input 07:34:54.723889 Identifying ourselves as friends 07:34:54.723935 Response sent (56 bytes) and written to log/6/server.response 07:34:54.723944 special request received, no persistency 07:34:54.723950 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 87 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind87 ==79007== ==79007== Process terminating with default action of signal 4 (SIGILL) ==79007== Illegal opcode at address 0x4003082 ==79007== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79007== by 0x4003082: main (tool_main.c:234) === End of file valgrind87 test 0088...[HTTP PUT with Digest authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind88 ../src/curl -q --output log/17/curl88.out --include --trace-ascii log/17/trace88 --trace-config all --trace-time http://127.0.0.1:39089/88 -T log/17/put88 -u testuser:testpass --digest > log/17/stdout88 2> log/17/stderr88 88: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 88 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind88 ../src/curl -q --output log/17/curl88.out --include --trace-ascii log/17/trace88 --trace-config all --trace-time http://127.0.0.1:39089/88 -T log/17/put88 -u testuser:testpass --digest > log/17/stdout88 2> log/17/stderr88 === End of file commands.log === Start of file http_server.log 07:34:54.814457 ====> Client connect 07:34:54.814477 accept_connection 3 returned 4 07:34:54.814487 accept_connection 3 returned 0 07:34:54.814497 Read 93 bytes 07:34:54.814503 Process 93 bytes request 07:34:54.814512 Got request: GET /verifiedserver HTTP/1.1 07:34:54.814518 Are-we-friendly question received 07:34:54.814532 Wrote request (93 bytes) input to log/17/server.input 07:34:54.814543 Identifying ourselves as friends 07:34:54.814576 Response sent (56 bytes) and written to log/17/server.response 07:34:54.814582 special request received, no persistency 07:34:54.814588 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file put88 This is data we upload with PUT a second line line three four is the number of lines === End of file put88 === Start of file server.cmd auth_required Testnum 88 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind88 ==79131== ==79131== Process terminating with default action of signal 4 (SIGILL) ==79131== Illegal opcode at address 0x4003082 ==79131== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79131== by 0x4003082: main (tool_main.c:234) === End of file valgrind88 test 0089...[HTTP with NTLM and follow-location] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind89 ../src/curl -q --output log/16/curl89.out --include --trace-ascii log/16/trace89 --trace-config all --trace-time http://127.0.0.1:46739/89 -u testuser:testpass --ntlm -L > log/16/stdout89 2> log/16/stderr89 89: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 89 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind89 ../src/curl -q --output log/16/curl89.out --include --trace-ascii log/16/trace89 --trace-config all --trace-time http://127.0.0.1:46739/89 -u testuser:testpass --ntlm -L > log/16/stdout89 2> log/16/stderr89 === End of file commands.log === Start of file http_server.log 07:34:54.815169 ====> Client connect 07:34:54.815190 accept_connection 3 returned 4 07:34:54.815201 accept_connection 3 returned 0 07:34:54.815209 Read 93 bytes 07:34:54.815216 Process 93 bytes request 07:34:54.815223 Got request: GET /verifiedserver HTTP/1.1 07:34:54.815229 Are-we-friendly question received 07:34:54.815244 Wrote request (93 bytes) input to log/16/server.input 07:34:54.815255 Identifying ourselves as friends 07:34:54.815291 Response sent (56 bytes) and written to log/16/server.response 07:34:54.815297 special request received, no persistency 07:34:54.815303 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind91 ../src/curl -q --output log/14/curl91.out --include --trace-ascii log/14/trace91 --trace-config all --trace-time http://127.0.0.1:37963/91 --anyauth -u mydomain\\myself:secret > log/14/stdout91 2> log/14/stderr91 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind92 ../src/curl -q --output log/5/curl92.out --include --trace-ascii log/5/trace92 --trace-config all --trace-time http://127.0.0.1:46675/want/92 -C 87 > log/5/stdout92 2> log/5/stderr92 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind90 ../src/curl -q --output log/15/curl90.out --include --trace-ascii log/15/trace90 --trace-config all --trace-time http://127.0.0.1:36993/90 -u testuser:testpass --anyauth -L > log/15/stdout90 2> log/15/stderr90 file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 89 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind89 ==79137== ==79137== Process terminating with default action of signal 4 (SIGILL) ==79137== Illegal opcode at address 0x4003082 ==79137== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79137== by 0x4003082: main (tool_main.c:234) === End of file valgrind89 test 0091...[HTTP with NTLM/Negotiate/Basic, anyauth and user with domain, with size 0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind91 ../src/curl -q --output log/14/curl91.out --include --trace-ascii log/14/trace91 --trace-config all --trace-time http://127.0.0.1:37963/91 --anyauth -u mydomain\\myself:secret > log/14/stdout91 2> log/14/stderr91 91: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 91 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind91 ../src/curl -q --output log/14/curl91.out --include --trace-ascii log/14/trace91 --trace-config all --trace-time http://127.0.0.1:37963/91 --anyauth -u mydomain\\myself:secret > log/14/stdout91 2> log/14/stderr91 === End of file commands.log === Start of file http_server.log 07:34:54.815783 ====> Client connect 07:34:54.815825 accept_connection 3 returned 4 07:34:54.815840 accept_connection 3 returned 0 07:34:54.815849 Read 93 bytes 07:34:54.815856 Process 93 bytes request 07:34:54.815863 Got request: GET /verifiedserver HTTP/1.1 07:34:54.815869 Are-we-friendly question received 07:34:54.815889 Wrote request (93 bytes) input to log/14/server.input 07:34:54.815901 Identifying ourselves as friends 07:34:54.815938 Response sent (56 bytes) and written to log/14/server.response 07:34:54.815945 special request received, no persistency 07:34:54.815952 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 91 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind91 ==79138== ==79138== Process terminating with default action of signal 4 (SIGILL) ==79138== Illegal opcode at address 0x4003082 ==79138== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79138== by 0x4003082: main (tool_main.c:234) === End of file valgrind91 test 0092...[HTTP resume transfer with the whole file already downloaded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind92 ../src/curl -q --output log/5/curl92.out --include --trace-ascii log/5/trace92 --trace-config all --trace-time http://127.0.0.1:46675/want/92 -C 87 > log/5/stdout92 2> log/5/stderr92 92: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 92 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind92 ../src/curl -q --output log/5/curl92.out --include --trace-ascii log/5/trace92 --trace-config all --trace-time http://127.0.0.1:46675/want/92 -C 87 > log/5/stdout92 2> log/5/stderr92 === End of file commands.log === Start of file http_server.log 07:34:54.816404 ====> Client connect 07:34:54.816427 accept_connection 3 returned 4 07:34:54.816438 accept_connection 3 returned 0 07:34:54.816447 Read 93 bytes 07:34:54.816453 Process 93 bytes request 07:34:54.816460 Got request: GET /verifiedserver HTTP/1.1 07:34:54.816466 Are-we-friendly question received 07:34:54.816481 Wrote request (93 bytes) input to log/5/server.input 07:34:54.816492 Identifying ourselves as friends 07:34:54.816528 Response sent (56 bytes) and written to log/5/server.response 07:34:54.816535 special request received, no persistency 07:34:54.816541 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 92 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind92 ==79134== ==79134== Process terminating with default action of signal 4 (SIGILL) ==79134== Illegal opcode at address 0x4003082 ==79134== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79134== by 0x4003082: main (tool_main.c:234) === End of file valgrind92 test 0090...[HTTP with NTLM via --anyauth, and then follow-location with NTLM again] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind90 ../src/curl -q --output log/15/curl90.out --include --trace-ascii log/15/trace90 --trace-config all --trace-time http://127.0.0.1:36993/90 -u testuser:testpass --anyauth -L > log/15/stdout90 2> log/15/stderr90 90: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 90 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind90 ../src/curl -q --output log/15/curl90.out --include --trace-ascii log/15/trace90 --trace-config all --trace-time http://127.0.0.1:36993/90 -u testuser:testpass --anyauth -L > log/15/stdout90 2> log/15/stderr90 === End of file commands.log === Start of file http_server.log 07:34:54.816415 ====> Client connect 07:34:54.816439 accept_connection 3 returned 4 07:34:54.816450 accept_connection 3 returned 0 07:34:54.816458 Read 93 bytes 07:34:54.816465 Process 93 bytes request 07:34:54.816473 Got request: GET /verifiedserver HTTP/1.1 07:34:54.816479 Are-we-friendly question received 07:34:54.816495 Wrote request (93 bytes) input to log/15/server.input 07:34:54.816505 Identifying ourselves as friends 07:34:54.816540 Response sent (56 bytes) and written to log/15/server.response 07:34:54.816547 special request received, no persistency 07:34:54.816553 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTPCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind93 ../src/curl -q --output log/6/curl93.out --include --trace-ascii log/6/trace93 --trace-config all --trace-time http://127.0.0.1:35775/93 -x 127.0.0.1:35775 > log/6/stdout93 2> log/6/stderr93 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind94 ../src/curl -q --output log/17/curl94.out --include --trace-ascii log/17/trace94 --trace-config all --trace-time https://test.anything.really.com:94 --proxy1.0 127.0.0.1:39089 > log/17/stdout94 2> log/17/stderr94 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind99 ../src/curl -q --output log/15/curl99.out --include --trace-ascii log/15/trace99 --trace-config all --trace-time http://127.0.0.1:36993/99 -C 9999999999 > log/15/stdout99 2> log/15/stderr99 /1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 90 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind90 ==79176== ==79176== Process terminating with default action of signal 4 (SIGILL) ==79176== Illegal opcode at address 0x4003082 ==79176== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79176== by 0x4003082: main (tool_main.c:234) === End of file valgrind90 test 0093...[HTTP GET with failed proxy auth] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind93 ../src/curl -q --output log/6/curl93.out --include --trace-ascii log/6/trace93 --trace-config all --trace-time http://127.0.0.1:35775/93 -x 127.0.0.1:35775 > log/6/stdout93 2> log/6/stderr93 93: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 93 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind93 ../src/curl -q --output log/6/curl93.out --include --trace-ascii log/6/trace93 --trace-config all --trace-time http://127.0.0.1:35775/93 -x 127.0.0.1:35775 > log/6/stdout93 2> log/6/stderr93 === End of file commands.log === Start of file http_server.log 07:34:55.147511 ====> Client connect 07:34:55.147535 accept_connection 3 returned 4 07:34:55.147548 accept_connection 3 returned 0 07:34:55.147557 Read 93 bytes 07:34:55.147564 Process 93 bytes request 07:34:55.147573 Got request: GET /verifiedserver HTTP/1.1 07:34:55.147580 Are-we-friendly question received 07:34:55.147595 Wrote request (93 bytes) input to log/6/server.input 07:34:55.147605 Identifying ourselves as friends 07:34:55.147643 Response sent (56 bytes) and written to log/6/server.response 07:34:55.147650 special request received, no persistency 07:34:55.147656 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 93 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind93 ==79402== ==79402== Process terminating with default action of signal 4 (SIGILL) ==79402== Illegal opcode at address 0x4003082 ==79402== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79402== by 0x4003082: main (tool_main.c:234) === End of file valgrind93 test 0094...[HTTPS GET with failed proxy auth (CONNECT 1.0)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind94 ../src/curl -q --output log/17/curl94.out --include --trace-ascii log/17/trace94 --trace-config all --trace-time https://test.anything.really.com:94 --proxy1.0 127.0.0.1:39089 > log/17/stdout94 2> log/17/stderr94 94: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 94 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind94 ../src/curl -q --output log/17/curl94.out --include --trace-ascii log/17/trace94 --trace-config all --trace-time https://test.anything.really.com:94 --proxy1.0 127.0.0.1:39089 > log/17/stdout94 2> log/17/stderr94 === End of file commands.log === Start of file http_server.log 07:34:55.179223 ====> Client connect 07:34:55.179244 accept_connection 3 returned 4 07:34:55.179256 accept_connection 3 returned 0 07:34:55.179265 Read 93 bytes 07:34:55.179272 Process 93 bytes request 07:34:55.179281 Got request: GET /verifiedserver HTTP/1.1 07:34:55.179287 Are-we-friendly question received 07:34:55.179395 Wrote request (93 bytes) input to log/17/server.input 07:34:55.179408 Identifying ourselves as friends 07:34:55.179446 Response sent (56 bytes) and written to log/17/server.response 07:34:55.179452 special request received, no persistency 07:34:55.179458 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 94 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind94 ==79527== ==79527== Process terminating with default action of signal 4 (SIGILL) ==79527== Illegal opcode at address 0x4003082 ==79527== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79527== by 0x4003082: main (tool_main.c:234) === End of file valgrind94 test 0099...[HTTP GET with large-file resume point and failed resume] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind99 ../src/curl -q --output log/15/curl99.out --include --trace-ascii log/15/trace99 --trace-config all --trace-time http://127.0.0.1:36993/99 -C 9999999999 > log/15/stdout99 2> log/15/stderr99 99: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 99 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind99 ../src/curl -q --output log/15/curl99.out --include --trace-ascii log/15/trace99 --trace-config all --trace-time http://127.0.0.1:36993/99 -C 9999999999 > log/15/stdout99 2> log/15/stderr99 === End of file commands.log === Start of file http_server.log 07:34:55.183761 ====> Client connect 07:34:55.183782 accept_connection 3 returned 4 07:34:55.183792 accept_connection 3 returned 0 07:34:55.183801 Read 93 bytes 07:34:55.183807 Process 93 bytes request 07:34:55.183814 Got request: GET /verifiedserver HTTP/1.1 07:34:55.183820 Are-we-friendly question received 07:34:55.183835 Wrote request (93 bytes) input to log/15/server.input 07:34:55.183845 Identifying ourselves as friends 07:34:55.183878 Response sent (56 bytes) and written to log/15/server.response 07:34:55.183884 special request received, no persistency 07:34:55.183890 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 >CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind98 ../src/curl -q --output log/5/curl98.out --include --trace-ascii log/5/trace98 --trace-config all --trace-time -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://127.0.0.1:46675/98 log/5/stdout98 2> log/5/stderr98 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind97 ../src/curl -q --output log/14/curl97.out --include --trace-ascii log/14/trace97 --trace-config all --trace-time -d "hejsanallabarn" -H "Content-Type: silly/type" http://127.0.0.1:37963/97 > log/14/stdout97 2> log/14/stderr97 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind83 ../src/curl -q --output log/4/curl83.out --include --trace-ascii log/4/trace83 --trace-config all --trace-time http://test.83:33235/we/want/that/page/83 -p -x 127.0.0.1:40761 --user 'iam:my:;self' > log/4/stdout83 2> log/4/stderr83 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind80 ../src/curl -q --output log/20/curl80.out --include --trace-ascii log/20/trace80 --trace-config all --trace-time http://test.80:37169/we/want/that/page/80 -p --proxy1.0 127.0.0.1:39205 --user iam:myself --proxy-user youare:yourself -A "" > log/20/stdout80 2> log/20/stderr80 Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 99 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind99 ==79541== ==79541== Process terminating with default action of signal 4 (SIGILL) ==79541== Illegal opcode at address 0x4003082 ==79541== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79541== by 0x4003082: main (tool_main.c:234) === End of file valgrind99 test 0098...[HTTP PUT from stdin with set size, disabling chunked transfer-encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind98 ../src/curl -q --output log/5/curl98.out --include --trace-ascii log/5/trace98 --trace-config all --trace-time -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://127.0.0.1:46675/98 log/5/stdout98 2> log/5/stderr98 98: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 98 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind98 ../src/curl -q --output log/5/curl98.out --include --trace-ascii log/5/trace98 --trace-config all --trace-time -T - -H "Transfer-Encoding:" -H "Content-Length: 14" http://127.0.0.1:46675/98 log/5/stdout98 2> log/5/stderr98 === End of file commands.log === Start of file http_server.log 07:34:55.183421 ====> Client connect 07:34:55.183442 accept_connection 3 returned 4 07:34:55.183454 accept_connection 3 returned 0 07:34:55.183463 Read 93 bytes 07:34:55.183470 Process 93 bytes request 07:34:55.183477 Got request: GET /verifiedserver HTTP/1.1 07:34:55.183483 Are-we-friendly question received 07:34:55.183499 Wrote request (93 bytes) input to log/5/server.input 07:34:55.183510 Identifying ourselves as friends 07:34:55.183548 Response sent (56 bytes) and written to log/5/server.response 07:34:55.183554 special request received, no persistency 07:34:55.183561 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 98 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stdin-for-98 data on stdin === End of file stdin-for-98 === Start of file valgrind98 ==79540== ==79540== Process terminating with default action of signal 4 (SIGILL) ==79540== Illegal opcode at address 0x4003082 ==79540== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79540== by 0x4003082: main (tool_main.c:234) === End of file valgrind98 test 0097...[HTTP POST with custom content-type] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind97 ../src/curl -q --output log/14/curl97.out --include --trace-ascii log/14/trace97 --trace-config all --trace-time -d "hejsanallabarn" -H "Content-Type: silly/type" http://127.0.0.1:37963/97 > log/14/stdout97 2> log/14/stderr97 97: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 97 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind97 ../src/curl -q --output log/14/curl97.out --include --trace-ascii log/14/trace97 --trace-config all --trace-time -d "hejsanallabarn" -H "Content-Type: silly/type" http://127.0.0.1:37963/97 > log/14/stdout97 2> log/14/stderr97 === End of file commands.log === Start of file http_server.log 07:34:55.181112 ====> Client connect 07:34:55.181134 accept_connection 3 returned 4 07:34:55.181146 accept_connection 3 returned 0 07:34:55.181155 Read 93 bytes 07:34:55.181161 Process 93 bytes request 07:34:55.181169 Got request: GET /verifiedserver HTTP/1.1 07:34:55.181191 Are-we-friendly question received 07:34:55.181213 Wrote request (93 bytes) input to log/14/server.input 07:34:55.181225 Identifying ourselves as friends 07:34:55.181263 Response sent (56 bytes) and written to log/14/server.response 07:34:55.181269 special request received, no persistency 07:34:55.181275 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 97 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind97 ==79528== ==79528== Process terminating with default action of signal 4 (SIGILL) ==79528== Illegal opcode at address 0x4003082 ==79528== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79528== by 0x4003082: main (tool_main.c:234) === End of file valgrind97 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/4/server/http2_server.pid" --logfile "log/4/http2_server.log" --logdir "log/4" --portfile log/4/server/http2_server.port --config log/4/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 78735 port 40761 * pid http-proxy => 78735 78735 test 0083...[HTTP over proxy-tunnel with site authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind83 ../src/curl -q --output log/4/curl83.out --include --trace-ascii log/4/trace83 --trace-config all --trace-time http://test.83:33235/we/want/that/page/83 -p -x 127.0.0.1:40761 --user 'iam:my:;self' > log/4/stdout83 2> log/4/stderr83 83: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 83 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind83 ../src/curl -q --output log/4/curl83.out --include --trace-ascii log/4/trace83 --trace-config all --trace-time http://test.83:33235/we/want/that/page/83 -p -x 127.0.0.1:40761 --user 'iam:my:;self' > log/4/stdout83 2> log/4/stderr83 === End of file commands.log === Start of file http2_server.log 07:34:54.427608 Run as proxy, CONNECT to host 127.0.0.1 07:34:54.427677CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind23 ../src/curl -q --output log/2/curl23.out --include --trace-ascii log/2/trace23 --trace-config all --trace-time htfp://127.0.0.1:45457/none.htfml > log/2/stdout23 2> log/2/stderr23 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3 ../src/curl -q --output log/22/curl3.out --include --trace-ascii log/22/trace3 --trace-config all --trace-time -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://127.0.0.1:46761/3 > log/22/stdout3 2> log/22/stderr3 Running HTTP IPv4 version on port 40761 07:34:54.427726 Wrote pid 78735 to log/4/server/http2_server.pid 07:34:54.427751 Wrote port 40761 to log/4/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:34:54.412135 ====> Client connect 07:34:54.412157 accept_connection 3 returned 4 07:34:54.412168 accept_connection 3 returned 0 07:34:54.412177 Read 93 bytes 07:34:54.412184 Process 93 bytes request 07:34:54.412192 Got request: GET /verifiedserver HTTP/1.1 07:34:54.412198 Are-we-friendly question received 07:34:54.412214 Wrote request (93 bytes) input to log/4/server.input 07:34:54.412225 Identifying ourselves as friends 07:34:54.412262 Response sent (56 bytes) and written to log/4/server.response 07:34:54.412268 special request received, no persistency 07:34:54.412275 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 83 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind83 ==79739== ==79739== Process terminating with default action of signal 4 (SIGILL) ==79739== Illegal opcode at address 0x4003082 ==79739== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79739== by 0x4003082: main (tool_main.c:234) === End of file valgrind83 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/20/server/http2_server.pid" --logfile "log/20/http2_server.log" --logdir "log/20" --portfile log/20/server/http2_server.port --config log/20/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 78734 port 39205 * pid http-proxy => 78734 78734 test 0080...[HTTP 1.0 CONNECT with proxytunnel and proxy+host Basic authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind80 ../src/curl -q --output log/20/curl80.out --include --trace-ascii log/20/trace80 --trace-config all --trace-time http://test.80:37169/we/want/that/page/80 -p --proxy1.0 127.0.0.1:39205 --user iam:myself --proxy-user youare:yourself -A "" > log/20/stdout80 2> log/20/stderr80 80: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 80 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind80 ../src/curl -q --output log/20/curl80.out --include --trace-ascii log/20/trace80 --trace-config all --trace-time http://test.80:37169/we/want/that/page/80 -p --proxy1.0 127.0.0.1:39205 --user iam:myself --proxy-user youare:yourself -A "" > log/20/stdout80 2> log/20/stderr80 === End of file commands.log === Start of file http2_server.log 07:34:54.426270 Run as proxy, CONNECT to host 127.0.0.1 07:34:54.426346 Running HTTP IPv4 version on port 39205 07:34:54.426377 Wrote pid 78734 to log/20/server/http2_server.pid 07:34:54.426399 Wrote port 39205 to log/20/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:34:54.409574 ====> Client connect 07:34:54.409598 accept_connection 3 returned 4 07:34:54.409610 accept_connection 3 returned 0 07:34:54.409619 Read 93 bytes 07:34:54.409626 Process 93 bytes request 07:34:54.409636 Got request: GET /verifiedserver HTTP/1.1 07:34:54.409642 Are-we-friendly question received 07:34:54.409660 Wrote request (93 bytes) input to log/20/server.input 07:34:54.409671 Identifying ourselves as friends 07:34:54.409708 Response sent (56 bytes) and written to log/20/server.response 07:34:54.409715 special request received, no persistency 07:34:54.409721 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 80 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind80 ==79730== ==79730== Process terminating with default action of signal 4 (SIGILL) ==79730== Illegal opcode at address 0x4003082 ==79730== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79730== by 0x4003082: main (tool_main.c:234) === End of file valgrind80 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/2/server/http_server.pid" --logfile "log/2/http_server.log" --logdir "log/2" --portfile log/2/server/http_server.port --config log/2/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73858 port 45457 * pid http => 73858 73858 test 0023...[unsupported protocol:// URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind23 ../src/curl -q --output log/2/curl23.out --include --trace-ascii log/2/trace23 --trace-config all --trace-time htfp://127.0.0.1:45457/none.htfml > log/2/stdout23 2> log/2/stderr23 curl returned 132, when expecting 1 23: exit FAILED == Contents of files in the log/2/ dir after test 23 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind23 ../src/curl -q --output log/2/curl23.out --include --trace-ascii log/2/trace23 --trace-config all --trace-time htfp://127.0.0.1:45457/none.htfml > log/2/stdout23 2> log/2/stderr23 === End of file commands.log === Start of file http_server.log 07:34:48.839868 Running HTTP IPv4 version on port 45457 07:34:48.839976 Wrote pid 73858 to log/2/server/http_server.pid 07:34:48.840010 Wrote port 45457 to log/2/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 23 === End of file server.cmd === Start of file valgrind23 ==73975== ==73975== Process terminating with default action of signal 4 (SIGILL) ==73975== Illegal opcode at address 0x4003082 ==73975== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73975== by 0x4003082: main (tool_main.c:234) === End of file valgrind23 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/22/server/http_server.pid" --logfile "log/22/http_server.log" --logdir "log/22" --portfile log/22/server/http_server.port --config log/22/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73850 port 46761 * pid http => 73850 73850 test 0003...[HTTP POST with auth and contents but with content-length set to 0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3 ../src/cCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind95 ../src/curl -q --output log/16/curl95.out --include --trace-ascii log/16/trace95 --trace-config all --trace-time http://test.95:46739/we/want/that/page/95 -p -x 127.0.0.1:39493 -d "datatopost=ohthatsfunyesyes" > log/16/stdout95 2> log/16/stderr95 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind16 ../src/curl -q --output log/9/curl16.out --include --trace-ascii log/9/trace16 --trace-config all --trace-time -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x 127.0.0.1:34999 http://we.want.that.site.com/16 > log/9/stdout16 2> log/9/stderr16 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind24 ../src/curl -q --output log/1/curl24.out --include --trace-ascii log/1/trace24 --trace-config all --trace-time http://127.0.0.1:38941/24 --fail --silent --show-error > log/1/stdout24 2> log/1/stderr24 url -q --output log/22/curl3.out --include --trace-ascii log/22/trace3 --trace-config all --trace-time -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://127.0.0.1:46761/3 > log/22/stdout3 2> log/22/stderr3 3: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 3 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3 ../src/curl -q --output log/22/curl3.out --include --trace-ascii log/22/trace3 --trace-config all --trace-time -d "fooo=mooo&pooo=clue&doo=%20%20%20++++" -u "fake:-user" http://127.0.0.1:46761/3 > log/22/stdout3 2> log/22/stderr3 === End of file commands.log === Start of file http_server.log 07:34:48.837156 Running HTTP IPv4 version on port 46761 07:34:48.837267 Wrote pid 73850 to log/22/server/http_server.pid 07:34:48.837346 Wrote port 46761 to log/22/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 3 === End of file server.cmd === Start of file valgrind3 ==73972== ==73972== Process terminating with default action of signal 4 (SIGILL) ==73972== Illegal opcode at address 0x4003082 ==73972== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73972== by 0x4003082: main (tool_main.c:234) === End of file valgrind3 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/16/server/http2_server.pid" --logfile "log/16/http2_server.log" --logdir "log/16" --portfile log/16/server/http2_server.port --config log/16/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 79520 port 39493 * pid http-proxy => 79520 79520 test 0095...[HTTP over proxytunnel using POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind95 ../src/curl -q --output log/16/curl95.out --include --trace-ascii log/16/trace95 --trace-config all --trace-time http://test.95:46739/we/want/that/page/95 -p -x 127.0.0.1:39493 -d "datatopost=ohthatsfunyesyes" > log/16/stdout95 2> log/16/stderr95 95: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 95 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind95 ../src/curl -q --output log/16/curl95.out --include --trace-ascii log/16/trace95 --trace-config all --trace-time http://test.95:46739/we/want/that/page/95 -p -x 127.0.0.1:39493 -d "datatopost=ohthatsfunyesyes" > log/16/stdout95 2> log/16/stderr95 === End of file commands.log === Start of file http2_server.log 07:34:55.194720 Run as proxy, CONNECT to host 127.0.0.1 07:34:55.194786 Running HTTP IPv4 version on port 39493 07:34:55.194814 Wrote pid 79520 to log/16/server/http2_server.pid 07:34:55.194833 Wrote port 39493 to log/16/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:34:55.179225 ====> Client connect 07:34:55.179245 accept_connection 3 returned 4 07:34:55.179256 accept_connection 3 returned 0 07:34:55.179265 Read 93 bytes 07:34:55.179272 Process 93 bytes request 07:34:55.179281 Got request: GET /verifiedserver HTTP/1.1 07:34:55.179287 Are-we-friendly question received 07:34:55.179301 Wrote request (93 bytes) input to log/16/server.input 07:34:55.179322 Identifying ourselves as friends 07:34:55.179357 Response sent (56 bytes) and written to log/16/server.response 07:34:55.179363 special request received, no persistency 07:34:55.179369 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 95 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind95 ==79852== ==79852== Process terminating with default action of signal 4 (SIGILL) ==79852== Illegal opcode at address 0x4003082 ==79852== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79852== by 0x4003082: main (tool_main.c:234) === End of file valgrind95 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/9/server/http_server.pid" --logfile "log/9/http_server.log" --logdir "log/9" --portfile log/9/server/http_server.port --config log/9/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73855 port 34999 * pid http => 73855 73855 test 0016...[HTTP with proxy authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind16 ../src/curl -q --output log/9/curl16.out --include --trace-ascii log/9/trace16 --trace-config all --trace-time -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x 127.0.0.1:34999 http://we.want.that.site.com/16 > log/9/stdout16 2> log/9/stderr16 16: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 16 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind16 ../src/curl -q --output log/9/curl16.out --include --trace-ascii log/9/trace16 --trace-config all --trace-time -U fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong -x 127.0.0.1:34999 http://we.want.that.site.com/16 > log/9/stdout16 2> log/9/stderr16 === End of file commands.log === Start of file http_server.log 07:34:48.844254 Running HTTP IPv4 version on port 34999 07:34:48.844311 Wrote pid 73855 to log/9/server/http_server.pid 07:34:48.844352 Wrote port 34999 to log/9/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 16 === End of file server.cmd === Start of file valgrind16 ==73987== ==73987== Process terminating with default action of signal 4 (SIGILL) ==73987== Illegal opcode at address 0x4003082 ==73987== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73987== by 0x4003082: main (tool_main.c:234) === End of file valgrind16 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/1/server/http_server.pid" --logfile "log/1/http_server.log" --logdir "log/1" --portfile log/1/server/http_server.port --config log/1/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73863 port 38941 * pid http => 73863 73863 test 0024...[HTTP GET fail silently on HTTP error return] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind24 .CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind102 ../src/curl -q --output log/15/curl102.out --include --trace-ascii log/15/trace102 --trace-config all --trace-time ftp://127.0.0.1:46295/102 > log/15/stdout102 2> log/15/stderr102 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind103 ../src/curl -q --output log/5/curl103.out --include --trace-ascii log/5/trace103 --trace-config all --trace-time ftp://127.0.0.1:42261/a/path/103 -P - > log/5/stdout103 2> log/5/stderr103 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind100 ../src/curl -q --output log/6/curl100.out --include --trace-ascii log/6/trace100 --trace-config all --trace-time ftp://127.0.0.1:36135/test-100/ > log/6/stdout100 2> log/6/stderr100 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind104 ../src/curl -q --output log/14/curl104.out --include --trace-ascii log/14/trace104 --trace-config all --trace-time ftp://127.0.0.1:41711/a/path/104 --head > log/14/stdout104 2> log/14/stderr104 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind101 ../src/curl -q --output log/17/curl101.out --include --trace-ascii log/17/trace101 --trace-config all --trace-time ftp://127.0.0.1:39713/ -P 127.0.0.1 > log/17/stdout101 2> log/17/stderr101 ./src/curl -q --output log/1/curl24.out --include --trace-ascii log/1/trace24 --trace-config all --trace-time http://127.0.0.1:38941/24 --fail --silent --show-error > log/1/stdout24 2> log/1/stderr24 24: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 24 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind24 ../src/curl -q --output log/1/curl24.out --include --trace-ascii log/1/trace24 --trace-config all --trace-time http://127.0.0.1:38941/24 --fail --silent --show-error > log/1/stdout24 2> log/1/stderr24 === End of file commands.log === Start of file http_server.log 07:34:48.841106 Running HTTP IPv4 version on port 38941 07:34:48.841172 Wrote pid 73863 to log/1/server/http_server.pid 07:34:48.841197 Wrote port 38941 to log/1/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 24 === End of file server.cmd === Start of file valgrind24 ==73971== ==73971== Process terminating with default action of signal 4 (SIGILL) ==73971== Illegal opcode at address 0x4003082 ==73971== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73971== by 0x4003082: main (tool_main.c:234) === End of file valgrind24 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/15/server/ftp_server.pid" --logfile "log/15/ftp_server.log" --logdir "log/15" --portfile "log/15/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 46295 (log/15/server/ftp_server.port) RUN: FTP server is PID 79835 port 46295 * pid ftp => 79835 79835 test 0102...[FTP RETR PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind102 ../src/curl -q --output log/15/curl102.out --include --trace-ascii log/15/trace102 --trace-config all --trace-time ftp://127.0.0.1:46295/102 > log/15/stdout102 2> log/15/stderr102 102: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 102 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind102 ../src/curl -q --output log/15/curl102.out --include --trace-ascii log/15/trace102 --trace-config all --trace-time ftp://127.0.0.1:46295/102 > log/15/stdout102 2> log/15/stderr102 === End of file commands.log === Start of file ftp_server.log 07:34:55.722894 FTP server listens on port IPv4/46295 07:34:55.722951 logged pid 79835 in log/15/server/ftp_server.pid 07:34:55.722969 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.568702 Running IPv4 version 07:34:55.568743 Listening on port 46295 07:34:55.568774 Wrote pid 79841 to log/15/server/ftp_sockctrl.pid 07:34:55.568795 Wrote port 46295 to log/15/server/ftp_server.port 07:34:55.568809 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 102 === End of file server.cmd === Start of file valgrind102 ==79924== ==79924== Process terminating with default action of signal 4 (SIGILL) ==79924== Illegal opcode at address 0x4003082 ==79924== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79924== by 0x4003082: main (tool_main.c:234) === End of file valgrind102 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/5/server/ftp_server.pid" --logfile "log/5/ftp_server.log" --logdir "log/5" --portfile "log/5/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42261 (log/5/server/ftp_server.port) RUN: FTP server is PID 79836 port 42261 * pid ftp => 79836 79836 test 0103...[FTP RETR PORT with CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind103 ../src/curl -q --output log/5/curl103.out --include --trace-ascii log/5/trace103 --trace-config all --trace-time ftp://127.0.0.1:42261/a/path/103 -P - > log/5/stdout103 2> log/5/stderr103 103: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 103 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind103 ../src/curl -q --output log/5/curl103.out --include --trace-ascii log/5/trace103 --trace-config all --trace-time ftp://127.0.0.1:42261/a/path/103 -P - > log/5/stdout103 2> log/5/stderr103 === End of file commands.log === Start of file ftp_server.log 07:34:55.722541 FTP server listens on port IPv4/42261 07:34:55.722599 logged pid 79836 in log/5/server/ftp_server.pid 07:34:55.722617 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.568258 Running IPv4 version 07:34:55.568308 Listening on port 42261 07:34:55.568339 Wrote pid 79840 to log/5/server/ftp_sockctrl.pid 07:34:55.568360 Wrote port 42261 to log/5/server/ftp_server.port 07:34:55.568468 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 103 === End of file server.cmd === Start of file valgrind103 ==79928== ==79928== Process terminating with default action of signal 4 (SIGILL) ==79928== Illegal opcode at address 0x4003082 ==79928== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79928== by 0x4003082: main (tool_main.c:234) === End of file valgrind103 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/6/server/ftp_server.pid" --logfile "log/6/ftp_server.log" --logdir "log/6" --portfile "log/6/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 36135 (log/6/server/ftp_server.port) RUN: FTP server is PID 79833 port 36135 * pid ftp => 79833 79833 test 0100...[FTP dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind100 ../src/curl -q --output log/6/curl100.out --include --trace-ascii log/6/trace100 --trace-config all --trace-time ftp://127.0.0.1:36135/test-100/ > log/6/stdout100 2> log/6/stderr100 100: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 100 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind100 ../src/curl -q --output log/6/curl100.out --include --trace-ascii log/6/trace100 --trace-config all --trace-time ftp://127.0.0.1:36135/test-100/ > log/6/stdout100 2> log/6/stderr100 === End of file commands.log === Start of file ftp_server.log 07:34:55.718096 FTP server listens on port IPv4/36135 07:34:55.718146 logged pid 79833 in log/6/server/ftp_server.pid 07:34:55.718161 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.563900 Running IPv4 version 07:34:55.563958 Listening on port 36135 07:34:55.563986 Wrote pid 79838 to log/6/server/ftp_sockctrl.pid 07:34:55.564006 Wrote port 36135 to log/6/server/ftp_server.port 07:34:55.564020 Received CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind105 ../src/curl -q --output log/20/curl105.out --include --trace-ascii log/20/trace105 --trace-config all --trace-time ftp://userdude:passfellow@127.0.0.1:42909/105 --use-ascii > log/20/stdout105 2> log/20/stderr105 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind107 ../src/curl -q --output log/2/curl107.out --include --trace-ascii log/2/trace107 --trace-config all --trace-time ftp://127.0.0.1:42979/107 -T log/2/test107.txt > log/2/stdout107 2> log/2/stderr107 PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 100 === End of file server.cmd === Start of file valgrind100 ==79904== ==79904== Process terminating with default action of signal 4 (SIGILL) ==79904== Illegal opcode at address 0x4003082 ==79904== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79904== by 0x4003082: main (tool_main.c:234) === End of file valgrind100 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/14/server/ftp_server.pid" --logfile "log/14/ftp_server.log" --logdir "log/14" --portfile "log/14/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41711 (log/14/server/ftp_server.port) RUN: FTP server is PID 79837 port 41711 * pid ftp => 79837 79837 test 0104...[FTP --head to get file size only] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind104 ../src/curl -q --output log/14/curl104.out --include --trace-ascii log/14/trace104 --trace-config all --trace-time ftp://127.0.0.1:41711/a/path/104 --head > log/14/stdout104 2> log/14/stderr104 104: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 104 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind104 ../src/curl -q --output log/14/curl104.out --include --trace-ascii log/14/trace104 --trace-config all --trace-time ftp://127.0.0.1:41711/a/path/104 --head > log/14/stdout104 2> log/14/stderr104 === End of file commands.log === Start of file ftp_server.log 07:34:55.724237 FTP server listens on port IPv4/41711 07:34:55.724295 logged pid 79837 in log/14/server/ftp_server.pid 07:34:55.724310 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.570045 Running IPv4 version 07:34:55.570101 Listening on port 41711 07:34:55.570128 Wrote pid 79842 to log/14/server/ftp_sockctrl.pid 07:34:55.570146 Wrote port 41711 to log/14/server/ftp_server.port 07:34:55.570160 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 104 === End of file server.cmd === Start of file valgrind104 ==79935== ==79935== Process terminating with default action of signal 4 (SIGILL) ==79935== Illegal opcode at address 0x4003082 ==79935== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79935== by 0x4003082: main (tool_main.c:234) === End of file valgrind104 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/17/server/ftp_server.pid" --logfile "log/17/ftp_server.log" --logdir "log/17" --portfile "log/17/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39713 (log/17/server/ftp_server.port) RUN: FTP server is PID 79834 port 39713 * pid ftp => 79834 79834 test 0101...[FTP dir list, PORT with specified IP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind101 ../src/curl -q --output log/17/curl101.out --include --trace-ascii log/17/trace101 --trace-config all --trace-time ftp://127.0.0.1:39713/ -P 127.0.0.1 > log/17/stdout101 2> log/17/stderr101 101: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 101 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind101 ../src/curl -q --output log/17/curl101.out --include --trace-ascii log/17/trace101 --trace-config all --trace-time ftp://127.0.0.1:39713/ -P 127.0.0.1 > log/17/stdout101 2> log/17/stderr101 === End of file commands.log === Start of file ftp_server.log 07:34:55.719009 FTP server listens on port IPv4/39713 07:34:55.719065 logged pid 79834 in log/17/server/ftp_server.pid 07:34:55.719082 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.564833 Running IPv4 version 07:34:55.564878 Listening on port 39713 07:34:55.564905 Wrote pid 79839 to log/17/server/ftp_sockctrl.pid 07:34:55.564925 Wrote port 39713 to log/17/server/ftp_server.port 07:34:55.564938 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 101 === End of file server.cmd === Start of file valgrind101 ==79905== ==79905== Process terminating with default action of signal 4 (SIGILL) ==79905== Illegal opcode at address 0x4003082 ==79905== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==79905== by 0x4003082: main (tool_main.c:234) === End of file valgrind101 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/20/server/ftp_server.pid" --logfile "log/20/ftp_server.log" --logdir "log/20" --portfile "log/20/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42909 (log/20/server/ftp_server.port) RUN: FTP server is PID 79843 port 42909 * pid ftp => 79843 79843 test 0105...[FTP user+password in URL and ASCII transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind105 ../src/curl -q --output log/20/curl105.out --include --trace-ascii log/20/trace105 --trace-config all --trace-time ftp://userdude:passfellow@127.0.0.1:42909/105 --use-ascii > log/20/stdout105 2> log/20/stderr105 105: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 105 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind105 ../src/curl -q --output log/20/curl105.out --include --trace-ascii log/20/trace105 --trace-config all --trace-time ftp://userdude:passfellow@127.0.0.1:42909/105 --use-ascii > log/20/stdout105 2> log/20/stderr105 === End of file commands.log === Start of file ftp_server.log 07:34:55.979316 FTP server listens on port IPv4/42909 07:34:55.979366 logged pid 79843 in log/20/server/ftp_server.pid 07:34:55.979382 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.825132 Running IPv4 version 07:34:55.825188 Listening on port 42909 07:34:55.825214 Wrote pid 79847 to log/20/server/ftp_sockctrl.pid 07:34:55.825234 Wrote port 42909 to log/20/server/ftp_server.port 07:34:55.825245 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 105 === End of file server.cmd === Start of file valgrind105 ==80159== ==80159== Process terminating with default action of signal 4 (SIGILL) ==80159== Illegal opcode at address 0x4003082 ==80159== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80159== by 0x4003082: main (tool_main.c:234) === End of file valgrind105 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/2/server/ftp_server.pid" --logfile "log/2/ftp_server.log" --logdir "log/2" --portfile "log/2/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42979 (log/2/server/ftp_server.port) RUN: FTP server is PID 79845 port 42979 * pid ftp => 79845 79845 teCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind106 ../src/curl -q --output log/4/curl106.out --include --trace-ascii log/4/trace106 --trace-config all --trace-time "ftp://127.0.0.1:37869//path%20with%20%20spaces//and%20things2/106;type=A" > log/4/stdout106 2> log/4/stderr106 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind108 ../src/curl -q --output log/22/curl108.out --include --trace-ascii log/22/trace108 --trace-config all --trace-time ftp://127.0.0.1:42651/CWD/STOR/RETR/108 -T log/22/upload108 -P - > log/22/stdout108 2> log/22/stderr108 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind13 ../src/curl -q --output log/12/curl13.out --include --trace-ascii log/12/trace13 --trace-config all --trace-time http://127.0.0.1:37285/want/13 -X DELETE > log/12/stdout13 2> log/12/stderr13 st 0107...[FTP PASV upload file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind107 ../src/curl -q --output log/2/curl107.out --include --trace-ascii log/2/trace107 --trace-config all --trace-time ftp://127.0.0.1:42979/107 -T log/2/test107.txt > log/2/stdout107 2> log/2/stderr107 107: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 107 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind107 ../src/curl -q --output log/2/curl107.out --include --trace-ascii log/2/trace107 --trace-config all --trace-time ftp://127.0.0.1:42979/107 -T log/2/test107.txt > log/2/stdout107 2> log/2/stderr107 === End of file commands.log === Start of file ftp_server.log 07:34:55.979640 FTP server listens on port IPv4/42979 07:34:55.979689 logged pid 79845 in log/2/server/ftp_server.pid 07:34:55.979702 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.825474 Running IPv4 version 07:34:55.825511 Listening on port 42979 07:34:55.825537 Wrote pid 79848 to log/2/server/ftp_sockctrl.pid 07:34:55.825557 Wrote port 42979 to log/2/server/ftp_server.port 07:34:55.825569 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 107 === End of file server.cmd === Start of file test107.txt data to see that FTP works so does it? === End of file test107.txt === Start of file valgrind107 ==80155== ==80155== Process terminating with default action of signal 4 (SIGILL) ==80155== Illegal opcode at address 0x4003082 ==80155== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80155== by 0x4003082: main (tool_main.c:234) === End of file valgrind107 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/4/server/ftp_server.pid" --logfile "log/4/ftp_server.log" --logdir "log/4" --portfile "log/4/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37869 (log/4/server/ftp_server.port) RUN: FTP server is PID 79844 port 37869 * pid ftp => 79844 79844 test 0106...[FTP GET with type=A style ASCII URL using %20 codes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind106 ../src/curl -q --output log/4/curl106.out --include --trace-ascii log/4/trace106 --trace-config all --trace-time "ftp://127.0.0.1:37869//path%20with%20%20spaces//and%20things2/106;type=A" > log/4/stdout106 2> log/4/stderr106 106: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 106 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind106 ../src/curl -q --output log/4/curl106.out --include --trace-ascii log/4/trace106 --trace-config all --trace-time "ftp://127.0.0.1:37869//path%20with%20%20spaces//and%20things2/106;type=A" > log/4/stdout106 2> log/4/stderr106 === End of file commands.log === Start of file ftp_server.log 07:34:55.979168 FTP server listens on port IPv4/37869 07:34:55.979232 logged pid 79844 in log/4/server/ftp_server.pid 07:34:55.979247 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:55.824934 Running IPv4 version 07:34:55.824980 Listening on port 37869 07:34:55.825006 Wrote pid 79846 to log/4/server/ftp_sockctrl.pid 07:34:55.825045 Wrote port 37869 to log/4/server/ftp_server.port 07:34:55.825082 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 106 === End of file server.cmd === Start of file valgrind106 ==80162== ==80162== Process terminating with default action of signal 4 (SIGILL) ==80162== Illegal opcode at address 0x4003082 ==80162== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80162== by 0x4003082: main (tool_main.c:234) === End of file valgrind106 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/22/server/ftp_server.pid" --logfile "log/22/ftp_server.log" --logdir "log/22" --portfile "log/22/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42651 (log/22/server/ftp_server.port) RUN: FTP server is PID 79849 port 42651 * pid ftp => 79849 79849 test 0108...[FTP PORT upload with CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind108 ../src/curl -q --output log/22/curl108.out --include --trace-ascii log/22/trace108 --trace-config all --trace-time ftp://127.0.0.1:42651/CWD/STOR/RETR/108 -T log/22/upload108 -P - > log/22/stdout108 2> log/22/stderr108 108: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 108 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind108 ../src/curl -q --output log/22/curl108.out --include --trace-ascii log/22/trace108 --trace-config all --trace-time ftp://127.0.0.1:42651/CWD/STOR/RETR/108 -T log/22/upload108 -P - > log/22/stdout108 2> log/22/stderr108 === End of file commands.log === Start of file ftp_server.log 07:34:56.228870 FTP server listens on port IPv4/42651 07:34:56.228927 logged pid 79849 in log/22/server/ftp_server.pid 07:34:56.228944 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:56.074670 Running IPv4 version 07:34:56.074718 Listening on port 42651 07:34:56.074743 Wrote pid 79850 to log/22/server/ftp_sockctrl.pid 07:34:56.074763 Wrote port 42651 to log/22/server/ftp_server.port 07:34:56.074777 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 108 === End of file server.cmd === Start of file upload108 Moooooooooooo upload this === End of file upload108 === Start of file valgrind108 ==80308== ==80308== Process terminating with default action of signal 4 (SIGILL) ==80308== Illegal opcode at address 0x4003082 ==80308== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80308== by 0x4003082: main (tool_main.c:234) === End of file valgrind108 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/12/server/http_server.pid" --logfile "log/12/http_server.log" --logdir "log/12" --portfile log/12/server/http_server.port --config log/12/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73851 port 37285 * pid http => 73851 73851 test 0013...[HTTP custom request 'DELETE'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind13 ../src/curl -q --output log/12/curl13.out --include --trace-ascii log/12/trace13 --trace-config all --trace-time http://127.0.0.1:37285/want/13 -X DELETE > log/12/stdout13 2> log/12/stderr13 13: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 13 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind115 ../src/curl -q --output log/14/curl115.out --include --trace-ascii log/14/trace115 --trace-config all --trace-time ftp://127.0.0.1:41711/115 > log/14/stdout115 2> log/14/stderr115 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind112 ../src/curl -q --output log/15/curl112.out --include --trace-ascii log/15/trace112 --trace-config all --trace-time ftp://127.0.0.1:46295/112 -T log/15/upload112 -C 40 > log/15/stdout112 2> log/15/stderr112 --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind13 ../src/curl -q --output log/12/curl13.out --include --trace-ascii log/12/trace13 --trace-config all --trace-time http://127.0.0.1:37285/want/13 -X DELETE > log/12/stdout13 2> log/12/stderr13 === End of file commands.log === Start of file http_server.log 07:34:48.837096 Running HTTP IPv4 version on port 37285 07:34:48.837190 Wrote pid 73851 to log/12/server/http_server.pid 07:34:48.837244 Wrote port 37285 to log/12/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 13 === End of file server.cmd === Start of file valgrind13 ==74130== ==74130== Process terminating with default action of signal 4 (SIGILL) ==74130== Illegal opcode at address 0x4003082 ==74130== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74130== by 0x4003082: main (tool_main.c:234) === End of file valgrind13 test 0115...[FTP download, failed PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind115 ../src/curl -q --output log/14/curl115.out --include --trace-ascii log/14/trace115 --trace-config all --trace-time ftp://127.0.0.1:41711/115 > log/14/stdout115 2> log/14/stderr115 115: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 115 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind115 ../src/curl -q --output log/14/curl115.out --include --trace-ascii log/14/trace115 --trace-config all --trace-time ftp://127.0.0.1:41711/115 > log/14/stdout115 2> log/14/stderr115 === End of file commands.log === Start of file ftp_server.log 07:34:57.266146 ====> Client connect 07:34:57.266307 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.266589 < "USER anonymous" 07:34:57.266623 > "331 We are happy you popped in![CR][LF]" 07:34:57.266777 < "PASS ftp@example.com" 07:34:57.266803 > "230 Welcome you silly person[CR][LF]" 07:34:57.266953 < "PWD" 07:34:57.266982 > "257 "/" is current directory[CR][LF]" 07:34:57.267130 < "EPSV" 07:34:57.267154 ====> Passive DATA channel requested by client 07:34:57.267166 DATA sockfilt for passive data channel starting... 07:34:57.268982 DATA sockfilt for passive data channel started (pid 80413) 07:34:57.269076 DATA sockfilt for passive data channel listens on port 35769 07:34:57.269115 > "229 Entering Passive Mode (|||35769|)[LF]" 07:34:57.269132 Client has been notified that DATA conn will be accepted on port 35769 07:34:57.269330 Client connects to port 35769 07:34:57.269366 ====> Client established passive DATA connection on port 35769 07:34:57.269432 < "TYPE I" 07:34:57.269463 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.269621 < "SIZE verifiedserver" 07:34:57.269656 > "213 17[CR][LF]" 07:34:57.269799 < "RETR verifiedserver" 07:34:57.269835 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.269909 =====> Closing passive DATA connection... 07:34:57.269927 Server disconnects passive DATA connection 07:34:57.270054 Server disconnected passive DATA connection 07:34:57.270084 DATA sockfilt for passive data channel quits (pid 80413) 07:34:57.270279 DATA sockfilt for passive data channel quit (pid 80413) 07:34:57.270301 =====> Closed passive DATA connection 07:34:57.270328 > "226 File transfer complete[CR][LF]" 07:34:57.314897 < "QUIT" 07:34:57.314962 > "221 bye bye baby[CR][LF]" 07:34:57.315953 MAIN sockfilt said DISC 07:34:57.315989 ====> Client disconnected 07:34:57.316063 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.112038 ====> Client connect 07:34:57.112312 Received DATA (on stdin) 07:34:57.112328 > 160 bytes data, server => client 07:34:57.112344 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.112356 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.112367 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.112428 < 16 bytes data, client => server 07:34:57.112440 'USER anonymous\r\n' 07:34:57.112613 Received DATA (on stdin) 07:34:57.112624 > 33 bytes data, server => client 07:34:57.112634 '331 We are happy you popped in!\r\n' 07:34:57.112688 < 22 bytes data, client => server 07:34:57.112699 'PASS ftp@example.com\r\n' 07:34:57.112794 Received DATA (on stdin) 07:34:57.112807 > 30 bytes data, server => client 07:34:57.112817 '230 Welcome you silly person\r\n' 07:34:57.112863 < 5 bytes data, client => server 07:34:57.112875 'PWD\r\n' 07:34:57.112972 Received DATA (on stdin) 07:34:57.112983 > 30 bytes data, server => client 07:34:57.112992 '257 "/" is current directory\r\n' 07:34:57.113046 < 6 bytes data, client => server 07:34:57.113057 'EPSV\r\n' 07:34:57.115091 Received DATA (on stdin) 07:34:57.115107 > 38 bytes data, server => client 07:34:57.115117 '229 Entering Passive Mode (|||35769|)\n' 07:34:57.115264 < 8 bytes data, client => server 07:34:57.115275 'TYPE I\r\n' 07:34:57.115455 Received DATA (on stdin) 07:34:57.115467 > 33 bytes data, server => client 07:34:57.115478 '200 I modify TYPE as you wanted\r\n' 07:34:57.115529 < 21 bytes data, client => server 07:34:57.115542 'SIZE verifiedserver\r\n' 07:34:57.115648 Received DATA (on stdin) 07:34:57.115659 > 8 bytes data, server => client 07:34:57.115669 '213 17\r\n' 07:34:57.115714 < 21 bytes data, client => server 07:34:57.115724 'RETR verifiedserver\r\n' 07:34:57.115809 Received DATA (on stdin) 07:34:57.115822 > 29 bytes data, server => client 07:34:57.115833 '150 Binary junk (17 bytes).\r\n' 07:34:57.116830 Received DATA (on stdin) 07:34:57.116847 > 28 bytes data, server => client 07:34:57.116858 '226 File transfer complete\r\n' 07:34:57.160712 < 6 bytes data, client => server 07:34:57.160745 'QUIT\r\n' 07:34:57.160961 Received DATA (on stdin) 07:34:57.160974 > 18 bytes data, server => client 07:34:57.160985 '221 bye bye baby\r\n' 07:34:57.161881 ====> Client disconnect 07:34:57.162063 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.114711 Running IPv4 version 07:34:57.114766 Listening on port 35769 07:34:57.114803 Wrote pid 80413 to log/14/server/ftp_sockdata.pid 07:34:57.114922 Received PING (on stdin) 07:34:57.114994 Received PORT (on stdin) 07:34:57.115237 ====> Client connect 07:34:57.115853 Received DATA (on stdin) 07:34:57.115872 > 17 bytes data, server => client 07:34:57.115884 'WE ROOLZ: 79837\r\n' 07:34:57.115917 Received DISC (on stdin) 07:34:57.115931 ====> Client forcibly disconnected 07:34:57.116083 Received QUIT (on stdin) 07:34:57.116094 quits 07:34:57.116150 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASV 314 bluah you f00l REPLY EPSV 314 bluah you f00l Testnum 115 === End of file server.cmd === Start of file valgrind115 ==80450== ==80450== Process terminating with default action of signal 4 (SIGILL) ==80450== Illegal opcode at address 0x4003082 ==80450== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80450== by 0x4003082: main (tool_main.c:234) === End of file valgrind115 test 0112...[FTP PASV upload resume] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind112 ../src/curl -q --output log/15/curl112.out --include --trace-ascii log/15/trace112 --trace-config all --trace-time ftp://127.0.0.1:46295/112 -T log/15/upload112 -C 40 > log/15/stdout112 2> log/15/stderr112 112: protocol FAILED! There was no content at all in the file log/15/sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind113 ../src/curl -q --output log/5/curl113.out --include --trace-ascii log/5/trace113 --trace-config all --trace-time ftp://127.0.0.1:42261/113 > log/5/stdout113 2> log/5/stderr113 erver.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 112 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind112 ../src/curl -q --output log/15/curl112.out --include --trace-ascii log/15/trace112 --trace-config all --trace-time ftp://127.0.0.1:46295/112 -T log/15/upload112 -C 40 > log/15/stdout112 2> log/15/stderr112 === End of file commands.log === Start of file ftp_server.log 07:34:57.257318 ====> Client connect 07:34:57.258886 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.259479 < "USER anonymous" 07:34:57.259524 > "331 We are happy you popped in![CR][LF]" 07:34:57.259920 < "PASS ftp@example.com" 07:34:57.259948 > "230 Welcome you silly person[CR][LF]" 07:34:57.260099 < "PWD" 07:34:57.260129 > "257 "/" is current directory[CR][LF]" 07:34:57.260287 < "EPSV" 07:34:57.260315 ====> Passive DATA channel requested by client 07:34:57.260327 DATA sockfilt for passive data channel starting... 07:34:57.262722 DATA sockfilt for passive data channel started (pid 80403) 07:34:57.262826 DATA sockfilt for passive data channel listens on port 43409 07:34:57.262864 > "229 Entering Passive Mode (|||43409|)[LF]" 07:34:57.262879 Client has been notified that DATA conn will be accepted on port 43409 07:34:57.263119 Client connects to port 43409 07:34:57.263147 ====> Client established passive DATA connection on port 43409 07:34:57.263220 < "TYPE I" 07:34:57.263254 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.263414 < "SIZE verifiedserver" 07:34:57.263454 > "213 17[CR][LF]" 07:34:57.263722 < "RETR verifiedserver" 07:34:57.263756 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.263836 =====> Closing passive DATA connection... 07:34:57.263851 Server disconnects passive DATA connection 07:34:57.264511 Server disconnected passive DATA connection 07:34:57.264541 DATA sockfilt for passive data channel quits (pid 80403) 07:34:57.264822 DATA sockfilt for passive data channel quit (pid 80403) 07:34:57.264842 =====> Closed passive DATA connection 07:34:57.264870 > "226 File transfer complete[CR][LF]" 07:34:57.307476 < "QUIT" 07:34:57.307525 > "221 bye bye baby[CR][LF]" 07:34:57.308570 MAIN sockfilt said DISC 07:34:57.308606 ====> Client disconnected 07:34:57.308681 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.103020 ====> Client connect 07:34:57.105074 Received DATA (on stdin) 07:34:57.105097 > 160 bytes data, server => client 07:34:57.105109 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.105120 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.105131 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.105277 < 16 bytes data, client => server 07:34:57.105299 'USER anonymous\r\n' 07:34:57.105746 Received DATA (on stdin) 07:34:57.105763 > 33 bytes data, server => client 07:34:57.105774 '331 We are happy you popped in!\r\n' 07:34:57.105822 < 22 bytes data, client => server 07:34:57.105833 'PASS ftp@example.com\r\n' 07:34:57.105938 Received DATA (on stdin) 07:34:57.105950 > 30 bytes data, server => client 07:34:57.105959 '230 Welcome you silly person\r\n' 07:34:57.106013 < 5 bytes data, client => server 07:34:57.106024 'PWD\r\n' 07:34:57.106120 Received DATA (on stdin) 07:34:57.106131 > 30 bytes data, server => client 07:34:57.106141 '257 "/" is current directory\r\n' 07:34:57.106198 < 6 bytes data, client => server 07:34:57.106210 'EPSV\r\n' 07:34:57.108876 Received DATA (on stdin) 07:34:57.108891 > 38 bytes data, server => client 07:34:57.108901 '229 Entering Passive Mode (|||43409|)\n' 07:34:57.109031 < 8 bytes data, client => server 07:34:57.109046 'TYPE I\r\n' 07:34:57.109246 Received DATA (on stdin) 07:34:57.109258 > 33 bytes data, server => client 07:34:57.109269 '200 I modify TYPE as you wanted\r\n' 07:34:57.109322 < 21 bytes data, client => server 07:34:57.109336 'SIZE verifiedserver\r\n' 07:34:57.109450 Received DATA (on stdin) 07:34:57.109465 > 8 bytes data, server => client 07:34:57.109476 '213 17\r\n' 07:34:57.109522 < 21 bytes data, client => server 07:34:57.109533 'RETR verifiedserver\r\n' 07:34:57.109843 Received DATA (on stdin) 07:34:57.109855 > 29 bytes data, server => client 07:34:57.109864 '150 Binary junk (17 bytes).\r\n' 07:34:57.110860 Received DATA (on stdin) 07:34:57.110872 > 28 bytes data, server => client 07:34:57.110881 '226 File transfer complete\r\n' 07:34:57.153304 < 6 bytes data, client => server 07:34:57.153330 'QUIT\r\n' 07:34:57.153522 Received DATA (on stdin) 07:34:57.153535 > 18 bytes data, server => client 07:34:57.153546 '221 bye bye baby\r\n' 07:34:57.154498 ====> Client disconnect 07:34:57.154677 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.108375 Running IPv4 version 07:34:57.108466 Listening on port 43409 07:34:57.108503 Wrote pid 80403 to log/15/server/ftp_sockdata.pid 07:34:57.108653 Received PING (on stdin) 07:34:57.108737 Received PORT (on stdin) 07:34:57.109065 ====> Client connect 07:34:57.110216 Received DATA (on stdin) 07:34:57.110239 > 17 bytes data, server => client 07:34:57.110248 'WE ROOLZ: 79835\r\n' 07:34:57.110279 Received DISC (on stdin) 07:34:57.110292 ====> Client forcibly disconnected 07:34:57.110541 Received QUIT (on stdin) 07:34:57.110554 quits 07:34:57.110608 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 112 === End of file server.cmd === Start of file upload112 this is the *****crap******** that we're gonna upload worx? === End of file upload112 === Start of file valgrind112 ==80442== ==80442== Process terminating with default action of signal 4 (SIGILL) ==80442== Illegal opcode at address 0x4003082 ==80442== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80442== by 0x4003082: main (tool_main.c:234) === End of file valgrind112 test 0113...[FTP download, failed login: USER not valid] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind113 ../src/curl -q --output log/5/curl113.out --include --trace-ascii log/5/trace113 --trace-config all --trace-time ftp://127.0.0.1:42261/113 > log/5/stdout113 2> log/5/stderr113 113: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 113 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind113 ../src/curl -q --output log/5/curl113.out --include --trace-ascii log/5/trace113 --trace-config all --trace-time ftp://127.0.0.1:42261/113 > log/5/stdout113 2> log/5/stderr113 === End of file commands.log === Start of file ftp_server.log 07:34:57.250445 ====> Client connect 07:34:57.250639 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.250927 < "USER anonymous" 07:34:57.250961 > "331 We are happy you popped in![CR][LF]" 07:34:57.251115 < "PASS ftp@example.com" 07:34:57.251138 > "230 Welcome you silly person[CR][LF]" 07:34:57.251274 < "PWD" 07:34:57.251300 > "257 "/" is current directory[CR][LF]" 07:34:57.251435 < "EPSV" 07:34:57.251460 ====> Passive DATA channel requested by client 07:34:57.251471 DATA sockfilt for passive data channel starting... 07:34:57.253097 DATA sockfilt for passive data channel started (pid 80391) 07:34:57.253199 DATA sockfilt for passive data channel listens on portCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind116 ../src/curl -q --output log/6/curl116.out --include --trace-ascii log/6/trace116 --trace-config all --trace-time ftp://127.0.0.1:36135/116 -P 1.2.3.4 > log/6/stdout116 2> log/6/stderr116 37205 07:34:57.253243 > "229 Entering Passive Mode (|||37205|)[LF]" 07:34:57.253259 Client has been notified that DATA conn will be accepted on port 37205 07:34:57.254016 Client connects to port 37205 07:34:57.254047 ====> Client established passive DATA connection on port 37205 07:34:57.254123 < "TYPE I" 07:34:57.254152 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.256200 < "SIZE verifiedserver" 07:34:57.256242 > "213 17[CR][LF]" 07:34:57.256650 < "RETR verifiedserver" 07:34:57.256692 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.256781 =====> Closing passive DATA connection... 07:34:57.256796 Server disconnects passive DATA connection 07:34:57.257125 Server disconnected passive DATA connection 07:34:57.257151 DATA sockfilt for passive data channel quits (pid 80391) 07:34:57.259371 DATA sockfilt for passive data channel quit (pid 80391) 07:34:57.259399 =====> Closed passive DATA connection 07:34:57.259429 > "226 File transfer complete[CR][LF]" 07:34:57.303573 < "QUIT" 07:34:57.303630 > "221 bye bye baby[CR][LF]" 07:34:57.304265 MAIN sockfilt said DISC 07:34:57.304301 ====> Client disconnected 07:34:57.304379 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.096317 ====> Client connect 07:34:57.096644 Received DATA (on stdin) 07:34:57.096660 > 160 bytes data, server => client 07:34:57.096672 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.096682 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.096692 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.096761 < 16 bytes data, client => server 07:34:57.096774 'USER anonymous\r\n' 07:34:57.096954 Received DATA (on stdin) 07:34:57.096966 > 33 bytes data, server => client 07:34:57.096977 '331 We are happy you popped in!\r\n' 07:34:57.097024 < 22 bytes data, client => server 07:34:57.097035 'PASS ftp@example.com\r\n' 07:34:57.097127 Received DATA (on stdin) 07:34:57.097138 > 30 bytes data, server => client 07:34:57.097148 '230 Welcome you silly person\r\n' 07:34:57.097191 < 5 bytes data, client => server 07:34:57.097201 'PWD\r\n' 07:34:57.097287 Received DATA (on stdin) 07:34:57.097297 > 30 bytes data, server => client 07:34:57.097307 '257 "/" is current directory\r\n' 07:34:57.097355 < 6 bytes data, client => server 07:34:57.097365 'EPSV\r\n' 07:34:57.099256 Received DATA (on stdin) 07:34:57.099269 > 38 bytes data, server => client 07:34:57.099280 '229 Entering Passive Mode (|||37205|)\n' 07:34:57.099957 < 8 bytes data, client => server 07:34:57.099969 'TYPE I\r\n' 07:34:57.100690 Received DATA (on stdin) 07:34:57.100707 > 33 bytes data, server => client 07:34:57.100718 '200 I modify TYPE as you wanted\r\n' 07:34:57.102080 < 21 bytes data, client => server 07:34:57.102098 'SIZE verifiedserver\r\n' 07:34:57.102235 Received DATA (on stdin) 07:34:57.102246 > 8 bytes data, server => client 07:34:57.102257 '213 17\r\n' 07:34:57.102553 < 21 bytes data, client => server 07:34:57.102570 'RETR verifiedserver\r\n' 07:34:57.102789 Received DATA (on stdin) 07:34:57.102800 > 29 bytes data, server => client 07:34:57.102810 '150 Binary junk (17 bytes).\r\n' 07:34:57.105423 Received DATA (on stdin) 07:34:57.105437 > 28 bytes data, server => client 07:34:57.105447 '226 File transfer complete\r\n' 07:34:57.149351 < 6 bytes data, client => server 07:34:57.149385 'QUIT\r\n' 07:34:57.149625 Received DATA (on stdin) 07:34:57.149637 > 18 bytes data, server => client 07:34:57.149648 '221 bye bye baby\r\n' 07:34:57.150187 ====> Client disconnect 07:34:57.150379 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.098875 Running IPv4 version 07:34:57.098942 Listening on port 37205 07:34:57.098984 Wrote pid 80391 to log/5/server/ftp_sockdata.pid 07:34:57.099030 Received PING (on stdin) 07:34:57.099111 Received PORT (on stdin) 07:34:57.099928 ====> Client connect 07:34:57.102903 Received DATA (on stdin) 07:34:57.102923 > 17 bytes data, server => client 07:34:57.102933 'WE ROOLZ: 79836\r\n' 07:34:57.102962 Received DISC (on stdin) 07:34:57.102974 ====> Client forcibly disconnected 07:34:57.103149 Received QUIT (on stdin) 07:34:57.103160 quits 07:34:57.104919 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY USER 314 bluah you fewl Testnum 113 === End of file server.cmd === Start of file valgrind113 ==80438== ==80438== Process terminating with default action of signal 4 (SIGILL) ==80438== Illegal opcode at address 0x4003082 ==80438== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80438== by 0x4003082: main (tool_main.c:234) === End of file valgrind113 test 0116...[FTP download, failed PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind116 ../src/curl -q --output log/6/curl116.out --include --trace-ascii log/6/trace116 --trace-config all --trace-time ftp://127.0.0.1:36135/116 -P 1.2.3.4 > log/6/stdout116 2> log/6/stderr116 116: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 116 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind116 ../src/curl -q --output log/6/curl116.out --include --trace-ascii log/6/trace116 --trace-config all --trace-time ftp://127.0.0.1:36135/116 -P 1.2.3.4 > log/6/stdout116 2> log/6/stderr116 === End of file commands.log === Start of file ftp_server.log 07:34:57.256995 ====> Client connect 07:34:57.258136 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.260318 < "USER anonymous" 07:34:57.260361 > "331 We are happy you popped in![CR][LF]" 07:34:57.260516 < "PASS ftp@example.com" 07:34:57.260540 > "230 Welcome you silly person[CR][LF]" 07:34:57.260669 < "PWD" 07:34:57.260696 > "257 "/" is current directory[CR][LF]" 07:34:57.260860 < "EPSV" 07:34:57.260891 ====> Passive DATA channel requested by client 07:34:57.260903 DATA sockfilt for passive data channel starting... 07:34:57.262776 DATA sockfilt for passive data channel started (pid 80404) 07:34:57.262881 DATA sockfilt for passive data channel listens on port 40921 07:34:57.262917 > "229 Entering Passive Mode (|||40921|)[LF]" 07:34:57.262934 Client has been notified that DATA conn will be accepted on port 40921 07:34:57.263149 Client connects to port 40921 07:34:57.263177 ====> Client established passive DATA connection on port 40921 07:34:57.263241 < "TYPE I" 07:34:57.263265 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.263421 < "SIZE verifiedserver" 07:34:57.263457 > "213 17[CR][LF]" 07:34:57.263610 < "RETR verifiedserver" 07:34:57.263640 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.263720 =====> Closing passive DATA connection... 07:34:57.263736 Server disconnects passive DATA connection 07:34:57.263891 Server disconnected passive DATA connection 07:34:57.263921 DATA sockfilt for passive data channel quits (pid 80404) 07:34:57.264142 DATA sockfilt for passive data channel quit (pid 80404) 07:34:57.264165 =====> Closed passive DATA connection 07:34:57.264190 > "226 File transfer complete[CR][LF]" 07:34:57.307141 < "QUIT" 07:34:57.307195 > "221 bye bye baby[CR][LF]" 07:34:57.307337 MAIN sockfilt said DISC 07:34:57.307365 ====> Client disconnected 07:34:57.307446 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.102861 ====> Client connect 07:34:57.104149 Received DATA (on stdin) 07:34:57.104470 > 160 bytes data, server => client 07:34:57.104493 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.104504 ' \r\n220- / __| | | | |_) | | \r\n220- | CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind114 ../src/curl -q --output log/17/curl114.out --include --trace-ascii log/17/trace114 --trace-config all --trace-time ftp://127.0.0.1:39713/114 > log/17/stdout114 2> log/17/stderr114 (__| |_| | ' 07:34:57.104514 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.106133 < 16 bytes data, client => server 07:34:57.106155 'USER anonymous\r\n' 07:34:57.106358 Received DATA (on stdin) 07:34:57.106371 > 33 bytes data, server => client 07:34:57.106381 '331 We are happy you popped in!\r\n' 07:34:57.106428 < 22 bytes data, client => server 07:34:57.106438 'PASS ftp@example.com\r\n' 07:34:57.106528 Received DATA (on stdin) 07:34:57.106539 > 30 bytes data, server => client 07:34:57.106548 '230 Welcome you silly person\r\n' 07:34:57.106589 < 5 bytes data, client => server 07:34:57.106599 'PWD\r\n' 07:34:57.106682 Received DATA (on stdin) 07:34:57.106692 > 30 bytes data, server => client 07:34:57.106700 '257 "/" is current directory\r\n' 07:34:57.106746 < 6 bytes data, client => server 07:34:57.106756 'EPSV\r\n' 07:34:57.108930 Received DATA (on stdin) 07:34:57.108944 > 38 bytes data, server => client 07:34:57.108954 '229 Entering Passive Mode (|||40921|)\n' 07:34:57.109090 < 8 bytes data, client => server 07:34:57.109102 'TYPE I\r\n' 07:34:57.109255 Received DATA (on stdin) 07:34:57.109267 > 33 bytes data, server => client 07:34:57.109277 '200 I modify TYPE as you wanted\r\n' 07:34:57.109332 < 21 bytes data, client => server 07:34:57.109344 'SIZE verifiedserver\r\n' 07:34:57.109449 Received DATA (on stdin) 07:34:57.109462 > 8 bytes data, server => client 07:34:57.109472 '213 17\r\n' 07:34:57.109517 < 21 bytes data, client => server 07:34:57.109531 'RETR verifiedserver\r\n' 07:34:57.109810 Received DATA (on stdin) 07:34:57.109823 > 29 bytes data, server => client 07:34:57.109834 '150 Binary junk (17 bytes).\r\n' 07:34:57.110166 Received DATA (on stdin) 07:34:57.110186 > 28 bytes data, server => client 07:34:57.110197 '226 File transfer complete\r\n' 07:34:57.152935 < 6 bytes data, client => server 07:34:57.152971 'QUIT\r\n' 07:34:57.153191 Received DATA (on stdin) 07:34:57.153203 > 18 bytes data, server => client 07:34:57.153213 '221 bye bye baby\r\n' 07:34:57.153270 ====> Client disconnect 07:34:57.153443 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.108578 Running IPv4 version 07:34:57.108647 Listening on port 40921 07:34:57.108691 Wrote pid 80404 to log/6/server/ftp_sockdata.pid 07:34:57.108711 Received PING (on stdin) 07:34:57.108794 Received PORT (on stdin) 07:34:57.109065 ====> Client connect 07:34:57.109727 Received DATA (on stdin) 07:34:57.109741 > 17 bytes data, server => client 07:34:57.109751 'WE ROOLZ: 79833\r\n' 07:34:57.109775 Received DISC (on stdin) 07:34:57.109786 ====> Client forcibly disconnected 07:34:57.109919 Received QUIT (on stdin) 07:34:57.109931 quits 07:34:57.109990 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPRT 500 we don't like EPRT now REPLY PORT 314 bluah you f00l Testnum 116 === End of file server.cmd === Start of file valgrind116 ==80443== ==80443== Process terminating with default action of signal 4 (SIGILL) ==80443== Illegal opcode at address 0x4003082 ==80443== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80443== by 0x4003082: main (tool_main.c:234) === End of file valgrind116 test 0114...[FTP download, failed login: PASS not valid] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind114 ../src/curl -q --output log/17/curl114.out --include --trace-ascii log/17/trace114 --trace-config all --trace-time ftp://127.0.0.1:39713/114 > log/17/stdout114 2> log/17/stderr114 114: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 114 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind114 ../src/curl -q --output log/17/curl114.out --include --trace-ascii log/17/trace114 --trace-config all --trace-time ftp://127.0.0.1:39713/114 > log/17/stdout114 2> log/17/stderr114 === End of file commands.log === Start of file ftp_server.log 07:34:57.260144 ====> Client connect 07:34:57.260296 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.260985 < "USER anonymous" 07:34:57.261023 > "331 We are happy you popped in![CR][LF]" 07:34:57.262323 < "PASS ftp@example.com" 07:34:57.262353 > "230 Welcome you silly person[CR][LF]" 07:34:57.262515 < "PWD" 07:34:57.262540 > "257 "/" is current directory[CR][LF]" 07:34:57.262687 < "EPSV" 07:34:57.262719 ====> Passive DATA channel requested by client 07:34:57.262733 DATA sockfilt for passive data channel starting... 07:34:57.264785 DATA sockfilt for passive data channel started (pid 80408) 07:34:57.264919 DATA sockfilt for passive data channel listens on port 35443 07:34:57.264966 > "229 Entering Passive Mode (|||35443|)[LF]" 07:34:57.264983 Client has been notified that DATA conn will be accepted on port 35443 07:34:57.265228 Client connects to port 35443 07:34:57.265259 ====> Client established passive DATA connection on port 35443 07:34:57.265347 < "TYPE I" 07:34:57.265387 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.265549 < "SIZE verifiedserver" 07:34:57.265585 > "213 17[CR][LF]" 07:34:57.265739 < "RETR verifiedserver" 07:34:57.265773 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.265853 =====> Closing passive DATA connection... 07:34:57.265873 Server disconnects passive DATA connection 07:34:57.266007 Server disconnected passive DATA connection 07:34:57.266039 DATA sockfilt for passive data channel quits (pid 80408) 07:34:57.266273 DATA sockfilt for passive data channel quit (pid 80408) 07:34:57.266298 =====> Closed passive DATA connection 07:34:57.266329 > "226 File transfer complete[CR][LF]" 07:34:57.307782 < "QUIT" 07:34:57.307838 > "221 bye bye baby[CR][LF]" 07:34:57.310108 MAIN sockfilt said DISC 07:34:57.310151 ====> Client disconnected 07:34:57.310227 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.106041 ====> Client connect 07:34:57.106299 Received DATA (on stdin) 07:34:57.106313 > 160 bytes data, server => client 07:34:57.106325 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.106335 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.106344 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.106817 < 16 bytes data, client => server 07:34:57.106836 'USER anonymous\r\n' 07:34:57.107015 Received DATA (on stdin) 07:34:57.107028 > 33 bytes data, server => client 07:34:57.107037 '331 We are happy you popped in!\r\n' 07:34:57.107900 < 22 bytes data, client => server 07:34:57.107929 'PASS ftp@example.com\r\n' 07:34:57.108343 Received DATA (on stdin) 07:34:57.108355 > 30 bytes data, server => client 07:34:57.108365 '230 Welcome you silly person\r\n' 07:34:57.108429 < 5 bytes data, client => server 07:34:57.108440 'PWD\r\n' 07:34:57.108530 Received DATA (on stdin) 07:34:57.108541 > 30 bytes data, server => client 07:34:57.108550 '257 "/" is current directory\r\n' 07:34:57.108602 < 6 bytes data, client => server 07:34:57.108612 'EPSV\r\n' 07:34:57.110996 Received DATA (on stdin) 07:34:57.111013 > 38 bytes data, server => client 07:34:57.111025 '229 Entering Passive Mode (|||35443|)\n' 07:34:57.111166 < 8 bytes data, client => server 07:34:57.111187 'TYPE I\r\n' 07:34:57.111383 Received DATA (on stdin) 07:34:57.111396 > 33 bytes data, server => client 07:34:57.111406 '200 I modify TYPE as you wanted\r\n' 07:34:57.111455 < 21 bytes data, client => server 07:34:57.111467 'SIZE verifiedserver\r\n' 07:34:57.111578 Received DATA (on stdin) 07:34:57.111590 > 8 bytes data, server => client 07:34:57.111599 '213 17\r\n' 07:34:57.111646 < 2CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind4 ../src/curl -q --output log/21/curl4.out --include --trace-ascii log/21/trace4 --trace-config all --trace-time -H "extra-header: here" -H "Accept: replaced" -H "X-Custom-Header;" -H "X-Test: foo; " -H "X-Test:" -H "X-Test2: foo;" -H "X-Test3: " -H "X-Test4; " -H "X-Test5;ignored" http://127.0.0.1:41087/4 http://127.0.0.1:41087/4 > log/21/stdout4 2> log/21/stderr4 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind18 ../src/curl -q --include --trace-ascii log/7/trace18 --trace-config all --trace-time "127.0.0.1:39077/{18,180002,180003}" > log/7/stdout18 2> log/7/stderr18 1 bytes data, client => server 07:34:57.111660 'RETR verifiedserver\r\n' 07:34:57.111868 Received DATA (on stdin) 07:34:57.111881 > 29 bytes data, server => client 07:34:57.111892 '150 Binary junk (17 bytes).\r\n' 07:34:57.112321 Received DATA (on stdin) 07:34:57.112336 > 28 bytes data, server => client 07:34:57.112350 '226 File transfer complete\r\n' 07:34:57.153607 < 6 bytes data, client => server 07:34:57.153629 'QUIT\r\n' 07:34:57.153861 Received DATA (on stdin) 07:34:57.153878 > 18 bytes data, server => client 07:34:57.153890 '221 bye bye baby\r\n' 07:34:57.156028 ====> Client disconnect 07:34:57.156227 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.110429 Running IPv4 version 07:34:57.110492 Listening on port 35443 07:34:57.110526 Wrote pid 80408 to log/17/server/ftp_sockdata.pid 07:34:57.110543 Received PING (on stdin) 07:34:57.110823 Received PORT (on stdin) 07:34:57.111169 ====> Client connect 07:34:57.111885 Received DATA (on stdin) 07:34:57.111903 > 17 bytes data, server => client 07:34:57.111914 'WE ROOLZ: 79834\r\n' 07:34:57.111939 Received DISC (on stdin) 07:34:57.111950 ====> Client forcibly disconnected 07:34:57.112041 Received QUIT (on stdin) 07:34:57.112055 quits 07:34:57.112112 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 314 bluah you f00l Testnum 114 === End of file server.cmd === Start of file valgrind114 ==80446== ==80446== Process terminating with default action of signal 4 (SIGILL) ==80446== Illegal opcode at address 0x4003082 ==80446== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80446== by 0x4003082: main (tool_main.c:234) === End of file valgrind114 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/21/server/http_server.pid" --logfile "log/21/http_server.log" --logdir "log/21" --portfile log/21/server/http_server.port --config log/21/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73842 port 41087 * pid http => 73842 73842 test 0004...[Replaced internal and added custom HTTP headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind4 ../src/curl -q --output log/21/curl4.out --include --trace-ascii log/21/trace4 --trace-config all --trace-time -H "extra-header: here" -H "Accept: replaced" -H "X-Custom-Header;" -H "X-Test: foo; " -H "X-Test:" -H "X-Test2: foo;" -H "X-Test3: " -H "X-Test4; " -H "X-Test5;ignored" http://127.0.0.1:41087/4 http://127.0.0.1:41087/4 > log/21/stdout4 2> log/21/stderr4 4: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 4 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind4 ../src/curl -q --output log/21/curl4.out --include --trace-ascii log/21/trace4 --trace-config all --trace-time -H "extra-header: here" -H "Accept: replaced" -H "X-Custom-Header;" -H "X-Test: foo; " -H "X-Test:" -H "X-Test2: foo;" -H "X-Test3: " -H "X-Test4; " -H "X-Test5;ignored" http://127.0.0.1:41087/4 http://127.0.0.1:41087/4 > log/21/stdout4 2> log/21/stderr4 === End of file commands.log === Start of file http_server.log 07:34:48.837758 Running HTTP IPv4 version on port 41087 07:34:48.837830 Wrote pid 73842 to log/21/server/http_server.pid 07:34:48.837861 Wrote port 41087 to log/21/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 4 === End of file server.cmd === Start of file valgrind4 ==74014== ==74014== Process terminating with default action of signal 4 (SIGILL) ==74014== Illegal opcode at address 0x4003082 ==74014== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74014== by 0x4003082: main (tool_main.c:234) === End of file valgrind4 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind7 ../src/curl -q --output log/18/curl7.out --include --trace-ascii log/18/trace7 --trace-config all --trace-time http://127.0.0.1:45825/we/want/7 -b none -D log/18/heads7.txt > log/18/stdout7 2> log/18/stderr7 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind117 ../src/curl -q --output log/20/curl117.out --include --trace-ascii log/20/trace117 --trace-config all --trace-time ftp://127.0.0.1:42909/117 > log/20/stdout117 2> log/20/stderr117 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/7/server/http_server.pid" --logfile "log/7/http_server.log" --logdir "log/7" --portfile log/7/server/http_server.port --config log/7/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73857 port 39077 * pid http => 73857 73857 test 0018...[multiple requests using {} in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind18 ../src/curl -q --include --trace-ascii log/7/trace18 --trace-config all --trace-time "127.0.0.1:39077/{18,180002,180003}" > log/7/stdout18 2> log/7/stderr18 18: stdout FAILED: --- log/7/check-expected 2025-07-18 07:34:58.327111450 +0000 +++ log/7/check-generated 2025-07-18 07:34:58.327111450 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 4[CR][LF] -[CR][LF] -moo[LF] -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 4[CR][LF] -[CR][LF] -foo[LF] -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 4[CR][LF] -[CR][LF] -hoo[LF] == Contents of files in the log/7/ dir after test 18 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 4[CR][LF] [CR][LF] moo[LF] HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 4[CR][LF] [CR][LF] foo[LF] HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 4[CR][LF] [CR][LF] hoo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind18 ../src/curl -q --include --trace-ascii log/7/trace18 --trace-config all --trace-time "127.0.0.1:39077/{18,180002,180003}" > log/7/stdout18 2> log/7/stderr18 === End of file commands.log === Start of file http_server.log 07:34:48.839350 Running HTTP IPv4 version on port 39077 07:34:48.839420 Wrote pid 73857 to log/7/server/http_server.pid 07:34:48.839451 Wrote port 39077 to log/7/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 18 === End of file server.cmd === Start of file valgrind18 ==74144== ==74144== Process terminating with default action of signal 4 (SIGILL) ==74144== Illegal opcode at address 0x4003082 ==74144== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74144== by 0x4003082: main (tool_main.c:234) === End of file valgrind18 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/18/server/http_server.pid" --logfile "log/18/http_server.log" --logdir "log/18" --portfile log/18/server/http_server.port --config log/18/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73854 port 45825 * pid http => 73854 73854 test 0007...[HTTP with cookie parser and header recording] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind7 ../src/curl -q --output log/18/curl7.out --include --trace-ascii log/18/trace7 --trace-config all --trace-time http://127.0.0.1:45825/we/want/7 -b none -D log/18/heads7.txt > log/18/stdout7 2> log/18/stderr7 7: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 7 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind7 ../src/curl -q --output log/18/curl7.out --include --trace-ascii log/18/trace7 --trace-config all --trace-time http://127.0.0.1:45825/we/want/7 -b none -D log/18/heads7.txt > log/18/stdout7 2> log/18/stderr7 === End of file commands.log === Start of file http_server.log 07:34:48.837764 Running HTTP IPv4 version on port 45825 07:34:48.837844 Wrote pid 73854 to log/18/server/http_server.pid 07:34:48.837878 Wrote port 45825 to log/18/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 7 === End of file server.cmd === Start of file valgrind7 ==74012== ==74012== Process terminating with default action of signal 4 (SIGILL) ==74012== Illegal opcode at address 0x4003082 ==74012== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74012== by 0x4003082: main (tool_main.c:234) === End of file valgrind7 test 0117...[FTP download, failed TYPE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind117 ../src/curl -q --output log/20/curl117.out --include --trace-ascii log/20/trace117 --trace-config all --trace-time ftp://127.0.0.1:42909/117 > log/20/stdout117 2> log/20/stderr117 117: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 117 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind117 ../src/curl -q --output log/20/curl117.out --include --trace-ascii log/20/trace117 --trace-config all --trace-time ftp://127.0.0.1:42909/117 > log/20/stdout117 2> log/20/stderr117 === End of file commands.log === Start of file ftp_server.log 07:34:57.700255 ====> Client connect 07:34:57.700474 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.704318 < "USER anonymous" 07:34:57.704368 > "331 We are happy you popped in![CR][LF]" 07:34:57.705714 < "PASS ftp@example.com" 07:34:57.705767 > "230 Welcome you silly person[CR][LF]" 07:34:57.705965 < "PWD" 07:34:57.706007 > "257 "/" is current directory[CR][LF]" 07:34:57.706182 < "EPSV" 07:34:57.706212 ====> Passive DATA channel requested by client 07:34:57.706225 DATA sockfilt for passive data channel starting... 07:34:57.708189 DATA sockfilt for passive data channel started (pid 80734) 07:34:57.708302 DATA sockfilt for passive data channel listens on port 40753 07:34:57.708342 > "229 Entering Passive Mode (|||40753|)[LF]" 07:34:57.708358 Client has been notified that DATA conn will be accepted on port 40753 07:34:57.708606 Client connects to port 40753 07:34:57.708633 ====> Client established passive DATA connection on port 40753 07:34:57.708697 < "TYPE I" 07:34:57.708727 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.708875 < "SIZE verifiedserver" 07:34:57.708911 > "213 17[CR][LF]" 07:34:57.709055 < "RETR verifiedserver" 07:34:57.709088 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.709158 =====> Closing passive DATA connection... 07:34:57.709173 Server disconnects passive DATA connection 07:34:57.709398 Server disconnected passive DATA connection 07:34:57.709423 DATA sockfilt for passive data channel quits (pid 80734) 07:34:57.709634 DATA sockfilt for passive data channel quit (pid 80734) 07:34:57.709655 =====> Closed passive DATA connection 07:34:57.709686 > "226 File transfer complete[CR][LF]" 07:34:57.750769 < "QUIT" 07:34:57.750823 > "221 bye bye baby[CR][LF]" 07:34:57.751716 MAIN sockfilt said DISC 07:34:57.751744 ====> Client disconnected 07:34:57.751828 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.543767 ====> Client connect 07:34:57.546484 Received DATA (on stdin) 07:34:57.546505 > 160 bytes data, server => client 07:34:57.546518 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.546529 ' \r\n220- / __| CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind109 ../src/curl -q --output log/16/curl109.out --include --trace-ascii log/16/trace109 --trace-config all --trace-time ftp://127.0.0.1:40585/109 -T log/16/upload109 --append > log/16/stdout109 2> log/16/stderr109 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind118 ../src/curl -q --output log/2/curl118.out --include --trace-ascii log/2/trace118 --trace-config all --trace-time ftp://127.0.0.1:42979/118 > log/2/stdout118 2> log/2/stderr118 | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.546539 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.549936 < 16 bytes data, client => server 07:34:57.549965 'USER anonymous\r\n' 07:34:57.551428 Received DATA (on stdin) 07:34:57.551453 > 33 bytes data, server => client 07:34:57.551466 '331 We are happy you popped in!\r\n' 07:34:57.551558 < 22 bytes data, client => server 07:34:57.551573 'PASS ftp@example.com\r\n' 07:34:57.551765 Received DATA (on stdin) 07:34:57.551779 > 30 bytes data, server => client 07:34:57.551790 '230 Welcome you silly person\r\n' 07:34:57.551853 < 5 bytes data, client => server 07:34:57.551866 'PWD\r\n' 07:34:57.551999 Received DATA (on stdin) 07:34:57.552012 > 30 bytes data, server => client 07:34:57.552023 '257 "/" is current directory\r\n' 07:34:57.552086 < 6 bytes data, client => server 07:34:57.552099 'EPSV\r\n' 07:34:57.554357 Received DATA (on stdin) 07:34:57.554371 > 38 bytes data, server => client 07:34:57.554382 '229 Entering Passive Mode (|||40753|)\n' 07:34:57.554516 < 8 bytes data, client => server 07:34:57.554531 'TYPE I\r\n' 07:34:57.554716 Received DATA (on stdin) 07:34:57.554728 > 33 bytes data, server => client 07:34:57.554737 '200 I modify TYPE as you wanted\r\n' 07:34:57.554784 < 21 bytes data, client => server 07:34:57.554795 'SIZE verifiedserver\r\n' 07:34:57.554902 Received DATA (on stdin) 07:34:57.554913 > 8 bytes data, server => client 07:34:57.554922 '213 17\r\n' 07:34:57.554967 < 21 bytes data, client => server 07:34:57.554979 'RETR verifiedserver\r\n' 07:34:57.555253 Received DATA (on stdin) 07:34:57.555265 > 29 bytes data, server => client 07:34:57.555275 '150 Binary junk (17 bytes).\r\n' 07:34:57.555676 Received DATA (on stdin) 07:34:57.555688 > 28 bytes data, server => client 07:34:57.555698 '226 File transfer complete\r\n' 07:34:57.596551 < 6 bytes data, client => server 07:34:57.596585 'QUIT\r\n' 07:34:57.596820 Received DATA (on stdin) 07:34:57.596832 > 18 bytes data, server => client 07:34:57.596843 '221 bye bye baby\r\n' 07:34:57.597653 ====> Client disconnect 07:34:57.597822 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.553881 Running IPv4 version 07:34:57.553949 Listening on port 40753 07:34:57.553992 Wrote pid 80734 to log/20/server/ftp_sockdata.pid 07:34:57.554124 Received PING (on stdin) 07:34:57.554210 Received PORT (on stdin) 07:34:57.554552 ====> Client connect 07:34:57.555165 Received DATA (on stdin) 07:34:57.555178 > 17 bytes data, server => client 07:34:57.555189 'WE ROOLZ: 79843\r\n' 07:34:57.555219 Received DISC (on stdin) 07:34:57.555230 ====> Client forcibly disconnected 07:34:57.555421 Received QUIT (on stdin) 07:34:57.555432 quits 07:34:57.555495 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 314 bluah you f00l REPLY TYPE 314 bluah you f00l Testnum 117 === End of file server.cmd === Start of file valgrind117 ==80774== ==80774== Process terminating with default action of signal 4 (SIGILL) ==80774== Illegal opcode at address 0x4003082 ==80774== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80774== by 0x4003082: main (tool_main.c:234) === End of file valgrind117 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/16/server/ftp_server.pid" --logfile "log/16/ftp_server.log" --logdir "log/16" --portfile "log/16/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40585 (log/16/server/ftp_server.port) RUN: FTP server is PID 79929 port 40585 * pid ftp => 79929 79929 test 0109...[FTP PASV upload append] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind109 ../src/curl -q --output log/16/curl109.out --include --trace-ascii log/16/trace109 --trace-config all --trace-time ftp://127.0.0.1:40585/109 -T log/16/upload109 --append > log/16/stdout109 2> log/16/stderr109 109: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 109 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind109 ../src/curl -q --output log/16/curl109.out --include --trace-ascii log/16/trace109 --trace-config all --trace-time ftp://127.0.0.1:40585/109 -T log/16/upload109 --append > log/16/stdout109 2> log/16/stderr109 === End of file commands.log === Start of file ftp_server.log 07:34:56.729509 FTP server listens on port IPv4/40585 07:34:56.729571 logged pid 79929 in log/16/server/ftp_server.pid 07:34:56.729588 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:56.575306 Running IPv4 version 07:34:56.575352 Listening on port 40585 07:34:56.575378 Wrote pid 80126 to log/16/server/ftp_sockctrl.pid 07:34:56.575399 Wrote port 40585 to log/16/server/ftp_server.port 07:34:56.575413 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 109 === End of file server.cmd === Start of file upload109 Moooooooooooo upload this === End of file upload109 === Start of file valgrind109 ==80736== ==80736== Process terminating with default action of signal 4 (SIGILL) ==80736== Illegal opcode at address 0x4003082 ==80736== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80736== by 0x4003082: main (tool_main.c:234) === End of file valgrind109 test 0118...[FTP download, failed RETR] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind118 ../src/curl -q --output log/2/curl118.out --include --trace-ascii log/2/trace118 --trace-config all --trace-time ftp://127.0.0.1:42979/118 > log/2/stdout118 2> log/2/stderr118 118: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 118 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind118 ../src/curl -q --output log/2/curl118.out --include --trace-ascii log/2/trace118 --trace-config all --trace-time ftp://127.0.0.1:42979/118 > log/2/stdout118 2> log/2/stderr118 === End of file commands.log === Start of file ftp_server.log 07:34:57.723370 ====> Client connect 07:34:57.723541 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.723844 < "USER anonymous" 07:34:57.723876 > "331 We are happy you popped in![CR][LF]" 07:34:57.724013 < "PASS ftp@example.com" 07:34:57.724035 > "230 Welcome you silly person[CR][LF]" 07:34:57.724161 < "PWD" 07:34:57.724187 > "257 "/" is current directory[CR][LF]" 07:34:57.724319 < "EPSV" 07:34:57.724341 ====> Passive DATA channel requested by client 07:34:57.724353 DATA sockfilt for passive data channel starting... 07:34:57.727190 DATA sockfilt for passive data channel started (pid 80738) 07:34:57.727296 DATA sockfilt for passive data channel listens on port 35255 07:34:57.727341 > "229 Entering Passive Mode (|||35255|)[LF]" 07:34:57.727355 Client has been notified that DATA conn will be accepted on port 35255 07:34:57.729498 Client connects to port 35255 07:34:57.729527 ====> Client established passive DATA connection on port 35255 07:34:57.729594 < "TYPE I" 07:34:57.729622 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.729779 < "SIZE verifiedserver" 07:34:57.729812 > "213 17[CR][LF]" 07:34:57.730195 < "RETR verifiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind119 ../src/curl -q --output log/4/curl119.out --include --trace-ascii log/4/trace119 --trace-config all --trace-time ftp://127.0.0.1:37869/119 -P - > log/4/stdout119 2> log/4/stderr119 edserver" 07:34:57.730228 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.730306 =====> Closing passive DATA connection... 07:34:57.730322 Server disconnects passive DATA connection 07:34:57.730439 Server disconnected passive DATA connection 07:34:57.730457 DATA sockfilt for passive data channel quits (pid 80738) 07:34:57.730628 DATA sockfilt for passive data channel quit (pid 80738) 07:34:57.730648 =====> Closed passive DATA connection 07:34:57.730673 > "226 File transfer complete[CR][LF]" 07:34:57.773814 < "QUIT" 07:34:57.773862 > "221 bye bye baby[CR][LF]" 07:34:57.774840 MAIN sockfilt said DISC 07:34:57.774869 ====> Client disconnected 07:34:57.774930 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.565984 ====> Client connect 07:34:57.569551 Received DATA (on stdin) 07:34:57.569571 > 160 bytes data, server => client 07:34:57.569582 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.569592 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.569601 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.569689 < 16 bytes data, client => server 07:34:57.569702 'USER anonymous\r\n' 07:34:57.569867 Received DATA (on stdin) 07:34:57.569878 > 33 bytes data, server => client 07:34:57.569887 '331 We are happy you popped in!\r\n' 07:34:57.569931 < 22 bytes data, client => server 07:34:57.569940 'PASS ftp@example.com\r\n' 07:34:57.570023 Received DATA (on stdin) 07:34:57.570033 > 30 bytes data, server => client 07:34:57.570043 '230 Welcome you silly person\r\n' 07:34:57.570082 < 5 bytes data, client => server 07:34:57.570092 'PWD\r\n' 07:34:57.570175 Received DATA (on stdin) 07:34:57.570185 > 30 bytes data, server => client 07:34:57.570195 '257 "/" is current directory\r\n' 07:34:57.570241 < 6 bytes data, client => server 07:34:57.570251 'EPSV\r\n' 07:34:57.575234 Received DATA (on stdin) 07:34:57.575262 > 38 bytes data, server => client 07:34:57.575274 '229 Entering Passive Mode (|||35255|)\n' 07:34:57.575410 < 8 bytes data, client => server 07:34:57.575426 'TYPE I\r\n' 07:34:57.575619 Received DATA (on stdin) 07:34:57.575631 > 33 bytes data, server => client 07:34:57.575641 '200 I modify TYPE as you wanted\r\n' 07:34:57.575690 < 21 bytes data, client => server 07:34:57.575702 'SIZE verifiedserver\r\n' 07:34:57.575803 Received DATA (on stdin) 07:34:57.575813 > 8 bytes data, server => client 07:34:57.575823 '213 17\r\n' 07:34:57.576100 < 21 bytes data, client => server 07:34:57.576117 'RETR verifiedserver\r\n' 07:34:57.576663 Received DATA (on stdin) 07:34:57.576675 > 29 bytes data, server => client 07:34:57.576684 '150 Binary junk (17 bytes).\r\n' 07:34:57.576707 Received DATA (on stdin) 07:34:57.576716 > 28 bytes data, server => client 07:34:57.576726 '226 File transfer complete\r\n' 07:34:57.619647 < 6 bytes data, client => server 07:34:57.619670 'QUIT\r\n' 07:34:57.619856 Received DATA (on stdin) 07:34:57.619866 > 18 bytes data, server => client 07:34:57.619876 '221 bye bye baby\r\n' 07:34:57.620775 ====> Client disconnect 07:34:57.620920 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.572912 Running IPv4 version 07:34:57.572971 Listening on port 35255 07:34:57.573008 Wrote pid 80738 to log/2/server/ftp_sockdata.pid 07:34:57.573129 Received PING (on stdin) 07:34:57.573210 Received PORT (on stdin) 07:34:57.575443 ====> Client connect 07:34:57.576315 Received DATA (on stdin) 07:34:57.576328 > 17 bytes data, server => client 07:34:57.576339 'WE ROOLZ: 79845\r\n' 07:34:57.576369 Received DISC (on stdin) 07:34:57.576382 ====> Client forcibly disconnected 07:34:57.576448 Received QUIT (on stdin) 07:34:57.576456 quits 07:34:57.576504 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 314 bluah you f00l REPLY EPSV 314 bluah you f00l REPLY SIZE 500 command not understood Testnum 118 === End of file server.cmd === Start of file valgrind118 ==80806== ==80806== Process terminating with default action of signal 4 (SIGILL) ==80806== Illegal opcode at address 0x4003082 ==80806== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80806== by 0x4003082: main (tool_main.c:234) === End of file valgrind118 test 0119...[FTP download, failed RETR with PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind119 ../src/curl -q --output log/4/curl119.out --include --trace-ascii log/4/trace119 --trace-config all --trace-time ftp://127.0.0.1:37869/119 -P - > log/4/stdout119 2> log/4/stderr119 119: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 119 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind119 ../src/curl -q --output log/4/curl119.out --include --trace-ascii log/4/trace119 --trace-config all --trace-time ftp://127.0.0.1:37869/119 -P - > log/4/stdout119 2> log/4/stderr119 === End of file commands.log === Start of file ftp_server.log 07:34:57.720139 ====> Client connect 07:34:57.720312 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.720627 < "USER anonymous" 07:34:57.720701 > "331 We are happy you popped in![CR][LF]" 07:34:57.720844 < "PASS ftp@example.com" 07:34:57.720873 > "230 Welcome you silly person[CR][LF]" 07:34:57.721023 < "PWD" 07:34:57.721052 > "257 "/" is current directory[CR][LF]" 07:34:57.721213 < "EPSV" 07:34:57.721239 ====> Passive DATA channel requested by client 07:34:57.721252 DATA sockfilt for passive data channel starting... 07:34:57.723133 DATA sockfilt for passive data channel started (pid 80737) 07:34:57.723251 DATA sockfilt for passive data channel listens on port 35193 07:34:57.723295 > "229 Entering Passive Mode (|||35193|)[LF]" 07:34:57.723314 Client has been notified that DATA conn will be accepted on port 35193 07:34:57.723574 Client connects to port 35193 07:34:57.723599 ====> Client established passive DATA connection on port 35193 07:34:57.723662 < "TYPE I" 07:34:57.723690 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.723844 < "SIZE verifiedserver" 07:34:57.723883 > "213 17[CR][LF]" 07:34:57.724034 < "RETR verifiedserver" 07:34:57.724067 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.724147 =====> Closing passive DATA connection... 07:34:57.724165 Server disconnects passive DATA connection 07:34:57.724390 Server disconnected passive DATA connection 07:34:57.724419 DATA sockfilt for passive data channel quits (pid 80737) 07:34:57.724630 DATA sockfilt for passive data channel quit (pid 80737) 07:34:57.724655 =====> Closed passive DATA connection 07:34:57.724682 > "226 File transfer complete[CR][LF]" 07:34:57.772467 < "QUIT" 07:34:57.772532 > "221 bye bye baby[CR][LF]" 07:34:57.773931 MAIN sockfilt said DISC 07:34:57.773976 ====> Client disconnected 07:34:57.774044 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.566001 ====> Client connect 07:34:57.566316 Received DATA (on stdin) 07:34:57.566332 > 160 bytes data, server => client 07:34:57.566344 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.566355 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.566365 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.566451 < 16 bytes data, client => server 07:34:57.566467 'USER anonymous\r\n' 07:34:57.566637 Received DATA (on stdin) 07:34:57.566650 > 33 bytes data, server => client 07:34:57.566696 '331 We are happy you popped in!\r\n' 07:34:57.566747 < 22 bytes data, client => server 07:34:57.566760 'PASS ftp@example.com\r\n' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1 ../src/curl -q --output log/24/curl1.out --include --trace-ascii log/24/trace1 --trace-config all --trace-time http://127.0.0.1:38675/1 > log/24/stdout1 2> log/24/stderr1 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind111 ../src/curl -q --output log/1/curl111.out --include --trace-ascii log/1/trace111 --trace-config all --trace-time ftp://127.0.0.1:34427/111 -C 2000 > log/1/stdout111 2> log/1/stderr111 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind110 ../src/curl -q --output log/9/curl110.out --include --trace-ascii log/9/trace110 --trace-config all --trace-time ftp://127.0.0.1:36299/110 -C 20 > log/9/stdout110 2> log/9/stderr110 07:34:57.566863 Received DATA (on stdin) 07:34:57.566875 > 30 bytes data, server => client 07:34:57.566885 '230 Welcome you silly person\r\n' 07:34:57.566933 < 5 bytes data, client => server 07:34:57.566944 'PWD\r\n' 07:34:57.567043 Received DATA (on stdin) 07:34:57.567055 > 30 bytes data, server => client 07:34:57.567065 '257 "/" is current directory\r\n' 07:34:57.567122 < 6 bytes data, client => server 07:34:57.567135 'EPSV\r\n' 07:34:57.569336 Received DATA (on stdin) 07:34:57.569350 > 38 bytes data, server => client 07:34:57.569361 '229 Entering Passive Mode (|||35193|)\n' 07:34:57.569482 < 8 bytes data, client => server 07:34:57.569497 'TYPE I\r\n' 07:34:57.569682 Received DATA (on stdin) 07:34:57.569693 > 33 bytes data, server => client 07:34:57.569703 '200 I modify TYPE as you wanted\r\n' 07:34:57.569750 < 21 bytes data, client => server 07:34:57.569762 'SIZE verifiedserver\r\n' 07:34:57.569874 Received DATA (on stdin) 07:34:57.569886 > 8 bytes data, server => client 07:34:57.569896 '213 17\r\n' 07:34:57.569942 < 21 bytes data, client => server 07:34:57.569955 'RETR verifiedserver\r\n' 07:34:57.570157 Received DATA (on stdin) 07:34:57.570169 > 29 bytes data, server => client 07:34:57.570180 '150 Binary junk (17 bytes).\r\n' 07:34:57.570676 Received DATA (on stdin) 07:34:57.570689 > 28 bytes data, server => client 07:34:57.570700 '226 File transfer complete\r\n' 07:34:57.618200 < 6 bytes data, client => server 07:34:57.618234 'QUIT\r\n' 07:34:57.618531 Received DATA (on stdin) 07:34:57.618542 > 18 bytes data, server => client 07:34:57.618552 '221 bye bye baby\r\n' 07:34:57.619333 ====> Client disconnect 07:34:57.620036 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.568801 Running IPv4 version 07:34:57.568870 Listening on port 35193 07:34:57.568937 Wrote pid 80737 to log/4/server/ftp_sockdata.pid 07:34:57.569066 Received PING (on stdin) 07:34:57.569160 Received PORT (on stdin) 07:34:57.569522 ====> Client connect 07:34:57.570206 Received DATA (on stdin) 07:34:57.570222 > 17 bytes data, server => client 07:34:57.570232 'WE ROOLZ: 79844\r\n' 07:34:57.570255 Received DISC (on stdin) 07:34:57.570266 ====> Client forcibly disconnected 07:34:57.570418 Received QUIT (on stdin) 07:34:57.570430 quits 07:34:57.570485 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 314 bluah you f00l REPLY SIZE 500 command not understood Testnum 119 === End of file server.cmd === Start of file valgrind119 ==80798== ==80798== Process terminating with default action of signal 4 (SIGILL) ==80798== Illegal opcode at address 0x4003082 ==80798== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80798== by 0x4003082: main (tool_main.c:234) === End of file valgrind119 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/24/server/http_server.pid" --logfile "log/24/http_server.log" --logdir "log/24" --portfile log/24/server/http_server.port --config log/24/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73852 port 38675 * pid http => 73852 73852 test 0001...[HTTP GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1 ../src/curl -q --output log/24/curl1.out --include --trace-ascii log/24/trace1 --trace-config all --trace-time http://127.0.0.1:38675/1 > log/24/stdout1 2> log/24/stderr1 1: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1 ../src/curl -q --output log/24/curl1.out --include --trace-ascii log/24/trace1 --trace-config all --trace-time http://127.0.0.1:38675/1 > log/24/stdout1 2> log/24/stderr1 === End of file commands.log === Start of file http_server.log 07:34:48.843546 Running HTTP IPv4 version on port 38675 07:34:48.843599 Wrote pid 73852 to log/24/server/http_server.pid 07:34:48.843622 Wrote port 38675 to log/24/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 1 === End of file server.cmd === Start of file valgrind1 ==74008== ==74008== Process terminating with default action of signal 4 (SIGILL) ==74008== Illegal opcode at address 0x4003082 ==74008== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74008== by 0x4003082: main (tool_main.c:234) === End of file valgrind1 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/1/server/ftp_server.pid" --logfile "log/1/ftp_server.log" --logdir "log/1" --portfile "log/1/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34427 (log/1/server/ftp_server.port) RUN: FTP server is PID 80151 port 34427 * pid ftp => 80151 80151 test 0111...[FTP download resume beyond file size] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind111 ../src/curl -q --output log/1/curl111.out --include --trace-ascii log/1/trace111 --trace-config all --trace-time ftp://127.0.0.1:34427/111 -C 2000 > log/1/stdout111 2> log/1/stderr111 111: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 111 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind111 ../src/curl -q --output log/1/curl111.out --include --trace-ascii log/1/trace111 --trace-config all --trace-time ftp://127.0.0.1:34427/111 -C 2000 > log/1/stdout111 2> log/1/stderr111 === End of file commands.log === Start of file ftp_server.log 07:34:56.916848 FTP server listens on port IPv4/34427 07:34:56.916985 logged pid 80151 in log/1/server/ftp_server.pid 07:34:56.917013 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:56.753600 Running IPv4 version 07:34:56.753690 Listening on port 34427 07:34:56.753732 Wrote pid 80153 to log/1/server/ftp_sockctrl.pid 07:34:56.753764 Wrote port 34427 to log/1/server/ftp_server.port 07:34:56.759358 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 111 === End of file server.cmd === Start of file valgrind111 ==80936== ==80936== Process terminating with default action of signal 4 (SIGILL) ==80936== Illegal opcode at address 0x4003082 ==80936== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80936== by 0x4003082: main (tool_main.c:234) === End of file valgrind111 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/9/server/ftp_server.pid" --logfile "log/9/ftp_server.log" --logdir "log/9" --portfile "log/9/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 36299 (log/9/server/ftp_server.port) RUN: FTP server is PID 80150 port 36299 * pid ftp => 80150 80150 test 0110...[FTP download resume with set limit] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind110 ../src/curl -q --output log/9/curl110.out --include --trace-ascii log/9/trace110 --trace-config all --trace-time ftp://127.0.0.1:36299/110 -C 20 > log/9/stdout110 2> log/9/stderr110 110: protocol FAILED! There was no content at all in the file log/9/sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind15 ../src/curl -q --include --trace-ascii log/10/trace15 --trace-config all --trace-time http://127.0.0.1:34851/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n" > log/10/stdout15 2> log/10/stderr15 erver.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 110 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind110 ../src/curl -q --output log/9/curl110.out --include --trace-ascii log/9/trace110 --trace-config all --trace-time ftp://127.0.0.1:36299/110 -C 20 > log/9/stdout110 2> log/9/stderr110 === End of file commands.log === Start of file ftp_server.log 07:34:56.906853 FTP server listens on port IPv4/36299 07:34:56.906987 logged pid 80150 in log/9/server/ftp_server.pid 07:34:56.907021 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:56.747272 Running IPv4 version 07:34:56.747388 Listening on port 36299 07:34:56.747433 Wrote pid 80152 to log/9/server/ftp_sockctrl.pid 07:34:56.747464 Wrote port 36299 to log/9/server/ftp_server.port 07:34:56.752678 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 110 === End of file server.cmd === Start of file valgrind110 ==80933== ==80933== Process terminating with default action of signal 4 (SIGILL) ==80933== Illegal opcode at address 0x4003082 ==80933== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==80933== by 0x4003082: main (tool_main.c:234) === End of file valgrind110 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind123 ../src/curl -q --output log/15/curl123.out --include --trace-ascii log/15/trace123 --trace-config all --trace-time ftp://127.0.0.1:46295/123 -T log/15/upload123 -C 51 > log/15/stdout123 2> log/15/stderr123 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind120 ../src/curl -q --output log/22/curl120.out --include --trace-ascii log/22/trace120 --trace-config all --trace-time ftp://127.0.0.1:42651/120 -Q "-DELE file" > log/22/stdout120 2> log/22/stderr120 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/10/server/http_server.pid" --logfile "log/10/http_server.log" --logdir "log/10" --portfile log/10/server/http_server.port --config log/10/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73848 port 34851 * pid http => 73848 73848 test 0015...[--write-out test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind15 ../src/curl -q --include --trace-ascii log/10/trace15 --trace-config all --trace-time http://127.0.0.1:34851/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n" > log/10/stdout15 2> log/10/stderr15 15: stdout FAILED: --- log/10/check-expected 2025-07-18 07:34:58.630444790 +0000 +++ log/10/check-generated 2025-07-18 07:34:58.630444790 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Fake: yes[CR][LF] -Fake: yes[CR][LF] -Fake: yes[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -Repeated nonsense-headers[LF] -http://127.0.0.1:34851/want/15 200 26[LF] == Contents of files in the log/10/ dir after test 15 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Fake: yes[CR][LF] Fake: yes[CR][LF] Fake: yes[CR][LF] Content-Length: 26[CR][LF] [CR][LF] Repeated nonsense-headers[LF] http://127.0.0.1:34851/want/15 200 26[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind15 ../src/curl -q --include --trace-ascii log/10/trace15 --trace-config all --trace-time http://127.0.0.1:34851/want/15 --write-out "%{url_effective} %{http_code} %{size_download}\n" > log/10/stdout15 2> log/10/stderr15 === End of file commands.log === Start of file http_server.log 07:34:48.841176 Running HTTP IPv4 version on port 34851 07:34:48.841240 Wrote pid 73848 to log/10/server/http_server.pid 07:34:48.841263 Wrote port 34851 to log/10/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 15 === End of file server.cmd === Start of file valgrind15 ==74007== ==74007== Process terminating with default action of signal 4 (SIGILL) ==74007== Illegal opcode at address 0x4003082 ==74007== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74007== by 0x4003082: main (tool_main.c:234) === End of file valgrind15 test 0123...[FTP upload resume with whole file already downloaded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind123 ../src/curl -q --output log/15/curl123.out --include --trace-ascii log/15/trace123 --trace-config all --trace-time ftp://127.0.0.1:46295/123 -T log/15/upload123 -C 51 > log/15/stdout123 2> log/15/stderr123 123: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 123 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind123 ../src/curl -q --output log/15/curl123.out --include --trace-ascii log/15/trace123 --trace-config all --trace-time ftp://127.0.0.1:46295/123 -T log/15/upload123 -C 51 > log/15/stdout123 2> log/15/stderr123 === End of file commands.log === Start of file ftp_server.log 07:34:58.062305 ====> Client connect 07:34:58.062501 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.064978 < "USER anonymous" 07:34:58.065026 > "331 We are happy you popped in![CR][LF]" 07:34:58.068689 < "PASS ftp@example.com" 07:34:58.068734 > "230 Welcome you silly person[CR][LF]" 07:34:58.070095 < "PWD" 07:34:58.070137 > "257 "/" is current directory[CR][LF]" 07:34:58.070317 < "EPSV" 07:34:58.070341 ====> Passive DATA channel requested by client 07:34:58.070354 DATA sockfilt for passive data channel starting... 07:34:58.083395 DATA sockfilt for passive data channel started (pid 81111) 07:34:58.083632 DATA sockfilt for passive data channel listens on port 32787 07:34:58.083687 > "229 Entering Passive Mode (|||32787|)[LF]" 07:34:58.083705 Client has been notified that DATA conn will be accepted on port 32787 07:34:58.084003 Client connects to port 32787 07:34:58.084031 ====> Client established passive DATA connection on port 32787 07:34:58.084156 < "TYPE I" 07:34:58.084190 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.084335 < "SIZE verifiedserver" 07:34:58.084365 > "213 17[CR][LF]" 07:34:58.084515 < "RETR verifiedserver" 07:34:58.084548 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.084632 =====> Closing passive DATA connection... 07:34:58.084649 Server disconnects passive DATA connection 07:34:58.084876 Server disconnected passive DATA connection 07:34:58.084902 DATA sockfilt for passive data channel quits (pid 81111) 07:34:58.085228 DATA sockfilt for passive data channel quit (pid 81111) 07:34:58.085256 =====> Closed passive DATA connection 07:34:58.085283 > "226 File transfer complete[CR][LF]" 07:34:58.129784 < "QUIT" 07:34:58.129831 > "221 bye bye baby[CR][LF]" 07:34:58.131313 MAIN sockfilt said DISC 07:34:58.131356 ====> Client disconnected 07:34:58.131437 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.907228 ====> Client connect 07:34:57.908508 Received DATA (on stdin) 07:34:57.908530 > 160 bytes data, server => client 07:34:57.908542 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.908552 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.908562 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.909648 < 16 bytes data, client => server 07:34:57.909672 'USER anonymous\r\n' 07:34:57.911027 Received DATA (on stdin) 07:34:57.911047 > 33 bytes data, server => client 07:34:57.911058 '331 We are happy you popped in!\r\n' 07:34:57.914529 < 22 bytes data, client => server 07:34:57.914553 'PASS ftp@example.com\r\n' 07:34:57.914729 Received DATA (on stdin) 07:34:57.914742 > 30 bytes data, server => client 07:34:57.914752 '230 Welcome you silly person\r\n' 07:34:57.915942 < 5 bytes data, client => server 07:34:57.915963 'PWD\r\n' 07:34:57.916129 Received DATA (on stdin) 07:34:57.916140 > 30 bytes data, server => client 07:34:57.916151 '257 "/" is current directory\r\n' 07:34:57.916227 < 6 bytes data, client => server 07:34:57.916240 'EPSV\r\n' 07:34:57.929709 Received DATA (on stdin) 07:34:57.929732 > 38 bytes data, server => client 07:34:57.929744 '229 Entering Passive Mode (|||32787|)\n' 07:34:57.930037 < 8 bytes data, client => server 07:34:57.930050 'TYPE I\r\n' 07:34:57.930182 Received DATA (on stdin) 07:34:57.930193 > 33 bytes data, server => client 07:34:57.930204 '200 I modify TYPE as you wanted\r\n' 07:34:57.930251 < 21 bytes data, client => server 07:34:57.930261 'SIZE verifiedserver\r\n' 07:34:57.930356 Received DATA (on stdin) 07:34:57.930367 > 8 bytes data, server => client 07:34:57.930377 '213 17\r\n' 07:34:57.930422 < 21 bytes data, client => server 07:34:57.930435 'RETR verifiedserver\r\n' 07:34:57.930726 Received DATA (on stdin) 07:34:57.930738 > 29 bytes data, server => client 07:34:57.930749 '150 Binary junk (17 bytes).\r\n' 07:34:57.931276 Received DATA (on stdin) 07:34:57.931288 > 28 bytes data, server => client 07:34:57.931298 '226 File transfer complete\r\n' 07:34:57.975605 < 6 bytes data, client => server 07:34:57.975632 'QUIT\r\n' 07:34:57.975826 Received DATA (on stdin) 07:34:57.975838 > 18 bytes data, server => client 07:34:57.975848 '221 bye bye baby\r\n' 07:34:57.977243 ====> Client disconnect 07:34:57.979503CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2 ../src/curl -q --output log/23/curl2.out --include --trace-ascii log/23/trace2 --trace-config all --trace-time -u fake:user http://127.0.0.1:45701/2 > log/23/stdout2 2> log/23/stderr2 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.920427 Running IPv4 version 07:34:58.920493 Listening on port 32787 07:34:58.920532 Wrote pid 81111 to log/15/server/ftp_sockdata.pid 07:34:58.926080 Received PING (on stdin) 07:34:58.929490 Received PORT (on stdin) 07:34:58.929943 ====> Client connect 07:34:58.930640 Received DATA (on stdin) 07:34:58.930653 > 17 bytes data, server => client 07:34:58.930663 'WE ROOLZ: 79835\r\n' 07:34:58.930690 Received DISC (on stdin) 07:34:58.930701 ====> Client forcibly disconnected 07:34:58.930901 Received QUIT (on stdin) 07:34:58.930918 quits 07:34:58.931046 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 123 === End of file server.cmd === Start of file upload123 -------------------------------------------------- === End of file upload123 === Start of file valgrind123 ==81171== ==81171== Process terminating with default action of signal 4 (SIGILL) ==81171== Illegal opcode at address 0x4003082 ==81171== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81171== by 0x4003082: main (tool_main.c:234) === End of file valgrind123 test 0120...[ftp download with post-quote delete operation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind120 ../src/curl -q --output log/22/curl120.out --include --trace-ascii log/22/trace120 --trace-config all --trace-time ftp://127.0.0.1:42651/120 -Q "-DELE file" > log/22/stdout120 2> log/22/stderr120 120: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 120 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind120 ../src/curl -q --output log/22/curl120.out --include --trace-ascii log/22/trace120 --trace-config all --trace-time ftp://127.0.0.1:42651/120 -Q "-DELE file" > log/22/stdout120 2> log/22/stderr120 === End of file commands.log === Start of file ftp_server.log 07:34:57.927957 ====> Client connect 07:34:57.928152 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:57.928544 < "USER anonymous" 07:34:57.928590 > "331 We are happy you popped in![CR][LF]" 07:34:57.928784 < "PASS ftp@example.com" 07:34:57.928819 > "230 Welcome you silly person[CR][LF]" 07:34:57.928979 < "PWD" 07:34:57.929014 > "257 "/" is current directory[CR][LF]" 07:34:57.929168 < "EPSV" 07:34:57.929195 ====> Passive DATA channel requested by client 07:34:57.929208 DATA sockfilt for passive data channel starting... 07:34:57.933401 DATA sockfilt for passive data channel started (pid 80990) 07:34:57.933525 DATA sockfilt for passive data channel listens on port 41795 07:34:57.933575 > "229 Entering Passive Mode (|||41795|)[LF]" 07:34:57.933595 Client has been notified that DATA conn will be accepted on port 41795 07:34:57.934681 Client connects to port 41795 07:34:57.934710 ====> Client established passive DATA connection on port 41795 07:34:57.934795 < "TYPE I" 07:34:57.934825 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:57.938211 < "SIZE verifiedserver" 07:34:57.938256 > "213 17[CR][LF]" 07:34:57.938775 < "RETR verifiedserver" 07:34:57.938808 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:57.938899 =====> Closing passive DATA connection... 07:34:57.938914 Server disconnects passive DATA connection 07:34:57.939081 Server disconnected passive DATA connection 07:34:57.939103 DATA sockfilt for passive data channel quits (pid 80990) 07:34:57.939362 DATA sockfilt for passive data channel quit (pid 80990) 07:34:57.939383 =====> Closed passive DATA connection 07:34:57.939409 > "226 File transfer complete[CR][LF]" 07:34:57.984320 < "QUIT" 07:34:57.984378 > "221 bye bye baby[CR][LF]" 07:34:57.985034 MAIN sockfilt said DISC 07:34:57.985062 ====> Client disconnected 07:34:57.985143 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.773820 ====> Client connect 07:34:57.774162 Received DATA (on stdin) 07:34:57.774180 > 160 bytes data, server => client 07:34:57.774193 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.774204 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.774214 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.774340 < 16 bytes data, client => server 07:34:57.774360 'USER anonymous\r\n' 07:34:57.774586 Received DATA (on stdin) 07:34:57.774599 > 33 bytes data, server => client 07:34:57.774610 '331 We are happy you popped in!\r\n' 07:34:57.774669 < 22 bytes data, client => server 07:34:57.774683 'PASS ftp@example.com\r\n' 07:34:57.774811 Received DATA (on stdin) 07:34:57.774823 > 30 bytes data, server => client 07:34:57.774834 '230 Welcome you silly person\r\n' 07:34:57.774884 < 5 bytes data, client => server 07:34:57.774895 'PWD\r\n' 07:34:57.775005 Received DATA (on stdin) 07:34:57.775017 > 30 bytes data, server => client 07:34:57.775027 '257 "/" is current directory\r\n' 07:34:57.775080 < 6 bytes data, client => server 07:34:57.775092 'EPSV\r\n' 07:34:57.779795 Received DATA (on stdin) 07:34:57.779821 > 38 bytes data, server => client 07:34:57.779833 '229 Entering Passive Mode (|||41795|)\n' 07:34:57.780215 < 8 bytes data, client => server 07:34:57.780234 'TYPE I\r\n' 07:34:57.783618 Received DATA (on stdin) 07:34:57.783641 > 33 bytes data, server => client 07:34:57.783652 '200 I modify TYPE as you wanted\r\n' 07:34:57.784101 < 21 bytes data, client => server 07:34:57.784119 'SIZE verifiedserver\r\n' 07:34:57.784248 Received DATA (on stdin) 07:34:57.784263 > 8 bytes data, server => client 07:34:57.784273 '213 17\r\n' 07:34:57.784674 < 21 bytes data, client => server 07:34:57.784694 'RETR verifiedserver\r\n' 07:34:57.784907 Received DATA (on stdin) 07:34:57.784919 > 29 bytes data, server => client 07:34:57.784929 '150 Binary junk (17 bytes).\r\n' 07:34:57.785399 Received DATA (on stdin) 07:34:57.785411 > 28 bytes data, server => client 07:34:57.785420 '226 File transfer complete\r\n' 07:34:57.830112 < 6 bytes data, client => server 07:34:57.830138 'QUIT\r\n' 07:34:57.830374 Received DATA (on stdin) 07:34:57.830387 > 18 bytes data, server => client 07:34:57.830397 '221 bye bye baby\r\n' 07:34:57.830968 ====> Client disconnect 07:34:57.831136 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:57.777179 Running IPv4 version 07:34:57.777238 Listening on port 41795 07:34:57.777274 Wrote pid 80990 to log/22/server/ftp_sockdata.pid 07:34:57.779322 Received PING (on stdin) 07:34:57.779429 Received PORT (on stdin) 07:34:57.780616 ====> Client connect 07:34:57.784964 Received DATA (on stdin) 07:34:57.784978 > 17 bytes data, server => client 07:34:57.784987 'WE ROOLZ: 79849\r\n' 07:34:57.785013 Received DISC (on stdin) 07:34:57.785025 ====> Client forcibly disconnected 07:34:57.785097 Received QUIT (on stdin) 07:34:57.785106 quits 07:34:57.785175 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 314 bluah you f00l Testnum 120 === End of file server.cmd === Start of file valgrind120 ==81047== ==81047== Process terminating with default action of signal 4 (SIGILL) ==81047== Illegal opcode at address 0x4003082 ==81047== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81047== by 0x4003082: main (tool_main.c:234) === End of file valgrind120 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/23/server/http_server.pid" --logfile "log/23/http_server.log" --logdir "log/23" --portfile log/23/server/http_server.port --config log/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind122 ../src/curl -q --output log/14/curl122.out --include --trace-ascii log/14/trace122 --trace-config all --trace-time ftp://127.0.0.1:41711/122 -C 5 > log/14/stdout122 2> log/14/stderr122 23/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73847 port 45701 * pid http => 73847 73847 test 0002...[HTTP GET with user and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2 ../src/curl -q --output log/23/curl2.out --include --trace-ascii log/23/trace2 --trace-config all --trace-time -u fake:user http://127.0.0.1:45701/2 > log/23/stdout2 2> log/23/stderr2 2: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 2 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2 ../src/curl -q --output log/23/curl2.out --include --trace-ascii log/23/trace2 --trace-config all --trace-time -u fake:user http://127.0.0.1:45701/2 > log/23/stdout2 2> log/23/stderr2 === End of file commands.log === Start of file http_server.log 07:34:48.836152 Running HTTP IPv4 version on port 45701 07:34:48.836232 Wrote pid 73847 to log/23/server/http_server.pid 07:34:48.836265 Wrote port 45701 to log/23/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 2 === End of file server.cmd === Start of file valgrind2 ==73979== ==73979== Process terminating with default action of signal 4 (SIGILL) ==73979== Illegal opcode at address 0x4003082 ==73979== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73979== by 0x4003082: main (tool_main.c:234) === End of file valgrind2 test 0122...[FTP download resume with whole file already downloaded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind122 ../src/curl -q --output log/14/curl122.out --include --trace-ascii log/14/trace122 --trace-config all --trace-time ftp://127.0.0.1:41711/122 -C 5 > log/14/stdout122 2> log/14/stderr122 122: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 122 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind122 ../src/curl -q --output log/14/curl122.out --include --trace-ascii log/14/trace122 --trace-config all --trace-time ftp://127.0.0.1:41711/122 -C 5 > log/14/stdout122 2> log/14/stderr122 === End of file commands.log === Start of file ftp_server.log 07:34:58.069931 ====> Client connect 07:34:58.070206 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.070540 < "USER anonymous" 07:34:58.070579 > "331 We are happy you popped in![CR][LF]" 07:34:58.070740 < "PASS ftp@example.com" 07:34:58.070762 > "230 Welcome you silly person[CR][LF]" 07:34:58.070895 < "PWD" 07:34:58.070924 > "257 "/" is current directory[CR][LF]" 07:34:58.071091 < "EPSV" 07:34:58.071116 ====> Passive DATA channel requested by client 07:34:58.071129 DATA sockfilt for passive data channel starting... 07:34:58.086934 DATA sockfilt for passive data channel started (pid 81112) 07:34:58.087079 DATA sockfilt for passive data channel listens on port 44007 07:34:58.087131 > "229 Entering Passive Mode (|||44007|)[LF]" 07:34:58.087153 Client has been notified that DATA conn will be accepted on port 44007 07:34:58.087471 Client connects to port 44007 07:34:58.087502 ====> Client established passive DATA connection on port 44007 07:34:58.087592 < "TYPE I" 07:34:58.087629 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.087791 < "SIZE verifiedserver" 07:34:58.087829 > "213 17[CR][LF]" 07:34:58.087974 < "RETR verifiedserver" 07:34:58.088010 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.088095 =====> Closing passive DATA connection... 07:34:58.088111 Server disconnects passive DATA connection 07:34:58.088226 Server disconnected passive DATA connection 07:34:58.088249 DATA sockfilt for passive data channel quits (pid 81112) 07:34:58.088539 DATA sockfilt for passive data channel quit (pid 81112) 07:34:58.088563 =====> Closed passive DATA connection 07:34:58.088586 > "226 File transfer complete[CR][LF]" 07:34:58.134582 < "QUIT" 07:34:58.134633 > "221 bye bye baby[CR][LF]" 07:34:58.135741 MAIN sockfilt said DISC 07:34:58.135768 ====> Client disconnected 07:34:58.135842 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.915770 ====> Client connect 07:34:57.916219 Received DATA (on stdin) 07:34:57.916242 > 160 bytes data, server => client 07:34:57.916255 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.916267 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.916278 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.916366 < 16 bytes data, client => server 07:34:57.916383 'USER anonymous\r\n' 07:34:57.916573 Received DATA (on stdin) 07:34:57.916586 > 33 bytes data, server => client 07:34:57.916597 '331 We are happy you popped in!\r\n' 07:34:57.916648 < 22 bytes data, client => server 07:34:57.916660 'PASS ftp@example.com\r\n' 07:34:57.916751 Received DATA (on stdin) 07:34:57.916762 > 30 bytes data, server => client 07:34:57.916773 '230 Welcome you silly person\r\n' 07:34:57.916814 < 5 bytes data, client => server 07:34:57.916824 'PWD\r\n' 07:34:57.916914 Received DATA (on stdin) 07:34:57.916926 > 30 bytes data, server => client 07:34:57.916936 '257 "/" is current directory\r\n' 07:34:57.916993 < 6 bytes data, client => server 07:34:57.917007 'EPSV\r\n' 07:34:57.933160 Received DATA (on stdin) 07:34:57.933181 > 38 bytes data, server => client 07:34:57.933193 '229 Entering Passive Mode (|||44007|)\n' 07:34:57.933373 < 8 bytes data, client => server 07:34:57.933390 'TYPE I\r\n' 07:34:57.933624 Received DATA (on stdin) 07:34:57.933637 > 33 bytes data, server => client 07:34:57.933649 '200 I modify TYPE as you wanted\r\n' 07:34:57.933699 < 21 bytes data, client => server 07:34:57.933711 'SIZE verifiedserver\r\n' 07:34:57.933820 Received DATA (on stdin) 07:34:57.933832 > 8 bytes data, server => client 07:34:57.933842 '213 17\r\n' 07:34:57.933887 < 21 bytes data, client => server 07:34:57.933899 'RETR verifiedserver\r\n' 07:34:57.934579 Received DATA (on stdin) 07:34:57.934593 > 29 bytes data, server => client 07:34:57.934604 '150 Binary junk (17 bytes).\r\n' 07:34:57.934626 Received DATA (on stdin) 07:34:57.934637 > 28 bytes data, server => client 07:34:57.934648 '226 File transfer complete\r\n' 07:34:57.980409 < 6 bytes data, client => server 07:34:57.980435 'QUIT\r\n' 07:34:57.980629 Received DATA (on stdin) 07:34:57.980641 > 18 bytes data, server => client 07:34:57.980652 '221 bye bye baby\r\n' 07:34:57.981681 ====> Client disconnect 07:34:57.981832 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.929910 Running IPv4 version 07:34:58.929987 Listening on port 44007 07:34:58.930052 Wrote pid 81112 to log/14/server/ftp_sockdata.pid 07:34:58.932842 Received PING (on stdin) 07:34:58.932970 Received PORT (on stdin) 07:34:58.933414 ====> Client connect 07:34:58.934104 Received DATA (on stdin) 07:34:58.934118 > 17 bytes data, server => client 07:34:58.934128 'WE ROOLZ: 79837\r\n' 07:34:58.934155 Received DISC (on stdin) 07:34:58.934168 ====> Client forcibly disconnected 07:34:58.934246 Received QUIT (on stdin) 07:34:58.934256 quits 07:34:58.934334 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 122 === End of file server.cmd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind124 ../src/curl -q --output log/5/curl124.out --include --trace-ascii log/5/trace124 --trace-config all --trace-time ftp://127.0.0.1:42261/124 > log/5/stdout124 2> log/5/stderr124 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind125 ../src/curl -q --output log/6/curl125.out --include --trace-ascii log/6/trace125 --trace-config all --trace-time ftp://127.0.0.1:36135/path/to/file/125 > log/6/stdout125 2> log/6/stderr125 === Start of file valgrind122 ==81175== ==81175== Process terminating with default action of signal 4 (SIGILL) ==81175== Illegal opcode at address 0x4003082 ==81175== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81175== by 0x4003082: main (tool_main.c:234) === End of file valgrind122 test 0124...[FTP download, failed PWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind124 ../src/curl -q --output log/5/curl124.out --include --trace-ascii log/5/trace124 --trace-config all --trace-time ftp://127.0.0.1:42261/124 > log/5/stdout124 2> log/5/stderr124 124: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 124 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind124 ../src/curl -q --output log/5/curl124.out --include --trace-ascii log/5/trace124 --trace-config all --trace-time ftp://127.0.0.1:42261/124 > log/5/stdout124 2> log/5/stderr124 === End of file commands.log === Start of file ftp_server.log 07:34:58.086788 ====> Client connect 07:34:58.086940 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.087222 < "USER anonymous" 07:34:58.087258 > "331 We are happy you popped in![CR][LF]" 07:34:58.087415 < "PASS ftp@example.com" 07:34:58.087443 > "230 Welcome you silly person[CR][LF]" 07:34:58.087590 < "PWD" 07:34:58.087620 > "257 "/" is current directory[CR][LF]" 07:34:58.087784 < "EPSV" 07:34:58.087812 ====> Passive DATA channel requested by client 07:34:58.087825 DATA sockfilt for passive data channel starting... 07:34:58.093579 DATA sockfilt for passive data channel started (pid 81127) 07:34:58.093714 DATA sockfilt for passive data channel listens on port 34145 07:34:58.093760 > "229 Entering Passive Mode (|||34145|)[LF]" 07:34:58.093779 Client has been notified that DATA conn will be accepted on port 34145 07:34:58.096824 Client connects to port 34145 07:34:58.096894 ====> Client established passive DATA connection on port 34145 07:34:58.097018 < "TYPE I" 07:34:58.097062 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.107508 < "SIZE verifiedserver" 07:34:58.107580 > "213 17[CR][LF]" 07:34:58.110685 < "RETR verifiedserver" 07:34:58.110756 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.111116 =====> Closing passive DATA connection... 07:34:58.111137 Server disconnects passive DATA connection 07:34:58.111208 Server disconnected passive DATA connection 07:34:58.111226 DATA sockfilt for passive data channel quits (pid 81127) 07:34:58.111636 DATA sockfilt for passive data channel quit (pid 81127) 07:34:58.111659 =====> Closed passive DATA connection 07:34:58.111694 > "226 File transfer complete[CR][LF]" 07:34:58.154110 < "QUIT" 07:34:58.154168 > "221 bye bye baby[CR][LF]" 07:34:58.155294 MAIN sockfilt said DISC 07:34:58.155336 ====> Client disconnected 07:34:58.155427 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.932674 ====> Client connect 07:34:57.932942 Received DATA (on stdin) 07:34:57.932956 > 160 bytes data, server => client 07:34:57.932969 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.932980 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.932990 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.933072 < 16 bytes data, client => server 07:34:57.933086 'USER anonymous\r\n' 07:34:57.933250 Received DATA (on stdin) 07:34:57.933262 > 33 bytes data, server => client 07:34:57.933272 '331 We are happy you popped in!\r\n' 07:34:57.933320 < 22 bytes data, client => server 07:34:57.933332 'PASS ftp@example.com\r\n' 07:34:57.933433 Received DATA (on stdin) 07:34:57.933445 > 30 bytes data, server => client 07:34:57.933455 '230 Welcome you silly person\r\n' 07:34:57.933502 < 5 bytes data, client => server 07:34:57.933513 'PWD\r\n' 07:34:57.933611 Received DATA (on stdin) 07:34:57.933623 > 30 bytes data, server => client 07:34:57.933634 '257 "/" is current directory\r\n' 07:34:57.933692 < 6 bytes data, client => server 07:34:57.933705 'EPSV\r\n' 07:34:57.940790 Received DATA (on stdin) 07:34:57.940822 > 38 bytes data, server => client 07:34:57.940834 '229 Entering Passive Mode (|||34145|)\n' 07:34:57.941023 < 8 bytes data, client => server 07:34:57.941040 'TYPE I\r\n' 07:34:57.946010 Received DATA (on stdin) 07:34:57.946052 > 33 bytes data, server => client 07:34:57.946065 '200 I modify TYPE as you wanted\r\n' 07:34:57.953261 < 21 bytes data, client => server 07:34:57.953290 'SIZE verifiedserver\r\n' 07:34:57.953574 Received DATA (on stdin) 07:34:57.953587 > 8 bytes data, server => client 07:34:57.953597 '213 17\r\n' 07:34:57.956453 < 21 bytes data, client => server 07:34:57.956486 'RETR verifiedserver\r\n' 07:34:57.956863 Received DATA (on stdin) 07:34:57.956876 > 29 bytes data, server => client 07:34:57.956887 '150 Binary junk (17 bytes).\r\n' 07:34:57.957689 Received DATA (on stdin) 07:34:57.957707 > 28 bytes data, server => client 07:34:57.957724 '226 File transfer complete\r\n' 07:34:57.999903 < 6 bytes data, client => server 07:34:57.999931 'QUIT\r\n' 07:34:58.000164 Received DATA (on stdin) 07:34:58.000176 > 18 bytes data, server => client 07:34:58.000187 '221 bye bye baby\r\n' 07:34:58.001219 ====> Client disconnect 07:34:58.001428 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.936871 Running IPv4 version 07:34:58.936954 Listening on port 34145 07:34:58.936998 Wrote pid 81127 to log/5/server/ftp_sockdata.pid 07:34:58.939490 Received PING (on stdin) 07:34:58.939608 Received PORT (on stdin) 07:34:58.942738 ====> Client connect 07:34:58.956823 Received DATA (on stdin) 07:34:58.956846 > 17 bytes data, server => client 07:34:58.957008 'WE ROOLZ: 79836\r\n' 07:34:58.957130 Received DISC (on stdin) 07:34:58.957144 ====> Client forcibly disconnected 07:34:58.957325 Received QUIT (on stdin) 07:34:58.957337 quits 07:34:58.957433 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 314 bluah you f00l REPLY EPSV 314 bluah you f00l Testnum 124 === End of file server.cmd === Start of file valgrind124 ==81188== ==81188== Process terminating with default action of signal 4 (SIGILL) ==81188== Illegal opcode at address 0x4003082 ==81188== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81188== by 0x4003082: main (tool_main.c:234) === End of file valgrind124 test 0125...[FTP download, failed CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind125 ../src/curl -q --output log/6/curl125.out --include --trace-ascii log/6/trace125 --trace-config all --trace-time ftp://127.0.0.1:36135/path/to/file/125 > log/6/stdout125 2> log/6/stderr125 125: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 125 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind125 ../src/curl -q --output log/6/curl125.out --include --trace-ascii log/6/trace125 --trace-config all --trace-time ftp://127.0.0.1:36135/path/to/file/125 > log/6/stdout125 2> log/6/stderr125 === End of file commands.log === Start of file ftp_server.log 07:34:58.126848 ====> Client connect 07:34:58.127028 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind22 ../src/curl -q --output log/3/curl22.out --include --trace-ascii log/3/trace22 --trace-config all --trace-time 127.0.0.1:42345/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 > log/3/stdout22 2> log/3/stderr22 LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.129170 < "USER anonymous" 07:34:58.129218 > "331 We are happy you popped in![CR][LF]" 07:34:58.133503 < "PASS ftp@example.com" 07:34:58.133556 > "230 Welcome you silly person[CR][LF]" 07:34:58.133742 < "PWD" 07:34:58.133773 > "257 "/" is current directory[CR][LF]" 07:34:58.133927 < "EPSV" 07:34:58.133952 ====> Passive DATA channel requested by client 07:34:58.133965 DATA sockfilt for passive data channel starting... 07:34:58.138934 DATA sockfilt for passive data channel started (pid 81166) 07:34:58.139046 DATA sockfilt for passive data channel listens on port 34153 07:34:58.139083 > "229 Entering Passive Mode (|||34153|)[LF]" 07:34:58.139100 Client has been notified that DATA conn will be accepted on port 34153 07:34:58.139352 Client connects to port 34153 07:34:58.139377 ====> Client established passive DATA connection on port 34153 07:34:58.139449 < "TYPE I" 07:34:58.139476 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.139609 < "SIZE verifiedserver" 07:34:58.139640 > "213 17[CR][LF]" 07:34:58.139766 < "RETR verifiedserver" 07:34:58.139797 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.139862 =====> Closing passive DATA connection... 07:34:58.139876 Server disconnects passive DATA connection 07:34:58.140086 Server disconnected passive DATA connection 07:34:58.140110 DATA sockfilt for passive data channel quits (pid 81166) 07:34:58.140334 DATA sockfilt for passive data channel quit (pid 81166) 07:34:58.140355 =====> Closed passive DATA connection 07:34:58.140378 > "226 File transfer complete[CR][LF]" 07:34:58.193542 < "QUIT" 07:34:58.193601 > "221 bye bye baby[CR][LF]" 07:34:58.197641 MAIN sockfilt said DISC 07:34:58.197692 ====> Client disconnected 07:34:58.197950 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.972706 ====> Client connect 07:34:57.973036 Received DATA (on stdin) 07:34:57.973052 > 160 bytes data, server => client 07:34:57.973064 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.973074 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.973084 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.974998 < 16 bytes data, client => server 07:34:57.975020 'USER anonymous\r\n' 07:34:57.975303 Received DATA (on stdin) 07:34:57.975324 > 33 bytes data, server => client 07:34:57.975336 '331 We are happy you popped in!\r\n' 07:34:57.975388 < 22 bytes data, client => server 07:34:57.975399 'PASS ftp@example.com\r\n' 07:34:57.979556 Received DATA (on stdin) 07:34:57.979572 > 30 bytes data, server => client 07:34:57.979584 '230 Welcome you silly person\r\n' 07:34:57.979651 < 5 bytes data, client => server 07:34:57.979664 'PWD\r\n' 07:34:57.979763 Received DATA (on stdin) 07:34:57.979774 > 30 bytes data, server => client 07:34:57.979785 '257 "/" is current directory\r\n' 07:34:57.979840 < 6 bytes data, client => server 07:34:57.979851 'EPSV\r\n' 07:34:57.985093 Received DATA (on stdin) 07:34:57.985108 > 38 bytes data, server => client 07:34:57.985119 '229 Entering Passive Mode (|||34153|)\n' 07:34:57.985293 < 8 bytes data, client => server 07:34:57.985304 'TYPE I\r\n' 07:34:57.985465 Received DATA (on stdin) 07:34:57.985476 > 33 bytes data, server => client 07:34:57.985486 '200 I modify TYPE as you wanted\r\n' 07:34:57.985528 < 21 bytes data, client => server 07:34:57.985538 'SIZE verifiedserver\r\n' 07:34:57.985628 Received DATA (on stdin) 07:34:57.985638 > 8 bytes data, server => client 07:34:57.985648 '213 17\r\n' 07:34:57.985687 < 21 bytes data, client => server 07:34:57.985697 'RETR verifiedserver\r\n' 07:34:57.985941 Received DATA (on stdin) 07:34:57.985953 > 29 bytes data, server => client 07:34:57.985963 '150 Binary junk (17 bytes).\r\n' 07:34:57.986368 Received DATA (on stdin) 07:34:57.986381 > 28 bytes data, server => client 07:34:57.986392 '226 File transfer complete\r\n' 07:34:58.039338 < 6 bytes data, client => server 07:34:58.039365 'QUIT\r\n' 07:34:58.039597 Received DATA (on stdin) 07:34:58.039609 > 18 bytes data, server => client 07:34:58.039620 '221 bye bye baby\r\n' 07:34:58.043558 ====> Client disconnect 07:34:58.043726 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.983361 Running IPv4 version 07:34:58.983417 Listening on port 34153 07:34:58.983453 Wrote pid 81166 to log/6/server/ftp_sockdata.pid 07:34:58.984863 Received PING (on stdin) 07:34:58.984952 Received PORT (on stdin) 07:34:58.985268 ====> Client connect 07:34:58.985865 Received DATA (on stdin) 07:34:58.985876 > 17 bytes data, server => client 07:34:58.985887 'WE ROOLZ: 79833\r\n' 07:34:58.985909 Received DISC (on stdin) 07:34:58.985920 ====> Client forcibly disconnected 07:34:58.986108 Received QUIT (on stdin) 07:34:58.986119 quits 07:34:58.986175 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 314 bluah you f00l Testnum 125 === End of file server.cmd === Start of file valgrind125 ==81274== ==81274== Process terminating with default action of signal 4 (SIGILL) ==81274== Illegal opcode at address 0x4003082 ==81274== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81274== by 0x4003082: main (tool_main.c:234) === End of file valgrind125 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/3/server/http_server.pid" --logfile "log/3/http_server.log" --logdir "log/3" --portfile log/3/server/http_server.port --config log/3/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73861 port 42345 * pid http => 73861 73861 test 0022...[get HTTP with URL > 10000 bytes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind22 ../src/curl -q --output log/3/curl22.out --include --trace-ascii log/3/trace22 --trace-config all --trace-time 127.0.0.1:42345/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 > log/3/stdout22 2> log/3/stderr22 22: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 22 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind22 ../src/curl -q --output log/3/curl22.out --include --trace-ascii log/3/trace22 --trace-config all --trace-time 127.0.0.1:42345/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind17 ../src/curl -q --output log/8/curl17.out --include --trace-ascii log/8/trace17 --trace-config all --trace-time -K - 127.0.0.1:45261/that.site.com/17 log/8/stdout17 2> log/8/stderr17 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind126 ../src/curl -q --output log/17/curl126.out --include --trace-ascii log/17/trace126 --trace-config all --trace-time ftp://127.0.0.1:39713/blalbla/lululul/126 > log/17/stdout126 2> log/17/stderr126 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/22 > log/3/stdout22 2> log/3/stderr22 === End of file commands.log === Start of file http_server.log 07:34:48.843856 Running HTTP IPv4 version on port 42345 07:34:48.843969 Wrote pid 73861 to log/3/server/http_server.pid 07:34:48.844019 Wrote port 42345 to log/3/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 22 === End of file server.cmd === Start of file valgrind22 ==74084== ==74084== Process terminating with default action of signal 4 (SIGILL) ==74084== Illegal opcode at address 0x4003082 ==74084== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74084== by 0x4003082: main (tool_main.c:234) === End of file valgrind22 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/8/server/http_server.pid" --logfile "log/8/http_server.log" --logdir "log/8" --portfile log/8/server/http_server.port --config log/8/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73856 port 45261 * pid http => 73856 73856 test 0017...[HTTP with config file on stdin] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind17 ../src/curl -q --output log/8/curl17.out --include --trace-ascii log/8/trace17 --trace-config all --trace-time -K - 127.0.0.1:45261/that.site.com/17 log/8/stdout17 2> log/8/stderr17 17: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 17 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind17 ../src/curl -q --output log/8/curl17.out --include --trace-ascii log/8/trace17 --trace-config all --trace-time -K - 127.0.0.1:45261/that.site.com/17 log/8/stdout17 2> log/8/stderr17 === End of file commands.log === Start of file http_server.log 07:34:48.843546 Running HTTP IPv4 version on port 45261 07:34:48.843604 Wrote pid 73856 to log/8/server/http_server.pid 07:34:48.843627 Wrote port 45261 to log/8/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 17 === End of file server.cmd === Start of file stdin-for-17 # # Use a silly request without '--': request MOOO # # Set the user-agent using a short-option: -A "agent007 license to drill\t" # # long option *with* '--': --max-time 180 === End of file stdin-for-17 === Start of file valgrind17 ==73976== ==73976== Process terminating with default action of signal 4 (SIGILL) ==73976== Illegal opcode at address 0x4003082 ==73976== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73976== by 0x4003082: main (tool_main.c:234) === End of file valgrind17 test 0126...[FTP download with multiple replies at once in RETR] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind126 ../src/curl -q --output log/17/curl126.out --include --trace-ascii log/17/trace126 --trace-config all --trace-time ftp://127.0.0.1:39713/blalbla/lululul/126 > log/17/stdout126 2> log/17/stderr126 126: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 126 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind126 ../src/curl -q --output log/17/curl126.out --include --trace-ascii log/17/trace126 --trace-config all --trace-time ftp://127.0.0.1:39713/blalbla/lululul/126 > log/17/stdout126 2> log/17/stderr126 === End of file commands.log === Start of file ftp_server.log 07:34:58.127135 ====> Client connect 07:34:58.127346 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.133642 < "USER anonymous" 07:34:58.133698 > "331 We are happy you popped in![CR][LF]" 07:34:58.133878 < "PASS ftp@example.com" 07:34:58.133903 > "230 Welcome you silly person[CR][LF]" 07:34:58.134035 < "PWD" 07:34:58.134068 > "257 "/" is current directory[CR][LF]" 07:34:58.134213 < "EPSV" 07:34:58.134235 ====> Passive DATA channel requested by client 07:34:58.134246 DATA sockfilt for passive data channel starting... 07:34:58.140072 DATA sockfilt for passive data channel started (pid 81167) 07:34:58.140206 DATA sockfilt for passive data channel listens on port 40669 07:34:58.140253 > "229 Entering Passive Mode (|||40669|)[LF]" 07:34:58.140272 Client has been notified that DATA conn will be accepted on port 40669 07:34:58.140512 Client connects to port 40669 07:34:58.140539 ====> Client established passive DATA connection on port 40669 07:34:58.140621 < "TYPE I" 07:34:58.140653 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.140797 < "SIZE verifiedserver" 07:34:58.140826 > "213 17[CR][LF]" 07:34:58.140962 < "RETR verifiedserver" 07:34:58.140994 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.141074 =====> Closing passive DATA connection... 07:34:58.141088 Server disconnects passive DATA connection 07:34:58.141295 Server disconnected passive DATA connection 07:34:58.141321 DATA sockfilt for passive data channel quits (pid 81167) 07:34:58.141542 DATA sockfilt for passive data channel quit (pid 81167) 07:34:58.141565 =====> Closed passive DATA connection 07:34:58.141592 > "226 File transfer complete[CR][LF]" 07:3CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind129 ../src/curl -q --output log/18/curl129.out --include --trace-ascii log/18/trace129 --trace-config all --trace-time http://127.0.0.1:45825/129 > log/18/stdout129 2> log/18/stderr129 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind131 ../src/curl -q --output log/16/curl131.out --include --trace-ascii log/16/trace131 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc131 ftp://user2@127.0.0.1:40585/ > log/16/stdout131 2> log/16/stderr131 4:58.194020 < "QUIT" 07:34:58.194091 > "221 bye bye baby[CR][LF]" 07:34:58.195744 MAIN sockfilt said DISC 07:34:58.195790 ====> Client disconnected 07:34:58.195879 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:57.972679 ====> Client connect 07:34:57.973353 Received DATA (on stdin) 07:34:57.973369 > 160 bytes data, server => client 07:34:57.973382 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:57.973393 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:57.973403 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:57.979419 < 16 bytes data, client => server 07:34:57.979445 'USER anonymous\r\n' 07:34:57.979692 Received DATA (on stdin) 07:34:57.979704 > 33 bytes data, server => client 07:34:57.979714 '331 We are happy you popped in!\r\n' 07:34:57.979787 < 22 bytes data, client => server 07:34:57.979798 'PASS ftp@example.com\r\n' 07:34:57.979890 Received DATA (on stdin) 07:34:57.979901 > 30 bytes data, server => client 07:34:57.979911 '230 Welcome you silly person\r\n' 07:34:57.979953 < 5 bytes data, client => server 07:34:57.979963 'PWD\r\n' 07:34:57.980056 Received DATA (on stdin) 07:34:57.980067 > 30 bytes data, server => client 07:34:57.980077 '257 "/" is current directory\r\n' 07:34:57.980131 < 6 bytes data, client => server 07:34:57.980141 'EPSV\r\n' 07:34:57.986272 Received DATA (on stdin) 07:34:57.986289 > 38 bytes data, server => client 07:34:57.986300 '229 Entering Passive Mode (|||40669|)\n' 07:34:57.986451 < 8 bytes data, client => server 07:34:57.986463 'TYPE I\r\n' 07:34:57.986644 Received DATA (on stdin) 07:34:57.986655 > 33 bytes data, server => client 07:34:57.986666 '200 I modify TYPE as you wanted\r\n' 07:34:57.986711 < 21 bytes data, client => server 07:34:57.986722 'SIZE verifiedserver\r\n' 07:34:57.986816 Received DATA (on stdin) 07:34:57.986828 > 8 bytes data, server => client 07:34:57.986838 '213 17\r\n' 07:34:57.986879 < 21 bytes data, client => server 07:34:57.986890 'RETR verifiedserver\r\n' 07:34:57.987161 Received DATA (on stdin) 07:34:57.987172 > 29 bytes data, server => client 07:34:57.987183 '150 Binary junk (17 bytes).\r\n' 07:34:57.987583 Received DATA (on stdin) 07:34:57.987596 > 28 bytes data, server => client 07:34:57.987607 '226 File transfer complete\r\n' 07:34:58.039175 < 6 bytes data, client => server 07:34:58.039208 'QUIT\r\n' 07:34:58.040093 Received DATA (on stdin) 07:34:58.040110 > 18 bytes data, server => client 07:34:58.040121 '221 bye bye baby\r\n' 07:34:58.041672 ====> Client disconnect 07:34:58.041877 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.983384 Running IPv4 version 07:34:58.983430 Listening on port 40669 07:34:58.983461 Wrote pid 81167 to log/17/server/ftp_sockdata.pid 07:34:58.985988 Received PING (on stdin) 07:34:58.986106 Received PORT (on stdin) 07:34:58.986424 ====> Client connect 07:34:58.987081 Received DATA (on stdin) 07:34:58.987093 > 17 bytes data, server => client 07:34:58.987104 'WE ROOLZ: 79834\r\n' 07:34:58.987128 Received DISC (on stdin) 07:34:58.987139 ====> Client forcibly disconnected 07:34:58.987321 Received QUIT (on stdin) 07:34:58.987334 quits 07:34:58.987387 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd RETRWEIRDO Testnum 126 === End of file server.cmd === Start of file valgrind126 ==81301== ==81301== Process terminating with default action of signal 4 (SIGILL) ==81301== Illegal opcode at address 0x4003082 ==81301== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81301== by 0x4003082: main (tool_main.c:234) === End of file valgrind126 test 0129...[HTTP/1.2 is rejected] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind129 ../src/curl -q --output log/18/curl129.out --include --trace-ascii log/18/trace129 --trace-config all --trace-time http://127.0.0.1:45825/129 > log/18/stdout129 2> log/18/stderr129 129: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 129 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind129 ../src/curl -q --output log/18/curl129.out --include --trace-ascii log/18/trace129 --trace-config all --trace-time http://127.0.0.1:45825/129 > log/18/stdout129 2> log/18/stderr129 === End of file commands.log === Start of file http_server.log 07:34:58.253757 ====> Client connect 07:34:58.253799 accept_connection 3 returned 4 07:34:58.253816 accept_connection 3 returned 0 07:34:58.253832 Read 93 bytes 07:34:58.253844 Process 93 bytes request 07:34:58.253863 Got request: GET /verifiedserver HTTP/1.1 07:34:58.253872 Are-we-friendly question received 07:34:58.253897 Wrote request (93 bytes) input to log/18/server.input 07:34:58.253916 Identifying ourselves as friends 07:34:58.254069 Response sent (56 bytes) and written to log/18/server.response 07:34:58.254084 special request received, no persistency 07:34:58.254092 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 129 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind129 ==81485== ==81485== Process terminating with default action of signal 4 (SIGILL) ==81485== Illegal opcode at address 0x4003082 ==81485== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81485== by 0x4003082: main (tool_main.c:234) === End of file valgrind129 test 0131...[FTP (optional .netrc; user/no pass) dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind131 ../src/curl -q --output log/16/curl131.out --include --trace-ascii log/16/trace131 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc131 ftp://user2@127.0.0.1:40585/ > log/16/stdout131 2> log/16/stderr131 131: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 131 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind131 ../src/curl -q --output log/16/curl131.out --include --trace-ascii log/16/trace131 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc131 ftp://user2@127.0.0.1:40585/ > log/16/stdout131 2> log/16/stderr131 === End of file commands.log === Start of file ftp_server.log 07:34:58.454175 ====> Client connect 07:34:58.454340 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.455411 < "USER anonymous" 07:34:58.455453 > "331 We are happy you popped in![CR][LF]" 07:34:58.455931 < "PASS ftp@example.com" 07:34:58.455960 > "230 Welcome you silly person[CR][LF]" 07:34:58.458780 < "PWD" 07:34:58.458825 > "257 "/" is current directory[CR][LF]" 07:34:58.459012 < "EPSVCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind130 ../src/curl -q --output log/20/curl130.out --include --trace-ascii log/20/trace130 --trace-config all --trace-time --netrc-optional --netrc-file log/20/netrc130 ftp://127.0.0.1:42909/ > log/20/stdout130 2> log/20/stderr130 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind132 ../src/curl -q --output log/2/curl132.out --include --trace-ascii log/2/trace132 --trace-config all --trace-time --netrc-optional --netrc-file log/2/netrc132 ftp://mary:mark@127.0.0.1:42979/ > log/2/stdout132 2> log/2/stderr132 " 07:34:58.459039 ====> Passive DATA channel requested by client 07:34:58.459053 DATA sockfilt for passive data channel starting... 07:34:58.461809 DATA sockfilt for passive data channel started (pid 81505) 07:34:58.466949 DATA sockfilt for passive data channel listens on port 33401 07:34:58.467040 > "229 Entering Passive Mode (|||33401|)[LF]" 07:34:58.467061 Client has been notified that DATA conn will be accepted on port 33401 07:34:58.467401 Client connects to port 33401 07:34:58.467429 ====> Client established passive DATA connection on port 33401 07:34:58.467523 < "TYPE I" 07:34:58.467558 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.467722 < "SIZE verifiedserver" 07:34:58.467757 > "213 17[CR][LF]" 07:34:58.467915 < "RETR verifiedserver" 07:34:58.467947 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.468036 =====> Closing passive DATA connection... 07:34:58.468053 Server disconnects passive DATA connection 07:34:58.468284 Server disconnected passive DATA connection 07:34:58.468313 DATA sockfilt for passive data channel quits (pid 81505) 07:34:58.468574 DATA sockfilt for passive data channel quit (pid 81505) 07:34:58.468599 =====> Closed passive DATA connection 07:34:58.468632 > "226 File transfer complete[CR][LF]" 07:34:58.510342 < "QUIT" 07:34:58.510393 > "221 bye bye baby[CR][LF]" 07:34:58.511727 MAIN sockfilt said DISC 07:34:58.511763 ====> Client disconnected 07:34:58.511833 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.300063 ====> Client connect 07:34:58.300746 Received DATA (on stdin) 07:34:58.300768 > 160 bytes data, server => client 07:34:58.300780 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.300792 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.300802 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.300888 < 16 bytes data, client => server 07:34:58.300904 'USER anonymous\r\n' 07:34:58.301738 Received DATA (on stdin) 07:34:58.301759 > 33 bytes data, server => client 07:34:58.301770 '331 We are happy you popped in!\r\n' 07:34:58.301828 < 22 bytes data, client => server 07:34:58.301842 'PASS ftp@example.com\r\n' 07:34:58.301952 Received DATA (on stdin) 07:34:58.301964 > 30 bytes data, server => client 07:34:58.301975 '230 Welcome you silly person\r\n' 07:34:58.302023 < 5 bytes data, client => server 07:34:58.302036 'PWD\r\n' 07:34:58.304821 Received DATA (on stdin) 07:34:58.304839 > 30 bytes data, server => client 07:34:58.304849 '257 "/" is current directory\r\n' 07:34:58.304919 < 6 bytes data, client => server 07:34:58.304932 'EPSV\r\n' 07:34:58.313069 Received DATA (on stdin) 07:34:58.313091 > 38 bytes data, server => client 07:34:58.313103 '229 Entering Passive Mode (|||33401|)\n' 07:34:58.313342 < 8 bytes data, client => server 07:34:58.313354 'TYPE I\r\n' 07:34:58.313552 Received DATA (on stdin) 07:34:58.313565 > 33 bytes data, server => client 07:34:58.313575 '200 I modify TYPE as you wanted\r\n' 07:34:58.313623 < 21 bytes data, client => server 07:34:58.313635 'SIZE verifiedserver\r\n' 07:34:58.313751 Received DATA (on stdin) 07:34:58.313764 > 8 bytes data, server => client 07:34:58.313773 '213 17\r\n' 07:34:58.313820 < 21 bytes data, client => server 07:34:58.313833 'RETR verifiedserver\r\n' 07:34:58.314135 Received DATA (on stdin) 07:34:58.314148 > 29 bytes data, server => client 07:34:58.314159 '150 Binary junk (17 bytes).\r\n' 07:34:58.314625 Received DATA (on stdin) 07:34:58.314637 > 28 bytes data, server => client 07:34:58.314648 '226 File transfer complete\r\n' 07:34:58.356176 < 6 bytes data, client => server 07:34:58.356196 'QUIT\r\n' 07:34:58.356387 Received DATA (on stdin) 07:34:58.356399 > 18 bytes data, server => client 07:34:58.356409 '221 bye bye baby\r\n' 07:34:58.357444 ====> Client disconnect 07:34:58.357892 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.307300 Running IPv4 version 07:34:58.307393 Listening on port 33401 07:34:58.307431 Wrote pid 81505 to log/16/server/ftp_sockdata.pid 07:34:58.307452 Received PING (on stdin) 07:34:58.310972 Received PORT (on stdin) 07:34:58.313307 ====> Client connect 07:34:58.314047 Received DATA (on stdin) 07:34:58.314061 > 17 bytes data, server => client 07:34:58.314071 'WE ROOLZ: 79929\r\n' 07:34:58.314098 Received DISC (on stdin) 07:34:58.314109 ====> Client forcibly disconnected 07:34:58.314312 Received QUIT (on stdin) 07:34:58.314325 quits 07:34:58.314397 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc131 # the following two lines were created while testing curl machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc131 === Start of file server.cmd Testnum 131 === End of file server.cmd === Start of file valgrind131 ==81557== ==81557== Process terminating with default action of signal 4 (SIGILL) ==81557== Illegal opcode at address 0x4003082 ==81557== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81557== by 0x4003082: main (tool_main.c:234) === End of file valgrind131 test 0132...[FTP (optional .netrc; user/passwd supplied) dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind132 ../src/curl -q --output log/2/curl132.out --include --trace-ascii log/2/trace132 --trace-config all --trace-time --netrc-optional --netrc-file log/2/netrc132 ftp://mary:mark@127.0.0.1:42979/ > log/2/stdout132 2> log/2/stderr132 132: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 132 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind132 ../src/curl -q --output log/2/curl132.out --include --trace-ascii log/2/trace132 --trace-config all --trace-time --netrc-optional --netrc-file log/2/netrc132 ftp://mary:mark@127.0.0.1:42979/ > log/2/stdout132 2> log/2/stderr132 === End of file commands.log === Start of file ftp_server.log 07:34:58.506716 ====> Client connect 07:34:58.506904 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.511639 < "USER anonymous" 07:34:58.511693 > "331 We are happy you popped in![CR][LF]" 07:34:58.512082 < "PASS ftp@example.com" 07:34:58.512110 > "230 Welcome you silly person[CR][LF]" 07:34:58.512246 < "PWD" 07:34:58.512274 > "257 "/" is current directory[CR][LF]" 07:34:58.512415 < "EPSV" 07:34:58.512437 ====> Passive DATA channel requested by client 07:34:58.512449 DATA sockfilt for passive data channel starting... 07:34:58.521781 DATA sockfilt for passive data channel started (pid 81550) 07:34:58.521937 DATA sockfilt for passive data channel listens on port 41735 07:34:58.521995 > "229 Entering Passive Mode (|||41735|)[LF]" 07:34:58.522014 Client has been notified that DATA conn will be accepted on port 41735 07:34:58.524118 Client connects to port 41735 07:34:58.524166 ====> Client established passive DATA connection on port 41735 07:34:58.524275 < "TYPE I" 07:34:58.524319 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.525170 < "SIZE verifiedserver" 07:34:58.525229 > "213 17[CR][LF]" 07:34:58.525440 < "RETR verifiedserver" 07:34:58.525502 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.525615 =====> Closing passive DATA connection... 07:34:58.525630 Server disconnects passive DATA connection 07:34:58.525759 Server disconnected passive DATA connection 07:34:58.525780 DATA sockfilt for passive data channel quits (pid 81550) 07:34:58.528416 DATA sockfilt for passive data channel quit (pid 81550) 07:34:58.528448 =====> Closed passive DATA connection 07:34:58.528481 > "226 File transfer complete[CR][LF]" 07:34:58.567612 < "QUIT" 07:34:58.567670 > "221 bye bye baby[CR][LF]" 07:34:58.568044 MAIN sockfilt said DISC 07:34:58.568082 ====> Client disconnected 07:34:58.569169 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.346056 ====> Client connect 07:34:58.352911 Received DATA (on stdin) 07:34:58.352931 > 160 bytes data, server => client 07:34:58.352943 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.352954 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.352963 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.356005 < 16 bytes data, client => server 07:34:58.356032 'USER anonymous\r\n' 07:34:58.357831 Received DATA (on stdin) 07:34:58.357848 > 33 bytes data, server => client 07:34:58.357859 '331 We are happy you popped in!\r\n' 07:34:58.357980 < 22 bytes data, client => server 07:34:58.357993 'PASS ftp@example.com\r\n' 07:34:58.358101 Received DATA (on stdin) 07:34:58.358111 > 30 bytes data, server => client 07:34:58.358121 '230 Welcome you silly person\r\n' 07:34:58.358163 < 5 bytes data, client => server 07:34:58.358173 'PWD\r\n' 07:34:58.358262 Received DATA (on stdin) 07:34:58.358272 > 30 bytes data, server => client 07:34:58.358282 '257 "/" is current directory\r\n' 07:34:58.358334 < 6 bytes data, client => server 07:34:58.358344 'EPSV\r\n' 07:34:58.367983 Received DATA (on stdin) 07:34:58.368011 > 38 bytes data, server => client 07:34:58.368022 '229 Entering Passive Mode (|||41735|)\n' 07:34:58.368403 < 8 bytes data, client => server 07:34:58.368425 'TYPE I\r\n' 07:34:58.370908 Received DATA (on stdin) 07:34:58.370934 > 33 bytes data, server => client 07:34:58.370945 '200 I modify TYPE as you wanted\r\n' 07:34:58.371018 < 21 bytes data, client => server 07:34:58.371030 'SIZE verifiedserver\r\n' 07:34:58.371227 Received DATA (on stdin) 07:34:58.371239 > 8 bytes data, server => client 07:34:58.371247 '213 17\r\n' 07:34:58.371304 < 21 bytes data, client => server 07:34:58.371314 'RETR verifiedserver\r\n' 07:34:58.371822 Received DATA (on stdin) 07:34:58.371835 > 29 bytes data, server => client 07:34:58.371845 '150 Binary junk (17 bytes).\r\n' 07:34:58.374479 Received DATA (on stdin) 07:34:58.374494 > 28 bytes data, server => client 07:34:58.374504 '226 File transfer complete\r\n' 07:34:58.413068 < 6 bytes data, client => server 07:34:58.413424 'QUIT\r\n' 07:34:58.413669 Received DATA (on stdin) 07:34:58.413683 > 18 bytes data, server => client 07:34:58.413693 '221 bye bye baby\r\n' 07:34:58.413978 ====> Client disconnect 07:34:58.414120 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.364167 Running IPv4 version 07:34:58.364270 Listening on port 41735 07:34:58.364309 Wrote pid 81550 to log/2/server/ftp_sockdata.pid 07:34:58.367694 Received PING (on stdin) 07:34:58.367817 Received PORT (on stdin) 07:34:58.370034 ====> Client connect 07:34:58.371628 Received DATA (on stdin) 07:34:58.371647 > 17 bytes data, server => client 07:34:58.371656 'WE ROOLZ: 79845\r\n' 07:34:58.371686 Received DISC (on stdin) 07:34:58.371697 ====> Client forcibly disconnected 07:34:58.371780 Received QUIT (on stdin) 07:34:58.371791 quits 07:34:58.374146 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc132 # the following two lines were created while testing curl machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc132 === Start of file server.cmd Testnum 132 === End of file server.cmd === Start of file valgrind132 ==81612== ==81612== Process terminating with default action of signal 4 (SIGILL) ==81612== Illegal opcode at address 0x4003082 ==81612== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81612== by 0x4003082: main (tool_main.c:234) === End of file valgrind132 test 0130...[FTP (optional .netrc; no user/pass) dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind130 ../src/curl -q --output log/20/curl130.out --include --trace-ascii log/20/trace130 --trace-config all --trace-time --netrc-optional --netrc-file log/20/netrc130 ftp://127.0.0.1:42909/ > log/20/stdout130 2> log/20/stderr130 130: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 130 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind130 ../src/curl -q --output log/20/curl130.out --include --trace-ascii log/20/trace130 --trace-config all --trace-time --netrc-optional --netrc-file log/20/netrc130 ftp://127.0.0.1:42909/ > log/20/stdout130 2> log/20/stderr130 === End of file commands.log === Start of file ftp_server.log 07:34:58.421101 ====> Client connect 07:34:58.421277 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.421585 < "USER anonymous" 07:34:58.421627 > "331 We are happy you popped in![CR][LF]" 07:34:58.421801 < "PASS ftp@example.com" 07:34:58.421828 > "230 Welcome you silly person[CR][LF]" 07:34:58.421970 < "PWD" 07:34:58.421999 > "257 "/" is current directory[CR][LF]" 07:34:58.422149 < "EPSV" 07:34:58.422172 ====> Passive DATA channel requested by client 07:34:58.422185 DATA sockfilt for passive data channel starting... 07:34:58.437551 DATA sockfilt for passive data channel started (pid 81477) 07:34:58.443307 DATA sockfilt for passive data channel listens on port 39125 07:34:58.443402 > "229 Entering Passive Mode (|||39125|)[LF]" 07:34:58.443423 Client has been notified that DATA conn will be accepted on port 39125 07:34:58.450151 Client connects to port 39125 07:34:58.450229 ====> Client established passive DATA connection on port 39125 07:34:58.450352 < "TYPE I" 07:34:58.450399 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.450618 < "SIZE verifiedserver" 07:34:58.450655 > "213 17[CR][LF]" 07:34:58.450804 < "RETR verifiedserver" 07:34:58.450841 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.450931 =====> Closing passive DATA connection... 07:34:58.450951 Server disconnects passive DATA connection 07:34:58.451089 Server disconnected passive DATA connection 07:34:58.451118 DATA sockfilt for passive data channel quits (pid 81477) 07:34:58.451419 DATA sockfilt for passive data channel quit (pid 81477) 07:34:58.451447 =====> Closed passive DATA connection 07:34:58.451471 > "226 File transfer complete[CR][LF]" 07:34:58.496985 < "QUIT" 07:34:58.497039 > "221 bye bye baby[CR][LF]" 07:34:58.497835 MAIN sockfilt said DISC 07:34:58.497879 ====> Client disconnected 07:34:58.497964 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.266941 ====> Client connect 07:34:58.267290 Received DATA (on stdin) 07:34:58.267308 > 160 bytes data, server => client 07:34:58.267320 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.267331 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.267341 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.267421 < 16 bytes data, client => server 07:34:58.267433 'USER anonymous\r\n' 07:34:58.267622 Received DATA (on stdin) 07:34:58.267634 > 33 bytes data, server => client 07:34:58.267645 '331 We are happy you popped in!\r\n' 07:34:58.267695 < 22 bytes data, client => server 07:34:58.267706 'PASS ftp@example.com\r\n' 07:34:58.267819 Received DATA (on stdin) 07:34:58.267830 > 30 bytes data, server => client 07:34:58.267840 '230 Welcome you silly person\r\n' 07:34:58.267884 < 5 bytes data, client => server 07:34:58.267894 'PWD\r\n' 07:34:58.267988 Received DATA (on stCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind133 ../src/curl -q --output log/4/curl133.out --include --trace-ascii log/4/trace133 --trace-config all --trace-time -n --netrc-file log/4/netrc133 ftp://mary:mark@127.0.0.1:37869/ > log/4/stdout133 2> log/4/stderr133 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind14 ../src/curl -q --output log/11/curl14.out --include --trace-ascii log/11/trace14 --trace-config all --trace-time http://127.0.0.1:41173/want/14 -i --head > log/11/stdout14 2> log/11/stderr14 din) 07:34:58.267999 > 30 bytes data, server => client 07:34:58.268009 '257 "/" is current directory\r\n' 07:34:58.268059 < 6 bytes data, client => server 07:34:58.268071 'EPSV\r\n' 07:34:58.289428 Received DATA (on stdin) 07:34:58.289447 > 38 bytes data, server => client 07:34:58.289458 '229 Entering Passive Mode (|||39125|)\n' 07:34:58.292850 < 8 bytes data, client => server 07:34:58.292884 'TYPE I\r\n' 07:34:58.296402 Received DATA (on stdin) 07:34:58.296421 > 33 bytes data, server => client 07:34:58.296432 '200 I modify TYPE as you wanted\r\n' 07:34:58.296520 < 21 bytes data, client => server 07:34:58.296535 'SIZE verifiedserver\r\n' 07:34:58.296645 Received DATA (on stdin) 07:34:58.296657 > 8 bytes data, server => client 07:34:58.296666 '213 17\r\n' 07:34:58.296712 < 21 bytes data, client => server 07:34:58.296723 'RETR verifiedserver\r\n' 07:34:58.297464 Received DATA (on stdin) 07:34:58.297478 > 29 bytes data, server => client 07:34:58.297489 '150 Binary junk (17 bytes).\r\n' 07:34:58.297512 Received DATA (on stdin) 07:34:58.297523 > 28 bytes data, server => client 07:34:58.297533 '226 File transfer complete\r\n' 07:34:58.342770 < 6 bytes data, client => server 07:34:58.342801 'QUIT\r\n' 07:34:58.343036 Received DATA (on stdin) 07:34:58.343048 > 18 bytes data, server => client 07:34:58.343058 '221 bye bye baby\r\n' 07:34:58.343765 ====> Client disconnect 07:34:58.343965 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.278877 Running IPv4 version 07:34:58.278960 Listening on port 39125 07:34:58.278996 Wrote pid 81477 to log/20/server/ftp_sockdata.pid 07:34:58.279017 Received PING (on stdin) 07:34:58.289137 Received PORT (on stdin) 07:34:58.296055 ====> Client connect 07:34:58.296949 Received DATA (on stdin) 07:34:58.296969 > 17 bytes data, server => client 07:34:58.296980 'WE ROOLZ: 79843\r\n' 07:34:58.297010 Received DISC (on stdin) 07:34:58.297026 ====> Client forcibly disconnected 07:34:58.297119 Received QUIT (on stdin) 07:34:58.297131 quits 07:34:58.297204 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc130 # the following two lines were created while testing curl # machine 127.0.0.1 login user1 password commented machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 default login userdef password passwddef === End of file netrc130 === Start of file server.cmd Testnum 130 === End of file server.cmd === Start of file valgrind130 ==81553== ==81553== Process terminating with default action of signal 4 (SIGILL) ==81553== Illegal opcode at address 0x4003082 ==81553== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81553== by 0x4003082: main (tool_main.c:234) === End of file valgrind130 test 0133...[FTP compulsory .netrc; ignore passwd in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind133 ../src/curl -q --output log/4/curl133.out --include --trace-ascii log/4/trace133 --trace-config all --trace-time -n --netrc-file log/4/netrc133 ftp://mary:mark@127.0.0.1:37869/ > log/4/stdout133 2> log/4/stderr133 133: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 133 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind133 ../src/curl -q --output log/4/curl133.out --include --trace-ascii log/4/trace133 --trace-config all --trace-time -n --netrc-file log/4/netrc133 ftp://mary:mark@127.0.0.1:37869/ > log/4/stdout133 2> log/4/stderr133 === End of file commands.log === Start of file ftp_server.log 07:34:58.506831 ====> Client connect 07:34:58.506982 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.510206 < "USER anonymous" 07:34:58.510262 > "331 We are happy you popped in![CR][LF]" 07:34:58.513534 < "PASS ftp@example.com" 07:34:58.513584 > "230 Welcome you silly person[CR][LF]" 07:34:58.517698 < "PWD" 07:34:58.517758 > "257 "/" is current directory[CR][LF]" 07:34:58.517993 < "EPSV" 07:34:58.518022 ====> Passive DATA channel requested by client 07:34:58.518035 DATA sockfilt for passive data channel starting... 07:34:58.524432 DATA sockfilt for passive data channel started (pid 81551) 07:34:58.524618 DATA sockfilt for passive data channel listens on port 34955 07:34:58.524674 > "229 Entering Passive Mode (|||34955|)[LF]" 07:34:58.524693 Client has been notified that DATA conn will be accepted on port 34955 07:34:58.525462 Client connects to port 34955 07:34:58.525501 ====> Client established passive DATA connection on port 34955 07:34:58.525619 < "TYPE I" 07:34:58.525656 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.526079 < "SIZE verifiedserver" 07:34:58.527492 > "213 17[CR][LF]" 07:34:58.531317 < "RETR verifiedserver" 07:34:58.531372 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.531458 =====> Closing passive DATA connection... 07:34:58.531471 Server disconnects passive DATA connection 07:34:58.534392 Server disconnected passive DATA connection 07:34:58.534429 DATA sockfilt for passive data channel quits (pid 81551) 07:34:58.536024 DATA sockfilt for passive data channel quit (pid 81551) 07:34:58.536055 =====> Closed passive DATA connection 07:34:58.536094 > "226 File transfer complete[CR][LF]" 07:34:58.576965 < "QUIT" 07:34:58.577018 > "221 bye bye baby[CR][LF]" 07:34:58.578010 MAIN sockfilt said DISC 07:34:58.578051 ====> Client disconnected 07:34:58.578112 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.352677 ====> Client connect 07:34:58.352988 Received DATA (on stdin) 07:34:58.353007 > 160 bytes data, server => client 07:34:58.353021 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.353032 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.353042 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.356005 < 16 bytes data, client => server 07:34:58.356033 'USER anonymous\r\n' 07:34:58.356262 Received DATA (on stdin) 07:34:58.356279 > 33 bytes data, server => client 07:34:58.356291 '331 We are happy you popped in!\r\n' 07:34:58.359371 < 22 bytes data, client => server 07:34:58.359395 'PASS ftp@example.com\r\n' 07:34:58.359581 Received DATA (on stdin) 07:34:58.359594 > 30 bytes data, server => client 07:34:58.359605 '230 Welcome you silly person\r\n' 07:34:58.363521 < 5 bytes data, client => server 07:34:58.363546 'PWD\r\n' 07:34:58.363760 Received DATA (on stdin) 07:34:58.363775 > 30 bytes data, server => client 07:34:58.363786 '257 "/" is current directory\r\n' 07:34:58.363876 < 6 bytes data, client => server 07:34:58.363889 'EPSV\r\n' 07:34:58.370694 Received DATA (on stdin) 07:34:58.370715 > 38 bytes data, server => client 07:34:58.370726 '229 Entering Passive Mode (|||34955|)\n' 07:34:58.371338 < 8 bytes data, client => server 07:34:58.371361 'TYPE I\r\n' 07:34:58.371648 Received DATA (on stdin) 07:34:58.371663 > 33 bytes data, server => client 07:34:58.371672 '200 I modify TYPE as you wanted\r\n' 07:34:58.371944 < 21 bytes data, client => server 07:34:58.371962 'SIZE verifiedserver\r\n' 07:34:58.373409 Received DATA (on stdin) 07:34:58.373434 > 8 bytes data, server => client 07:34:58.373493 '213 17\r\n' 07:34:58.377001 < 21 bytes data, client => server 07:34:58.377238 'RETR verifiedserver\r\n' 07:34:58.377461 Received DATA (on stdin) 07:34:58.377472 > 29 bytes data, server => client 07:34:58.377481 '150 Binary junk (17 bytes).\r\n' 07:34:58.382095 Received DATA (on stdin) 07:34:58.382111 > 28 bytes data, server => client 07:34:58.382121 '226 File transfer complete\r\n' 07:34:58.42278CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind6 ../src/curl -q --output log/19/curl6.out --include --trace-ascii log/19/trace6 --trace-config all --trace-time http://127.0.0.1:33487/we/want/that/page/6 -b "name=contents;name2=content2" -b name3=content3 > log/19/stdout6 2> log/19/stderr6 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind135 ../src/curl -q --output log/1/curl135.out --include --trace-ascii log/1/trace135 --trace-config all --trace-time -r 4-16 ftp://127.0.0.1:34427/135 > log/1/stdout135 2> log/1/stderr135 5 < 6 bytes data, client => server 07:34:58.422816 'QUIT\r\n' 07:34:58.423013 Received DATA (on stdin) 07:34:58.423024 > 18 bytes data, server => client 07:34:58.423034 '221 bye bye baby\r\n' 07:34:58.423940 ====> Client disconnect 07:34:58.424103 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.367042 Running IPv4 version 07:34:58.367132 Listening on port 34955 07:34:58.370088 Wrote pid 81551 to log/4/server/ftp_sockdata.pid 07:34:58.370112 Received PING (on stdin) 07:34:58.370496 Received PORT (on stdin) 07:34:58.371407 ====> Client connect 07:34:58.378284 Received DATA (on stdin) 07:34:58.378309 > 17 bytes data, server => client 07:34:58.378320 'WE ROOLZ: 79844\r\n' 07:34:58.378351 Received DISC (on stdin) 07:34:58.378366 ====> Client forcibly disconnected 07:34:58.380917 Received QUIT (on stdin) 07:34:58.380938 quits 07:34:58.381002 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc133 # the following two lines were created while testing curl machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login mary password drfrank === End of file netrc133 === Start of file server.cmd Testnum 133 === End of file server.cmd === Start of file valgrind133 ==81629== ==81629== Process terminating with default action of signal 4 (SIGILL) ==81629== Illegal opcode at address 0x4003082 ==81629== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81629== by 0x4003082: main (tool_main.c:234) === End of file valgrind133 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/11/server/http_server.pid" --logfile "log/11/http_server.log" --logdir "log/11" --portfile log/11/server/http_server.port --config log/11/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73853 port 41173 * pid http => 73853 73853 test 0014...[HTTP HEAD with Connection: close] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind14 ../src/curl -q --output log/11/curl14.out --include --trace-ascii log/11/trace14 --trace-config all --trace-time http://127.0.0.1:41173/want/14 -i --head > log/11/stdout14 2> log/11/stderr14 14: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 14 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind14 ../src/curl -q --output log/11/curl14.out --include --trace-ascii log/11/trace14 --trace-config all --trace-time http://127.0.0.1:41173/want/14 -i --head > log/11/stdout14 2> log/11/stderr14 === End of file commands.log === Start of file http_server.log 07:34:48.837252 Running HTTP IPv4 version on port 41173 07:34:48.837375 Wrote pid 73853 to log/11/server/http_server.pid 07:34:48.837435 Wrote port 41173 to log/11/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 14 === End of file server.cmd === Start of file valgrind14 ==73984== ==73984== Process terminating with default action of signal 4 (SIGILL) ==73984== Illegal opcode at address 0x4003082 ==73984== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==73984== by 0x4003082: main (tool_main.c:234) === End of file valgrind14 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/19/server/http_server.pid" --logfile "log/19/http_server.log" --logdir "log/19" --portfile log/19/server/http_server.port --config log/19/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73844 port 33487 * pid http => 73844 73844 test 0006...[HTTP with simple cookie send] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind6 ../src/curl -q --output log/19/curl6.out --include --trace-ascii log/19/trace6 --trace-config all --trace-time http://127.0.0.1:33487/we/want/that/page/6 -b "name=contents;name2=content2" -b name3=content3 > log/19/stdout6 2> log/19/stderr6 6: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 6 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind6 ../src/curl -q --output log/19/curl6.out --include --trace-ascii log/19/trace6 --trace-config all --trace-time http://127.0.0.1:33487/we/want/that/page/6 -b "name=contents;name2=content2" -b name3=content3 > log/19/stdout6 2> log/19/stderr6 === End of file commands.log === Start of file http_server.log 07:34:48.835430 Running HTTP IPv4 version on port 33487 07:34:48.835526 Wrote pid 73844 to log/19/server/http_server.pid 07:34:48.835568 Wrote port 33487 to log/19/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 6 === End of file server.cmd === Start of file valgrind6 ==74041== ==74041== Process terminating with default action of signal 4 (SIGILL) ==74041== Illegal opcode at address 0x4003082 ==74041== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74041== by 0x4003082: main (tool_main.c:234) === End of file valgrind6 test 0135...[FTP retrieve a byte-range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind135 ../src/curl -q --output log/1/curl135.out --include --trace-ascii log/1/trace135 --trace-config all --trace-time -r 4-16 ftp://127.0.0.1:34427/135 > log/1/stdout135 2> log/1/stderr135 135: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 135 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind135 ../src/curl -q --output log/1/curl135.out --include --trace-ascii log/1/trace135 --trace-config all --trace-time -r 4-16 ftp://127.0.0.1:34427/135 > log/1/stdout135 2> log/1/stderr135 === End of file commands.log === Start of file ftp_server.log 07:34:58.652850 ====> Client connect 07:34:58.653083 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.655349 < "USER anonymous" 07:34:58.655402 > "331 We are happy you popped in![CR][LF]" 07:34:58.656012 < "PASS ftp@example.com" 07:34:58.656037 > "230 Welcome you silly person[CR][LF]" 07:34:58.656180 < "PWD" 07:34:58.656205 > "257 "/" is current directory[CR][LF]" 07:34:58.656343 < "EPSV" 07:34:58.656368 ====> Passive DATA channel requested by client 07:34:58.656380 DATA sockfilt for passive data channel starting... 07:34:58.661249 DATA sockfilt for passive data channel started (pid 81726) 07:34:58.661377 DATA sockfilt for passive data channel listens on port 42045 07:34:58.661420 > "229 Entering Passive Mode (|||42045|)[LF]" 07:34:58.661438 Client has been notified that DATA conn will be accepted on port 42045 07:34:58.661697 Client connects to port 42045 07:34:58.661724 ====> Client established passive DATA connection on port 42045 07:34:58.661835 < "TYPE I" 07:34:58.661864 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.663878 < "SIZE verifiedserver" 07:34:58.663925 > "213 17[CR][LF]" 07:34:58.664654 < "RECMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind136 ../src/curl -q --output log/9/curl136.out --include --trace-ascii log/9/trace136 --trace-config all --trace-time -u user: ftp://127.0.0.1:36299/136 > log/9/stdout136 2> log/9/stderr136 TR verifiedserver" 07:34:58.664689 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.664768 =====> Closing passive DATA connection... 07:34:58.664782 Server disconnects passive DATA connection 07:34:58.664942 Server disconnected passive DATA connection 07:34:58.664960 DATA sockfilt for passive data channel quits (pid 81726) 07:34:58.665211 DATA sockfilt for passive data channel quit (pid 81726) 07:34:58.665230 =====> Closed passive DATA connection 07:34:58.665257 > "226 File transfer complete[CR][LF]" 07:34:58.713620 < "QUIT" 07:34:58.713674 > "221 bye bye baby[CR][LF]" 07:34:58.718901 MAIN sockfilt said DISC 07:34:58.718966 ====> Client disconnected 07:34:58.719063 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.498715 ====> Client connect 07:34:58.500013 Received DATA (on stdin) 07:34:58.500042 > 160 bytes data, server => client 07:34:58.500055 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.500065 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.500075 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.500151 < 16 bytes data, client => server 07:34:58.500165 'USER anonymous\r\n' 07:34:58.501403 Received DATA (on stdin) 07:34:58.501424 > 33 bytes data, server => client 07:34:58.501435 '331 We are happy you popped in!\r\n' 07:34:58.501901 < 22 bytes data, client => server 07:34:58.501920 'PASS ftp@example.com\r\n' 07:34:58.502026 Received DATA (on stdin) 07:34:58.502037 > 30 bytes data, server => client 07:34:58.502048 '230 Welcome you silly person\r\n' 07:34:58.502097 < 5 bytes data, client => server 07:34:58.502107 'PWD\r\n' 07:34:58.502193 Received DATA (on stdin) 07:34:58.502203 > 30 bytes data, server => client 07:34:58.502213 '257 "/" is current directory\r\n' 07:34:58.502264 < 6 bytes data, client => server 07:34:58.502274 'EPSV\r\n' 07:34:58.507438 Received DATA (on stdin) 07:34:58.507455 > 38 bytes data, server => client 07:34:58.507466 '229 Entering Passive Mode (|||42045|)\n' 07:34:58.507729 < 8 bytes data, client => server 07:34:58.507740 'TYPE I\r\n' 07:34:58.508327 Received DATA (on stdin) 07:34:58.508344 > 33 bytes data, server => client 07:34:58.508355 '200 I modify TYPE as you wanted\r\n' 07:34:58.509754 < 21 bytes data, client => server 07:34:58.509778 'SIZE verifiedserver\r\n' 07:34:58.509922 Received DATA (on stdin) 07:34:58.509935 > 8 bytes data, server => client 07:34:58.509946 '213 17\r\n' 07:34:58.510553 < 21 bytes data, client => server 07:34:58.510570 'RETR verifiedserver\r\n' 07:34:58.510773 Received DATA (on stdin) 07:34:58.510784 > 29 bytes data, server => client 07:34:58.510795 '150 Binary junk (17 bytes).\r\n' 07:34:58.511248 Received DATA (on stdin) 07:34:58.511260 > 28 bytes data, server => client 07:34:58.511271 '226 File transfer complete\r\n' 07:34:58.559408 < 6 bytes data, client => server 07:34:58.559443 'QUIT\r\n' 07:34:58.559670 Received DATA (on stdin) 07:34:58.559681 > 18 bytes data, server => client 07:34:58.559692 '221 bye bye baby\r\n' 07:34:58.564793 ====> Client disconnect 07:34:58.565066 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.506634 Running IPv4 version 07:34:58.506714 Listening on port 42045 07:34:58.506756 Wrote pid 81726 to log/1/server/ftp_sockdata.pid 07:34:58.506774 Received PING (on stdin) 07:34:58.507279 Received PORT (on stdin) 07:34:58.507641 ====> Client connect 07:34:58.510820 Received DATA (on stdin) 07:34:58.510837 > 17 bytes data, server => client 07:34:58.510847 'WE ROOLZ: 80151\r\n' 07:34:58.510872 Received DISC (on stdin) 07:34:58.510884 ====> Client forcibly disconnected 07:34:58.510955 Received QUIT (on stdin) 07:34:58.510965 quits 07:34:58.511032 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 135 === End of file server.cmd === Start of file valgrind135 ==81813== ==81813== Process terminating with default action of signal 4 (SIGILL) ==81813== Illegal opcode at address 0x4003082 ==81813== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81813== by 0x4003082: main (tool_main.c:234) === End of file valgrind135 test 0136...[FTP with user and no password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind136 ../src/curl -q --output log/9/curl136.out --include --trace-ascii log/9/trace136 --trace-config all --trace-time -u user: ftp://127.0.0.1:36299/136 > log/9/stdout136 2> log/9/stderr136 136: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 136 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind136 ../src/curl -q --output log/9/curl136.out --include --trace-ascii log/9/trace136 --trace-config all --trace-time -u user: ftp://127.0.0.1:36299/136 > log/9/stdout136 2> log/9/stderr136 === End of file commands.log === Start of file ftp_server.log 07:34:58.696163 ====> Client connect 07:34:58.696330 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.696830 < "USER anonymous" 07:34:58.696899 > "331 We are happy you popped in![CR][LF]" 07:34:58.697030 < "PASS ftp@example.com" 07:34:58.697055 > "230 Welcome you silly person[CR][LF]" 07:34:58.697200 < "PWD" 07:34:58.697228 > "257 "/" is current directory[CR][LF]" 07:34:58.698559 < "EPSV" 07:34:58.698586 ====> Passive DATA channel requested by client 07:34:58.698599 DATA sockfilt for passive data channel starting... 07:34:58.703918 DATA sockfilt for passive data channel started (pid 81787) 07:34:58.704029 DATA sockfilt for passive data channel listens on port 43445 07:34:58.704079 > "229 Entering Passive Mode (|||43445|)[LF]" 07:34:58.704099 Client has been notified that DATA conn will be accepted on port 43445 07:34:58.704368 Client connects to port 43445 07:34:58.704398 ====> Client established passive DATA connection on port 43445 07:34:58.704476 < "TYPE I" 07:34:58.704505 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.704664 < "SIZE verifiedserver" 07:34:58.704705 > "213 17[CR][LF]" 07:34:58.704862 < "RETR verifiedserver" 07:34:58.704896 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.704972 =====> Closing passive DATA connection... 07:34:58.704989 Server disconnects passive DATA connection 07:34:58.705367 Server disconnected passive DATA connection 07:34:58.705398 DATA sockfilt for passive data channel quits (pid 81787) 07:34:58.706026 DATA sockfilt for passive data channel quit (pid 81787) 07:34:58.706053 =====> Closed passive DATA connection 07:34:58.706083 > "226 File transfer complete[CR][LF]" 07:34:58.750341 < "QUIT" 07:34:58.750399 > "221 bye bye baby[CR][LF]" 07:34:58.752077 MAIN sockfilt said DISC 07:34:58.752119 ====> Client disconnected 07:34:58.752212 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.542041 ====> Client connect 07:34:58.542330 Received DATA (on stdin) 07:34:58.542344 > 160 bytes data, server => client 07:34:58.542356 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.542367 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.542377 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.542659 < 16 bytes data, client => server 07:34:58.542675 'USER anonymous\r\n' 07:34:58.542838 Received DATA (on stdin) 07:34:58.542851 > 33 bytes data, server => client 07:34:58.542892 '331 We are happy you popped in!\r\n' 07:34:58.542940 < 22 bytes data, client => server 07:34:58.542951 'PASS ftp@example.com\r\n' 07:34:58.543045 Received DATA (on stdin) 07:34:58.543057 > 30 bytes data, server => clieCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind12 ../src/curl -q --output log/13/curl12.out --include --trace-ascii log/13/trace12 --trace-config all --trace-time http://127.0.0.1:33627/want/12 -r 100-200 > log/13/stdout12 2> log/13/stderr12 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind142 ../src/curl -q --output log/5/curl142.out --include --trace-ascii log/5/trace142 --trace-config all --trace-time ftp://127.0.0.1:42261/part1/part2/part3/part4/part5/part6/part7/part8/part9/part10/part11/part12/part13/part14/part15/part16/part17/part18/part19/part20/part21/part22/part23/part24/part25/part26/part27/part28/part29/part30/part31/part32/part33/part34/part35/part36/part37/part38/part39/part40/part41/part42/part43/part44/part45/part46/part47/part48/part49/part50/part51/part52/part53/part54/part55/part56/part57/part58/part59/part60/part61/part62/part63/part64/part65/part66/part67/part68/part69/part70/part71/part72/part73/part74/part75/part76/part77/part78/part79/part80/part81/part82/part83/part84/part85/part86/part87/part88/part89/part90/part91/part92/part93/part94/part95/part96/part97/part98/part99/part100/part101/part102/part103/part104/part105/part106/part107/part108/part109/part110/part111/part112/part113/part114/part115/part116/part117/part118/part119/part120/part121/part122/part123/part124/part125/part126/part127/part128/part129/part130/part131/part132/part133/part134/part135/part136/part137/part138/part139/part140/part141/part142/part143/part144/part145/part146/part147/part148/part149/part150/142 > log/5/stdout142 2> log/5/stderr142 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind138 ../src/curl -q --output log/15/curl138.out --include --trace-ascii log/15/trace138 --trace-config all --trace-time ftp://127.0.0.1:46295/blalbla/lululul/138 > log/15/stdout138 2> log/15/stderr138 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind139 ../src/curl -q --output log/22/curl139.out --include --trace-ascii log/22/trace139 --trace-config all --trace-time ftp://127.0.0.1:42651/blalbla/139 -z "1 jan 1989" > log/22/stdout139 2> log/22/stderr139 nt 07:34:58.543067 '230 Welcome you silly person\r\n' 07:34:58.543115 < 5 bytes data, client => server 07:34:58.543125 'PWD\r\n' 07:34:58.544376 Received DATA (on stdin) 07:34:58.544396 > 30 bytes data, server => client 07:34:58.544407 '257 "/" is current directory\r\n' 07:34:58.544462 < 6 bytes data, client => server 07:34:58.544474 'EPSV\r\n' 07:34:58.550099 Received DATA (on stdin) 07:34:58.550119 > 38 bytes data, server => client 07:34:58.550130 '229 Entering Passive Mode (|||43445|)\n' 07:34:58.550277 < 8 bytes data, client => server 07:34:58.550294 'TYPE I\r\n' 07:34:58.550499 Received DATA (on stdin) 07:34:58.550512 > 33 bytes data, server => client 07:34:58.550523 '200 I modify TYPE as you wanted\r\n' 07:34:58.550572 < 21 bytes data, client => server 07:34:58.550584 'SIZE verifiedserver\r\n' 07:34:58.550698 Received DATA (on stdin) 07:34:58.550709 > 8 bytes data, server => client 07:34:58.550719 '213 17\r\n' 07:34:58.550767 < 21 bytes data, client => server 07:34:58.550780 'RETR verifiedserver\r\n' 07:34:58.550982 Received DATA (on stdin) 07:34:58.550995 > 29 bytes data, server => client 07:34:58.551006 '150 Binary junk (17 bytes).\r\n' 07:34:58.552075 Received DATA (on stdin) 07:34:58.552088 > 28 bytes data, server => client 07:34:58.552099 '226 File transfer complete\r\n' 07:34:58.596114 < 6 bytes data, client => server 07:34:58.596153 'QUIT\r\n' 07:34:58.596396 Received DATA (on stdin) 07:34:58.596409 > 18 bytes data, server => client 07:34:58.596420 '221 bye bye baby\r\n' 07:34:58.597996 ====> Client disconnect 07:34:58.598211 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.549717 Running IPv4 version 07:34:58.549790 Listening on port 43445 07:34:58.549834 Wrote pid 81787 to log/9/server/ftp_sockdata.pid 07:34:58.549854 Received PING (on stdin) 07:34:58.549936 Received PORT (on stdin) 07:34:58.550314 ====> Client connect 07:34:58.551032 Received DATA (on stdin) 07:34:58.551045 > 17 bytes data, server => client 07:34:58.551056 'WE ROOLZ: 80150\r\n' 07:34:58.551078 Received DISC (on stdin) 07:34:58.551090 ====> Client forcibly disconnected 07:34:58.551398 Received QUIT (on stdin) 07:34:58.551411 quits 07:34:58.551476 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 136 === End of file server.cmd === Start of file valgrind136 ==81831== ==81831== Process terminating with default action of signal 4 (SIGILL) ==81831== Illegal opcode at address 0x4003082 ==81831== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==81831== by 0x4003082: main (tool_main.c:234) === End of file valgrind136 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/13/server/http_server.pid" --logfile "log/13/http_server.log" --logdir "log/13" --portfile log/13/server/http_server.port --config log/13/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 73846 port 33627 * pid http => 73846 73846 test 0012...[HTTP range support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind12 ../src/curl -q --output log/13/curl12.out --include --trace-ascii log/13/trace12 --trace-config all --trace-time http://127.0.0.1:33627/want/12 -r 100-200 > log/13/stdout12 2> log/13/stderr12 12: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 12 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind12 ../src/curl -q --output log/13/curl12.out --include --trace-ascii log/13/trace12 --trace-config all --trace-time http://127.0.0.1:33627/want/12 -r 100-200 > log/13/stdout12 2> log/13/stderr12 === End of file commands.log === Start of file http_server.log 07:34:48.838344 Running HTTP IPv4 version on port 33627 07:34:48.838400 Wrote pid 73846 to log/13/server/http_server.pid 07:34:48.838425 Wrote port 33627 to log/13/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 12 === End of file server.cmd === Start of file valgrind12 ==74102== ==74102== Process terminating with default action of signal 4 (SIGILL) ==74102== Illegal opcode at address 0x4003082 ==74102== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==74102== by 0x4003082: main (tool_main.c:234) === End of file valgrind12 test 0142...[FTP URL with 150 dir levels] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind142 ../src/curl -q --output log/5/curl142.out --include --trace-ascii log/5/trace142 --trace-config all --trace-time ftp://127.0.0.1:42261/part1/part2/part3/part4/part5/part6/part7/part8/part9/part10/part11/part12/part13/part14/part15/part16/part17/part18/part19/part20/part21/part22/part23/part24/part25/part26/part27/part28/part29/part30/part31/part32/part33/part34/part35/part36/part37/part38/part39/part40/part41/part42/part43/part44/part45/part46/part47/part48/part49/part50/part51/part52/part53/part54/part55/part56/part57/part58/part59/part60/part61/part62/part63/part64/part65/part66/part67/part68/part69/part70/part71/part72/part73/part74/part75/part76/part77/part78/part79/part80/part81/part82/part83/part84/part85/part86/part87/part88/part89/part90/part91/part92/part93/part94/part95/part96/part97/part98/part99/part100/part101/part102/part103/part104/part105/part106/part107/part108/part109/part110/part111/part112/part113/part114/part115/part116/part117/part118/part119/part120/part121/part122/part123/part124/part125/part126/part127/part128/part129/part130/part131/part132/part133/part134/part135/part136/part137/part138/part139/part140/part141/part142/part143/part144/part145/part146/part147/part148/part149/part150/142 > log/5/stdout142 2> log/5/stderr142 142: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 142 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind142 ../src/curl -q --output log/5/curl142.out --include --trace-ascii log/5/trace142 --trace-config all --trace-time ftp://127.0.0.1:42261/part1/part2/part3/part4/part5/part6/part7/part8/part9/part10/part11/part12/part13/part14/part15/part16/part17/part18/part19/part20/part21/part22/part23/part24/part25/part26/part27/part28/part29/part30/part31/part32/part33/part34/part35/part36/part37/part38/part39/part40/part41/part42/part43/part44/part45/part46/part47/part48/part49/part50/part51/part52/part53/part54/part55/part56/part57/part58/part59/part60/part61/part62/part63/part64/part65/part66/part67/part68/part69/part70/part71/part72/part73/part74/part75/part76/part77/part78/part79/part80/part81/part82/part83/part84/part85/part86/part87/part88/part89/part90/part91/part92/part93/part94/part95/part96/part97/part98/part99/part100/part101/part102/part103/part104/part105/part106/part107/part108/part109/part110/part111/part112/part113/part114/part115/part116/part117/part118/part119/part120/part121/part122/part123/part124/part125/part126/part127/part128/part129/part130/part131/part132/part133/part134/part135/part136/part137/part138/part139/part140/part141/part142/part143/part144/part145/part146/part147/part148/part149/part150/142 > log/5/stdout142 2> log/5/stderr142 === End of file commands.log === Start of file ftp_server.log 07:34:58.964107 ====> Client connect 07:34:58.964260 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- |CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind121 ../src/curl -q --output log/12/curl121.out --include --trace-ascii log/12/trace121 --trace-config all --trace-time ftp://127.0.0.1:39735/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" > log/12/stdout121 2> log/12/stderr121 (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.964525 < "USER anonymous" 07:34:58.964559 > "331 We are happy you popped in![CR][LF]" 07:34:58.964711 < "PASS ftp@example.com" 07:34:58.964735 > "230 Welcome you silly person[CR][LF]" 07:34:58.964869 < "PWD" 07:34:58.964896 > "257 "/" is current directory[CR][LF]" 07:34:58.965073 < "EPSV" 07:34:58.965098 ====> Passive DATA channel requested by client 07:34:58.965110 DATA sockfilt for passive data channel starting... 07:34:58.971549 DATA sockfilt for passive data channel started (pid 81987) 07:34:58.971692 DATA sockfilt for passive data channel listens on port 45495 07:34:58.971739 > "229 Entering Passive Mode (|||45495|)[LF]" 07:34:58.971754 Client has been notified that DATA conn will be accepted on port 45495 07:34:58.971999 Client connects to port 45495 07:34:58.972023 ====> Client established passive DATA connection on port 45495 07:34:58.972153 < "TYPE I" 07:34:58.972186 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.973553 < "SIZE verifiedserver" 07:34:58.973594 > "213 17[CR][LF]" 07:34:58.973737 < "RETR verifiedserver" 07:34:58.973766 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.973923 =====> Closing passive DATA connection... 07:34:58.973940 Server disconnects passive DATA connection 07:34:58.976694 Server disconnected passive DATA connection 07:34:58.976724 DATA sockfilt for passive data channel quits (pid 81987) 07:34:58.977114 DATA sockfilt for passive data channel quit (pid 81987) 07:34:58.977157 =====> Closed passive DATA connection 07:34:58.977186 > "226 File transfer complete[CR][LF]" 07:34:59.017841 < "QUIT" 07:34:59.017888 > "221 bye bye baby[CR][LF]" 07:34:59.018786 MAIN sockfilt said DISC 07:34:59.018814 ====> Client disconnected 07:34:59.018885 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.809971 ====> Client connect 07:34:58.810263 Received DATA (on stdin) 07:34:58.810278 > 160 bytes data, server => client 07:34:58.810290 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.810301 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.810311 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.810380 < 16 bytes data, client => server 07:34:58.810391 'USER anonymous\r\n' 07:34:58.810550 Received DATA (on stdin) 07:34:58.810561 > 33 bytes data, server => client 07:34:58.810571 '331 We are happy you popped in!\r\n' 07:34:58.810620 < 22 bytes data, client => server 07:34:58.810630 'PASS ftp@example.com\r\n' 07:34:58.810724 Received DATA (on stdin) 07:34:58.810735 > 30 bytes data, server => client 07:34:58.810744 '230 Welcome you silly person\r\n' 07:34:58.810786 < 5 bytes data, client => server 07:34:58.810796 'PWD\r\n' 07:34:58.810908 Received DATA (on stdin) 07:34:58.810921 > 30 bytes data, server => client 07:34:58.810932 '257 "/" is current directory\r\n' 07:34:58.810984 < 6 bytes data, client => server 07:34:58.810995 'EPSV\r\n' 07:34:58.817752 Received DATA (on stdin) 07:34:58.817769 > 38 bytes data, server => client 07:34:58.817779 '229 Entering Passive Mode (|||45495|)\n' 07:34:58.818025 < 8 bytes data, client => server 07:34:58.818036 'TYPE I\r\n' 07:34:58.819328 Received DATA (on stdin) 07:34:58.819353 > 33 bytes data, server => client 07:34:58.819365 '200 I modify TYPE as you wanted\r\n' 07:34:58.819442 < 21 bytes data, client => server 07:34:58.819454 'SIZE verifiedserver\r\n' 07:34:58.819585 Received DATA (on stdin) 07:34:58.819596 > 8 bytes data, server => client 07:34:58.819606 '213 17\r\n' 07:34:58.819651 < 21 bytes data, client => server 07:34:58.819663 'RETR verifiedserver\r\n' 07:34:58.819780 Received DATA (on stdin) 07:34:58.819807 > 29 bytes data, server => client 07:34:58.819817 '150 Binary junk (17 bytes).\r\n' 07:34:58.823178 Received DATA (on stdin) 07:34:58.823192 > 28 bytes data, server => client 07:34:58.823202 '226 File transfer complete\r\n' 07:34:58.863671 < 6 bytes data, client => server 07:34:58.863694 'QUIT\r\n' 07:34:58.863881 Received DATA (on stdin) 07:34:58.863893 > 18 bytes data, server => client 07:34:58.863904 '221 bye bye baby\r\n' 07:34:58.864727 ====> Client disconnect 07:34:58.864875 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.817188 Running IPv4 version 07:34:58.817275 Listening on port 45495 07:34:58.817315 Wrote pid 81987 to log/5/server/ftp_sockdata.pid 07:34:58.817477 Received PING (on stdin) 07:34:58.817584 Received PORT (on stdin) 07:34:58.817944 ====> Client connect 07:34:58.821123 Received DATA (on stdin) 07:34:58.821153 > 17 bytes data, server => client 07:34:58.821169 'WE ROOLZ: 79836\r\n' 07:34:58.821202 Received DISC (on stdin) 07:34:58.821215 ====> Client forcibly disconnected 07:34:58.822786 Received QUIT (on stdin) 07:34:58.822808 quits 07:34:58.822897 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 142 === End of file server.cmd === Start of file valgrind142 ==82077== ==82077== Process terminating with default action of signal 4 (SIGILL) ==82077== Illegal opcode at address 0x4003082 ==82077== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82077== by 0x4003082: main (tool_main.c:234) === End of file valgrind142 test 0138...[FTP download without size in RETR string and no SIZE command] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind138 ../src/curl -q --output log/15/curl138.out --include --trace-ascii log/15/trace138 --trace-config all --trace-time ftp://127.0.0.1:46295/blalbla/lululul/138 > log/15/stdout138 2> log/15/stderr138 138: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 138 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind138 ../src/curl -q --output log/15/curl138.out --include --trace-ascii log/15/trace138 --trace-config all --trace-time ftp://127.0.0.1:46295/blalbla/lululul/138 > log/15/stdout138 2> log/15/stderr138 === End of file commands.log === Start of file ftp_server.log 07:34:58.936165 ====> Client connect 07:34:58.936340 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.936657 < "USER anonymous" 07:34:58.936719 > "331 We are happy you popped in![CR][LF]" 07:34:58.936904 < "PASS ftp@example.com" 07:34:58.936934 > "230 Welcome you silly person[CR][LF]" 07:34:58.937088 < "PWD" 07:34:58.937119 > "257 "/" is current directory[CR][LF]" 07:34:58.937383 < "EPSV" 07:34:58.937408 ====> Passive DATA channel requested by client 07:34:58.937420 DATA sockfilt for passive data channel starting... 07:34:58.940494 DATA sockfilt for passive data channel started (pid 81967) 07:34:58.940614 DATA sockfilt for passive data channel listens on port 43837 07:34:58.940661 > "229 Entering Passive Mode (|||43837|)[LF]" 07:34:58.940680 Client has been notified that DATA conn will be accepted on port 43837 07:34:58.941023 Client connects to port 43837 07:34:58.941052 ====> Client established passive DATA connection on port 43837 07:34:58.941144 < "TYPE I" 07:34:58.941176 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.941659 < "SIZE verifiedserver" 07:34:58.941699 > "213 17[CR][LF]" 07:34:58.941851 < "RETR verifiedserver" 07:34:58.941884 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.941965 =====> Closing passive DATA connection... 07:34:58.941981 Server disconnects passive DATA connection 07:34:58.942433 Server disconnected passive DATA connection 07:34:58.942462 DATA sockfilt for passive data channel quits (pid 81967) 07:34:58.942720 DATA sockfilt for passive data channel quit (pid 81967) 07:34:58.942744 =====> Closed passive DATA connection 07:34:58.942771 > "226 File transfer complete[CR][LF]" 07:34:58.983847 < "QUIT" 07:34:58.983903 > "221 bye bye baby[CR][LF]" 07:34:58.984893 MAIN sockfilt said DISC 07:34:58.984926 ====> Client disconnected 07:34:58.985051 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.780446 ====> Client connect 07:34:58.782344 Received DATA (on stdin) 07:34:58.782361 > 160 bytes data, server => client 07:34:58.782373 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.782384 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.782394 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.782490 < 16 bytes data, client => server 07:34:58.782503 'USER anonymous\r\n' 07:34:58.782715 Received DATA (on stdin) 07:34:58.782728 > 33 bytes data, server => client 07:34:58.782739 '331 We are happy you popped in!\r\n' 07:34:58.782796 < 22 bytes data, client => server 07:34:58.782807 'PASS ftp@example.com\r\n' 07:34:58.782924 Received DATA (on stdin) 07:34:58.782936 > 30 bytes data, server => client 07:34:58.782946 '230 Welcome you silly person\r\n' 07:34:58.782994 < 5 bytes data, client => server 07:34:58.783005 'PWD\r\n' 07:34:58.783107 Received DATA (on stdin) 07:34:58.783118 > 30 bytes data, server => client 07:34:58.783128 '257 "/" is current directory\r\n' 07:34:58.783283 < 6 bytes data, client => server 07:34:58.783298 'EPSV\r\n' 07:34:58.786678 Received DATA (on stdin) 07:34:58.786695 > 38 bytes data, server => client 07:34:58.786722 '229 Entering Passive Mode (|||43837|)\n' 07:34:58.786958 < 8 bytes data, client => server 07:34:58.786971 'TYPE I\r\n' 07:34:58.787184 Received DATA (on stdin) 07:34:58.787199 > 33 bytes data, server => client 07:34:58.787211 '200 I modify TYPE as you wanted\r\n' 07:34:58.787534 < 21 bytes data, client => server 07:34:58.787555 'SIZE verifiedserver\r\n' 07:34:58.787691 Received DATA (on stdin) 07:34:58.787705 > 8 bytes data, server => client 07:34:58.787715 '213 17\r\n' 07:34:58.787763 < 21 bytes data, client => server 07:34:58.787775 'RETR verifiedserver\r\n' 07:34:58.788188 Received DATA (on stdin) 07:34:58.788208 > 29 bytes data, server => client 07:34:58.788219 '150 Binary junk (17 bytes).\r\n' 07:34:58.788763 Received DATA (on stdin) 07:34:58.788776 > 28 bytes data, server => client 07:34:58.788787 '226 File transfer complete\r\n' 07:34:58.829627 < 6 bytes data, client => server 07:34:58.829660 'QUIT\r\n' 07:34:58.829901 Received DATA (on stdin) 07:34:58.829915 > 18 bytes data, server => client 07:34:58.829926 '221 bye bye baby\r\n' 07:34:58.830832 ====> Client disconnect 07:34:58.830939 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.786284 Running IPv4 version 07:34:58.786348 Listening on port 43837 07:34:58.786388 Wrote pid 81967 to log/15/server/ftp_sockdata.pid 07:34:58.786427 Received PING (on stdin) 07:34:58.786514 Received PORT (on stdin) 07:34:58.786926 ====> Client connect 07:34:58.788245 Received DATA (on stdin) 07:34:58.788259 > 17 bytes data, server => client 07:34:58.788269 'WE ROOLZ: 79835\r\n' 07:34:58.788294 Received DISC (on stdin) 07:34:58.788305 ====> Client forcibly disconnected 07:34:58.788460 Received QUIT (on stdin) 07:34:58.788472 quits 07:34:58.788536 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd RETRNOSIZE REPLY SIZE 500 command not understood Testnum 138 === End of file server.cmd === Start of file valgrind138 ==82010== ==82010== Process terminating with default action of signal 4 (SIGILL) ==82010== Illegal opcode at address 0x4003082 ==82010== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82010== by 0x4003082: main (tool_main.c:234) === End of file valgrind138 test 0139...[FTP download a newer file with -z] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind139 ../src/curl -q --output log/22/curl139.out --include --trace-ascii log/22/trace139 --trace-config all --trace-time ftp://127.0.0.1:42651/blalbla/139 -z "1 jan 1989" > log/22/stdout139 2> log/22/stderr139 139: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 139 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind139 ../src/curl -q --output log/22/curl139.out --include --trace-ascii log/22/trace139 --trace-config all --trace-time ftp://127.0.0.1:42651/blalbla/139 -z "1 jan 1989" > log/22/stdout139 2> log/22/stderr139 === End of file commands.log === Start of file ftp_server.log 07:34:58.925688 ====> Client connect 07:34:58.925876 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.926173 < "USER anonymous" 07:34:58.926207 > "331 We are happy you popped in![CR][LF]" 07:34:58.926357 < "PASS ftp@example.com" 07:34:58.926383 > "230 Welcome you silly person[CR][LF]" 07:34:58.926548 < "PWD" 07:34:58.926597 > "257 "/" is current directory[CR][LF]" 07:34:58.929092 < "EPSV" 07:34:58.929129 ====> Passive DATA channel requested by client 07:34:58.929141 DATA sockfilt for passive data channel starting... 07:34:58.941646 DATA sockfilt for passive data channel started (pid 81958) 07:34:58.941782 DATA sockfilt for passive data channel listens on port 46631 07:34:58.941828 > "229 Entering Passive Mode (|||46631|)[LF]" 07:34:58.941845 Client has been notified that DATA conn will be accepted on port 46631 07:34:58.942439 Client connects to port 46631 07:34:58.942468 ====> Client established passive DATA connection on port 46631 07:34:58.942557 < "TYPE I" 07:34:58.942589 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.942742 < "SIZE verifiedserver" 07:34:58.942778 > "213 17[CR][LF]" 07:34:58.942921 < "RETR verifiedserver" 07:34:58.942953 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.943038 =====> Closing passive DATA connection... 07:34:58.943052 Server disconnects passive DATA connection 07:34:58.948796 Server disconnected passive DATA connection 07:34:58.949766 DATA sockfilt for passive data channel quits (pid 81958) 07:34:58.951581 DATA sockfilt for passive data channel quit (pid 81958) 07:34:58.951610 =====> Closed passive DATA connection 07:34:58.951651 > "226 File transfer complete[CR][LF]" 07:34:58.984596 < "QUIT" 07:34:58.984649 > "221 bye bye baby[CR][LF]" 07:34:58.985758 MAIN sockfilt said DISC 07:34:58.985803 ====> Client disconnected 07:34:58.986042 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.771556 ====> Client connect 07:34:58.771876 Received DATA (on stdin) 07:34:58.771890 > 160 bytes data, server => client 07:34:58.771901 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.771911 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.771921 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.771990 < 16 bytes data, client => server 07:34:58.772001 'USER anonymous\r\n' 07:34:58.772198 Received DATA (on stdin) 07:34:58.772209 > 33 bytes data, server => client 07:34:58.772218 '331 We are happy you popped in!\r\n' 07:34:58.772264 < 22 bytes data, client => server 07:34:58.772275 'PASS ftp@example.com\r\n' 07:34:58.772372 Received DATA (on stdin) 07:34:58.772382 > 30 bytes data, server => client 07:34:58.772393 '230 Welcome you silly person\r\n' 07:34:58.772449 < 5 bytes data, client => server 07:34:58.772460 'PWD\r\n' 07:34:58.772587 Received DATA (on stdin) 07:34:58.772597 > 30 bytes data, server => client 07:34:58.772622 '257 "/" is current directCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind143 ../src/curl -q --output log/6/curl143.out --include --trace-ascii log/6/trace143 --trace-config all --trace-time "ftp://127.0.0.1:36135/%2ftmp/moo/143;type=a" > log/6/stdout143 2> log/6/stderr143 ory\r\n' 07:34:58.774948 < 6 bytes data, client => server 07:34:58.774971 'EPSV\r\n' 07:34:58.788103 Received DATA (on stdin) 07:34:58.788135 > 38 bytes data, server => client 07:34:58.788147 '229 Entering Passive Mode (|||46631|)\n' 07:34:58.788343 < 8 bytes data, client => server 07:34:58.788359 'TYPE I\r\n' 07:34:58.788581 Received DATA (on stdin) 07:34:58.788593 > 33 bytes data, server => client 07:34:58.788603 '200 I modify TYPE as you wanted\r\n' 07:34:58.788651 < 21 bytes data, client => server 07:34:58.788664 'SIZE verifiedserver\r\n' 07:34:58.788769 Received DATA (on stdin) 07:34:58.788780 > 8 bytes data, server => client 07:34:58.788791 '213 17\r\n' 07:34:58.788835 < 21 bytes data, client => server 07:34:58.788845 'RETR verifiedserver\r\n' 07:34:58.789043 Received DATA (on stdin) 07:34:58.789055 > 29 bytes data, server => client 07:34:58.789065 '150 Binary junk (17 bytes).\r\n' 07:34:58.797657 Received DATA (on stdin) 07:34:58.797674 > 28 bytes data, server => client 07:34:58.797685 '226 File transfer complete\r\n' 07:34:58.829497 < 6 bytes data, client => server 07:34:58.829522 'QUIT\r\n' 07:34:58.830649 Received DATA (on stdin) 07:34:58.830693 > 18 bytes data, server => client 07:34:58.830733 '221 bye bye baby\r\n' 07:34:58.831527 ====> Client disconnect 07:34:58.831815 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.782428 Running IPv4 version 07:34:58.782509 Listening on port 46631 07:34:58.782548 Wrote pid 81958 to log/22/server/ftp_sockdata.pid 07:34:58.787561 Received PING (on stdin) 07:34:58.787678 Received PORT (on stdin) 07:34:58.788381 ====> Client connect 07:34:58.792801 Received DATA (on stdin) 07:34:58.793059 > 17 bytes data, server => client 07:34:58.793074 'WE ROOLZ: 79849\r\n' 07:34:58.793966 Received DISC (on stdin) 07:34:58.793991 ====> Client forcibly disconnected 07:34:58.795789 Received QUIT (on stdin) 07:34:58.795803 quits 07:34:58.797379 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 139 === End of file server.cmd === Start of file valgrind139 ==82006== ==82006== Process terminating with default action of signal 4 (SIGILL) ==82006== Illegal opcode at address 0x4003082 ==82006== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82006== by 0x4003082: main (tool_main.c:234) === End of file valgrind139 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/12/server/ftp_server.pid" --logfile "log/12/ftp_server.log" --logdir "log/12" --portfile "log/12/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39735 (log/12/server/ftp_server.port) RUN: FTP server is PID 81035 port 39735 * pid ftp => 81035 81035 test 0121...[ftp download with post- and pre-transfer delete operations] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind121 ../src/curl -q --output log/12/curl121.out --include --trace-ascii log/12/trace121 --trace-config all --trace-time ftp://127.0.0.1:39735/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" > log/12/stdout121 2> log/12/stderr121 121: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 121 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind121 ../src/curl -q --output log/12/curl121.out --include --trace-ascii log/12/trace121 --trace-config all --trace-time ftp://127.0.0.1:39735/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" > log/12/stdout121 2> log/12/stderr121 === End of file commands.log === Start of file ftp_server.log 07:34:58.070301 FTP server listens on port IPv4/39735 07:34:58.070399 logged pid 81035 in log/12/server/ftp_server.pid 07:34:58.070425 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.913735 Running IPv4 version 07:34:58.914241 Listening on port 39735 07:34:58.914282 Wrote pid 81098 to log/12/server/ftp_sockctrl.pid 07:34:58.914313 Wrote port 39735 to log/12/server/ftp_server.port 07:34:58.916189 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 121 === End of file server.cmd === Start of file valgrind121 ==82018== ==82018== Process terminating with default action of signal 4 (SIGILL) ==82018== Illegal opcode at address 0x4003082 ==82018== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82018== by 0x4003082: main (tool_main.c:234) === End of file valgrind121 test 0143...[FTP URL with type=a] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind143 ../src/curl -q --output log/6/curl143.out --include --trace-ascii log/6/trace143 --trace-config all --trace-time "ftp://127.0.0.1:36135/%2ftmp/moo/143;type=a" > log/6/stdout143 2> log/6/stderr143 143: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 143 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind143 ../src/curl -q --output log/6/curl143.out --include --trace-ascii log/6/trace143 --trace-config all --trace-time "ftp://127.0.0.1:36135/%2ftmp/moo/143;type=a" > log/6/stdout143 2> log/6/stderr143 === End of file commands.log === Start of file ftp_server.log 07:34:59.012561 ====> Client connect 07:34:59.012770 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:59.013104 < "USER anonymous" 07:34:59.013135 > "331 We are happy you popped in![CR][LF]" 07:34:59.013285 < "PASS ftp@example.com" 07:34:59.013310 > "230 Welcome you silly person[CR][LF]" 07:34:59.013466 < "PWD" 07:34:59.013494 > "257 "/" is current directory[CR][LF]" 07:34:59.013638 < "EPSV" 07:34:59.013660 ====> Passive DATA channel requested by client 07:34:59.013672 DATA sockfilt for passive data channel starting... 07:34:59.017714 DATA sockfilt for passive data channel started (pid 82016) 07:34:59.020478 DATA sockfilt for passive data channel listens on port 42107 07:34:59.020556 > "229 Entering Passive Mode (|||42107|)[LF]" 07:34:59.020576 Client has been notified that DATA conn will be accepted on port 42107 07:34:59.020913 Client connects to port 42107 07:34:59.020941 ====> Client established passive DATA connection on port 42107 07:34:59.021024 < "TYPE I" 07:34:59.021055 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:59.021203 < "SIZE verifiedserver" 07:34:59.021234 > "213 17[CR][LF]" 07:34:59.021359 < "RETR verifiedserver" 07:34:59.021390 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:59.021472 =====> Closing passive DATA connection... 07:34:59.021488 Server disconnects passive DATA connection 07:34:59.021641 Server disconnected passive DATA connection 07:34:59.021661 DATA sockfilt for passive data channel quits (pid 82016) 07:34:59.021993 DATA sockfilt for passive data channel quit (pid 82016) 07:34:59.022021 =====> Closed passive DATA connection 07:34:59.022046 > "226 File transfer complete[CR][LF]" 07:34:59.067671 < "QUIT" 07:34:59.067722 > "221 bye bye baby[CR][LF]" 07:34:59.068699 MAIN sockfilt said DISC 07:34:59.068733 ====> Client disconnected 07:34:59.068811 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.857208 ====> Client connect 07:34:58.858779 Received DATA (oCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind141 ../src/curl -q --include --trace-ascii log/14/trace141 --trace-config all --trace-time ftp://127.0.0.1:41711/blalbla/141 -I > log/14/stdout141 2> log/14/stderr141 n stdin) 07:34:58.858802 > 160 bytes data, server => client 07:34:58.858814 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.858825 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.858835 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.858946 < 16 bytes data, client => server 07:34:58.858958 'USER anonymous\r\n' 07:34:58.859127 Received DATA (on stdin) 07:34:58.859139 > 33 bytes data, server => client 07:34:58.859150 '331 We are happy you popped in!\r\n' 07:34:58.859197 < 22 bytes data, client => server 07:34:58.859207 'PASS ftp@example.com\r\n' 07:34:58.859300 Received DATA (on stdin) 07:34:58.859325 > 30 bytes data, server => client 07:34:58.859335 '230 Welcome you silly person\r\n' 07:34:58.859379 < 5 bytes data, client => server 07:34:58.859389 'PWD\r\n' 07:34:58.859482 Received DATA (on stdin) 07:34:58.859492 > 30 bytes data, server => client 07:34:58.859503 '257 "/" is current directory\r\n' 07:34:58.859554 < 6 bytes data, client => server 07:34:58.859565 'EPSV\r\n' 07:34:58.866581 Received DATA (on stdin) 07:34:58.866602 > 38 bytes data, server => client 07:34:58.866614 '229 Entering Passive Mode (|||42107|)\n' 07:34:58.866809 < 8 bytes data, client => server 07:34:58.866826 'TYPE I\r\n' 07:34:58.867047 Received DATA (on stdin) 07:34:58.867060 > 33 bytes data, server => client 07:34:58.867070 '200 I modify TYPE as you wanted\r\n' 07:34:58.867119 < 21 bytes data, client => server 07:34:58.867129 'SIZE verifiedserver\r\n' 07:34:58.867222 Received DATA (on stdin) 07:34:58.867231 > 8 bytes data, server => client 07:34:58.867240 '213 17\r\n' 07:34:58.867280 < 21 bytes data, client => server 07:34:58.867290 'RETR verifiedserver\r\n' 07:34:58.867478 Received DATA (on stdin) 07:34:58.867490 > 29 bytes data, server => client 07:34:58.867501 '150 Binary junk (17 bytes).\r\n' 07:34:58.868037 Received DATA (on stdin) 07:34:58.868049 > 28 bytes data, server => client 07:34:58.868059 '226 File transfer complete\r\n' 07:34:58.913221 < 6 bytes data, client => server 07:34:58.913254 'QUIT\r\n' 07:34:58.913718 Received DATA (on stdin) 07:34:58.913731 > 18 bytes data, server => client 07:34:58.913742 '221 bye bye baby\r\n' 07:34:58.914637 ====> Client disconnect 07:34:58.914802 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:59.861870 Running IPv4 version 07:34:59.861949 Listening on port 42107 07:34:59.861994 Wrote pid 82016 to log/6/server/ftp_sockdata.pid 07:34:59.863488 Received PING (on stdin) 07:34:59.864897 Received PORT (on stdin) 07:34:59.866851 ====> Client connect 07:34:59.867526 Received DATA (on stdin) 07:34:59.867539 > 17 bytes data, server => client 07:34:59.867549 'WE ROOLZ: 79833\r\n' 07:34:59.867572 Received DISC (on stdin) 07:34:59.867584 ====> Client forcibly disconnected 07:34:59.867658 Received QUIT (on stdin) 07:34:59.867668 quits 07:34:59.867746 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 143 === End of file server.cmd === Start of file valgrind143 ==82153== ==82153== Process terminating with default action of signal 4 (SIGILL) ==82153== Illegal opcode at address 0x4003082 ==82153== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82153== by 0x4003082: main (tool_main.c:234) === End of file valgrind143 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind146 ../src/curl -q --output log/17/curl146.out --include --trace-ascii log/17/trace146 --trace-config all --trace-time ftp://127.0.0.1:39713/first/dir/here/146 ftp://127.0.0.1:39713/146 > log/17/stdout146 2> log/17/stderr146 test 0141...[FTP download info with -I] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind141 ../src/curl -q --include --trace-ascii log/14/trace141 --trace-config all --trace-time ftp://127.0.0.1:41711/blalbla/141 -I > log/14/stdout141 2> log/14/stderr141 141: stdout FAILED: --- log/14/check-expected 2025-07-18 07:34:59.860444819 +0000 +++ log/14/check-generated 2025-07-18 07:34:59.860444819 +0000 @@ -1,3 +0,0 @@ -Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT[CR][LF] -Content-Length: 42[CR][LF] -Accept-ranges: bytes[CR][LF] == Contents of files in the log/14/ dir after test 141 === Start of file check-expected Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT[CR][LF] Content-Length: 42[CR][LF] Accept-ranges: bytes[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind141 ../src/curl -q --include --trace-ascii log/14/trace141 --trace-config all --trace-time ftp://127.0.0.1:41711/blalbla/141 -I > log/14/stdout141 2> log/14/stderr141 === End of file commands.log === Start of file ftp_server.log 07:34:58.977968 ====> Client connect 07:34:58.978121 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:58.979439 < "USER anonymous" 07:34:58.979483 > "331 We are happy you popped in![CR][LF]" 07:34:58.979629 < "PASS ftp@example.com" 07:34:58.979649 > "230 Welcome you silly person[CR][LF]" 07:34:58.980298 < "PWD" 07:34:58.980326 > "257 "/" is current directory[CR][LF]" 07:34:58.981865 < "EPSV" 07:34:58.981889 ====> Passive DATA channel requested by client 07:34:58.981902 DATA sockfilt for passive data channel starting... 07:34:58.985172 DATA sockfilt for passive data channel started (pid 81994) 07:34:58.985274 DATA sockfilt for passive data channel listens on port 32857 07:34:58.985311 > "229 Entering Passive Mode (|||32857|)[LF]" 07:34:58.985448 Client has been notified that DATA conn will be accepted on port 32857 07:34:58.987456 Client connects to port 32857 07:34:58.987486 ====> Client established passive DATA connection on port 32857 07:34:58.987567 < "TYPE I" 07:34:58.987604 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:58.987766 < "SIZE verifiedserver" 07:34:58.987801 > "213 17[CR][LF]" 07:34:58.988204 < "RETR verifiedserver" 07:34:58.988237 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:58.988316 =====> Closing passive DATA connection... 07:34:58.988333 Server disconnects passive DATA connection 07:34:58.989065 Server disconnected passive DATA connection 07:34:58.989094 DATA sockfilt for passive data channel quits (pid 81994) 07:34:58.989703 DATA sockfilt for passive data channel quit (pid 81994) 07:34:58.989730 =====> Closed passive DATA connection 07:34:58.989757 > "226 File transfer complete[CR][LF]" 07:34:59.036886 < "QUIT" 07:34:59.036939 > "221 bye bye baby[CR][LF]" 07:34:59.037660 MAIN sockfilt said DISC 07:34:59.037688 ====> Client disconnected 07:34:59.037777 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.823714 ====> Client connect 07:34:58.824318 Received DATA (on stdin) 07:34:58.824338 > 160 bytes data, server => client 07:34:58.824349 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.824360 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.824369 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.825257 < 16 bytes data, client => server 07:34:58.825275 'USER anonymous\r\n' 07:34:58.825477 Received DATA (on stdin) 07:34:58.825488 > 33 bytes data, server => client 07:34:58.825498 '331 We are happy you popped in!\r\n' 07:34:58.825544 < 22 bytes data, client => server 07:34:58.825555 'PASS ftp@example.com\r\n' 07:34:58.826126 Received DATA (on stdin) 07:34:58.826141 > 30 bytes data, server => client 07:34:58.826151 '230 Welcome you silly person\r\n' 07:34:58.826212 < 5 bytes data, client => server 07:34:58.826223 'PWD\r\n' 07:34:58.826329 Received DATA (on stdin) 07:34:58.826339 > 30 bytes data, server => client 07:34:58.826348 '257 "/" is current directory\r\n' 07:34:58.827266 < 6 bytes data, client => server 07:34:58.827282 'EPSV\r\n' 07:34:58.831324 Received DATA (on stdin) 07:34:58.831341 > 38 bytes data, server => client 07:34:58.831352 '229 Entering Passive Mode (|||32857|)\n' 07:34:58.833384 < 8 bytes data, client => server 07:34:58.833403 'TYPE I\r\n' 07:34:58.833598 Received DATA (on stdin) 07:34:58.833610 > 33 bytes data, server => client 07:34:58.833621 '200 I modify TYPE as you wanted\r\n' 07:34:58.833674 < 21 bytes data, client => server 07:34:58.833686 'SIZE verifiedserver\r\n' 07:34:58.833790 Received DATA (on stdin) 07:34:58.833801 > 8 bytes data, server => client 07:34:58.833810 '213 17\r\n' 07:34:58.833854 < 21 bytes data, client => server 07:34:58.833866 'RETR verifiedserver\r\n' 07:34:58.834414 Received DATA (on stdin) 07:34:58.834425 > 29 bytes data, server => client 07:34:58.834435 '150 Binary junk (17 bytes).\r\n' 07:34:58.837154 Received DATA (on stdin) 07:34:58.837176 > 28 bytes data, server => client 07:34:58.837187 '226 File transfer complete\r\n' 07:34:58.882677 < 6 bytes data, client => server 07:34:58.882727 'QUIT\r\n' 07:34:58.882936 Received DATA (on stdin) 07:34:58.882949 > 18 bytes data, server => client 07:34:58.882960 '221 bye bye baby\r\n' 07:34:58.883602 ====> Client disconnect 07:34:58.883765 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:58.830391 Running IPv4 version 07:34:58.830486 Listening on port 32857 07:34:58.830536 Wrote pid 81994 to log/14/server/ftp_sockdata.pid 07:34:58.831100 Received PING (on stdin) 07:34:58.831187 Received PORT (on stdin) 07:34:58.832788 ====> Client connect 07:34:58.834326 Received DATA (on stdin) 07:34:58.834345 > 17 bytes data, server => client 07:34:58.834355 'WE ROOLZ: 79837\r\n' 07:34:58.834380 Received DISC (on stdin) 07:34:58.834391 ====> Client forcibly disconnected 07:34:58.835093 Received QUIT (on stdin) 07:34:58.835106 quits 07:34:58.835170 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 141 === End of file server.cmd === Start of file valgrind141 ==82092== ==82092== Process terminating with default action of signal 4 (SIGILL) ==82092== Illegal opcode at address 0x4003082 ==82092== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82092== by 0x4003082: main (tool_main.c:234) === End of file valgrind141 test 0146...[persistent FTP with different paths] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind146 ../src/curl -q --output log/17/curl146.out --include --trace-ascii log/17/trace146 --trace-config all --trace-time ftp://127.0.0.1:39713/first/dir/here/146 ftp://127.0.0.1:39713/146 > log/17/stdout146 2> log/17/stderr146 146: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 146 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind146 ../src/curl -q --output log/17/curl146.out --include --trace-ascii log/17/trace146 --trace-config all --trace-time ftp://127.0.0.1:39713/first/dir/here/146 ftp://127.0.0.1:39713/146 > log/17/stdout146 2> log/17/stderr146 === End of file commands.log === Start of file ftp_server.log 07:34:59.060172 ====> Client connect 07:34:59.060339 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind127 ../src/curl -q --output log/21/curl127.out --include --trace-ascii log/21/trace127 --trace-config all --trace-time ftp://127.0.0.1:38701/path/to/file/127 --disable-epsv > log/21/stdout127 2> log/21/stderr127 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind148 ../src/curl -q --output log/16/curl148.out --include --trace-ascii log/16/trace148 --trace-config all --trace-time ftp://127.0.0.1:40585/attempt/to/get/this/148 --ftp-create-dirs > log/16/stdout148 2> log/16/stderr148 LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:59.066938 < "USER anonymous" 07:34:59.067001 > "331 We are happy you popped in![CR][LF]" 07:34:59.067222 < "PASS ftp@example.com" 07:34:59.067256 > "230 Welcome you silly person[CR][LF]" 07:34:59.067416 < "PWD" 07:34:59.067446 > "257 "/" is current directory[CR][LF]" 07:34:59.067616 < "EPSV" 07:34:59.067641 ====> Passive DATA channel requested by client 07:34:59.067655 DATA sockfilt for passive data channel starting... 07:34:59.073359 DATA sockfilt for passive data channel started (pid 82112) 07:34:59.073507 DATA sockfilt for passive data channel listens on port 43745 07:34:59.073555 > "229 Entering Passive Mode (|||43745|)[LF]" 07:34:59.073575 Client has been notified that DATA conn will be accepted on port 43745 07:34:59.076234 Client connects to port 43745 07:34:59.076294 ====> Client established passive DATA connection on port 43745 07:34:59.076443 < "TYPE I" 07:34:59.076480 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:59.076619 < "SIZE verifiedserver" 07:34:59.076650 > "213 17[CR][LF]" 07:34:59.076814 < "RETR verifiedserver" 07:34:59.076848 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:59.076939 =====> Closing passive DATA connection... 07:34:59.076956 Server disconnects passive DATA connection 07:34:59.077071 Server disconnected passive DATA connection 07:34:59.077097 DATA sockfilt for passive data channel quits (pid 82112) 07:34:59.077371 DATA sockfilt for passive data channel quit (pid 82112) 07:34:59.077399 =====> Closed passive DATA connection 07:34:59.077425 > "226 File transfer complete[CR][LF]" 07:34:59.123653 < "QUIT" 07:34:59.123707 > "221 bye bye baby[CR][LF]" 07:34:59.124708 MAIN sockfilt said DISC 07:34:59.124737 ====> Client disconnected 07:34:59.124817 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.906024 ====> Client connect 07:34:58.906343 Received DATA (on stdin) 07:34:58.906358 > 160 bytes data, server => client 07:34:58.906370 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:58.906382 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:58.906392 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:58.912683 < 16 bytes data, client => server 07:34:58.912717 'USER anonymous\r\n' 07:34:58.912999 Received DATA (on stdin) 07:34:58.913014 > 33 bytes data, server => client 07:34:58.913026 '331 We are happy you popped in!\r\n' 07:34:58.913117 < 22 bytes data, client => server 07:34:58.913132 'PASS ftp@example.com\r\n' 07:34:58.913248 Received DATA (on stdin) 07:34:58.913261 > 30 bytes data, server => client 07:34:58.913273 '230 Welcome you silly person\r\n' 07:34:58.913322 < 5 bytes data, client => server 07:34:58.913335 'PWD\r\n' 07:34:58.913436 Received DATA (on stdin) 07:34:58.913449 > 30 bytes data, server => client 07:34:58.913460 '257 "/" is current directory\r\n' 07:34:58.913521 < 6 bytes data, client => server 07:34:58.913535 'EPSV\r\n' 07:34:58.921788 Received DATA (on stdin) 07:34:58.921820 > 38 bytes data, server => client 07:34:58.921833 '229 Entering Passive Mode (|||43745|)\n' 07:34:58.922305 < 8 bytes data, client => server 07:34:58.922317 'TYPE I\r\n' 07:34:58.922472 Received DATA (on stdin) 07:34:58.922482 > 33 bytes data, server => client 07:34:58.922493 '200 I modify TYPE as you wanted\r\n' 07:34:58.922538 < 21 bytes data, client => server 07:34:58.922548 'SIZE verifiedserver\r\n' 07:34:58.922645 Received DATA (on stdin) 07:34:58.922664 > 8 bytes data, server => client 07:34:58.922673 '213 17\r\n' 07:34:58.922723 < 21 bytes data, client => server 07:34:58.922735 'RETR verifiedserver\r\n' 07:34:58.924171 Received DATA (on stdin) 07:34:58.924191 > 29 bytes data, server => client 07:34:58.924203 '150 Binary junk (17 bytes).\r\n' 07:34:58.924227 Received DATA (on stdin) 07:34:58.924237 > 28 bytes data, server => client 07:34:58.924248 '226 File transfer complete\r\n' 07:34:58.969443 < 6 bytes data, client => server 07:34:58.969473 'QUIT\r\n' 07:34:58.969726 Received DATA (on stdin) 07:34:58.969740 > 18 bytes data, server => client 07:34:58.969750 '221 bye bye baby\r\n' 07:34:58.970646 ====> Client disconnect 07:34:58.970809 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:59.915338 Running IPv4 version 07:34:59.915396 Listening on port 43745 07:34:59.915439 Wrote pid 82112 to log/17/server/ftp_sockdata.pid 07:34:59.916550 Received PING (on stdin) 07:34:59.919401 Received PORT (on stdin) 07:34:59.922153 ====> Client connect 07:34:59.922950 Received DATA (on stdin) 07:34:59.922963 > 17 bytes data, server => client 07:34:59.922974 'WE ROOLZ: 79834\r\n' 07:34:59.923000 Received DISC (on stdin) 07:34:59.923013 ====> Client forcibly disconnected 07:34:59.923095 Received QUIT (on stdin) 07:34:59.923107 quits 07:34:59.923175 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 146 === End of file server.cmd === Start of file valgrind146 ==82252== ==82252== Process terminating with default action of signal 4 (SIGILL) ==82252== Illegal opcode at address 0x4003082 ==82252== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82252== by 0x4003082: main (tool_main.c:234) === End of file valgrind146 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/21/server/ftp_server.pid" --logfile "log/21/ftp_server.log" --logdir "log/21" --portfile "log/21/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38701 (log/21/server/ftp_server.port) RUN: FTP server is PID 81322 port 38701 * pid ftp => 81322 81322 test 0127...[FTP --disable-epsv] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind127 ../src/curl -q --output log/21/curl127.out --include --trace-ascii log/21/trace127 --trace-config all --trace-time ftp://127.0.0.1:38701/path/to/file/127 --disable-epsv > log/21/stdout127 2> log/21/stderr127 127: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 127 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind127 ../src/curl -q --output log/21/curl127.out --include --trace-ascii log/21/trace127 --trace-config all --trace-time ftp://127.0.0.1:38701/path/to/file/127 --disable-epsv > log/21/stdout127 2> log/21/stderr127 === End of file commands.log === Start of file ftp_server.log 07:34:58.301395 FTP server listens on port IPv4/38701 07:34:58.301496 logged pid 81322 in log/21/server/ftp_server.pid 07:34:58.301522 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.146920 Running IPv4 version 07:34:58.147000 Listening on port 38701 07:34:58.147041 Wrote pid 81376 to log/21/server/ftp_sockctrl.pid 07:34:58.147074 Wrote port 38701 to log/21/server/ftp_server.port 07:34:58.147267 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 127 === End of file server.cmd === Start of file valgrind127 ==82355== ==82355== Process terminating with default action of signal 4 (SIGILL) ==82355== Illegal opcode at address 0x4003082 ==82355== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82355== by 0x4003082: main (tool_main.c:234) === End of file valgrind127 test 0148...[FTP with --ftp-create-dirs (failing MKD)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind148 ../src/curl -q --output log/16/curl148.out --include --trace-ascii log/16/traCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind152 ../src/curl -q --output log/2/curl152.out --include --trace-ascii log/2/trace152 --trace-config all --trace-time http://127.0.0.1:45457/152 --fail > log/2/stdout152 2> log/2/stderr152 ce148 --trace-config all --trace-time ftp://127.0.0.1:40585/attempt/to/get/this/148 --ftp-create-dirs > log/16/stdout148 2> log/16/stderr148 148: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 148 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind148 ../src/curl -q --output log/16/curl148.out --include --trace-ascii log/16/trace148 --trace-config all --trace-time ftp://127.0.0.1:40585/attempt/to/get/this/148 --ftp-create-dirs > log/16/stdout148 2> log/16/stderr148 === End of file commands.log === Start of file ftp_server.log 07:34:59.367516 ====> Client connect 07:34:59.367681 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:59.367939 < "USER anonymous" 07:34:59.367970 > "331 We are happy you popped in![CR][LF]" 07:34:59.368107 < "PASS ftp@example.com" 07:34:59.368130 > "230 Welcome you silly person[CR][LF]" 07:34:59.368253 < "PWD" 07:34:59.368278 > "257 "/" is current directory[CR][LF]" 07:34:59.368406 < "EPSV" 07:34:59.368428 ====> Passive DATA channel requested by client 07:34:59.368439 DATA sockfilt for passive data channel starting... 07:34:59.373570 DATA sockfilt for passive data channel started (pid 82439) 07:34:59.373704 DATA sockfilt for passive data channel listens on port 46763 07:34:59.373749 > "229 Entering Passive Mode (|||46763|)[LF]" 07:34:59.373763 Client has been notified that DATA conn will be accepted on port 46763 07:34:59.374066 Client connects to port 46763 07:34:59.374091 ====> Client established passive DATA connection on port 46763 07:34:59.374168 < "TYPE I" 07:34:59.374198 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:59.374332 < "SIZE verifiedserver" 07:34:59.374361 > "213 17[CR][LF]" 07:34:59.374491 < "RETR verifiedserver" 07:34:59.374521 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:59.374603 =====> Closing passive DATA connection... 07:34:59.374617 Server disconnects passive DATA connection 07:34:59.374824 Server disconnected passive DATA connection 07:34:59.374846 DATA sockfilt for passive data channel quits (pid 82439) 07:34:59.375111 DATA sockfilt for passive data channel quit (pid 82439) 07:34:59.375131 =====> Closed passive DATA connection 07:34:59.375189 > "226 File transfer complete[CR][LF]" 07:34:59.417208 < "QUIT" 07:34:59.417269 > "221 bye bye baby[CR][LF]" 07:34:59.418310 MAIN sockfilt said DISC 07:34:59.418354 ====> Client disconnected 07:34:59.418436 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.213374 ====> Client connect 07:34:59.213680 Received DATA (on stdin) 07:34:59.213693 > 160 bytes data, server => client 07:34:59.213704 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:59.213714 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:59.213723 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:59.213790 < 16 bytes data, client => server 07:34:59.213800 'USER anonymous\r\n' 07:34:59.213960 Received DATA (on stdin) 07:34:59.213971 > 33 bytes data, server => client 07:34:59.213981 '331 We are happy you popped in!\r\n' 07:34:59.214023 < 22 bytes data, client => server 07:34:59.214033 'PASS ftp@example.com\r\n' 07:34:59.214117 Received DATA (on stdin) 07:34:59.214127 > 30 bytes data, server => client 07:34:59.214137 '230 Welcome you silly person\r\n' 07:34:59.214174 < 5 bytes data, client => server 07:34:59.214184 'PWD\r\n' 07:34:59.214264 Received DATA (on stdin) 07:34:59.214274 > 30 bytes data, server => client 07:34:59.214283 '257 "/" is current directory\r\n' 07:34:59.214328 < 6 bytes data, client => server 07:34:59.214337 'EPSV\r\n' 07:34:59.219761 Received DATA (on stdin) 07:34:59.219779 > 38 bytes data, server => client 07:34:59.219789 '229 Entering Passive Mode (|||46763|)\n' 07:34:59.220008 < 8 bytes data, client => server 07:34:59.220019 'TYPE I\r\n' 07:34:59.220188 Received DATA (on stdin) 07:34:59.220198 > 33 bytes data, server => client 07:34:59.220208 '200 I modify TYPE as you wanted\r\n' 07:34:59.220251 < 21 bytes data, client => server 07:34:59.220261 'SIZE verifiedserver\r\n' 07:34:59.220349 Received DATA (on stdin) 07:34:59.220359 > 8 bytes data, server => client 07:34:59.220368 '213 17\r\n' 07:34:59.220412 < 21 bytes data, client => server 07:34:59.220422 'RETR verifiedserver\r\n' 07:34:59.220608 Received DATA (on stdin) 07:34:59.220619 > 29 bytes data, server => client 07:34:59.220628 '150 Binary junk (17 bytes).\r\n' 07:34:59.221128 Received DATA (on stdin) 07:34:59.221141 > 28 bytes data, server => client 07:34:59.221177 '226 File transfer complete\r\n' 07:34:59.262987 < 6 bytes data, client => server 07:34:59.263024 'QUIT\r\n' 07:34:59.263269 Received DATA (on stdin) 07:34:59.263285 > 18 bytes data, server => client 07:34:59.263295 '221 bye bye baby\r\n' 07:34:59.264240 ====> Client disconnect 07:34:59.264428 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:59.217760 Running IPv4 version 07:34:59.217842 Listening on port 46763 07:34:59.217879 Wrote pid 82439 to log/16/server/ftp_sockdata.pid 07:34:59.219485 Received PING (on stdin) 07:34:59.219600 Received PORT (on stdin) 07:34:59.219983 ====> Client connect 07:34:59.220651 Received DATA (on stdin) 07:34:59.220662 > 17 bytes data, server => client 07:34:59.220672 'WE ROOLZ: 79929\r\n' 07:34:59.220695 Received DISC (on stdin) 07:34:59.220705 ====> Client forcibly disconnected 07:34:59.220840 Received QUIT (on stdin) 07:34:59.220851 quits 07:34:59.220927 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 550 I won't allow this on my server REPLY MKD 550 We will have no such thing Testnum 148 === End of file server.cmd === Start of file valgrind148 ==82543== ==82543== Process terminating with default action of signal 4 (SIGILL) ==82543== Illegal opcode at address 0x4003082 ==82543== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82543== by 0x4003082: main (tool_main.c:234) === End of file valgrind148 test 0152...[HTTP GET with an error code that might trick authentication and --fail] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind152 ../src/curl -q --output log/2/curl152.out --include --trace-ascii log/2/trace152 --trace-config all --trace-time http://127.0.0.1:45457/152 --fail > log/2/stdout152 2> log/2/stderr152 152: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 152 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind152 ../src/curl -q --output log/2/curl152.out --include --trace-ascii log/2/trace152 --trace-config all --trace-time http://127.0.0.1:45457/152 --fail > log/2/stdout152 2> log/2/stderr152 === End of file commands.log === Start of file http_server.log 07:34:59.254966 ====> Client connect 07:34:59.255000 accept_connection 3 returned 4 07:34:59.255016 accept_connection 3 returned 0 07:34:59.255029 Read 93 bytes 07:34:59.255039 Process 93 bytes request 07:34:59.255056 Got request: GET /verifiedserver HTTP/1.1 07:34:59.255065 Are-we-friendly question received 07:34:59.255091 Wrote request (93 bytes) input to log/2/server.input 07:34:59.255110 Identifying ourselves as friends 07:34:59.255170 Response sent (56 bytes) and written to log/2/server.response 07:34:59.255183 special request received, no persistency 07:34:59.255191 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind128 ../src/curl -q --output log/7/curl128.out --include --trace-ascii log/7/trace128 --trace-config all --trace-time ftp://127.0.0.1:40197/128 -T log/7/upload128 --crlf > log/7/stdout128 2> log/7/stderr128 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind151 ../src/curl -q --output log/11/curl151.out --include --trace-ascii log/11/trace151 --trace-config all --trace-time http://127.0.0.1:41173/151 > log/11/stdout151 2> log/11/stderr151 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind150 ../src/curl -q --output log/4/curl150.out --include --trace-ascii log/4/trace150 --trace-config all --trace-time http://127.0.0.1:33235/150 -u testuser:testpass --ntlm --fail > log/4/stdout150 2> log/4/stderr150 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 152 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind152 ==82515== ==82515== Process terminating with default action of signal 4 (SIGILL) ==82515== Illegal opcode at address 0x4003082 ==82515== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82515== by 0x4003082: main (tool_main.c:234) === End of file valgrind152 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/7/server/ftp_server.pid" --logfile "log/7/ftp_server.log" --logdir "log/7" --portfile "log/7/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40197 (log/7/server/ftp_server.port) RUN: FTP server is PID 81417 port 40197 * pid ftp => 81417 81417 test 0128...[FTP upload with --crlf] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind128 ../src/curl -q --output log/7/curl128.out --include --trace-ascii log/7/trace128 --trace-config all --trace-time ftp://127.0.0.1:40197/128 -T log/7/upload128 --crlf > log/7/stdout128 2> log/7/stderr128 128: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 128 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind128 ../src/curl -q --output log/7/curl128.out --include --trace-ascii log/7/trace128 --trace-config all --trace-time ftp://127.0.0.1:40197/128 -T log/7/upload128 --crlf > log/7/stdout128 2> log/7/stderr128 === End of file commands.log === Start of file ftp_server.log 07:34:58.398736 FTP server listens on port IPv4/40197 07:34:58.398840 logged pid 81417 in log/7/server/ftp_server.pid 07:34:58.398868 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.240481 Running IPv4 version 07:34:58.240556 Listening on port 40197 07:34:58.240596 Wrote pid 81450 to log/7/server/ftp_sockctrl.pid 07:34:58.240627 Wrote port 40197 to log/7/server/ftp_server.port 07:34:58.244571 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 128 === End of file server.cmd === Start of file upload128 file with Unix newlines meant to be converted with the --crlf option === End of file upload128 === Start of file valgrind128 ==82440== ==82440== Process terminating with default action of signal 4 (SIGILL) ==82440== Illegal opcode at address 0x4003082 ==82440== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82440== by 0x4003082: main (tool_main.c:234) === End of file valgrind128 test 0151...[HTTP GET with an error code that might trick authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind151 ../src/curl -q --output log/11/curl151.out --include --trace-ascii log/11/trace151 --trace-config all --trace-time http://127.0.0.1:41173/151 > log/11/stdout151 2> log/11/stderr151 151: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 151 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind151 ../src/curl -q --output log/11/curl151.out --include --trace-ascii log/11/trace151 --trace-config all --trace-time http://127.0.0.1:41173/151 > log/11/stdout151 2> log/11/stderr151 === End of file commands.log === Start of file http_server.log 07:34:59.265952 ====> Client connect 07:34:59.266021 accept_connection 3 returned 4 07:34:59.266039 accept_connection 3 returned 0 07:34:59.266053 Read 93 bytes 07:34:59.266069 Process 93 bytes request 07:34:59.266090 Got request: GET /verifiedserver HTTP/1.1 07:34:59.266099 Are-we-friendly question received 07:34:59.266130 Wrote request (93 bytes) input to log/11/server.input 07:34:59.266150 Identifying ourselves as friends 07:34:59.266219 Response sent (56 bytes) and written to log/11/server.response 07:34:59.266233 special request received, no persistency 07:34:59.266242 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 151 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind151 ==82546== ==82546== Process terminating with default action of signal 4 (SIGILL) ==82546== Illegal opcode at address 0x4003082 ==82546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82546== by 0x4003082: main (tool_main.c:234) === End of file valgrind151 test 0150...[HTTP with NTLM authorization and --fail] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind150 ../src/curl -q --output log/4/curl150.out --include --trace-ascii log/4/trace150 --trace-config all --trace-time http://127.0.0.1:33235/150 -u testuser:testpass --ntlm --fail > log/4/stdout150 2> log/4/stderr150 150: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 150 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind150 ../src/curl -q --output log/4/curl150.out --include --trace-ascii log/4/trace150 --trace-config all --trace-time http://127.0.0.1:33235/150 -u testuser:testpass --ntlm --fail > log/4/stdout150 2> log/4/stderr150 === End of file commands.log === Start of file http_server.log 07:34:59.271276 ====> Client connect 07:34:59.271312 accept_connection 3 returned 4 07:34:59.271330 accept_connection 3 returned 0 07:34:59.271345 Read 93 bytes 07:34:59.271355 Process 93 bytes request 07:34:59.271368 Got request: GET /verifiedserver HTTP/1.1 07:34:59.271378 Are-we-friendly question received 07:34:59.271406 Wrote request (93 bytes) input to log/4/server.input 07:34:59.271424 Identifying ourselves as friends 07:34:59.271486 Response sent (56 bytes) and written to log/4/server.response 07:34:59.271498 special request received, no persistency 07:34:59.271508 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind149 ../src/curl -q --output log/20/curl149.out --include --trace-ascii log/20/trace149 --trace-config all --trace-time -T log/20/upload149 ftp://127.0.0.1:42909/dir1/149 -T log/20/upload149 ftp://127.0.0.1:42909/dir2/149 > log/20/stdout149 2> log/20/stderr149 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind154 ../src/curl -q --output log/1/curl154.out --include --trace-ascii log/1/trace154 --trace-config all --trace-time http://127.0.0.1:38941/154 -T log/1/put154 -u testuser:testpass --anyauth > log/1/stdout154 2> log/1/stderr154 to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 150 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind150 ==82554== ==82554== Process terminating with default action of signal 4 (SIGILL) ==82554== Illegal opcode at address 0x4003082 ==82554== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82554== by 0x4003082: main (tool_main.c:234) === End of file valgrind150 test 0149...[FTP with multiple uploads] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind149 ../src/curl -q --output log/20/curl149.out --include --trace-ascii log/20/trace149 --trace-config all --trace-time -T log/20/upload149 ftp://127.0.0.1:42909/dir1/149 -T log/20/upload149 ftp://127.0.0.1:42909/dir2/149 > log/20/stdout149 2> log/20/stderr149 149: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 149 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind149 ../src/curl -q --output log/20/curl149.out --include --trace-ascii log/20/trace149 --trace-config all --trace-time -T log/20/upload149 ftp://127.0.0.1:42909/dir1/149 -T log/20/upload149 ftp://127.0.0.1:42909/dir2/149 > log/20/stdout149 2> log/20/stderr149 === End of file commands.log === Start of file ftp_server.log 07:34:59.398049 ====> Client connect 07:34:59.398292 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:59.398828 < "USER anonymous" 07:34:59.398866 > "331 We are happy you popped in![CR][LF]" 07:34:59.399025 < "PASS ftp@example.com" 07:34:59.399050 > "230 Welcome you silly person[CR][LF]" 07:34:59.399188 < "PWD" 07:34:59.399218 > "257 "/" is current directory[CR][LF]" 07:34:59.399362 < "EPSV" 07:34:59.399384 ====> Passive DATA channel requested by client 07:34:59.399396 DATA sockfilt for passive data channel starting... 07:34:59.402523 DATA sockfilt for passive data channel started (pid 82483) 07:34:59.402641 DATA sockfilt for passive data channel listens on port 45373 07:34:59.402690 > "229 Entering Passive Mode (|||45373|)[LF]" 07:34:59.402709 Client has been notified that DATA conn will be accepted on port 45373 07:34:59.402991 Client connects to port 45373 07:34:59.403019 ====> Client established passive DATA connection on port 45373 07:34:59.403092 < "TYPE I" 07:34:59.403121 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:59.403267 < "SIZE verifiedserver" 07:34:59.403300 > "213 17[CR][LF]" 07:34:59.403443 < "RETR verifiedserver" 07:34:59.403475 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:59.403553 =====> Closing passive DATA connection... 07:34:59.403567 Server disconnects passive DATA connection 07:34:59.403782 Server disconnected passive DATA connection 07:34:59.403810 DATA sockfilt for passive data channel quits (pid 82483) 07:34:59.404040 DATA sockfilt for passive data channel quit (pid 82483) 07:34:59.404065 =====> Closed passive DATA connection 07:34:59.404093 > "226 File transfer complete[CR][LF]" 07:34:59.447415 < "QUIT" 07:34:59.447466 > "221 bye bye baby[CR][LF]" 07:34:59.448892 MAIN sockfilt said DISC 07:34:59.448942 ====> Client disconnected 07:34:59.449034 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.243912 ====> Client connect 07:34:59.244298 Received DATA (on stdin) 07:34:59.244312 > 160 bytes data, server => client 07:34:59.244323 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:59.244334 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:59.244343 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:59.244602 < 16 bytes data, client => server 07:34:59.244617 'USER anonymous\r\n' 07:34:59.244859 Received DATA (on stdin) 07:34:59.244871 > 33 bytes data, server => client 07:34:59.244882 '331 We are happy you popped in!\r\n' 07:34:59.244931 < 22 bytes data, client => server 07:34:59.244943 'PASS ftp@example.com\r\n' 07:34:59.245039 Received DATA (on stdin) 07:34:59.245050 > 30 bytes data, server => client 07:34:59.245059 '230 Welcome you silly person\r\n' 07:34:59.245101 < 5 bytes data, client => server 07:34:59.245112 'PWD\r\n' 07:34:59.245206 Received DATA (on stdin) 07:34:59.245217 > 30 bytes data, server => client 07:34:59.245226 '257 "/" is current directory\r\n' 07:34:59.245278 < 6 bytes data, client => server 07:34:59.245288 'EPSV\r\n' 07:34:59.248709 Received DATA (on stdin) 07:34:59.248726 > 38 bytes data, server => client 07:34:59.248737 '229 Entering Passive Mode (|||45373|)\n' 07:34:59.248904 < 8 bytes data, client => server 07:34:59.248918 'TYPE I\r\n' 07:34:59.249111 Received DATA (on stdin) 07:34:59.249122 > 33 bytes data, server => client 07:34:59.249132 '200 I modify TYPE as you wanted\r\n' 07:34:59.249179 < 21 bytes data, client => server 07:34:59.249191 'SIZE verifiedserver\r\n' 07:34:59.249288 Received DATA (on stdin) 07:34:59.249299 > 8 bytes data, server => client 07:34:59.249316 '213 17\r\n' 07:34:59.249360 < 21 bytes data, client => server 07:34:59.249370 'RETR verifiedserver\r\n' 07:34:59.249556 Received DATA (on stdin) 07:34:59.249567 > 29 bytes data, server => client 07:34:59.249577 '150 Binary junk (17 bytes).\r\n' 07:34:59.250090 Received DATA (on stdin) 07:34:59.250104 > 28 bytes data, server => client 07:34:59.250115 '226 File transfer complete\r\n' 07:34:59.293236 < 6 bytes data, client => server 07:34:59.293264 'QUIT\r\n' 07:34:59.293463 Received DATA (on stdin) 07:34:59.293475 > 18 bytes data, server => client 07:34:59.293486 '221 bye bye baby\r\n' 07:34:59.294815 ====> Client disconnect 07:34:59.295027 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:59.248200 Running IPv4 version 07:34:59.248270 Listening on port 45373 07:34:59.248306 Wrote pid 82483 to log/20/server/ftp_sockdata.pid 07:34:59.248454 Received PING (on stdin) 07:34:59.248544 Received PORT (on stdin) 07:34:59.248938 ====> Client connect 07:34:59.249601 Received DATA (on stdin) 07:34:59.249613 > 17 bytes data, server => client 07:34:59.249624 'WE ROOLZ: 79843\r\n' 07:34:59.249647 Received DISC (on stdin) 07:34:59.249658 ====> Client forcibly disconnected 07:34:59.249808 Received QUIT (on stdin) 07:34:59.249820 quits 07:34:59.249881 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 149 === End of file server.cmd === Start of file upload149 send away this contents === End of file upload149 === Start of file valgrind149 ==82574== ==82574== Process terminating with default action of signal 4 (SIGILL) ==82574== Illegal opcode at address 0x4003082 ==82574== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82574== by 0x4003082: main (tool_main.c:234) === End of file valgrind149 test 0154...[HTTP PUT with --anyauth authorization (picking Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind154 ../src/curl -q --output log/1/curl154.out --include --trace-ascii log/1/trace154 --trace-config all --trace-time http://127.0.0.1:38941/154 -T log/1/put154 -u teCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind153 ../src/curl -q --include --trace-ascii log/19/trace153 --trace-config all --trace-time http://127.0.0.1:33487/1530001 -u testuser:testpass --digest http://127.0.0.1:33487/1530002 > log/19/stdout153 2> log/19/stderr153 stuser:testpass --anyauth > log/1/stdout154 2> log/1/stderr154 154: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 154 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind154 ../src/curl -q --output log/1/curl154.out --include --trace-ascii log/1/trace154 --trace-config all --trace-time http://127.0.0.1:38941/154 -T log/1/put154 -u testuser:testpass --anyauth > log/1/stdout154 2> log/1/stderr154 === End of file commands.log === Start of file http_server.log 07:34:59.388157 ====> Client connect 07:34:59.388193 accept_connection 3 returned 4 07:34:59.388209 accept_connection 3 returned 0 07:34:59.388332 Read 93 bytes 07:34:59.388344 Process 93 bytes request 07:34:59.388364 Got request: GET /verifiedserver HTTP/1.1 07:34:59.388373 Are-we-friendly question received 07:34:59.388401 Wrote request (93 bytes) input to log/1/server.input 07:34:59.388421 Identifying ourselves as friends 07:34:59.388599 Response sent (56 bytes) and written to log/1/server.response 07:34:59.388615 special request received, no persistency 07:34:59.388624 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file put154 This is data we upload with PUT a second line line three four is the number of lines === End of file put154 === Start of file server.cmd Testnum 154 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind154 ==82800== ==82800== Process terminating with default action of signal 4 (SIGILL) ==82800== Illegal opcode at address 0x4003082 ==82800== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82800== by 0x4003082: main (tool_main.c:234) === End of file valgrind154 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind155 ../src/curl -q --output log/9/curl155.out --include --trace-ascii log/9/trace155 --trace-config all --trace-time http://127.0.0.1:34999/155 -T log/9/put155 -u testuser:testpass --anyauth > log/9/stdout155 2> log/9/stderr155 test 0153...[HTTP with Digest authorization with stale=true] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind153 ../src/curl -q --include --trace-ascii log/19/trace153 --trace-config all --trace-time http://127.0.0.1:33487/1530001 -u testuser:testpass --digest http://127.0.0.1:33487/1530002 > log/19/stdout153 2> log/19/stderr153 153: stdout FAILED: --- log/19/check-expected 2025-07-18 07:35:00.453778166 +0000 +++ log/19/check-generated 2025-07-18 07:35:00.453778166 +0000 @@ -1,30 +0,0 @@ -HTTP/1.1 401 Authorization Required swsclose[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 23[CR][LF] -[CR][LF] -This IS the real page![LF] -HTTP/1.1 401 Authorization Required swsclose[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 401 Authorization re-negotiation please swsbounce[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 30[CR][LF] -[CR][LF] -This IS the second real page![LF] == Contents of files in the log/19/ dir after test 153 === Start of file check-expected HTTP/1.1 401 Authorization Required swsclose[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 23[CR][LF] [CR][LF] This IS the real page![LF] HTTP/1.1 401 Authorization Required swsclose[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 401 Authorization re-negotiation please swsbounce[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 30[CR][LF] [CR][LF] This IS the second real page![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind153 ../src/curl -q --include --trace-ascii log/19/trace153 --trace-config all --trace-time http://127.0.0.1:33487/1530001 -u testuser:testpass --digest http://127.0.0.1:33487/1530002 > log/19/stdout153 2> log/19/stderr153 === End of file commands.log === Start of file http_server.log 07:34:59.328036 ====> Client connect 07:34:59.328077 accept_connection 3 returned 4 07:34:59.328111 accept_connection 3 returned 0 07:34:59.328127 Read 93 bytes 07:34:59.328140 Process 93 bytes request 07:34:59.328156 Got request: GET /verifiedserver HTTP/1.1 07:34:59.328165 Are-we-friendly question received 07:34:59.328192 Wrote request (93 bytes) input to log/19/server.input 07:34:59.328212 Identifying ourselves as friends 07:34:59.328277 Response sent (56 bytes) and written to log/19/server.response 07:34:59.328292 special request received, no persistency 07:34:59.328301 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 153 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind153 ==82698== ==82698== Process terminating with default action of signal 4 (SIGILL) ==82698== Illegal opcode at address 0x4003082 ==82698== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82698== by 0x4003082: main (tool_main.c:234) === End of file valgrind153 test 0155...[HTTP PUT with --anyauth authorization (picking NTLM)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind155 ../src/curl -q --output log/9/curl155.out --include --trace-ascii log/9/trace155 --trace-config all --trace-time http://127.0.0.1:34999/155 -T log/9/put155 -u testuser:testpass --anyauth > log/9/stdout155 2> log/9/stderr155 155: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 155 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind155 ../src/curl -q --output log/9/curl155.out --include --trace-ascii log/9/trace155 --trace-config all --trace-time http://127.0.0.1:34999/155 -T log/9/put155 -u testuser:testpass --anyauth > log/9/stdout155 2> log/9/stderr155 === End of file commands.log === Start of file http_server.log 07:34:59.488935 ====> Client connect 07:34:59.488970 accept_connection 3 returned 4 07:34:59.488986 accept_connection 3 returned 0 07:34:59.489002 Read 93 bytes 07:34:59.489018 Process 93 bytes request 07:34:59.489041 Got request: GET /verifiedserver HTTP/1.1 07:34:59.489050 Are-we-friendly question received 07:34:59.489076 Wrote request (93 bytes) input to log/9/server.input 07:34:59.489095 Identifying ourselves as friends 07:34:59.489163 Response sent (56 bytes) and written to log/9/server.response 07:34:59.489178 special request received, no persistency 07:34:59.489186 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file put155 This is data we upload with PUT a second line line three four is the number of lines === End of file put155 === Start of file server.cmd Testnum 155 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind155 ==82956== ==82956== Process terminating with default action of signal 4 (SIGILL) ==82956== Illegal opcode at address 0x4003082 ==82956== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind137 ../src/curl -q --output log/10/curl137.out --include --trace-ascii log/10/trace137 --trace-config all --trace-time ftp://127.0.0.1:39731/blalbla/lululul/137 > log/10/stdout137 2> log/10/stderr137 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind134 ../src/curl -q --output log/24/curl134.out --include --trace-ascii log/24/trace134 --trace-config all --trace-time --netrc-optional --netrc-file log/24/netrc134 -u romulus:rhemus ftp://mary:mark@127.0.0.1:38657/ > log/24/stdout134 2> log/24/stderr134 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind140 ../src/curl -q --output log/23/curl140.out --include --trace-ascii log/23/trace140 --trace-config all --trace-time ftp://127.0.0.1:36145/blalbla/140 -z "1 jan 2004" > log/23/stdout140 2> log/23/stderr140 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind144 ../src/curl -q --output log/3/curl144.out --include --trace-ascii log/3/trace144 --trace-config all --trace-time ftp://127.0.0.1:34613/ -P - -l > log/3/stdout144 2> log/3/stderr144 at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82956== by 0x4003082: main (tool_main.c:234) === End of file valgrind155 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/ftp_server.pid" --logfile "log/10/ftp_server.log" --logdir "log/10" --portfile "log/10/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39731 (log/10/server/ftp_server.port) RUN: FTP server is PID 81708 port 39731 * pid ftp => 81708 81708 test 0137...[FTP download without size in RETR string] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind137 ../src/curl -q --output log/10/curl137.out --include --trace-ascii log/10/trace137 --trace-config all --trace-time ftp://127.0.0.1:39731/blalbla/lululul/137 > log/10/stdout137 2> log/10/stderr137 137: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 137 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind137 ../src/curl -q --output log/10/curl137.out --include --trace-ascii log/10/trace137 --trace-config all --trace-time ftp://127.0.0.1:39731/blalbla/lululul/137 > log/10/stdout137 2> log/10/stderr137 === End of file commands.log === Start of file ftp_server.log 07:34:58.698145 FTP server listens on port IPv4/39731 07:34:58.698227 logged pid 81708 in log/10/server/ftp_server.pid 07:34:58.698252 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.543778 Running IPv4 version 07:34:58.543862 Listening on port 39731 07:34:58.543900 Wrote pid 81781 to log/10/server/ftp_sockctrl.pid 07:34:58.543930 Wrote port 39731 to log/10/server/ftp_server.port 07:34:58.544048 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd RETRNOSIZE Testnum 137 === End of file server.cmd === Start of file valgrind137 ==82927== ==82927== Process terminating with default action of signal 4 (SIGILL) ==82927== Illegal opcode at address 0x4003082 ==82927== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82927== by 0x4003082: main (tool_main.c:234) === End of file valgrind137 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/24/server/ftp_server.pid" --logfile "log/24/ftp_server.log" --logdir "log/24" --portfile "log/24/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38657 (log/24/server/ftp_server.port) RUN: FTP server is PID 81588 port 38657 * pid ftp => 81588 81588 test 0134...[FTP (optional .netrc; programmatic user/passwd) dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind134 ../src/curl -q --output log/24/curl134.out --include --trace-ascii log/24/trace134 --trace-config all --trace-time --netrc-optional --netrc-file log/24/netrc134 -u romulus:rhemus ftp://mary:mark@127.0.0.1:38657/ > log/24/stdout134 2> log/24/stderr134 134: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 134 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind134 ../src/curl -q --output log/24/curl134.out --include --trace-ascii log/24/trace134 --trace-config all --trace-time --netrc-optional --netrc-file log/24/netrc134 -u romulus:rhemus ftp://mary:mark@127.0.0.1:38657/ > log/24/stdout134 2> log/24/stderr134 === End of file commands.log === Start of file ftp_server.log 07:34:58.622179 FTP server listens on port IPv4/38657 07:34:58.622259 logged pid 81588 in log/24/server/ftp_server.pid 07:34:58.622285 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.467823 Running IPv4 version 07:34:58.467907 Listening on port 38657 07:34:58.467944 Wrote pid 81659 to log/24/server/ftp_sockctrl.pid 07:34:58.467972 Wrote port 38657 to log/24/server/ftp_server.port 07:34:58.468085 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file netrc134 # the following two lines were created while testing curl machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc134 === Start of file server.cmd Testnum 134 === End of file server.cmd === Start of file valgrind134 ==82864== ==82864== Process terminating with default action of signal 4 (SIGILL) ==82864== Illegal opcode at address 0x4003082 ==82864== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==82864== by 0x4003082: main (tool_main.c:234) === End of file valgrind134 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/23/server/ftp_server.pid" --logfile "log/23/ftp_server.log" --logdir "log/23" --portfile "log/23/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 36145 (log/23/server/ftp_server.port) RUN: FTP server is PID 81897 port 36145 * pid ftp => 81897 81897 test 0140...[FTP download file with -z, expected to not transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind140 ../src/curl -q --output log/23/curl140.out --include --trace-ascii log/23/trace140 --trace-config all --trace-time ftp://127.0.0.1:36145/blalbla/140 -z "1 jan 2004" > log/23/stdout140 2> log/23/stderr140 140: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 140 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind140 ../src/curl -q --output log/23/curl140.out --include --trace-ascii log/23/trace140 --trace-config all --trace-time ftp://127.0.0.1:36145/blalbla/140 -z "1 jan 2004" > log/23/stdout140 2> log/23/stderr140 === End of file commands.log === Start of file ftp_server.log 07:34:58.917227 FTP server listens on port IPv4/36145 07:34:58.917315 logged pid 81897 in log/23/server/ftp_server.pid 07:34:58.917339 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:58.762836 Running IPv4 version 07:34:58.762937 Listening on port 36145 07:34:58.762980 Wrote pid 81946 to log/23/server/ftp_sockctrl.pid 07:34:58.763007 Wrote port 36145 to log/23/server/ftp_server.port 07:34:58.763137 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 140 === End of file server.cmd === Start of file valgrind140 ==83197== ==83197== Process terminating with default action of signal 4 (SIGILL) ==83197== Illegal opcode at address 0x4003082 ==83197== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83197== by 0x4003082: main (tool_main.c:234) === End of file valgrind140 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/3/server/ftp_server.pid" --logfile "log/3/ftp_server.log" --logdir "log/3" --portfile "log/3/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34613 (log/3/server/ftp_server.port) RUN: FTP server is PICMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind156 ../src/curl -q --output log/13/curl156.out --include --trace-ascii log/13/trace156 --trace-config all --trace-time http://127.0.0.1:33627/156 -T log/13/put156 -u testuser:testpass --anyauth > log/13/stdout156 2> log/13/stderr156 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind157 ../src/curl -q --output log/5/curl157.out --include --trace-ascii log/5/trace157 --trace-config all --trace-time http://127.0.0.1:46675/157 -u testuser:testpass --anyauth > log/5/stdout157 2> log/5/stderr157 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind160 ../src/curl -q --include --trace-ascii log/12/trace160 --trace-config all --trace-time http://127.0.0.1:37285/want/160 http://127.0.0.1:37285/wantmore/1600001 > log/12/stdout160 2> log/12/stderr160 D 81974 port 34613 * pid ftp => 81974 81974 test 0144...[FTP NLST dir list without contents, using PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind144 ../src/curl -q --output log/3/curl144.out --include --trace-ascii log/3/trace144 --trace-config all --trace-time ftp://127.0.0.1:34613/ -P - -l > log/3/stdout144 2> log/3/stderr144 144: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 144 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind144 ../src/curl -q --output log/3/curl144.out --include --trace-ascii log/3/trace144 --trace-config all --trace-time ftp://127.0.0.1:34613/ -P - -l > log/3/stdout144 2> log/3/stderr144 === End of file commands.log === Start of file ftp_server.log 07:34:59.010220 FTP server listens on port IPv4/34613 07:34:59.010305 logged pid 81974 in log/3/server/ftp_server.pid 07:34:59.010332 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.854834 Running IPv4 version 07:34:59.854899 Listening on port 34613 07:34:59.854936 Wrote pid 82005 to log/3/server/ftp_sockctrl.pid 07:34:59.854965 Wrote port 34613 to log/3/server/ftp_server.port 07:34:59.855944 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY NLST 450 No files found Testnum 144 === End of file server.cmd === Start of file valgrind144 ==83352== ==83352== Process terminating with default action of signal 4 (SIGILL) ==83352== Illegal opcode at address 0x4003082 ==83352== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83352== by 0x4003082: main (tool_main.c:234) === End of file valgrind144 test 0156...[HTTP PUT with --anyauth (when the server requires none)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind156 ../src/curl -q --output log/13/curl156.out --include --trace-ascii log/13/trace156 --trace-config all --trace-time http://127.0.0.1:33627/156 -T log/13/put156 -u testuser:testpass --anyauth > log/13/stdout156 2> log/13/stderr156 156: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 156 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind156 ../src/curl -q --output log/13/curl156.out --include --trace-ascii log/13/trace156 --trace-config all --trace-time http://127.0.0.1:33627/156 -T log/13/put156 -u testuser:testpass --anyauth > log/13/stdout156 2> log/13/stderr156 === End of file commands.log === Start of file http_server.log 07:34:59.709929 ====> Client connect 07:34:59.709960 accept_connection 3 returned 4 07:34:59.709976 accept_connection 3 returned 0 07:34:59.709989 Read 93 bytes 07:34:59.710002 Process 93 bytes request 07:34:59.710016 Got request: GET /verifiedserver HTTP/1.1 07:34:59.710025 Are-we-friendly question received 07:34:59.710050 Wrote request (93 bytes) input to log/13/server.input 07:34:59.710068 Identifying ourselves as friends 07:34:59.710133 Response sent (56 bytes) and written to log/13/server.response 07:34:59.710146 special request received, no persistency 07:34:59.710155 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file put156 This is data we upload with PUT a second line line three four is the number of lines === End of file put156 === Start of file server.cmd Testnum 156 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind156 ==83205== ==83205== Process terminating with default action of signal 4 (SIGILL) ==83205== Illegal opcode at address 0x4003082 ==83205== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83205== by 0x4003082: main (tool_main.c:234) === End of file valgrind156 test 0157...[HTTP GET with --anyauth (when the server requires none)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind157 ../src/curl -q --output log/5/curl157.out --include --trace-ascii log/5/trace157 --trace-config all --trace-time http://127.0.0.1:46675/157 -u testuser:testpass --anyauth > log/5/stdout157 2> log/5/stderr157 157: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 157 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind157 ../src/curl -q --output log/5/curl157.out --include --trace-ascii log/5/trace157 --trace-config all --trace-time http://127.0.0.1:46675/157 -u testuser:testpass --anyauth > log/5/stdout157 2> log/5/stderr157 === End of file commands.log === Start of file http_server.log 07:34:59.716058 ====> Client connect 07:34:59.716106 accept_connection 3 returned 4 07:34:59.719366 accept_connection 3 returned 0 07:34:59.719405 Read 93 bytes 07:34:59.719416 Process 93 bytes request 07:34:59.719429 Got request: GET /verifiedserver HTTP/1.1 07:34:59.719438 Are-we-friendly question received 07:34:59.719481 Wrote request (93 bytes) input to log/5/server.input 07:34:59.719498 Identifying ourselves as friends 07:34:59.719586 Response sent (56 bytes) and written to log/5/server.response 07:34:59.719595 special request received, no persistency 07:34:59.719603 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 157 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind157 ==83195== ==83195== Process terminating with default action of signal 4 (SIGILL) ==83195== Illegal opcode at address 0x4003082 ==83195== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83195== by 0x4003082: main (tool_main.c:234) === End of file valgrind157 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind145 ../src/curl -q --output log/8/curl145.out --include --trace-ascii log/8/trace145 --trace-config all --trace-time ftp://127.0.0.1:44159/ -P - -l > log/8/stdout145 2> log/8/stderr145 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind163 ../src/curl -q --output log/14/curl163.out --include --trace-ascii log/14/trace163 --trace-config all --trace-time http://127.0.0.1:37963/we/want/163 -F "name= log/14/stdout163 2> log/14/stderr163 test 0160...[HTTP with delayed close, conn reuse, connection reset and retry] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind160 ../src/curl -q --include --trace-ascii log/12/trace160 --trace-config all --trace-time http://127.0.0.1:37285/want/160 http://127.0.0.1:37285/wantmore/1600001 > log/12/stdout160 2> log/12/stderr160 160: stdout FAILED: --- log/12/check-expected 2025-07-18 07:35:00.850444841 +0000 +++ log/12/check-generated 2025-07-18 07:35:00.850444841 +0000 @@ -1,10 +0,0 @@ -HTTP/1.1 200 OK swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 9[CR][LF] -[CR][LF] -surprise[LF] -HTTP/1.1 200 OK swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Connection: close[CR][LF] -[CR][LF] -surprise2[LF] == Contents of files in the log/12/ dir after test 160 === Start of file check-expected HTTP/1.1 200 OK swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 9[CR][LF] [CR][LF] surprise[LF] HTTP/1.1 200 OK swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Connection: close[CR][LF] [CR][LF] surprise2[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind160 ../src/curl -q --include --trace-ascii log/12/trace160 --trace-config all --trace-time http://127.0.0.1:37285/want/160 http://127.0.0.1:37285/wantmore/1600001 > log/12/stdout160 2> log/12/stderr160 === End of file commands.log === Start of file http_server.log 07:34:59.709571 ====> Client connect 07:34:59.709613 accept_connection 3 returned 4 07:34:59.709631 accept_connection 3 returned 0 07:34:59.709645 Read 93 bytes 07:34:59.709655 Process 93 bytes request 07:34:59.709672 Got request: GET /verifiedserver HTTP/1.1 07:34:59.709681 Are-we-friendly question received 07:34:59.709704 Wrote request (93 bytes) input to log/12/server.input 07:34:59.709726 Identifying ourselves as friends 07:34:59.709822 Response sent (56 bytes) and written to log/12/server.response 07:34:59.709833 special request received, no persistency 07:34:59.709841 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 160 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind160 ==83204== ==83204== Process terminating with default action of signal 4 (SIGILL) ==83204== Illegal opcode at address 0x4003082 ==83204== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83204== by 0x4003082: main (tool_main.c:234) === End of file valgrind160 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/8/server/ftp_server.pid" --logfile "log/8/ftp_server.log" --logdir "log/8" --portfile "log/8/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 44159 (log/8/server/ftp_server.port) RUN: FTP server is PID 81995 port 44159 * pid ftp => 81995 81995 test 0145...[FTP NLST dir list with weird reply code, using PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind145 ../src/curl -q --output log/8/curl145.out --include --trace-ascii log/8/trace145 --trace-config all --trace-time ftp://127.0.0.1:44159/ -P - -l > log/8/stdout145 2> log/8/stderr145 145: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 145 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind145 ../src/curl -q --output log/8/curl145.out --include --trace-ascii log/8/trace145 --trace-config all --trace-time ftp://127.0.0.1:44159/ -P - -l > log/8/stdout145 2> log/8/stderr145 === End of file commands.log === Start of file ftp_server.log 07:34:59.046675 FTP server listens on port IPv4/44159 07:34:59.046760 logged pid 81995 in log/8/server/ftp_server.pid 07:34:59.046789 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.892332 Running IPv4 version 07:34:59.892399 Listening on port 44159 07:34:59.892438 Wrote pid 82064 to log/8/server/ftp_sockctrl.pid 07:34:59.892466 Wrote port 44159 to log/8/server/ftp_server.port 07:34:59.892581 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY NLST 550 Have a taste on this Testnum 145 === End of file server.cmd === Start of file valgrind145 ==83416== ==83416== Process terminating with default action of signal 4 (SIGILL) ==83416== Illegal opcode at address 0x4003082 ==83416== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83416== by 0x4003082: main (tool_main.c:234) === End of file valgrind145 test 0163...[HTTP multipart formpost with contents from a file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind163 ../src/curl -q --output log/14/curl163.out --include --trace-ascii log/14/trace163 --trace-config all --trace-time http://127.0.0.1:37963/we/want/163 -F "name= log/14/stdout163 2> log/14/stderr163 163: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 163 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind163 ../src/curl -q --output log/14/curl163.out --include --trace-ascii log/14/trace163 --trace-config all --trace-time http://127.0.0.1:37963/we/want/163 -F "name= log/14/stdout163 2> log/14/stderr163 === End of file commands.log === Start of file field163 contents from a file newlinens? yes please [tab][CR] too === End of file field163 === Start of file http_server.log 07:34:59.799391 ====> Client connect 07:34:59.799432 accept_connection 3 returned 4 07:34:59.799451 accept_connection 3 returned 0 07:34:59.799467 Read 93 bytes 07:34:59.799477 Process 93 bytes request 07:34:59.799489 Got request: GET /verifiedserver HTTP/1.1 07:34:59.799498 Are-we-friendly question received 07:34:59.799523 Wrote request (93 bytes) input to log/14/server.input 07:34:59.799539 Identifying ourselves as friends 07:34:59.799611 Response sent (56 bytes) and written to log/14/server.response 07:34:59.799622 special request received, no persistency 07:34:59.799631 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.logCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind162 ../src/curl -q --output log/6/curl162.out --include --trace-ascii log/6/trace162 --trace-config all --trace-time http://127.0.0.1:35775/162 --proxy http://127.0.0.1:35775 --proxy-user foo:bar --proxy-ntlm --fail > log/6/stdout162 2> log/6/stderr162 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind164 ../src/curl -q --output log/17/curl164.out --include --trace-ascii log/17/trace164 --trace-config all --trace-time http://127.0.0.1:39089/want/164 -r 0-10,12-15 > log/17/stdout164 2> log/17/stderr164 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind158 ../src/curl -q --output log/22/curl158.out --include --trace-ascii log/22/trace158 --trace-config all --trace-time http://127.0.0.1:46761/158 -F name=daniel > log/22/stdout158 2> log/22/stderr158 === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 163 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind163 ==83356== ==83356== Process terminating with default action of signal 4 (SIGILL) ==83356== Illegal opcode at address 0x4003082 ==83356== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83356== by 0x4003082: main (tool_main.c:234) === End of file valgrind163 test 0164...[HTTP range with multiple ranges] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind164 ../src/curl -q --output log/17/curl164.out --include --trace-ascii log/17/trace164 --trace-config all --trace-time http://127.0.0.1:39089/want/164 -r 0-10,12-15 > log/17/stdout164 2> log/17/stderr164 164: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 164 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind164 ../src/curl -q --output log/17/curl164.out --include --trace-ascii log/17/trace164 --trace-config all --trace-time http://127.0.0.1:39089/want/164 -r 0-10,12-15 > log/17/stdout164 2> log/17/stderr164 === End of file commands.log === Start of file http_server.log 07:34:59.822725 ====> Client connect 07:34:59.822772 accept_connection 3 returned 4 07:34:59.822791 accept_connection 3 returned 0 07:34:59.822809 Read 93 bytes 07:34:59.822819 Process 93 bytes request 07:34:59.822833 Got request: GET /verifiedserver HTTP/1.1 07:34:59.822842 Are-we-friendly question received 07:34:59.822869 Wrote request (93 bytes) input to log/17/server.input 07:34:59.822886 Identifying ourselves as friends 07:34:59.822956 Response sent (56 bytes) and written to log/17/server.response 07:34:59.822966 special request received, no persistency 07:34:59.822975 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 164 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind164 ==83398== ==83398== Process terminating with default action of signal 4 (SIGILL) ==83398== Illegal opcode at address 0x4003082 ==83398== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83398== by 0x4003082: main (tool_main.c:234) === End of file valgrind164 test 0162...[HTTP GET asking for --proxy-ntlm when some other authentication is required] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind162 ../src/curl -q --output log/6/curl162.out --include --trace-ascii log/6/trace162 --trace-config all --trace-time http://127.0.0.1:35775/162 --proxy http://127.0.0.1:35775 --proxy-user foo:bar --proxy-ntlm --fail > log/6/stdout162 2> log/6/stderr162 162: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 162 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind162 ../src/curl -q --output log/6/curl162.out --include --trace-ascii log/6/trace162 --trace-config all --trace-time http://127.0.0.1:35775/162 --proxy http://127.0.0.1:35775 --proxy-user foo:bar --proxy-ntlm --fail > log/6/stdout162 2> log/6/stderr162 === End of file commands.log === Start of file http_server.log 07:34:59.779631 ====> Client connect 07:34:59.779677 accept_connection 3 returned 4 07:34:59.779696 accept_connection 3 returned 0 07:34:59.779713 Read 93 bytes 07:34:59.779722 Process 93 bytes request 07:34:59.779735 Got request: GET /verifiedserver HTTP/1.1 07:34:59.779744 Are-we-friendly question received 07:34:59.779767 Wrote request (93 bytes) input to log/6/server.input 07:34:59.779783 Identifying ourselves as friends 07:34:59.779855 Response sent (56 bytes) and written to log/6/server.response 07:34:59.779863 special request received, no persistency 07:34:59.779872 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 162 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind162 ==83328== ==83328== Process terminating with default action of signal 4 (SIGILL) ==83328== Illegal opcode at address 0x4003082 ==83328== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83328== by 0x4003082: main (tool_main.c:234) === End of file valgrind162 test 0158...[HTTP multipart formpost with only a 100 reply] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind158 ../src/curl -q --output log/22/curl158.out --include --trace-ascii log/22/trace158 --trace-config all --trace-time http://127.0.0.1:46761/158 -F name=daniel > log/22/stdout158 2> log/22/stderr158 158: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 158 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind158 ../src/curl -q --output log/22/curl158.out --include --trace-ascii log/22/trace158 --trace-config all --trace-time http://127.0.0.1:46761/158 -F name=daniel > log/22/stdout158 2> log/22/stderr158 === End of file commands.log === Start of file http_server.log 07:34:59.720711 ====> Client connect 07:34:59.720798 accept_connection 3 returned 4 07:34:59.720817 accept_connection 3 returned 0 07:34:59.720831 Read 93 bytes 07:34:59.720841 Process 93 bytes request 07:34:59.720857 Got request: GET /verifiedserver HTTP/1.1 07:34:59.720866 Are-we-friendly question received 07:34:59.720895 Wrote request (93 bytes) input to log/22/server.input 07:34:59.720914 Identifying ourselves as friends 07:34:59.720976 Response sent (56 bytes) and written to log/22/server.response 07:34:59.720989 special request received, no persistency 07:34:59.720998 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * RequCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind161 ../src/curl -q --output log/15/curl161.out --include --trace-ascii log/15/trace161 --trace-config all --trace-time ftp://127.0.0.1:46295/161 > log/15/stdout161 2> log/15/stderr161 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind165 ../src/curl -q --output log/21/curl165.out --include --trace-ascii log/21/trace165 --trace-config all --trace-time http://www.åäö.se/page/165 -x 127.0.0.1:41087 http://www.große.de/page/165 > log/21/stdout165 2> log/21/stderr165 est completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 158 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind158 ==83220== ==83220== Process terminating with default action of signal 4 (SIGILL) ==83220== Illegal opcode at address 0x4003082 ==83220== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83220== by 0x4003082: main (tool_main.c:234) === End of file valgrind158 test 0161...[FTP RETR PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind161 ../src/curl -q --output log/15/curl161.out --include --trace-ascii log/15/trace161 --trace-config all --trace-time ftp://127.0.0.1:46295/161 > log/15/stdout161 2> log/15/stderr161 161: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 161 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind161 ../src/curl -q --output log/15/curl161.out --include --trace-ascii log/15/trace161 --trace-config all --trace-time ftp://127.0.0.1:46295/161 > log/15/stdout161 2> log/15/stderr161 === End of file commands.log === Start of file ftp_server.log 07:34:59.883383 ====> Client connect 07:34:59.883553 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:34:59.887099 < "USER anonymous" 07:34:59.887152 > "331 We are happy you popped in![CR][LF]" 07:34:59.887308 < "PASS ftp@example.com" 07:34:59.887333 > "230 Welcome you silly person[CR][LF]" 07:34:59.887474 < "PWD" 07:34:59.887504 > "257 "/" is current directory[CR][LF]" 07:34:59.887651 < "EPSV" 07:34:59.887678 ====> Passive DATA channel requested by client 07:34:59.887690 DATA sockfilt for passive data channel starting... 07:34:59.895653 DATA sockfilt for passive data channel started (pid 83193) 07:34:59.895791 DATA sockfilt for passive data channel listens on port 38439 07:34:59.895843 > "229 Entering Passive Mode (|||38439|)[LF]" 07:34:59.895860 Client has been notified that DATA conn will be accepted on port 38439 07:34:59.896457 Client connects to port 38439 07:34:59.896486 ====> Client established passive DATA connection on port 38439 07:34:59.896576 < "TYPE I" 07:34:59.896612 > "200 I modify TYPE as you wanted[CR][LF]" 07:34:59.897528 < "SIZE verifiedserver" 07:34:59.897570 > "213 17[CR][LF]" 07:34:59.897702 < "RETR verifiedserver" 07:34:59.897736 > "150 Binary junk (17 bytes).[CR][LF]" 07:34:59.897816 =====> Closing passive DATA connection... 07:34:59.897831 Server disconnects passive DATA connection 07:34:59.898065 Server disconnected passive DATA connection 07:34:59.898092 DATA sockfilt for passive data channel quits (pid 83193) 07:34:59.898312 DATA sockfilt for passive data channel quit (pid 83193) 07:34:59.898335 =====> Closed passive DATA connection 07:34:59.898362 > "226 File transfer complete[CR][LF]" 07:34:59.946881 < "QUIT" 07:34:59.946938 > "221 bye bye baby[CR][LF]" 07:34:59.960082 MAIN sockfilt said DISC 07:34:59.960137 ====> Client disconnected 07:34:59.960215 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.725620 ====> Client connect 07:34:59.732712 Received DATA (on stdin) 07:34:59.732757 > 160 bytes data, server => client 07:34:59.732771 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:34:59.732782 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:34:59.732792 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:34:59.732917 < 16 bytes data, client => server 07:34:59.732929 'USER anonymous\r\n' 07:34:59.733146 Received DATA (on stdin) 07:34:59.733158 > 33 bytes data, server => client 07:34:59.733169 '331 We are happy you popped in!\r\n' 07:34:59.733216 < 22 bytes data, client => server 07:34:59.733227 'PASS ftp@example.com\r\n' 07:34:59.733323 Received DATA (on stdin) 07:34:59.733334 > 30 bytes data, server => client 07:34:59.733344 '230 Welcome you silly person\r\n' 07:34:59.733389 < 5 bytes data, client => server 07:34:59.733399 'PWD\r\n' 07:34:59.733492 Received DATA (on stdin) 07:34:59.733502 > 30 bytes data, server => client 07:34:59.733513 '257 "/" is current directory\r\n' 07:34:59.733567 < 6 bytes data, client => server 07:34:59.733578 'EPSV\r\n' 07:34:59.741860 Received DATA (on stdin) 07:34:59.741880 > 38 bytes data, server => client 07:34:59.741891 '229 Entering Passive Mode (|||38439|)\n' 07:34:59.742362 < 8 bytes data, client => server 07:34:59.742380 'TYPE I\r\n' 07:34:59.742606 Received DATA (on stdin) 07:34:59.742618 > 33 bytes data, server => client 07:34:59.742630 '200 I modify TYPE as you wanted\r\n' 07:34:59.742706 < 21 bytes data, client => server 07:34:59.742720 'SIZE verifiedserver\r\n' 07:34:59.743543 Received DATA (on stdin) 07:34:59.743556 > 8 bytes data, server => client 07:34:59.743565 '213 17\r\n' 07:34:59.743613 < 21 bytes data, client => server 07:34:59.743624 'RETR verifiedserver\r\n' 07:34:59.743822 Received DATA (on stdin) 07:34:59.743834 > 29 bytes data, server => client 07:34:59.743845 '150 Binary junk (17 bytes).\r\n' 07:34:59.744353 Received DATA (on stdin) 07:34:59.744365 > 28 bytes data, server => client 07:34:59.744378 '226 File transfer complete\r\n' 07:34:59.792668 < 6 bytes data, client => server 07:34:59.792706 'QUIT\r\n' 07:34:59.792936 Received DATA (on stdin) 07:34:59.792948 > 18 bytes data, server => client 07:34:59.792959 '221 bye bye baby\r\n' 07:34:59.805994 ====> Client disconnect 07:34:59.806207 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:34:59.740944 Running IPv4 version 07:34:59.740999 Listening on port 38439 07:34:59.741035 Wrote pid 83193 to log/15/server/ftp_sockdata.pid 07:34:59.741580 Received PING (on stdin) 07:34:59.741681 Received PORT (on stdin) 07:34:59.742402 ====> Client connect 07:34:59.743873 Received DATA (on stdin) 07:34:59.743886 > 17 bytes data, server => client 07:34:59.743895 'WE ROOLZ: 79835\r\n' 07:34:59.743924 Received DISC (on stdin) 07:34:59.743937 ====> Client forcibly disconnected 07:34:59.744089 Received QUIT (on stdin) 07:34:59.744101 quits 07:34:59.744162 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 161 === End of file server.cmd === Start of file valgrind161 ==83463== ==83463== Process terminating with default action of signal 4 (SIGILL) ==83463== Illegal opcode at address 0x4003082 ==83463== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83463== by 0x4003082: main (tool_main.c:234) === End of file valgrind161 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0165...[HTTP over proxy with IDN host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind165 ../src/curl -q --output log/21/curl165.out --include --trace-ascii log/21/trace165 --trace-config all --trace-time http://www.åäö.se/page/165 -x 127.0.0.1:41087 http://www.große.de/page/165 > log/21/stdout165 2> log/21/stderr165 165: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 165 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind147 ../src/curl -q --output log/18/curl147.out --include --trace-ascii log/18/trace147 --trace-config all --trace-time ftp://127.0.0.1:33107/first/dir/here/147 --ftp-create-dirs > log/18/stdout147 2> log/18/stderr147 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind171 ../src/curl -q --output log/20/curl171.out --include --trace-ascii log/20/trace171 --trace-config all --trace-time -c log/20/jar171 -x 127.0.0.1:37169 http://z.x.com/171 > log/20/stdout171 2> log/20/stderr171 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind166 ../src/curl -q --output log/16/curl166.out --include --trace-ascii log/16/trace166 --trace-config all --trace-time http://127.0.0.1:46739/we/want/166 -F "name=@log/16/fie ld 166" > log/16/stdout166 2> log/16/stderr166 k-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind165 ../src/curl -q --output log/21/curl165.out --include --trace-ascii log/21/trace165 --trace-config all --trace-time http://www.åäö.se/page/165 -x 127.0.0.1:41087 http://www.große.de/page/165 > log/21/stdout165 2> log/21/stderr165 === End of file commands.log === Start of file http_server.log 07:34:59.996056 ====> Client connect 07:34:59.996102 accept_connection 3 returned 4 07:34:59.996120 accept_connection 3 returned 0 07:34:59.996137 Read 93 bytes 07:34:59.996152 Process 93 bytes request 07:34:59.996173 Got request: GET /verifiedserver HTTP/1.1 07:34:59.996183 Are-we-friendly question received 07:34:59.996210 Wrote request (93 bytes) input to log/21/server.input 07:34:59.996230 Identifying ourselves as friends 07:34:59.996315 Response sent (56 bytes) and written to log/21/server.response 07:34:59.996325 special request received, no persistency 07:34:59.996334 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 165 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind165 ==83765== ==83765== Process terminating with default action of signal 4 (SIGILL) ==83765== Illegal opcode at address 0x4003082 ==83765== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83765== by 0x4003082: main (tool_main.c:234) === End of file valgrind165 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/18/server/ftp_server.pid" --logfile "log/18/ftp_server.log" --logdir "log/18" --portfile "log/18/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33107 (log/18/server/ftp_server.port) RUN: FTP server is PID 82311 port 33107 * pid ftp => 82311 82311 test 0147...[FTP with --ftp-create-dirs (failing CWD)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind147 ../src/curl -q --output log/18/curl147.out --include --trace-ascii log/18/trace147 --trace-config all --trace-time ftp://127.0.0.1:33107/first/dir/here/147 --ftp-create-dirs > log/18/stdout147 2> log/18/stderr147 147: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 147 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind147 ../src/curl -q --output log/18/curl147.out --include --trace-ascii log/18/trace147 --trace-config all --trace-time ftp://127.0.0.1:33107/first/dir/here/147 --ftp-create-dirs > log/18/stdout147 2> log/18/stderr147 === End of file commands.log === Start of file ftp_server.log 07:34:59.250118 FTP server listens on port IPv4/33107 07:34:59.250196 logged pid 82311 in log/18/server/ftp_server.pid 07:34:59.250220 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:34:59.095728 Running IPv4 version 07:34:59.095811 Listening on port 33107 07:34:59.095847 Wrote pid 82344 to log/18/server/ftp_sockctrl.pid 07:34:59.095875 Wrote port 33107 to log/18/server/ftp_server.port 07:34:59.096012 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY CWD 550 I won't allow this on my server COUNT CWD 1 Testnum 147 === End of file server.cmd === Start of file valgrind147 ==83797== ==83797== Process terminating with default action of signal 4 (SIGILL) ==83797== Illegal opcode at address 0x4003082 ==83797== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83797== by 0x4003082: main (tool_main.c:234) === End of file valgrind147 test 0171...[HTTP, get cookie with dot prefixed full domain] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind171 ../src/curl -q --output log/20/curl171.out --include --trace-ascii log/20/trace171 --trace-config all --trace-time -c log/20/jar171 -x 127.0.0.1:37169 http://z.x.com/171 > log/20/stdout171 2> log/20/stderr171 171: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 171 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind171 ../src/curl -q --output log/20/curl171.out --include --trace-ascii log/20/trace171 --trace-config all --trace-time -c log/20/jar171 -x 127.0.0.1:37169 http://z.x.com/171 > log/20/stdout171 2> log/20/stderr171 === End of file commands.log === Start of file http_server.log 07:35:00.290765 ====> Client connect 07:35:00.290806 accept_connection 3 returned 4 07:35:00.290822 accept_connection 3 returned 0 07:35:00.290836 Read 93 bytes 07:35:00.290845 Process 93 bytes request 07:35:00.290859 Got request: GET /verifiedserver HTTP/1.1 07:35:00.290868 Are-we-friendly question received 07:35:00.290895 Wrote request (93 bytes) input to log/20/server.input 07:35:00.290911 Identifying ourselves as friends 07:35:00.290967 Response sent (56 bytes) and written to log/20/server.response 07:35:00.290977 special request received, no persistency 07:35:00.290986 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 171 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind171 ==84097== ==84097== Process terminating with default action of signal 4 (SIGILL) ==84097== Illegal opcode at address 0x4003082 ==84097== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84097== by 0x4003082: main (tool_main.c:234) === End of file valgrind171 test 0166...[HTTP formpost a file with spaces in name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind166 ../src/curl -q --output log/16/curl166.out --include --trace-ascii log/16/trace166 --trace-config all --trace-time http://127.0.0.1:46739/we/want/166 -F "name=@log/16/fie ld 166" > log/16/stdout166 2> log/16/stderr166 166: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 166 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-calleCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind167 ../src/curl -q --output log/2/curl167.out --include --trace-ascii log/2/trace167 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://127.0.0.1:45457 --proxy-user foo:bar --digest --user digest:alot > log/2/stdout167 2> log/2/stderr167 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind170 ../src/curl -q --output log/4/curl170.out --include --trace-ascii log/4/trace170 --trace-config all --trace-time http://a.galaxy.far.far.away/170 --proxy http://127.0.0.1:33235 --proxy-user foo:bar --proxy-ntlm -F "dummy=value" > log/4/stdout170 2> log/4/stderr170 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind168 ../src/curl -q --output log/7/curl168.out --include --trace-ascii log/7/trace168 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://127.0.0.1:39077 --proxy-user foo:bar --proxy-digest --digest --user digest:alot > log/7/stdout168 2> log/7/stderr168 rs=16 --log-file=log/16/valgrind166 ../src/curl -q --output log/16/curl166.out --include --trace-ascii log/16/trace166 --trace-config all --trace-time http://127.0.0.1:46739/we/want/166 -F "name=@log/16/fie ld 166" > log/16/stdout166 2> log/16/stderr166 === End of file commands.log === Start of file fie ld 166 data inside the file === End of file fie ld 166 === Start of file http_server.log 07:35:00.149388 ====> Client connect 07:35:00.149426 accept_connection 3 returned 4 07:35:00.149443 accept_connection 3 returned 0 07:35:00.149458 Read 93 bytes 07:35:00.149468 Process 93 bytes request 07:35:00.149481 Got request: GET /verifiedserver HTTP/1.1 07:35:00.149491 Are-we-friendly question received 07:35:00.149517 Wrote request (93 bytes) input to log/16/server.input 07:35:00.149534 Identifying ourselves as friends 07:35:00.149707 Response sent (56 bytes) and written to log/16/server.response 07:35:00.149719 special request received, no persistency 07:35:00.149730 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 166 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind166 ==83895== ==83895== Process terminating with default action of signal 4 (SIGILL) ==83895== Illegal opcode at address 0x4003082 ==83895== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83895== by 0x4003082: main (tool_main.c:234) === End of file valgrind166 test 0167...[HTTP with proxy-requiring-Basic to site-requiring-Digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind167 ../src/curl -q --output log/2/curl167.out --include --trace-ascii log/2/trace167 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://127.0.0.1:45457 --proxy-user foo:bar --digest --user digest:alot > log/2/stdout167 2> log/2/stderr167 167: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 167 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind167 ../src/curl -q --output log/2/curl167.out --include --trace-ascii log/2/trace167 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://127.0.0.1:45457 --proxy-user foo:bar --digest --user digest:alot > log/2/stdout167 2> log/2/stderr167 === End of file commands.log === Start of file http_server.log 07:35:00.160260 ====> Client connect 07:35:00.160295 accept_connection 3 returned 4 07:35:00.160310 accept_connection 3 returned 0 07:35:00.160323 Read 93 bytes 07:35:00.160333 Process 93 bytes request 07:35:00.160345 Got request: GET /verifiedserver HTTP/1.1 07:35:00.160354 Are-we-friendly question received 07:35:00.160376 Wrote request (93 bytes) input to log/2/server.input 07:35:00.160390 Identifying ourselves as friends 07:35:00.160441 Response sent (56 bytes) and written to log/2/server.response 07:35:00.160451 special request received, no persistency 07:35:00.160459 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 167 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind167 ==83902== ==83902== Process terminating with default action of signal 4 (SIGILL) ==83902== Illegal opcode at address 0x4003082 ==83902== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==83902== by 0x4003082: main (tool_main.c:234) === End of file valgrind167 test 0170...[HTTP POST with --proxy-ntlm and no SSL with no response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind170 ../src/curl -q --output log/4/curl170.out --include --trace-ascii log/4/trace170 --trace-config all --trace-time http://a.galaxy.far.far.away/170 --proxy http://127.0.0.1:33235 --proxy-user foo:bar --proxy-ntlm -F "dummy=value" > log/4/stdout170 2> log/4/stderr170 170: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 170 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind170 ../src/curl -q --output log/4/curl170.out --include --trace-ascii log/4/trace170 --trace-config all --trace-time http://a.galaxy.far.far.away/170 --proxy http://127.0.0.1:33235 --proxy-user foo:bar --proxy-ntlm -F "dummy=value" > log/4/stdout170 2> log/4/stderr170 === End of file commands.log === Start of file http_server.log 07:35:00.298644 ====> Client connect 07:35:00.298683 accept_connection 3 returned 4 07:35:00.298700 accept_connection 3 returned 0 07:35:00.298713 Read 93 bytes 07:35:00.298723 Process 93 bytes request 07:35:00.298736 Got request: GET /verifiedserver HTTP/1.1 07:35:00.298744 Are-we-friendly question received 07:35:00.298771 Wrote request (93 bytes) input to log/4/server.input 07:35:00.298785 Identifying ourselves as friends 07:35:00.298840 Response sent (56 bytes) and written to log/4/server.response 07:35:00.298850 special request received, no persistency 07:35:00.298859 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 170 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind170 ==84096== ==84096== Process terminating with default action of signal 4 (SIGILL) ==84096== Illegal opcode at address 0x4003082 ==84096== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84096== by 0x4003082: main (tool_main.c:234) === End of file valgrind170 test 0168...[HTTP with proxy-requiring-Digest to site-requiring-Digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind168 ../src/curl -q --output log/7/curl168.out --include --tracCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind169 ../src/curl -q --output log/11/curl169.out --include --trace-ascii log/11/trace169 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://127.0.0.1:41173 --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot > log/11/stdout169 2> log/11/stderr169 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind174 ../src/curl -q --output log/9/curl174.out --include --trace-ascii log/9/trace174 --trace-config all --trace-time http://127.0.0.1:34999/174 -u testuser:testpass --anyauth -d "junkelijunk" > log/9/stdout174 2> log/9/stderr174 e-ascii log/7/trace168 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://127.0.0.1:39077 --proxy-user foo:bar --proxy-digest --digest --user digest:alot > log/7/stdout168 2> log/7/stderr168 168: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 168 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind168 ../src/curl -q --output log/7/curl168.out --include --trace-ascii log/7/trace168 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://127.0.0.1:39077 --proxy-user foo:bar --proxy-digest --digest --user digest:alot > log/7/stdout168 2> log/7/stderr168 === End of file commands.log === Start of file http_server.log 07:35:00.239996 ====> Client connect 07:35:00.240032 accept_connection 3 returned 4 07:35:00.240048 accept_connection 3 returned 0 07:35:00.240064 Read 93 bytes 07:35:00.240076 Process 93 bytes request 07:35:00.240094 Got request: GET /verifiedserver HTTP/1.1 07:35:00.240103 Are-we-friendly question received 07:35:00.240129 Wrote request (93 bytes) input to log/7/server.input 07:35:00.240148 Identifying ourselves as friends 07:35:00.240210 Response sent (56 bytes) and written to log/7/server.response 07:35:00.240225 special request received, no persistency 07:35:00.240235 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 168 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind168 ==84027== ==84027== Process terminating with default action of signal 4 (SIGILL) ==84027== Illegal opcode at address 0x4003082 ==84027== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84027== by 0x4003082: main (tool_main.c:234) === End of file valgrind168 test 0169...[HTTP with proxy-requiring-NTLM to site-requiring-Digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind169 ../src/curl -q --output log/11/curl169.out --include --trace-ascii log/11/trace169 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://127.0.0.1:41173 --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot > log/11/stdout169 2> log/11/stderr169 169: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 169 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind169 ../src/curl -q --output log/11/curl169.out --include --trace-ascii log/11/trace169 --trace-config all --trace-time http://data.from.server.requiring.digest.hohoho.com/169 --proxy http://127.0.0.1:41173 --proxy-user testuser:testpass --proxy-ntlm --digest --user digest:alot > log/11/stdout169 2> log/11/stderr169 === End of file commands.log === Start of file http_server.log 07:35:00.253025 ====> Client connect 07:35:00.253065 accept_connection 3 returned 4 07:35:00.253083 accept_connection 3 returned 0 07:35:00.253098 Read 93 bytes 07:35:00.253108 Process 93 bytes request 07:35:00.253122 Got request: GET /verifiedserver HTTP/1.1 07:35:00.253131 Are-we-friendly question received 07:35:00.253157 Wrote request (93 bytes) input to log/11/server.input 07:35:00.253172 Identifying ourselves as friends 07:35:00.253233 Response sent (56 bytes) and written to log/11/server.response 07:35:00.253243 special request received, no persistency 07:35:00.253251 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 169 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind169 ==84035== ==84035== Process terminating with default action of signal 4 (SIGILL) ==84035== Illegal opcode at address 0x4003082 ==84035== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84035== by 0x4003082: main (tool_main.c:234) === End of file valgrind169 test 0174...[HTTP POST --anyauth to server not requiring any auth at all] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind174 ../src/curl -q --output log/9/curl174.out --include --trace-ascii log/9/trace174 --trace-config all --trace-time http://127.0.0.1:34999/174 -u testuser:testpass --anyauth -d "junkelijunk" > log/9/stdout174 2> log/9/stderr174 174: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 174 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind174 ../src/curl -q --output log/9/curl174.out --include --trace-ascii log/9/trace174 --trace-config all --trace-time http://127.0.0.1:34999/174 -u testuser:testpass --anyauth -d "junkelijunk" > log/9/stdout174 2> log/9/stderr174 === End of file commands.log === Start of file http_server.log 07:35:00.407909 ====> Client connect 07:35:00.407944 accept_connection 3 returned 4 07:35:00.407961 accept_connection 3 returned 0 07:35:00.407976 Read 93 bytes 07:35:00.407985 Process 93 bytes request 07:35:00.407999 Got request: GET /verifiedserver HTTP/1.1 07:35:00.408009 Are-we-friendly question received 07:35:00.408036 Wrote request (93 bytes) input to log/9/server.input 07:35:00.408052 Identifying ourselves as friends 07:35:00.408108 Response sent (56 bytes) and written to log/9/server.response 07:35:00.408119 special request received, no persistency 07:35:00.408128 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 174 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind17CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind172 ../src/curl -q --output log/1/curl172.out --include --trace-ascii log/1/trace172 --trace-config all --trace-time http://127.0.0.1:38941/we/want/172 -b log/1/jar172.txt -b "tool=curl; name=fool" > log/1/stdout172 2> log/1/stderr172 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind175 ../src/curl -q --output log/10/curl175.out --include --trace-ascii log/10/trace175 --trace-config all --trace-time http://127.0.0.1:34851/175 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout175 2> log/10/stderr175 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind173 ../src/curl -q --output log/19/curl173.out --include --trace-ascii log/19/trace173 --trace-config all --trace-time http://127.0.0.1:33487/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl" log/19/stdout173 2> log/19/stderr173 4 ==84318== ==84318== Process terminating with default action of signal 4 (SIGILL) ==84318== Illegal opcode at address 0x4003082 ==84318== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84318== by 0x4003082: main (tool_main.c:234) === End of file valgrind174 test 0172...[HTTP with cookies file and custom added cookie] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind172 ../src/curl -q --output log/1/curl172.out --include --trace-ascii log/1/trace172 --trace-config all --trace-time http://127.0.0.1:38941/we/want/172 -b log/1/jar172.txt -b "tool=curl; name=fool" > log/1/stdout172 2> log/1/stderr172 172: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 172 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind172 ../src/curl -q --output log/1/curl172.out --include --trace-ascii log/1/trace172 --trace-config all --trace-time http://127.0.0.1:38941/we/want/172 -b log/1/jar172.txt -b "tool=curl; name=fool" > log/1/stdout172 2> log/1/stderr172 === End of file commands.log === Start of file http_server.log 07:35:00.387894 ====> Client connect 07:35:00.387927 accept_connection 3 returned 4 07:35:00.387943 accept_connection 3 returned 0 07:35:00.387956 Read 93 bytes 07:35:00.387965 Process 93 bytes request 07:35:00.387976 Got request: GET /verifiedserver HTTP/1.1 07:35:00.387985 Are-we-friendly question received 07:35:00.388009 Wrote request (93 bytes) input to log/1/server.input 07:35:00.388024 Identifying ourselves as friends 07:35:00.388077 Response sent (56 bytes) and written to log/1/server.response 07:35:00.388086 special request received, no persistency 07:35:00.388095 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file jar172.txt # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. .127.0.0.1 TRUE /silly/ FALSE 0 ismatch this .127.0.0.1 TRUE / FALSE 0 partmatch present 127.0.0.1 FALSE /we/want/ FALSE 22139150993 nodomain value === End of file jar172.txt === Start of file server.cmd Testnum 172 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind172 ==84287== ==84287== Process terminating with default action of signal 4 (SIGILL) ==84287== Illegal opcode at address 0x4003082 ==84287== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84287== by 0x4003082: main (tool_main.c:234) === End of file valgrind172 test 0175...[HTTP POST --digest to server not requiring any auth at all] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind175 ../src/curl -q --output log/10/curl175.out --include --trace-ascii log/10/trace175 --trace-config all --trace-time http://127.0.0.1:34851/175 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout175 2> log/10/stderr175 175: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 175 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind175 ../src/curl -q --output log/10/curl175.out --include --trace-ascii log/10/trace175 --trace-config all --trace-time http://127.0.0.1:34851/175 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout175 2> log/10/stderr175 === End of file commands.log === Start of file http_server.log 07:35:00.465757 ====> Client connect 07:35:00.465805 accept_connection 3 returned 4 07:35:00.465825 accept_connection 3 returned 0 07:35:00.465842 Read 93 bytes 07:35:00.465853 Process 93 bytes request 07:35:00.465870 Got request: GET /verifiedserver HTTP/1.1 07:35:00.465881 Are-we-friendly question received 07:35:00.465912 Wrote request (93 bytes) input to log/10/server.input 07:35:00.465934 Identifying ourselves as friends 07:35:00.466039 Response sent (56 bytes) and written to log/10/server.response 07:35:00.466057 special request received, no persistency 07:35:00.466067 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 175 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind175 ==84420== ==84420== Process terminating with default action of signal 4 (SIGILL) ==84420== Illegal opcode at address 0x4003082 ==84420== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84420== by 0x4003082: main (tool_main.c:234) === End of file valgrind175 test 0173...[HTTP RFC1867-formpost a file from stdin with "faked" filename] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind173 ../src/curl -q --output log/19/curl173.out --include --trace-ascii log/19/trace173 --trace-config all --trace-time http://127.0.0.1:33487/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl" log/19/stdout173 2> log/19/stderr173 173: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 173 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind173 ../src/curl -q --output log/19/curl173.out --include --trace-ascii log/19/trace173 --trace-config all --trace-time http://127.0.0.1:33487/we/want/173 -F field1=contents1 -F "fileupload=@-;filename=/dev/null;type=text/x-null;format=x-curl" log/19/stdout173 2> log/19/stderr173 === End of file commands.log === Start of file http_server.log 07:35:00.382712 ====> Client connect 07:35:00.382753 accept_connection 3 returned 4 07:35:00.382770 accept_connection 3 returned 0 07:35:00.385142 Read 93 bytes 07:35:00.385167 Process 93 bytes request 07:35:00.385182 Got request: GET /verifiedserver HTTP/1.1 07:35:00.385192 Are-we-friendly question received 07:35:00.386010 Wrote request (93 bytes) input to log/19/server.input 07:35:00.386038 Identifying ourselves as friends 07:35:00.386105 Response sent (56 bytes) and written to log/19/server.response 07:35:00.386115 special request received, no persistency 07:35:00.386CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind176 ../src/curl -q --output log/24/curl176.out --include --trace-ascii log/24/trace176 --trace-config all --trace-time http://127.0.0.1:38675/176 -u auser:apasswd --ntlm -d "junkelijunk" > log/24/stdout176 2> log/24/stderr176 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind177 ../src/curl -q --output log/23/curl177.out --include --trace-ascii log/23/trace177 --trace-config all --trace-time http://127.0.0.1:45701/177 -u auser:apasswd --digest -d "junkelijunk" > log/23/stdout177 2> log/23/stderr177 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind178 ../src/curl -q --output log/3/curl178.out --include --trace-ascii log/3/trace178 --trace-config all --trace-time http://127.0.0.1:42345/178 > log/3/stdout178 2> log/3/stderr178 124 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 173 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stdin-for-173 line1 line2 line3 line4 line5 line6 line7 line8 === End of file stdin-for-173 === Start of file valgrind173 ==84319== ==84319== Process terminating with default action of signal 4 (SIGILL) ==84319== Illegal opcode at address 0x4003082 ==84319== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84319== by 0x4003082: main (tool_main.c:234) === End of file valgrind173 test 0176...[HTTP POST --ntlm to server not requiring any auth at all] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind176 ../src/curl -q --output log/24/curl176.out --include --trace-ascii log/24/trace176 --trace-config all --trace-time http://127.0.0.1:38675/176 -u auser:apasswd --ntlm -d "junkelijunk" > log/24/stdout176 2> log/24/stderr176 176: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 176 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind176 ../src/curl -q --output log/24/curl176.out --include --trace-ascii log/24/trace176 --trace-config all --trace-time http://127.0.0.1:38675/176 -u auser:apasswd --ntlm -d "junkelijunk" > log/24/stdout176 2> log/24/stderr176 === End of file commands.log === Start of file http_server.log 07:35:00.566078 ====> Client connect 07:35:00.566113 accept_connection 3 returned 4 07:35:00.566130 accept_connection 3 returned 0 07:35:00.566150 Read 93 bytes 07:35:00.566163 Process 93 bytes request 07:35:00.566182 Got request: GET /verifiedserver HTTP/1.1 07:35:00.566191 Are-we-friendly question received 07:35:00.566215 Wrote request (93 bytes) input to log/24/server.input 07:35:00.566234 Identifying ourselves as friends 07:35:00.566342 Response sent (56 bytes) and written to log/24/server.response 07:35:00.566353 special request received, no persistency 07:35:00.566362 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 176 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind176 ==84575== ==84575== Process terminating with default action of signal 4 (SIGILL) ==84575== Illegal opcode at address 0x4003082 ==84575== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84575== by 0x4003082: main (tool_main.c:234) === End of file valgrind176 test 0177...[HTTP POST --digest to server doing a 302-location response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind177 ../src/curl -q --output log/23/curl177.out --include --trace-ascii log/23/trace177 --trace-config all --trace-time http://127.0.0.1:45701/177 -u auser:apasswd --digest -d "junkelijunk" > log/23/stdout177 2> log/23/stderr177 177: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 177 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind177 ../src/curl -q --output log/23/curl177.out --include --trace-ascii log/23/trace177 --trace-config all --trace-time http://127.0.0.1:45701/177 -u auser:apasswd --digest -d "junkelijunk" > log/23/stdout177 2> log/23/stderr177 === End of file commands.log === Start of file http_server.log 07:35:00.657344 ====> Client connect 07:35:00.657379 accept_connection 3 returned 4 07:35:00.657397 accept_connection 3 returned 0 07:35:00.657412 Read 93 bytes 07:35:00.657422 Process 93 bytes request 07:35:00.657439 Got request: GET /verifiedserver HTTP/1.1 07:35:00.657449 Are-we-friendly question received 07:35:00.657476 Wrote request (93 bytes) input to log/23/server.input 07:35:00.657497 Identifying ourselves as friends 07:35:00.657558 Response sent (56 bytes) and written to log/23/server.response 07:35:00.657572 special request received, no persistency 07:35:00.657581 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 177 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind177 ==84660== ==84660== Process terminating with default action of signal 4 (SIGILL) ==84660== Illegal opcode at address 0x4003082 ==84660== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84660== by 0x4003082: main (tool_main.c:234) === End of file valgrind177 test 0178...[HTTP response with negative Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind178 ../src/curl -q --output log/3/curl178.out --include --trace-ascii log/3/trace178 --trace-config all --trace-time http://127.0.0.1:42345/178 > log/3/stdout178 2> log/3/stderr178 178: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 178 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind178 ../src/curl -q --output log/3/curl178.out --include --trace-ascii log/3/trace178 --trace-config all --trace-time http://127.0.0.1:42345/178 > log/3/stdout178 2> log/3/stderr178 === End of file commands.log === Start of file http_server.log 07:35:00.665061 ====> Client connect 07:35:00.665098 accept_connection 3 returned 4 07:35:00.665114 accept_connection 3 returned 0 07:35:00.665129 Read 93 bytes 07:35:00.665139 Process 93 bytes request 07:35:00.665160 Got request: GET /verifiedserver HTTP/1.1 07:35:00.665173 Are-we-friendly question recCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind179 ../src/curl -q --output log/13/curl179.out --include --trace-ascii log/13/trace179 --trace-config all --trace-time http://supertrooper.fake/c/179 -b log/13/injar179 -x 127.0.0.1:33627 > log/13/stdout179 2> log/13/stderr179 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind180 ../src/curl -q --output log/5/curl180.out --include --trace-ascii log/5/trace180 --trace-config all --trace-time http://127.0.0.1:46675/we/want/180 -T log/5/test180.txt --http1.0 > log/5/stdout180 2> log/5/stderr180 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind184 ../src/curl -q --output log/17/curl184.out --include --trace-ascii log/17/trace184 --trace-config all --trace-time http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:39089 > log/17/stdout184 2> log/17/stderr184 eived 07:35:00.665197 Wrote request (93 bytes) input to log/3/server.input 07:35:00.665218 Identifying ourselves as friends 07:35:00.665296 Response sent (56 bytes) and written to log/3/server.response 07:35:00.665310 special request received, no persistency 07:35:00.665319 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 178 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind178 ==84677== ==84677== Process terminating with default action of signal 4 (SIGILL) ==84677== Illegal opcode at address 0x4003082 ==84677== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84677== by 0x4003082: main (tool_main.c:234) === End of file valgrind178 test 0179...[HTTP using proxy and cookies with path checks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind179 ../src/curl -q --output log/13/curl179.out --include --trace-ascii log/13/trace179 --trace-config all --trace-time http://supertrooper.fake/c/179 -b log/13/injar179 -x 127.0.0.1:33627 > log/13/stdout179 2> log/13/stderr179 179: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 179 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind179 ../src/curl -q --output log/13/curl179.out --include --trace-ascii log/13/trace179 --trace-config all --trace-time http://supertrooper.fake/c/179 -b log/13/injar179 -x 127.0.0.1:33627 > log/13/stdout179 2> log/13/stderr179 === End of file commands.log === Start of file http_server.log 07:35:00.691341 ====> Client connect 07:35:00.691373 accept_connection 3 returned 4 07:35:00.691388 accept_connection 3 returned 0 07:35:00.691402 Read 93 bytes 07:35:00.691411 Process 93 bytes request 07:35:00.691423 Got request: GET /verifiedserver HTTP/1.1 07:35:00.691432 Are-we-friendly question received 07:35:00.691454 Wrote request (93 bytes) input to log/13/server.input 07:35:00.691470 Identifying ourselves as friends 07:35:00.691524 Response sent (56 bytes) and written to log/13/server.response 07:35:00.691534 special request received, no persistency 07:35:00.691542 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file injar179 supertrooper.fake FALSE /a FALSE 22139150993 mooo indeed supertrooper.fake FALSE /b FALSE 0 moo1 indeed supertrooper.fake FALSE /c FALSE 22139150993 moo2 indeed === End of file injar179 === Start of file server.cmd Testnum 179 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind179 ==84750== ==84750== Process terminating with default action of signal 4 (SIGILL) ==84750== Illegal opcode at address 0x4003082 ==84750== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84750== by 0x4003082: main (tool_main.c:234) === End of file valgrind179 test 0180...[HTTP 1.0 PUT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind180 ../src/curl -q --output log/5/curl180.out --include --trace-ascii log/5/trace180 --trace-config all --trace-time http://127.0.0.1:46675/we/want/180 -T log/5/test180.txt --http1.0 > log/5/stdout180 2> log/5/stderr180 180: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 180 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind180 ../src/curl -q --output log/5/curl180.out --include --trace-ascii log/5/trace180 --trace-config all --trace-time http://127.0.0.1:46675/we/want/180 -T log/5/test180.txt --http1.0 > log/5/stdout180 2> log/5/stderr180 === End of file commands.log === Start of file http_server.log 07:35:00.714355 ====> Client connect 07:35:00.714397 accept_connection 3 returned 4 07:35:00.714413 accept_connection 3 returned 0 07:35:00.714427 Read 93 bytes 07:35:00.714437 Process 93 bytes request 07:35:00.714450 Got request: GET /verifiedserver HTTP/1.1 07:35:00.714459 Are-we-friendly question received 07:35:00.714484 Wrote request (93 bytes) input to log/5/server.input 07:35:00.714500 Identifying ourselves as friends 07:35:00.714551 Response sent (56 bytes) and written to log/5/server.response 07:35:00.714560 special request received, no persistency 07:35:00.714569 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 180 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file test180.txt Weird file to upload for testing the PUT feature === End of file test180.txt === Start of file valgrind180 ==84828== ==84828== Process terminating with default action of signal 4 (SIGILL) ==84828== Illegal opcode at address 0x4003082 ==84828== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84828== by 0x4003082: main (tool_main.c:234) === End of file valgrind180 test 0184...[HTTP replace Host: when following Location: to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind184 ../src/curl -q --output log/17/curl184.out --include --trace-ascii log/17/trace184 --trace-config all --trace-time http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:39089 > log/17/stdout184 2> log/17/stderr184 184: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 184 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind186 ../src/curl -q --output log/6/curl186.out --include --trace-ascii log/6/trace186 --trace-config all --trace-time http://127.0.0.1:35775/we/want/186 -F "name=daniel;type=moo/foo-.4" -F "html= hello;type=text/html;charset=verymoo" > log/6/stdout186 2> log/6/stderr186 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind183 ../src/curl -q --output log/14/curl183.out --include --trace-ascii log/14/trace183 --trace-config all --trace-time http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://127.0.0.1:37963 > log/14/stdout183 2> log/14/stderr183 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind181 ../src/curl -q --output log/12/curl181.out --include --trace-ascii log/12/trace181 --trace-config all --trace-time http://127.0.0.1:37285/we/want/181 --data-binary @log/12/test181.txt --http1.0 > log/12/stdout181 2> log/12/stderr181 /valgrind184 ../src/curl -q --output log/17/curl184.out --include --trace-ascii log/17/trace184 --trace-config all --trace-time http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:39089 > log/17/stdout184 2> log/17/stderr184 === End of file commands.log === Start of file http_server.log 07:35:00.771158 ====> Client connect 07:35:00.771192 accept_connection 3 returned 4 07:35:00.771207 accept_connection 3 returned 0 07:35:00.771221 Read 93 bytes 07:35:00.771231 Process 93 bytes request 07:35:00.771245 Got request: GET /verifiedserver HTTP/1.1 07:35:00.771254 Are-we-friendly question received 07:35:00.771280 Wrote request (93 bytes) input to log/17/server.input 07:35:00.771296 Identifying ourselves as friends 07:35:00.771350 Response sent (56 bytes) and written to log/17/server.response 07:35:00.771359 special request received, no persistency 07:35:00.771368 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 184 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind184 ==85062== ==85062== Process terminating with default action of signal 4 (SIGILL) ==85062== Illegal opcode at address 0x4003082 ==85062== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85062== by 0x4003082: main (tool_main.c:234) === End of file valgrind184 test 0186...[HTTP RFC1867-type formposting with types on text fields] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind186 ../src/curl -q --output log/6/curl186.out --include --trace-ascii log/6/trace186 --trace-config all --trace-time http://127.0.0.1:35775/we/want/186 -F "name=daniel;type=moo/foo-.4" -F "html= hello;type=text/html;charset=verymoo" > log/6/stdout186 2> log/6/stderr186 186: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 186 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind186 ../src/curl -q --output log/6/curl186.out --include --trace-ascii log/6/trace186 --trace-config all --trace-time http://127.0.0.1:35775/we/want/186 -F "name=daniel;type=moo/foo-.4" -F "html= hello;type=text/html;charset=verymoo" > log/6/stdout186 2> log/6/stderr186 === End of file commands.log === Start of file http_server.log 07:35:00.772581 ====> Client connect 07:35:00.772613 accept_connection 3 returned 4 07:35:00.772628 accept_connection 3 returned 0 07:35:00.772653 Read 93 bytes 07:35:00.772663 Process 93 bytes request 07:35:00.772675 Got request: GET /verifiedserver HTTP/1.1 07:35:00.772684 Are-we-friendly question received 07:35:00.772709 Wrote request (93 bytes) input to log/6/server.input 07:35:00.772725 Identifying ourselves as friends 07:35:00.772777 Response sent (56 bytes) and written to log/6/server.response 07:35:00.772787 special request received, no persistency 07:35:00.772796 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 186 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind186 ==85058== ==85058== Process terminating with default action of signal 4 (SIGILL) ==85058== Illegal opcode at address 0x4003082 ==85058== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85058== by 0x4003082: main (tool_main.c:234) === End of file valgrind186 test 0183...[HTTP GET two URLs over a single proxy with persistent connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind183 ../src/curl -q --output log/14/curl183.out --include --trace-ascii log/14/trace183 --trace-config all --trace-time http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://127.0.0.1:37963 > log/14/stdout183 2> log/14/stderr183 183: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 183 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind183 ../src/curl -q --output log/14/curl183.out --include --trace-ascii log/14/trace183 --trace-config all --trace-time http://deathstar.another.galaxy/183 http://a.galaxy.far.far.away/183 --proxy http://127.0.0.1:37963 > log/14/stdout183 2> log/14/stderr183 === End of file commands.log === Start of file http_server.log 07:35:00.753965 ====> Client connect 07:35:00.753999 accept_connection 3 returned 4 07:35:00.754015 accept_connection 3 returned 0 07:35:00.754030 Read 93 bytes 07:35:00.754039 Process 93 bytes request 07:35:00.754051 Got request: GET /verifiedserver HTTP/1.1 07:35:00.754061 Are-we-friendly question received 07:35:00.754085 Wrote request (93 bytes) input to log/14/server.input 07:35:00.754100 Identifying ourselves as friends 07:35:00.754149 Response sent (56 bytes) and written to log/14/server.response 07:35:00.754157 special request received, no persistency 07:35:00.754165 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 183 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind183 ==84975== ==84975== Process terminating with default action of signal 4 (SIGILL) ==84975== Illegal opcode at address 0x4003082 ==84975== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84975== by 0x4003082: main (tool_main.c:234) === End of file valgrind183 test 0181...[HTTP 1.0 POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind181 ../src/curl -q --output log/12/curl181.out --include --trace-ascii log/12/trace181 --trace-config all --trace-time http://127.0.0.1:37285/we/want/181 --data-binCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind185 ../src/curl -q --output log/22/curl185.out --include --trace-ascii log/22/trace185 --trace-config all --trace-time http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:46761 > log/22/stdout185 2> log/22/stderr185 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind187 ../src/curl -q --output log/15/curl187.out --include --trace-ascii log/15/trace187 --trace-config all --trace-time http://127.0.0.1:36993?oh=what-weird=test/187 -L > log/15/stdout187 2> log/15/stderr187 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind182 ../src/curl -q --output log/8/curl182.out --include --trace-ascii log/8/trace182 --trace-config all --trace-time ftp://127.0.0.1:44159/182 > log/8/stdout182 2> log/8/stderr182 ary @log/12/test181.txt --http1.0 > log/12/stdout181 2> log/12/stderr181 181: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 181 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind181 ../src/curl -q --output log/12/curl181.out --include --trace-ascii log/12/trace181 --trace-config all --trace-time http://127.0.0.1:37285/we/want/181 --data-binary @log/12/test181.txt --http1.0 > log/12/stdout181 2> log/12/stderr181 === End of file commands.log === Start of file http_server.log 07:35:00.739745 ====> Client connect 07:35:00.739784 accept_connection 3 returned 4 07:35:00.739802 accept_connection 3 returned 0 07:35:00.739816 Read 93 bytes 07:35:00.739827 Process 93 bytes request 07:35:00.739841 Got request: GET /verifiedserver HTTP/1.1 07:35:00.739850 Are-we-friendly question received 07:35:00.739886 Wrote request (93 bytes) input to log/12/server.input 07:35:00.739902 Identifying ourselves as friends 07:35:00.739957 Response sent (56 bytes) and written to log/12/server.response 07:35:00.739967 special request received, no persistency 07:35:00.739978 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 181 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file test181.txt Weird file to upload for testing the POST feature === End of file test181.txt === Start of file valgrind181 ==84905== ==84905== Process terminating with default action of signal 4 (SIGILL) ==84905== Illegal opcode at address 0x4003082 ==84905== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==84905== by 0x4003082: main (tool_main.c:234) === End of file valgrind181 test 0185...[HTTP replace Host: when following Location: on the same host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind185 ../src/curl -q --output log/22/curl185.out --include --trace-ascii log/22/trace185 --trace-config all --trace-time http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:46761 > log/22/stdout185 2> log/22/stderr185 185: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 185 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind185 ../src/curl -q --output log/22/curl185.out --include --trace-ascii log/22/trace185 --trace-config all --trace-time http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.stay.foreeeeeever" --proxy http://127.0.0.1:46761 > log/22/stdout185 2> log/22/stderr185 === End of file commands.log === Start of file http_server.log 07:35:00.773138 ====> Client connect 07:35:00.773165 accept_connection 3 returned 4 07:35:00.773181 accept_connection 3 returned 0 07:35:00.773194 Read 93 bytes 07:35:00.773204 Process 93 bytes request 07:35:00.773215 Got request: GET /verifiedserver HTTP/1.1 07:35:00.773224 Are-we-friendly question received 07:35:00.773285 Wrote request (93 bytes) input to log/22/server.input 07:35:00.773302 Identifying ourselves as friends 07:35:00.773352 Response sent (56 bytes) and written to log/22/server.response 07:35:00.773361 special request received, no persistency 07:35:00.773370 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 185 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind185 ==85073== ==85073== Process terminating with default action of signal 4 (SIGILL) ==85073== Illegal opcode at address 0x4003082 ==85073== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85073== by 0x4003082: main (tool_main.c:234) === End of file valgrind185 test 0182...[FTP download an empty file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind182 ../src/curl -q --output log/8/curl182.out --include --trace-ascii log/8/trace182 --trace-config all --trace-time ftp://127.0.0.1:44159/182 > log/8/stdout182 2> log/8/stderr182 182: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 182 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind182 ../src/curl -q --output log/8/curl182.out --include --trace-ascii log/8/trace182 --trace-config all --trace-time ftp://127.0.0.1:44159/182 > log/8/stdout182 2> log/8/stderr182 === End of file commands.log === Start of file ftp_server.log 07:35:00.893757 ====> Client connect 07:35:00.893975 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:00.894258 < "USER anonymous" 07:35:00.894289 > "331 We are happy you popped in![CR][LF]" 07:35:00.894438 < "PASS ftp@example.com" 07:35:00.894460 > "230 Welcome you silly person[CR][LF]" 07:35:00.894588 < "PWD" 07:35:00.894614 > "257 "/" is current directory[CR][LF]" 07:35:00.894746 < "EPSV" 07:35:00.894770 ====> Passive DATA channel requested by client 07:35:00.894782 DATA sockfilt for passive data channel starting... 07:35:00.896619 DATA sockfilt for passive data channel started (pid 84866) 07:35:00.896834 DATA sockfilt for passive data channel listens on port 35501 07:35:00.896871 > "229 Entering Passive Mode (|||35501|)[LF]" 07:35:00.896887 Client has been notified that DATA conn will be accepted on port 35501 07:35:00.897085 Client connects to port 35501 07:35:00.897108 ====> Client established passive DATA connection on port 35501 07:35:00.897169 < "TYPE I" 07:35:00.897194 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:00.897327 < "SIZE verifiedserver" 07:35:00.897358 > "213 17[CR][LF]" 07:35:00.897483 < "RETR verifiedserver" 07:35:00.897508 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:00.897576 =====> Closing passive DATA connection... 07:35:00.897590 Server disconnects passive DATA connection 07:35:00.897761 Server disconnected passive DATA connection 07:35:00.897781 DATA sockfilt for passive data channel quits (pid 848CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind188 ../src/curl -q --output log/21/curl188.out --include --trace-ascii log/21/trace188 --trace-config all --trace-time http://127.0.0.1:41087/188 -C 50 -L > log/21/stdout188 2> log/21/stderr188 66) 07:35:00.898091 DATA sockfilt for passive data channel quit (pid 84866) 07:35:00.898132 =====> Closed passive DATA connection 07:35:00.898193 > "226 File transfer complete[CR][LF]" 07:35:00.944542 < "QUIT" 07:35:00.944593 > "221 bye bye baby[CR][LF]" 07:35:00.945221 MAIN sockfilt said DISC 07:35:00.945252 ====> Client disconnected 07:35:00.945338 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.739624 ====> Client connect 07:35:01.739976 Received DATA (on stdin) 07:35:01.739991 > 160 bytes data, server => client 07:35:01.740003 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.740014 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.740024 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.740091 < 16 bytes data, client => server 07:35:01.740105 'USER anonymous\r\n' 07:35:01.740280 Received DATA (on stdin) 07:35:01.740296 > 33 bytes data, server => client 07:35:01.740306 '331 We are happy you popped in!\r\n' 07:35:01.740350 < 22 bytes data, client => server 07:35:01.740360 'PASS ftp@example.com\r\n' 07:35:01.740448 Received DATA (on stdin) 07:35:01.740458 > 30 bytes data, server => client 07:35:01.740469 '230 Welcome you silly person\r\n' 07:35:01.740508 < 5 bytes data, client => server 07:35:01.740517 'PWD\r\n' 07:35:01.740601 Received DATA (on stdin) 07:35:01.740612 > 30 bytes data, server => client 07:35:01.740623 '257 "/" is current directory\r\n' 07:35:01.740669 < 6 bytes data, client => server 07:35:01.740678 'EPSV\r\n' 07:35:01.742883 Received DATA (on stdin) 07:35:01.742895 > 38 bytes data, server => client 07:35:01.742906 '229 Entering Passive Mode (|||35501|)\n' 07:35:01.743003 < 8 bytes data, client => server 07:35:01.743016 'TYPE I\r\n' 07:35:01.743183 Received DATA (on stdin) 07:35:01.743193 > 33 bytes data, server => client 07:35:01.743204 '200 I modify TYPE as you wanted\r\n' 07:35:01.743246 < 21 bytes data, client => server 07:35:01.743256 'SIZE verifiedserver\r\n' 07:35:01.743345 Received DATA (on stdin) 07:35:01.743356 > 8 bytes data, server => client 07:35:01.743365 '213 17\r\n' 07:35:01.743403 < 21 bytes data, client => server 07:35:01.743413 'RETR verifiedserver\r\n' 07:35:01.743579 Received DATA (on stdin) 07:35:01.743590 > 29 bytes data, server => client 07:35:01.743600 '150 Binary junk (17 bytes).\r\n' 07:35:01.744157 Received DATA (on stdin) 07:35:01.744171 > 28 bytes data, server => client 07:35:01.744182 '226 File transfer complete\r\n' 07:35:01.790359 < 6 bytes data, client => server 07:35:01.790387 'QUIT\r\n' 07:35:01.790590 Received DATA (on stdin) 07:35:01.790604 > 18 bytes data, server => client 07:35:01.790615 '221 bye bye baby\r\n' 07:35:01.791151 ====> Client disconnect 07:35:01.791336 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:00.742328 Running IPv4 version 07:35:00.742388 Listening on port 35501 07:35:00.742426 Wrote pid 84866 to log/8/server/ftp_sockdata.pid 07:35:00.742559 Received PING (on stdin) 07:35:00.742629 Received PORT (on stdin) 07:35:00.743034 ====> Client connect 07:35:00.743644 Received DATA (on stdin) 07:35:00.743661 > 17 bytes data, server => client 07:35:00.743671 'WE ROOLZ: 81995\r\n' 07:35:00.743693 Received DISC (on stdin) 07:35:00.743705 ====> Client forcibly disconnected 07:35:00.743820 Received QUIT (on stdin) 07:35:00.743832 quits 07:35:00.743884 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 182 === End of file server.cmd === Start of file valgrind182 ==85139== ==85139== Process terminating with default action of signal 4 (SIGILL) ==85139== Illegal opcode at address 0x4003082 ==85139== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85139== by 0x4003082: main (tool_main.c:234) === End of file valgrind182 test 0187...[HTTP redirect with bad host name separation and slash in parameters] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind187 ../src/curl -q --output log/15/curl187.out --include --trace-ascii log/15/trace187 --trace-config all --trace-time http://127.0.0.1:36993?oh=what-weird=test/187 -L > log/15/stdout187 2> log/15/stderr187 187: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 187 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind187 ../src/curl -q --output log/15/curl187.out --include --trace-ascii log/15/trace187 --trace-config all --trace-time http://127.0.0.1:36993?oh=what-weird=test/187 -L > log/15/stdout187 2> log/15/stderr187 === End of file commands.log === Start of file http_server.log 07:35:00.791786 ====> Client connect 07:35:00.791823 accept_connection 3 returned 4 07:35:00.791841 accept_connection 3 returned 0 07:35:00.791856 Read 93 bytes 07:35:00.791867 Process 93 bytes request 07:35:00.791882 Got request: GET /verifiedserver HTTP/1.1 07:35:00.791892 Are-we-friendly question received 07:35:00.791918 Wrote request (93 bytes) input to log/15/server.input 07:35:00.791936 Identifying ourselves as friends 07:35:00.791996 Response sent (56 bytes) and written to log/15/server.response 07:35:00.792007 special request received, no persistency 07:35:00.792016 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 187 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind187 ==85175== ==85175== Process terminating with default action of signal 4 (SIGILL) ==85175== Illegal opcode at address 0x4003082 ==85175== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85175== by 0x4003082: main (tool_main.c:234) === End of file valgrind187 test 0188...[HTTP GET with resume and redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind188 ../src/curl -q --output log/21/curl188.out --include --trace-ascii log/21/trace188 --trace-config all --trace-time http://127.0.0.1:41087/188 -C 50 -L > log/21/stdout188 2> log/21/stderr188 188: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 188 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind188 ../src/curl -q --output log/21/curl188.out --include --trace-ascii log/21/trace188 --trace-config all --trace-time http://127.0.0.1:41087/188 -C 50 -L > log/21/stdout188 2> log/21/stderr188 === End of file commands.log === Start of file http_server.log 07:35:00.893076 ====> Client connect 07:35:00.893112 accept_connection 3 returned 4 07:35:00.893130 accept_connection 3 returned 0 07:35:00.893145 Read 93 bytes 07:35:00.893155 Process 93 bytes request 07:35:00.893169 Got request: GET /verifiedserver HTTP/1.1 07:35:00.893179 Are-we-friendly question received 07:35:00.893204 Wrote request (93 bytes) input to log/21/sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind189 ../src/curl -q --output log/18/curl189.out --include --trace-ascii log/18/trace189 --trace-config all --trace-time http://127.0.0.1:45825/189 -C 50 -L > log/18/stdout189 2> log/18/stderr189 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind192 ../src/curl -q --include --trace-ascii log/2/trace192 --trace-config all --trace-time http://127.0.0.1:45457/192 -w "%{num_connects}\n" > log/2/stdout192 2> log/2/stderr192 erver.input 07:35:00.893221 Identifying ourselves as friends 07:35:00.893277 Response sent (56 bytes) and written to log/21/server.response 07:35:00.893288 special request received, no persistency 07:35:00.893296 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 188 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind188 ==85384== ==85384== Process terminating with default action of signal 4 (SIGILL) ==85384== Illegal opcode at address 0x4003082 ==85384== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85384== by 0x4003082: main (tool_main.c:234) === End of file valgrind188 test 0189...[HTTP GET with resume and redirect (to a page that doesn't resume)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind189 ../src/curl -q --output log/18/curl189.out --include --trace-ascii log/18/trace189 --trace-config all --trace-time http://127.0.0.1:45825/189 -C 50 -L > log/18/stdout189 2> log/18/stderr189 189: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 189 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind189 ../src/curl -q --output log/18/curl189.out --include --trace-ascii log/18/trace189 --trace-config all --trace-time http://127.0.0.1:45825/189 -C 50 -L > log/18/stdout189 2> log/18/stderr189 === End of file commands.log === Start of file http_server.log 07:35:00.907651 ====> Client connect 07:35:00.907687 accept_connection 3 returned 4 07:35:00.907864 accept_connection 3 returned 0 07:35:00.907879 Read 93 bytes 07:35:00.907889 Process 93 bytes request 07:35:00.907901 Got request: GET /verifiedserver HTTP/1.1 07:35:00.907910 Are-we-friendly question received 07:35:00.907939 Wrote request (93 bytes) input to log/18/server.input 07:35:00.907955 Identifying ourselves as friends 07:35:00.908012 Response sent (56 bytes) and written to log/18/server.response 07:35:00.908021 special request received, no persistency 07:35:00.908030 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 189 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind189 ==85385== ==85385== Process terminating with default action of signal 4 (SIGILL) ==85385== Illegal opcode at address 0x4003082 ==85385== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85385== by 0x4003082: main (tool_main.c:234) === End of file valgrind189 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind193 ../src/curl -q --include --trace-ascii log/4/trace193 --trace-config all --trace-time http://127.0.0.1:33235/193 -w "%{num_connects}\n" -L > log/4/stdout193 2> log/4/stderr193 test 0192...[HTTP GET -w num_connects with one simple connect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind192 ../src/curl -q --include --trace-ascii log/2/trace192 --trace-config all --trace-time http://127.0.0.1:45457/192 -w "%{num_connects}\n" > log/2/stdout192 2> log/2/stderr192 192: stdout FAILED: --- log/2/check-expected 2025-07-18 07:35:01.873778199 +0000 +++ log/2/check-generated 2025-07-18 07:35:01.873778199 +0000 @@ -1,7 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 8[LF] -Connection: close[LF] -[LF] -monster[LF] -1[LF] == Contents of files in the log/2/ dir after test 192 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 8[LF] Connection: close[LF] [LF] monster[LF] 1[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind192 ../src/curl -q --include --trace-ascii log/2/trace192 --trace-config all --trace-time http://127.0.0.1:45457/192 -w "%{num_connects}\n" > log/2/stdout192 2> log/2/stderr192 === End of file commands.log === Start of file http_server.log 07:35:01.040593 ====> Client connect 07:35:01.040628 accept_connection 3 returned 4 07:35:01.040642 accept_connection 3 returned 0 07:35:01.040655 Read 93 bytes 07:35:01.040664 Process 93 bytes request 07:35:01.040677 Got request: GET /verifiedserver HTTP/1.1 07:35:01.040685 Are-we-friendly question received 07:35:01.040708 Wrote request (93 bytes) input to log/2/server.input 07:35:01.040723 Identifying ourselves as friends 07:35:01.040775 Response sent (56 bytes) and written to log/2/server.response 07:35:01.040785 special request received, no persistency 07:35:01.040793 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 192 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind192 ==85513== ==85513== Process terminating with default action of signal 4 (SIGILL) ==85513== Illegal opcode at address 0x4003082 ==85513== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85513== by 0x4003082: main (tool_main.c:234) === End of file valgrind192 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind190 ../src/curl -q --output log/20/curl190.out --include --trace-ascii log/20/trace190 --trace-config all --trace-time ftp://127.0.0.1:42909/path/to/file/190 -m 10 > log/20/stdout190 2> log/20/stderr190 * kill pid for ftp-ctrl => 79847 RUN: Process with pid 79843 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind199 ../src/curl -q --output log/10/curl199.out --include --trace-ascii log/10/trace199 --trace-config all --trace-time -d "foo=moo&moo=poo" "http://127.0.0.1:34851/{199,199}" -G > log/10/stdout199 2> log/10/stderr199 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind194 ../src/curl -q --output log/7/curl194.out --include --trace-ascii log/7/trace194 --trace-config all --trace-time http://127.0.0.1:39077/want/194 -C 87 --fail > log/7/stdout194 2> log/7/stderr194 test 0193...[HTTP GET -w num_connects with redirected fetch (2 connects)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind193 ../src/curl -q --include --trace-ascii log/4/trace193 --trace-config all --trace-time http://127.0.0.1:33235/193 -w "%{num_connects}\n" -L > log/4/stdout193 2> log/4/stderr193 193: stdout FAILED: --- log/4/check-expected 2025-07-18 07:35:01.980444867 +0000 +++ log/4/check-generated 2025-07-18 07:35:01.980444867 +0000 @@ -1,13 +0,0 @@ -HTTP/1.1 302 OK swsbounce swsclose[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 8[LF] -Connection: close[LF] -Location: ./193[LF] -[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 8[LF] -Connection: close[LF] -[LF] -monster[LF] -2[LF] == Contents of files in the log/4/ dir after test 193 === Start of file check-expected HTTP/1.1 302 OK swsbounce swsclose[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 8[LF] Connection: close[LF] Location: ./193[LF] [LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 8[LF] Connection: close[LF] [LF] monster[LF] 2[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind193 ../src/curl -q --include --trace-ascii log/4/trace193 --trace-config all --trace-time http://127.0.0.1:33235/193 -w "%{num_connects}\n" -L > log/4/stdout193 2> log/4/stderr193 === End of file commands.log === Start of file http_server.log 07:35:01.083926 ====> Client connect 07:35:01.083961 accept_connection 3 returned 4 07:35:01.083976 accept_connection 3 returned 0 07:35:01.083989 Read 93 bytes 07:35:01.083998 Process 93 bytes request 07:35:01.084010 Got request: GET /verifiedserver HTTP/1.1 07:35:01.084018 Are-we-friendly question received 07:35:01.084040 Wrote request (93 bytes) input to log/4/server.input 07:35:01.084054 Identifying ourselves as friends 07:35:01.084106 Response sent (56 bytes) and written to log/4/server.response 07:35:01.084115 special request received, no persistency 07:35:01.084123 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 193 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind193 ==85587== ==85587== Process terminating with default action of signal 4 (SIGILL) ==85587== Illegal opcode at address 0x4003082 ==85587== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85587== by 0x4003082: main (tool_main.c:234) === End of file valgrind193 test 0199...[HTTP with -d, -G and {}] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind199 ../src/curl -q --output log/10/curl199.out --include --trace-ascii log/10/trace199 --trace-config all --trace-time -d "foo=moo&moo=poo" "http://127.0.0.1:34851/{199,199}" -G > log/10/stdout199 2> log/10/stderr199 199: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 199 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind199 ../src/curl -q --output log/10/curl199.out --include --trace-ascii log/10/trace199 --trace-config all --trace-time -d "foo=moo&moo=poo" "http://127.0.0.1:34851/{199,199}" -G > log/10/stdout199 2> log/10/stderr199 === End of file commands.log === Start of file http_server.log 07:35:01.200350 ====> Client connect 07:35:01.200452 accept_connection 3 returned 4 07:35:01.200468 accept_connection 3 returned 0 07:35:01.202944 Read 93 bytes 07:35:01.202967 Process 93 bytes request 07:35:01.202981 Got request: GET /verifiedserver HTTP/1.1 07:35:01.202993 Are-we-friendly question received 07:35:01.203028 Wrote request (93 bytes) input to log/10/server.input 07:35:01.205885 Identifying ourselves as friends 07:35:01.205980 Response sent (56 bytes) and written to log/10/server.response 07:35:01.205992 special request received, no persistency 07:35:01.206001 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 199 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind199 ==85796== ==85796== Process terminating with default action of signal 4 (SIGILL) ==85796== Illegal opcode at address 0x4003082 ==85796== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85796== by 0x4003082: main (tool_main.c:234) === End of file valgrind199 test 0194...[HTTP resume transfer with the whole file already downloaded and --fail] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind194 ../src/curl -q --output log/7/curl194.out --include --trace-ascii log/7/trace194 --trace-config all --trace-time http://127.0.0.1:39077/want/194 -C 87 --fail > log/7/stdout194 2> log/7/stderr194 194: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 194 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind194 ../src/curl -q --output log/7/curl194.out --include --trace-ascii log/7/trace194 --trace-config all --trace-time http://127.0.0.1:39077/want/194 -C 87 --fail > log/7/stdout194 2> log/7/stderr194 === End of file commands.log === Start of file http_server.log 07:35:01.138320 ====> Client connect 07:35:01.138367 accept_connection 3 returned 4 07:35:01.138385 accept_connection 3 returned 0 07:35:01.138399 Read 93 bytes 07:35:01.138410 Process 93 bytes request 07:35:01.138424 Got request: GET /verifiedserver HTTP/1.1 07:35:01.138434 Are-we-friendly question received 07:35:01.138462 Wrote request (93 bytes) input to log/7/server.input 07:35:01.138480 Identifying ourselves as friends 07:35:01.138538 Response sent (56 bytes) and written to log/7/server.response 07:35:01.138550 special request received, no persistency 07:35:01.138559 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind200 ../src/curl -q --output log/24/curl200.out --trace-ascii log/24/trace200 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/24/test200.txt > log/24/stdout200 2> log/24/stderr200 sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 194 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind194 ==85655== ==85655== Process terminating with default action of signal 4 (SIGILL) ==85655== Illegal opcode at address 0x4003082 ==85655== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85655== by 0x4003082: main (tool_main.c:234) === End of file valgrind194 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind198 ../src/curl -q --output log/19/curl198.out --include --trace-ascii log/19/trace198 --trace-config all --trace-time http://127.0.0.1:33487/198 --retry 1000 > log/19/stdout198 2> log/19/stderr198 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind191 ../src/curl -q --output log/16/curl191.out --include --trace-ascii log/16/trace191 --trace-config all --trace-time "ftp://use%3fr:pass%3fword@127.0.0.1:40585/191" > log/16/stdout191 2> log/16/stderr191 test 0200...[basic file:// file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind200 ../src/curl -q --output log/24/curl200.out --trace-ascii log/24/trace200 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/24/test200.txt > log/24/stdout200 2> log/24/stderr200 200: data FAILED: --- log/24/check-expected 2025-07-18 07:35:02.057111537 +0000 +++ log/24/check-generated 2025-07-18 07:35:02.057111537 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/24/ dir after test 200 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind200 ../src/curl -q --output log/24/curl200.out --trace-ascii log/24/trace200 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/24/test200.txt > log/24/stdout200 2> log/24/stderr200 === End of file commands.log === Start of file server.cmd Testnum 200 === End of file server.cmd === Start of file test200.txt foo bar bar foo moo === End of file test200.txt === Start of file valgrind200 ==85823== ==85823== Process terminating with default action of signal 4 (SIGILL) ==85823== Illegal opcode at address 0x4003082 ==85823== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85823== by 0x4003082: main (tool_main.c:234) === End of file valgrind200 test 0198...[HTTP GET --retry on 503 error with output to file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind198 ../src/curl -q --output log/19/curl198.out --include --trace-ascii log/19/trace198 --trace-config all --trace-time http://127.0.0.1:33487/198 --retry 1000 > log/19/stdout198 2> log/19/stderr198 198: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 198 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind198 ../src/curl -q --output log/19/curl198.out --include --trace-ascii log/19/trace198 --trace-config all --trace-time http://127.0.0.1:33487/198 --retry 1000 > log/19/stdout198 2> log/19/stderr198 === End of file commands.log === Start of file http_server.log 07:35:01.199075 ====> Client connect 07:35:01.199112 accept_connection 3 returned 4 07:35:01.199130 accept_connection 3 returned 0 07:35:01.199145 Read 93 bytes 07:35:01.199155 Process 93 bytes request 07:35:01.199173 Got request: GET /verifiedserver HTTP/1.1 07:35:01.199182 Are-we-friendly question received 07:35:01.199208 Wrote request (93 bytes) input to log/19/server.input 07:35:01.199224 Identifying ourselves as friends 07:35:01.199281 Response sent (56 bytes) and written to log/19/server.response 07:35:01.199291 special request received, no persistency 07:35:01.199300 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 198 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind198 ==85801== ==85801== Process terminating with default action of signal 4 (SIGILL) ==85801== Illegal opcode at address 0x4003082 ==85801== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85801== by 0x4003082: main (tool_main.c:234) === End of file valgrind198 test 0191...[FTP URL with ?-letters in username and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind191 ../src/curl -q --output log/16/curl191.out --include --trace-ascii log/16/trace191 --trace-config all --trace-time "ftp://use%3fr:pass%3fword@127.0.0.1:40585/191" > log/16/stdout191 2> log/16/stderr191 191: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 191 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind191 ../src/curl -q --output log/16/curl191.out --include --trace-ascii log/16/trace191 --trace-config all --trace-time "ftp://use%3fr:pass%3fword@127.0.0.1:40585/191" > log/16/stdout191 2> log/16/stderr191 === End of file commands.log === Start of file ftp_server.log 07:35:01.215325 ====> Client connect 07:35:01.215495 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:01.215765 < "USER anonymous" 07:35:01.215806 > "331 We are happy you popped in![CR][LF]" 07:35:01.215972 < "PASS ftp@example.com" 07:35:01.215998 > "230 Welcome you silly person[CR][LF]" 07:35:01.216205 < "PWD" 07:35:01.216231 > "257 "/" is current directory[CR][LF]" 07:35:01.216520 < "EPSV" 07:35:01.216545 ====> Passive DATA channel requested by client 07:35:01.216558 DATA sockfilt for passive data channel starting... 07:35:01.219616 DATA sockfilt for passive data channel started (pid 85500) 07:35:01.220312 DATA sockfilt for passive data channel listens on port 45961 07:35:01.220364 > "229 Entering Passive Mode (|||45961|)[LF]" 07:35:01.220385 Client has been notified that DATA conn will be accepted on port 45961 07:35:01.221664 Client connects to port 45961 07:35:01.221693 ====> Client established passive DATA connection on port 45961 07:35:01.221755 < "TYPE I" 07:35:01.221782 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.221924 < "SIZE verifiedserver" 07:35:01.221960 > "213 17[CR][LF]" 07:35:01.222105 < "RETR verifiedserver" 07:35:01.222139 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.222216 =====> Closing passive DATA connection... 07:35:01.222231 Server disconnects passive DATA connection 07:35:01.222440 Server disconnected passive DATA connection 07:35:01.222469 DATA sockfilt for passive data channel quits (pid 85500) 07:35:01.222719 DATA sockfilt for passive data channel quit (pid 85500) 07:35:01.222745 =====> Closed passive DATA connection 07:35:01.222771 > "226 File transfer complete[CR][LF]" 07:35:01.273532 < "QUIT" 07:35:01.273591 > "221 bye bye baby[CR][LF]" 07:35:01.278793 MAIN sockfilt said DISC 07:35:01.278846 ====> Client disconnected 07:35:01.278917 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.059667 ====> Client connect 07:35:01.061507 Received DATA (on stdin) 07:35:01.061523 > 160 bytes data, server => client 07:35:01.061535 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.061545 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.061555 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.061626 < 16 bytes data, client => server 07:35:01.061642 'USER anonymous\r\n' 07:35:01.061799 Received DATA (on stdin) 07:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind196 ../src/curl -q --include --trace-ascii log/9/trace196 --trace-config all --trace-time ftp://127.0.0.1:36299/196 --retry 1 -w '%{num_retries}\n' > log/9/stdout196 2> log/9/stderr196 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind197 ../src/curl -q --include --trace-ascii log/1/trace197 --trace-config all --trace-time http://127.0.0.1:38941/197 --retry 1000 > log/1/stdout197 2> log/1/stderr197 35:01.061812 > 33 bytes data, server => client 07:35:01.061823 '331 We are happy you popped in!\r\n' 07:35:01.061872 < 22 bytes data, client => server 07:35:01.061885 'PASS ftp@example.com\r\n' 07:35:01.061987 Received DATA (on stdin) 07:35:01.061998 > 30 bytes data, server => client 07:35:01.062007 '230 Welcome you silly person\r\n' 07:35:01.062112 < 5 bytes data, client => server 07:35:01.062127 'PWD\r\n' 07:35:01.062218 Received DATA (on stdin) 07:35:01.062229 > 30 bytes data, server => client 07:35:01.062239 '257 "/" is current directory\r\n' 07:35:01.062417 < 6 bytes data, client => server 07:35:01.062435 'EPSV\r\n' 07:35:01.066382 Received DATA (on stdin) 07:35:01.066395 > 38 bytes data, server => client 07:35:01.066406 '229 Entering Passive Mode (|||45961|)\n' 07:35:01.067600 < 8 bytes data, client => server 07:35:01.067613 'TYPE I\r\n' 07:35:01.067770 Received DATA (on stdin) 07:35:01.067781 > 33 bytes data, server => client 07:35:01.067790 '200 I modify TYPE as you wanted\r\n' 07:35:01.067837 < 21 bytes data, client => server 07:35:01.067848 'SIZE verifiedserver\r\n' 07:35:01.067950 Received DATA (on stdin) 07:35:01.067963 > 8 bytes data, server => client 07:35:01.067973 '213 17\r\n' 07:35:01.068016 < 21 bytes data, client => server 07:35:01.068028 'RETR verifiedserver\r\n' 07:35:01.068299 Received DATA (on stdin) 07:35:01.068311 > 29 bytes data, server => client 07:35:01.068322 '150 Binary junk (17 bytes).\r\n' 07:35:01.068762 Received DATA (on stdin) 07:35:01.068775 > 28 bytes data, server => client 07:35:01.068786 '226 File transfer complete\r\n' 07:35:01.119350 < 6 bytes data, client => server 07:35:01.119378 'QUIT\r\n' 07:35:01.119592 Received DATA (on stdin) 07:35:01.119607 > 18 bytes data, server => client 07:35:01.119618 '221 bye bye baby\r\n' 07:35:01.123810 ====> Client disconnect 07:35:01.124912 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.064894 Running IPv4 version 07:35:01.064951 Listening on port 45961 07:35:01.064992 Wrote pid 85500 to log/16/server/ftp_sockdata.pid 07:35:01.065538 Received PING (on stdin) 07:35:01.065637 Received PORT (on stdin) 07:35:01.067568 ====> Client connect 07:35:01.068221 Received DATA (on stdin) 07:35:01.068233 > 17 bytes data, server => client 07:35:01.068243 'WE ROOLZ: 79929\r\n' 07:35:01.068266 Received DISC (on stdin) 07:35:01.068278 ====> Client forcibly disconnected 07:35:01.068466 Received QUIT (on stdin) 07:35:01.068477 quits 07:35:01.068538 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 191 === End of file server.cmd === Start of file valgrind191 ==85748== ==85748== Process terminating with default action of signal 4 (SIGILL) ==85748== Illegal opcode at address 0x4003082 ==85748== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85748== by 0x4003082: main (tool_main.c:234) === End of file valgrind191 test 0196...[FTP transient error, retry request once] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind196 ../src/curl -q --include --trace-ascii log/9/trace196 --trace-config all --trace-time ftp://127.0.0.1:36299/196 --retry 1 -w '%{num_retries}\n' > log/9/stdout196 2> log/9/stderr196 196: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:02.073778204 +0000 +++ log/9/check-generated 2025-07-18 07:35:02.073778204 +0000 @@ -1 +0,0 @@ -1[LF] == Contents of files in the log/9/ dir after test 196 === Start of file check-expected 1[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind196 ../src/curl -q --include --trace-ascii log/9/trace196 --trace-config all --trace-time ftp://127.0.0.1:36299/196 --retry 1 -w '%{num_retries}\n' > log/9/stdout196 2> log/9/stderr196 === End of file commands.log === Start of file ftp_server.log 07:35:01.329783 ====> Client connect 07:35:01.331634 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:01.334730 < "USER anonymous" 07:35:01.334788 > "331 We are happy you popped in![CR][LF]" 07:35:01.334986 < "PASS ftp@example.com" 07:35:01.335022 > "230 Welcome you silly person[CR][LF]" 07:35:01.335634 < "PWD" 07:35:01.335670 > "257 "/" is current directory[CR][LF]" 07:35:01.335827 < "EPSV" 07:35:01.335850 ====> Passive DATA channel requested by client 07:35:01.335862 DATA sockfilt for passive data channel starting... 07:35:01.338395 DATA sockfilt for passive data channel started (pid 85714) 07:35:01.338493 DATA sockfilt for passive data channel listens on port 39487 07:35:01.338532 > "229 Entering Passive Mode (|||39487|)[LF]" 07:35:01.338549 Client has been notified that DATA conn will be accepted on port 39487 07:35:01.338771 Client connects to port 39487 07:35:01.338798 ====> Client established passive DATA connection on port 39487 07:35:01.338863 < "TYPE I" 07:35:01.338888 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.339023 < "SIZE verifiedserver" 07:35:01.339055 > "213 17[CR][LF]" 07:35:01.339198 < "RETR verifiedserver" 07:35:01.339228 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.339298 =====> Closing passive DATA connection... 07:35:01.339313 Server disconnects passive DATA connection 07:35:01.339518 Server disconnected passive DATA connection 07:35:01.339546 DATA sockfilt for passive data channel quits (pid 85714) 07:35:01.339782 DATA sockfilt for passive data channel quit (pid 85714) 07:35:01.339804 =====> Closed passive DATA connection 07:35:01.339829 > "226 File transfer complete[CR][LF]" 07:35:01.383696 < "QUIT" 07:35:01.383755 > "221 bye bye baby[CR][LF]" 07:35:01.384895 MAIN sockfilt said DISC 07:35:01.384930 ====> Client disconnected 07:35:01.385007 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.175656 ====> Client connect 07:35:01.176372 Received DATA (on stdin) 07:35:01.176397 > 160 bytes data, server => client 07:35:01.177678 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.177695 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.177706 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.178000 < 16 bytes data, client => server 07:35:01.178021 'USER anonymous\r\n' 07:35:01.180787 Received DATA (on stdin) 07:35:01.180805 > 33 bytes data, server => client 07:35:01.180816 '331 We are happy you popped in!\r\n' 07:35:01.180880 < 22 bytes data, client => server 07:35:01.180891 'PASS ftp@example.com\r\n' 07:35:01.181012 Received DATA (on stdin) 07:35:01.181023 > 30 bytes data, server => client 07:35:01.181033 '230 Welcome you silly person\r\n' 07:35:01.181080 < 5 bytes data, client => server 07:35:01.181090 'PWD\r\n' 07:35:01.181661 Received DATA (on stdin) 07:35:01.181673 > 30 bytes data, server => client 07:35:01.181684 '257 "/" is current directory\r\n' 07:35:01.181742 < 6 bytes data, client => server 07:35:01.181752 'EPSV\r\n' 07:35:01.184544 Received DATA (on stdin) 07:35:01.184557 > 38 bytes data, server => client 07:35:01.184568 '229 Entering Passive Mode (|||39487|)\n' 07:35:01.184709 < 8 bytes data, client => server 07:35:01.184721 'TYPE I\r\n' 07:35:01.184879 Received DATA (on stdin) 07:35:01.184890 > 33 bytes data, server => client 07:35:01.184899 '200 I modify TYPE as you wanted\r\n' 07:35:01.184941 < 21 bytes data, client => server 07:35:01.184951 'SIZE verifiedserver\r\n' 07:35:01.185042 Received DATA (on stdin) 07:35:01.185053 > 8 bytes data, server => client 07:35:01.185062 '213 17\r\n' 07:35:01.185107 < 21 bytes data, client => server 07:35:01.185119 'RETR verifiedserver\r\n' 07:35:01.185303 Received DATA (on stdin) 07:35:01.185315 > 29 bytes data, server => client 07:35:01.185325 '150 Binary junk (17 bytes).\r\n' 07:35:01.185820 Received DATA (on stdin) 07:35:01.185833 > 28 bytes data, server => client 07:35:01.185844 '226 File transfer complete\r\n' 07:35:01.229465 < 6 bytes data, client => server 07:35:01.229493 'QUIT\r\n' 07:35:01.229751 Received DATA (on stdin) 07:35:01.229762 > 18 bytes data, server => client 07:35:01.229772 '221 bye bye baby\r\n' 07:35:01.230830 ====> Client disconnect 07:35:01.231002 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.184056 Running IPv4 version 07:35:01.184127 Listening on port 39487 07:35:01.184167 Wrote pid 85714 to log/9/server/ftp_sockdata.pid 07:35:01.184332 Received PING (on stdin) 07:35:01.184406 Received PORT (on stdin) 07:35:01.184683 ====> Client connect 07:35:01.185349 Received DATA (on stdin) 07:35:01.185362 > 17 bytes data, server => client 07:35:01.185374 'WE ROOLZ: 80150\r\n' 07:35:01.185394 Received DISC (on stdin) 07:35:01.185405 ====> Client forcibly disconnected 07:35:01.185543 Received QUIT (on stdin) 07:35:01.185554 quits 07:35:01.185613 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 430 temporarily not available Testnum 196 === End of file server.cmd === Start of file valgrind196 ==85864== ==85864== Process terminating with default action of signal 4 (SIGILL) ==85864== Illegal opcode at address 0x4003082 ==85864== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85864== by 0x4003082: main (tool_main.c:234) === End of file valgrind196 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind201 ../src/curl -q --output log/23/curl201.out --include --trace-ascii log/23/trace201 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/23/non-existent-file.txt > log/23/stdout201 2> log/23/stderr201 RUN: Process with pid 79843 gracefully died test 0197...[HTTP GET --retry on 503 error with output to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind197 ../src/curl -q --include --trace-ascii log/1/trace197 --trace-config all --trace-time http://127.0.0.1:38941/197 --retry 1000 > log/1/stdout197 2> log/1/stderr197 197: stdout FAILED: --- log/1/check-expected 2025-07-18 07:35:02.083778204 +0000 +++ log/1/check-generated 2025-07-18 07:35:02.083778204 +0000 @@ -1,11 +0,0 @@ -HTTP/1.1 503 BAD swsbounce[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 21[LF] -[LF] -server not available[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Connection: close[LF] -[LF] -ok[LF] == Contents of files in the log/1/ dir after test 197 === Start of file check-expected HTTP/1.1 503 BAD swsbounce[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 21[LF] [LF] server not available[LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Connection: close[LF] [LF] ok[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind197 ../src/curl -q --include --trace-ascii log/1/trace197 --trace-config all --trace-time http://127.0.0.1:38941/197 --retry 1000 > log/1/stdout197 2> log/1/stderr197 === End of file commands.log === Start of file http_server.log 07:35:01.200805 ====> Client connect 07:35:01.200841 accept_connection 3 returned 4 07:35:01.200857 accept_connection 3 returned 0 07:35:01.200871 Read 93 bytes 07:35:01.200881 Process 93 bytes request 07:35:01.200893 Got request: GET /verifiedserver HTTP/1.1 07:35:01.200902 Are-we-friendly question received 07:35:01.200926 Wrote request (93 bytes) input to log/1/server.input 07:35:01.200940 Identifying ourselves as friends 07:35:01.201009 Response sent (56 bytes) and written to log/1/server.response 07:35:01.201019 special request received, no persistency 07:35:01.201028 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 197 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind197 ==85800== ==85800== Process terminating with default action of signal 4 (SIGILL) ==85800== Illegal opcode at address 0x4003082 ==85800== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85800== by 0x4003082: main (tool_main.c:234) === End of file valgrind197 test 0201...[missing file:// file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind201 ../src/curl -q --output log/23/curl201.out --include --trace-ascii log/23/trace201 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/23/non-existent-file.txt > log/23/stdout201 2> log/23/stderr201 curl returned 132, when expecting 37 201: exit FAILED == Contents of files in the log/23/ dir after test 201 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind201 ../src/curl -q --output log/23/curl201.out --include --trace-ascii log/23/trace201 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/23/non-existent-file.txt > log/23/stdout201 2> log/23/stderr201 === End of file commands.log === Start of file server.cmd Testnum 201 === End of file server.cmd === Start of file valgrind201 ==85957== ==85957== Process terminating with default action of signal 4 (SIGILL) ==85957== Illegal opcode at address 0x4003082 ==85957== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85957== by 0x4003082: main (tool_main.c:234) === End of file valgrind201 test 0190...[FTP download with strict timeout and slow CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind190 ../src/curl -q --output log/20/curl190.out --include --trace-ascii log/20/trace190 --trace-config all --trace-time ftp://127.0.0.1:42909/path/to/file/190 -m 10 > log/20/stdout190 2> log/20/stderr190 190: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 190 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind190 ../src/curl -q --output log/20/curl190.out --include --trace-ascii log/20/trace190 --trace-config all --trace-time ftp://127.0.0.1:42909/path/to/file/190 -m 10 > log/20/stdout190 2> log/20/stderr190 === End of file commands.log === Start of file ftp_server.log 07:35:01.195799 ====> Client connect 07:35:01.196015 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:01.196253 < "USER anonymous" 07:35:01.196286 > "331 We are happy you popped in![CR][LF]" 07:35:01.196438 < "PASS ftp@example.com" 07:35:01.196463 > "230 Welcome you silly person[CR][LF]" 07:35:01.196616 < "PWD" 07:35:01.196650 > "257 "/" is current directory[CR][LF]" 07:35:01.197005 < "EPSV" 07:35:01.197032 ====> Passive DATA channel requested by client 07:35:01.197048 DATA sockfilt for passive data channel starting... 07:35:01.203516 DATA sockfilt for passive data channel started (pid 85484) 07:35:01.203628 DATA sockfilt for passive data channel listens on port 40505 07:35:01.203671 > "229 Entering Passive Mode (|||40505|)[LF]" 07:35:01.203688 Client has been notified that DATA conn will be accepted on port 40505 07:35:01.203912 Client connects to port 40505 07:35:01.203940 ====> Client established passive DATA connection on port 40505 07:35:01.204011 < "TYPE I" 07:35:01.204041 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.204197 < "SIZE verifiedserver" 07:35:01.204234 > "213 17[CR][LF]" 07:35:01.204384 < "RETR verifiedserver" 07:35:01.204418 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.204492 =====> Closing passive DATA connection... 07:35:01.204512 Server disconnects passive DATA connection 07:35:01.205040 Server disconnected passive DATA connection 07:35:01.205071 DATA sockfilt for passive data channel quits (pid 85484) 07:35:01.206480 DATA sockfilt for passive data channel quit (pid 85484) 07:35:01.206507 =====> Closed passive DATA connection 07:35:01.206537 > "226 File transfer complete[CR][LF]" 07:35:01.249294 < "QUIT" 07:35:01.249422 > "221 bye bye baby[CR][LF]" 07:35:01.258945 MAIN sockfilt said DISC 07:35:01.258989 ====> Client disconnected 07:35:01.259071 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.041670 ====> Client connect 07:35:01.041934 Received DATA (on stdin) 07:35:01.041953 > 160 bytes data, server => client 07:35:01.042021 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.042036 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind202 ../src/curl -q --trace-ascii log/3/trace202 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/3/test202.txt FILE://localhost/startdir/src/build-curl/tests/log/3/test202.txt > log/3/stdout202 2> log/3/stderr202 7:35:01.042046 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.042104 < 16 bytes data, client => server 07:35:01.042118 'USER anonymous\r\n' 07:35:01.042277 Received DATA (on stdin) 07:35:01.042289 > 33 bytes data, server => client 07:35:01.042300 '331 We are happy you popped in!\r\n' 07:35:01.042349 < 22 bytes data, client => server 07:35:01.042360 'PASS ftp@example.com\r\n' 07:35:01.042452 Received DATA (on stdin) 07:35:01.042464 > 30 bytes data, server => client 07:35:01.042475 '230 Welcome you silly person\r\n' 07:35:01.042521 < 5 bytes data, client => server 07:35:01.042533 'PWD\r\n' 07:35:01.042810 Received DATA (on stdin) 07:35:01.042828 > 30 bytes data, server => client 07:35:01.042840 '257 "/" is current directory\r\n' 07:35:01.042907 < 6 bytes data, client => server 07:35:01.042922 'EPSV\r\n' 07:35:01.049683 Received DATA (on stdin) 07:35:01.049697 > 38 bytes data, server => client 07:35:01.049708 '229 Entering Passive Mode (|||40505|)\n' 07:35:01.049825 < 8 bytes data, client => server 07:35:01.049840 'TYPE I\r\n' 07:35:01.050032 Received DATA (on stdin) 07:35:01.050045 > 33 bytes data, server => client 07:35:01.050055 '200 I modify TYPE as you wanted\r\n' 07:35:01.050104 < 21 bytes data, client => server 07:35:01.050116 'SIZE verifiedserver\r\n' 07:35:01.050226 Received DATA (on stdin) 07:35:01.050238 > 8 bytes data, server => client 07:35:01.050248 '213 17\r\n' 07:35:01.050294 < 21 bytes data, client => server 07:35:01.050305 'RETR verifiedserver\r\n' 07:35:01.050505 Received DATA (on stdin) 07:35:01.050519 > 29 bytes data, server => client 07:35:01.050529 '150 Binary junk (17 bytes).\r\n' 07:35:01.052528 Received DATA (on stdin) 07:35:01.052541 > 28 bytes data, server => client 07:35:01.052552 '226 File transfer complete\r\n' 07:35:01.095117 < 6 bytes data, client => server 07:35:01.095145 'QUIT\r\n' 07:35:01.095420 Received DATA (on stdin) 07:35:01.095432 > 18 bytes data, server => client 07:35:01.095443 '221 bye bye baby\r\n' 07:35:01.104741 ====> Client disconnect 07:35:01.105063 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.046838 Running IPv4 version 07:35:01.046916 Listening on port 40505 07:35:01.046959 Wrote pid 85484 to log/20/server/ftp_sockdata.pid 07:35:01.049444 Received PING (on stdin) 07:35:01.049535 Received PORT (on stdin) 07:35:01.049858 ====> Client connect 07:35:01.050553 Received DATA (on stdin) 07:35:01.050565 > 17 bytes data, server => client 07:35:01.050575 'WE ROOLZ: 79843\r\n' 07:35:01.050596 Received DISC (on stdin) 07:35:01.050607 ====> Client forcibly disconnected 07:35:01.051070 Received QUIT (on stdin) 07:35:01.051082 quits 07:35:01.051137 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd DELAY CWD 60 Testnum 190 === End of file server.cmd === Start of file valgrind190 ==85590== ==85590== Process terminating with default action of signal 4 (SIGILL) ==85590== Illegal opcode at address 0x4003082 ==85590== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==85590== by 0x4003082: main (tool_main.c:234) === End of file valgrind190 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind203 ../src/curl -q --output log/13/curl203.out --trace-ascii log/13/trace203 --trace-config all --trace-time file:/startdir/src/build-curl/tests/log/13/test203.txt > log/13/stdout203 2> log/13/stderr203 test 0202...[two file:// URLs to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind202 ../src/curl -q --trace-ascii log/3/trace202 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/3/test202.txt FILE://localhost/startdir/src/build-curl/tests/log/3/test202.txt > log/3/stdout202 2> log/3/stderr202 202: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:02.170444873 +0000 +++ log/3/check-generated 2025-07-18 07:35:02.170444873 +0000 @@ -1,2 +0,0 @@ -contents in a single file[LF] -contents in a single file[LF] == Contents of files in the log/3/ dir after test 202 === Start of file check-expected contents in a single file[LF] contents in a single file[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind202 ../src/curl -q --trace-ascii log/3/trace202 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/3/test202.txt FILE://localhost/startdir/src/build-curl/tests/log/3/test202.txt > log/3/stdout202 2> log/3/stderr202 === End of file commands.log === Start of file server.cmd Testnum 202 === End of file server.cmd === Start of file test202.txt contents in a single file === End of file test202.txt === Start of file valgrind202 ==86149== ==86149== Process terminating with default action of signal 4 (SIGILL) ==86149== Illegal opcode at address 0x4003082 ==86149== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86149== by 0x4003082: main (tool_main.c:234) === End of file valgrind202 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind204 ../src/curl -q --output log/5/curl204.out --trace-ascii log/5/trace204 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/5/result204.txt -T log/5/upload204.txt > log/5/stdout204 2> log/5/stderr204 setenv MSYS2_ARG_CONV_EXCL = file: test 0203...[file:/path URL with a single slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind203 ../src/curl -q --output log/13/curl203.out --trace-ascii log/13/trace203 --trace-config all --trace-time file:/startdir/src/build-curl/tests/log/13/test203.txt > log/13/stdout203 2> log/13/stderr203 203: data FAILED: --- log/13/check-expected 2025-07-18 07:35:02.180444873 +0000 +++ log/13/check-generated 2025-07-18 07:35:02.180444873 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/13/ dir after test 203 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind203 ../src/curl -q --output log/13/curl203.out --trace-ascii log/13/trace203 --trace-config all --trace-time file:/startdir/src/build-curl/tests/log/13/test203.txt > log/13/stdout203 2> log/13/stderr203 === End of file commands.log === Start of file server.cmd Testnum 203 === End of file server.cmd === Start of file test203.txt foo bar bar foo moo === End of file test203.txt === Start of file valgrind203 ==86165== ==86165== Process terminating with default action of signal 4 (SIGILL) ==86165== Illegal opcode at address 0x4003082 ==86165== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86165== by 0x4003082: main (tool_main.c:234) === End of file valgrind203 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind205 ../src/curl -q --output log/17/curl205.out --trace-ascii log/17/trace205 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/17/nonexisting/result205.txt -T log/17/upload205.txt > log/17/stdout205 2> log/17/stderr205 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind206 ../src/curl -q --output log/6/curl206.out --include --trace-ascii log/6/trace206 --trace-config all --trace-time http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://127.0.0.1:35775 --proxy-user silly:person --proxy-digest --proxytunnel > log/6/stdout206 2> log/6/stderr206 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind208 ../src/curl -q --output log/12/curl208.out --include --trace-ascii log/12/trace208 --trace-config all --trace-time -x http://127.0.0.1:37285 ftp://daniel:mysecret@host.com/we/want/208 -T log/12/test208.txt > log/12/stdout208 2> log/12/stderr208 test 0204...["upload" with file://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind204 ../src/curl -q --output log/5/curl204.out --trace-ascii log/5/trace204 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/5/result204.txt -T log/5/upload204.txt > log/5/stdout204 2> log/5/stderr204 204: output (log/5/result204.txt) FAILED: --- log/5/check-expected 2025-07-18 07:35:02.190444873 +0000 +++ log/5/check-generated 2025-07-18 07:35:02.190444873 +0000 @@ -1,5 +0,0 @@ -data[LF] -in[LF] -file[LF] -to[LF] -write[LF] == Contents of files in the log/5/ dir after test 204 === Start of file check-expected data[LF] in[LF] file[LF] to[LF] write[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind204 ../src/curl -q --output log/5/curl204.out --trace-ascii log/5/trace204 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/5/result204.txt -T log/5/upload204.txt > log/5/stdout204 2> log/5/stderr204 === End of file commands.log === Start of file server.cmd Testnum 204 === End of file server.cmd === Start of file upload204.txt data in file to write === End of file upload204.txt === Start of file valgrind204 ==86167== ==86167== Process terminating with default action of signal 4 (SIGILL) ==86167== Illegal opcode at address 0x4003082 ==86167== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86167== by 0x4003082: main (tool_main.c:234) === End of file valgrind204 test 0205...["upload" nonexisting with file://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind205 ../src/curl -q --output log/17/curl205.out --trace-ascii log/17/trace205 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/17/nonexisting/result205.txt -T log/17/upload205.txt > log/17/stdout205 2> log/17/stderr205 curl returned 132, when expecting 23 205: exit FAILED == Contents of files in the log/17/ dir after test 205 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind205 ../src/curl -q --output log/17/curl205.out --trace-ascii log/17/trace205 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/17/nonexisting/result205.txt -T log/17/upload205.txt > log/17/stdout205 2> log/17/stderr205 === End of file commands.log === Start of file server.cmd Testnum 205 === End of file server.cmd === Start of file upload205.txt data in file to write === End of file upload205.txt === Start of file valgrind205 ==86284== ==86284== Process terminating with default action of signal 4 (SIGILL) ==86284== Illegal opcode at address 0x4003082 ==86284== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86284== by 0x4003082: main (tool_main.c:234) === End of file valgrind205 test 0206...[HTTP proxy CONNECT auth Digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind206 ../src/curl -q --output log/6/curl206.out --include --trace-ascii log/6/trace206 --trace-config all --trace-time http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://127.0.0.1:35775 --proxy-user silly:person --proxy-digest --proxytunnel > log/6/stdout206 2> log/6/stderr206 206: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 206 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind206 ../src/curl -q --output log/6/curl206.out --include --trace-ascii log/6/trace206 --trace-config all --trace-time http://test.remote.haxx.se.206:8990/path/2060002 --proxy http://127.0.0.1:35775 --proxy-user silly:person --proxy-digest --proxytunnel > log/6/stdout206 2> log/6/stderr206 === End of file commands.log === Start of file http_server.log 07:35:01.514482 ====> Client connect 07:35:01.514515 accept_connection 3 returned 4 07:35:01.514530 accept_connection 3 returned 0 07:35:01.514543 Read 93 bytes 07:35:01.514553 Process 93 bytes request 07:35:01.514565 Got request: GET /verifiedserver HTTP/1.1 07:35:01.514574 Are-we-friendly question received 07:35:01.514598 Wrote request (93 bytes) input to log/6/server.input 07:35:01.514613 Identifying ourselves as friends 07:35:01.514665 Response sent (56 bytes) and written to log/6/server.response 07:35:01.514674 special request received, no persistency 07:35:01.514683 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd connection-monitor auth_required Testnum 206 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind206 ==86405== ==86405== Process terminating with default action of signal 4 (SIGILL) ==86405== Illegal opcode at address 0x4003082 ==86405== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86405== by 0x4003082: main (tool_main.c:234) === End of file valgrind206 test 0208...[HTTP PUT to an FTP URL with username+password - over HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind208 ../src/curl -q --output log/12/curl208.out --include --trace-ascii log/12/trace208 --trace-config all --trace-time -x http://127.0.0.1:37285 ftp://daniel:mysecret@host.com/we/want/208 -T log/12/test208.txt > log/12/stdout208 2> log/12/stderr208 208: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 208 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind208 ../src/curl -q --output log/12/curl208.out --include --trace-ascii log/12/trace208 --trace-config all --trace-time -x http://127.0.0.1:37285 ftp://daniel:mysecret@host.com/we/want/208 -T log/12/test208.txt > log/12/stdout208 2> log/12/stderr208 === End of file commands.log === Start of file http_server.log 07:35:01.524931 ====> Client connect 07:35:01.524964 accept_connection 3 returned 4 07:35:01.524980 accept_connection 3 returned 0 07:35:01.524994 Read 93 bytes 07:35:01.525003 Process 93 bytes request 07:35:01.525017 Got request: GET /verifiedserver HTTP/1.1 07:35:01.525026 Are-we-friendly question received 07:35:01.525049 Wrote request (93 bytes) input to log/12/server.input 07:35:01.525065 Identifying ourselves as friends 07:35:01.525116 Response sent (56 bytes) and written to log/12/server.response 07:35:01.525126 special request received, no persistency 07:35:01.525135 ====> Client disconnect 0 === End of file http_server.log === Start ofCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind207 ../src/curl -q --output log/14/curl207.out --include --trace-ascii log/14/trace207 --trace-config all --trace-time http://127.0.0.1:37963/207 > log/14/stdout207 2> log/14/stderr207 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind209 ../src/curl -q --output log/22/curl209.out --include --trace-ascii log/22/trace209 --trace-config all --trace-time http://test.remote.example.com.209:46761/path/2090002 --proxy http://127.0.0.1:46761 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/22/stdout209 2> log/22/stderr209 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind211 ../src/curl -q --output log/8/curl211.out --include --trace-ascii log/8/trace211 --trace-config all --trace-time ftp://127.0.0.1:44159/a/path/211 ftp://127.0.0.1:44159/a/path/211 > log/8/stdout211 2> log/8/stderr211 file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 208 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file test208.txt Weird file to upload for testing the PUT feature === End of file test208.txt === Start of file valgrind208 ==86428== ==86428== Process terminating with default action of signal 4 (SIGILL) ==86428== Illegal opcode at address 0x4003082 ==86428== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86428== by 0x4003082: main (tool_main.c:234) === End of file valgrind208 test 0207...[HTTP GET with chunked Transfer-Encoding closed prematurely] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind207 ../src/curl -q --output log/14/curl207.out --include --trace-ascii log/14/trace207 --trace-config all --trace-time http://127.0.0.1:37963/207 > log/14/stdout207 2> log/14/stderr207 207: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 207 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind207 ../src/curl -q --output log/14/curl207.out --include --trace-ascii log/14/trace207 --trace-config all --trace-time http://127.0.0.1:37963/207 > log/14/stdout207 2> log/14/stderr207 === End of file commands.log === Start of file http_server.log 07:35:01.527776 ====> Client connect 07:35:01.527809 accept_connection 3 returned 4 07:35:01.527847 accept_connection 3 returned 0 07:35:01.527861 Read 93 bytes 07:35:01.527870 Process 93 bytes request 07:35:01.527881 Got request: GET /verifiedserver HTTP/1.1 07:35:01.527889 Are-we-friendly question received 07:35:01.527913 Wrote request (93 bytes) input to log/14/server.input 07:35:01.527929 Identifying ourselves as friends 07:35:01.527977 Response sent (56 bytes) and written to log/14/server.response 07:35:01.527986 special request received, no persistency 07:35:01.527994 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 207 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind207 ==86454== ==86454== Process terminating with default action of signal 4 (SIGILL) ==86454== Illegal opcode at address 0x4003082 ==86454== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86454== by 0x4003082: main (tool_main.c:234) === End of file valgrind207 test 0209...[HTTP proxy CONNECT auth NTLM] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind209 ../src/curl -q --output log/22/curl209.out --include --trace-ascii log/22/trace209 --trace-config all --trace-time http://test.remote.example.com.209:46761/path/2090002 --proxy http://127.0.0.1:46761 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/22/stdout209 2> log/22/stderr209 209: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 209 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind209 ../src/curl -q --output log/22/curl209.out --include --trace-ascii log/22/trace209 --trace-config all --trace-time http://test.remote.example.com.209:46761/path/2090002 --proxy http://127.0.0.1:46761 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/22/stdout209 2> log/22/stderr209 === End of file commands.log === Start of file http_server.log 07:35:01.561419 ====> Client connect 07:35:01.561454 accept_connection 3 returned 4 07:35:01.561468 accept_connection 3 returned 0 07:35:01.561481 Read 93 bytes 07:35:01.561491 Process 93 bytes request 07:35:01.561503 Got request: GET /verifiedserver HTTP/1.1 07:35:01.561512 Are-we-friendly question received 07:35:01.561535 Wrote request (93 bytes) input to log/22/server.input 07:35:01.561552 Identifying ourselves as friends 07:35:01.561601 Response sent (56 bytes) and written to log/22/server.response 07:35:01.561610 special request received, no persistency 07:35:01.561618 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 209 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind209 ==86580== ==86580== Process terminating with default action of signal 4 (SIGILL) ==86580== Illegal opcode at address 0x4003082 ==86580== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86580== by 0x4003082: main (tool_main.c:234) === End of file valgrind209 test 0211...[Get two FTP files with no remote EPSV support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind211 ../src/curl -q --output log/8/curl211.out --include --trace-ascii log/8/trace211 --trace-config all --trace-time ftp://127.0.0.1:44159/a/path/211 ftp://127.0.0.1:44159/a/path/211 > log/8/stdout211 2> log/8/stderr211 211: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 211 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind211 ../src/curl -q --output log/8/curl211.out --include --trace-ascii log/8/trace211 --trace-config all --trace-time ftp://127.0.0.1:44159/a/path/211 ftp://127.0.0.1:44159/a/path/211 > log/8/stdout211 2> log/8/stderr211 === End of file commands.log === Start of file ftp_server.log 07:35:01.740447 ====> Client connect 07:35:01.740642 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind210 ../src/curl -q --output log/15/curl210.out --trace-ascii log/15/trace210 --trace-config all --trace-time ftp://127.0.0.1:46295/a/path/210 ftp://127.0.0.1:46295/a/path/210 > log/15/stdout210 2> log/15/stderr210 R][LF]" 07:35:01.741019 < "USER anonymous" 07:35:01.741059 > "331 We are happy you popped in![CR][LF]" 07:35:01.741290 < "PASS ftp@example.com" 07:35:01.741379 > "230 Welcome you silly person[CR][LF]" 07:35:01.741572 < "PWD" 07:35:01.741604 > "257 "/" is current directory[CR][LF]" 07:35:01.741751 < "EPSV" 07:35:01.741773 ====> Passive DATA channel requested by client 07:35:01.741785 DATA sockfilt for passive data channel starting... 07:35:01.744075 DATA sockfilt for passive data channel started (pid 86587) 07:35:01.744196 DATA sockfilt for passive data channel listens on port 45327 07:35:01.744244 > "229 Entering Passive Mode (|||45327|)[LF]" 07:35:01.744263 Client has been notified that DATA conn will be accepted on port 45327 07:35:01.744753 Client connects to port 45327 07:35:01.744790 ====> Client established passive DATA connection on port 45327 07:35:01.744866 < "TYPE I" 07:35:01.744898 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.745059 < "SIZE verifiedserver" 07:35:01.745091 > "213 17[CR][LF]" 07:35:01.745635 < "RETR verifiedserver" 07:35:01.745675 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.745759 =====> Closing passive DATA connection... 07:35:01.745775 Server disconnects passive DATA connection 07:35:01.746026 Server disconnected passive DATA connection 07:35:01.746063 DATA sockfilt for passive data channel quits (pid 86587) 07:35:01.746338 DATA sockfilt for passive data channel quit (pid 86587) 07:35:01.746360 =====> Closed passive DATA connection 07:35:01.746387 > "226 File transfer complete[CR][LF]" 07:35:01.790925 < "QUIT" 07:35:01.790975 > "221 bye bye baby[CR][LF]" 07:35:01.791175 MAIN sockfilt said DISC 07:35:01.791202 ====> Client disconnected 07:35:01.791294 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.586266 ====> Client connect 07:35:02.586678 Received DATA (on stdin) 07:35:02.586697 > 160 bytes data, server => client 07:35:02.586709 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.586719 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.586729 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.586833 < 16 bytes data, client => server 07:35:02.586847 'USER anonymous\r\n' 07:35:02.587079 Received DATA (on stdin) 07:35:02.587092 > 33 bytes data, server => client 07:35:02.587103 '331 We are happy you popped in!\r\n' 07:35:02.587184 < 22 bytes data, client => server 07:35:02.587198 'PASS ftp@example.com\r\n' 07:35:02.587316 Received DATA (on stdin) 07:35:02.587329 > 30 bytes data, server => client 07:35:02.587400 '230 Welcome you silly person\r\n' 07:35:02.587475 < 5 bytes data, client => server 07:35:02.587488 'PWD\r\n' 07:35:02.587593 Received DATA (on stdin) 07:35:02.587605 > 30 bytes data, server => client 07:35:02.587615 '257 "/" is current directory\r\n' 07:35:02.587666 < 6 bytes data, client => server 07:35:02.587677 'EPSV\r\n' 07:35:02.590350 Received DATA (on stdin) 07:35:02.590369 > 38 bytes data, server => client 07:35:02.590379 '229 Entering Passive Mode (|||45327|)\n' 07:35:02.590476 < 8 bytes data, client => server 07:35:02.590488 'TYPE I\r\n' 07:35:02.590890 Received DATA (on stdin) 07:35:02.590903 > 33 bytes data, server => client 07:35:02.590914 '200 I modify TYPE as you wanted\r\n' 07:35:02.590967 < 21 bytes data, client => server 07:35:02.590978 'SIZE verifiedserver\r\n' 07:35:02.591079 Received DATA (on stdin) 07:35:02.591090 > 8 bytes data, server => client 07:35:02.591100 '213 17\r\n' 07:35:02.591532 < 21 bytes data, client => server 07:35:02.591547 'RETR verifiedserver\r\n' 07:35:02.591765 Received DATA (on stdin) 07:35:02.591777 > 29 bytes data, server => client 07:35:02.591787 '150 Binary junk (17 bytes).\r\n' 07:35:02.592377 Received DATA (on stdin) 07:35:02.592389 > 28 bytes data, server => client 07:35:02.592399 '226 File transfer complete\r\n' 07:35:02.636616 < 6 bytes data, client => server 07:35:02.636640 'QUIT\r\n' 07:35:02.636989 Received DATA (on stdin) 07:35:02.637009 > 18 bytes data, server => client 07:35:02.637020 '221 bye bye baby\r\n' 07:35:02.637117 ====> Client disconnect 07:35:02.637283 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.589723 Running IPv4 version 07:35:01.589795 Listening on port 45327 07:35:01.589840 Wrote pid 86587 to log/8/server/ftp_sockdata.pid 07:35:01.590005 Received PING (on stdin) 07:35:01.590097 Received PORT (on stdin) 07:35:01.590683 ====> Client connect 07:35:01.591817 Received DATA (on stdin) 07:35:01.591833 > 17 bytes data, server => client 07:35:01.591844 'WE ROOLZ: 81995\r\n' 07:35:01.591868 Received DISC (on stdin) 07:35:01.591879 ====> Client forcibly disconnected 07:35:01.592068 Received QUIT (on stdin) 07:35:01.592083 quits 07:35:01.592157 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 211 === End of file server.cmd === Start of file valgrind211 ==86672== ==86672== Process terminating with default action of signal 4 (SIGILL) ==86672== Illegal opcode at address 0x4003082 ==86672== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86672== by 0x4003082: main (tool_main.c:234) === End of file valgrind211 test 0210...[Get two FTP files from the same remote dir: no second CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind210 ../src/curl -q --output log/15/curl210.out --trace-ascii log/15/trace210 --trace-config all --trace-time ftp://127.0.0.1:46295/a/path/210 ftp://127.0.0.1:46295/a/path/210 > log/15/stdout210 2> log/15/stderr210 210: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 210 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind210 ../src/curl -q --output log/15/curl210.out --trace-ascii log/15/trace210 --trace-config all --trace-time ftp://127.0.0.1:46295/a/path/210 ftp://127.0.0.1:46295/a/path/210 > log/15/stdout210 2> log/15/stderr210 === End of file commands.log === Start of file ftp_server.log 07:35:01.739687 ====> Client connect 07:35:01.739844 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:01.740282 < "USER anonymous" 07:35:01.740329 > "331 We are happy you popped in![CR][LF]" 07:35:01.740651 < "PASS ftp@example.com" 07:35:01.740694 > "230 Welcome you silly person[CR][LF]" 07:35:01.741063 < "PWD" 07:35:01.741105 > "257 "/" is current directory[CR][LF]" 07:35:01.741516 < "EPSV" 07:35:01.741544 ====> Passive DATA channel requested by client 07:35:01.741557 DATA sockfilt for passive data channel starting... 07:35:01.745232 DATA sockfilt for passive data channel started (pid 86586) 07:35:01.745356 DATA sockfilt for passive data channel listens on port 36449 07:35:01.745406 > "229 Entering Passive Mode (|||36449|)[LF]" 07:35:01.745425 Client has been notified that DATA conn will be accepted on port 36449 07:35:01.746084 Client connects to port 36449 07:35:01.746124 ====> Client established passive DATA connection on port 36449 07:35:01.746222 < "TYPE I" 07:35:01.746266 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.746450 < "SIZE verifiedserver" 07:35:01.746491 > "213 17[CR][LF]" 07:35:01.746693 < "RETR verifiedserver" 07:35:01.746733 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.746816 =====> Closing passive DATA connection... 07:35:01.746838 Server disconnects passive DATA connection 07:35:01.746959 Server disconnected passive DATA connection 07:35:01.746986 DATA sockfilt for passive data channel quits (pid 86586) 07:35:01.747203 DATA sockfilt for passiveCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind214 ../src/curl -q --output log/2/curl214.out --include --trace-ascii log/2/trace214 --trace-config all --trace-time "http://127.0.0.1:45457/\{\}\/214" > log/2/stdout214 2> log/2/stderr214 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind213 ../src/curl -q --output log/18/curl213.out --include --trace-ascii log/18/trace213 --trace-config all --trace-time http://test.remote.example.com.213:45825/path/2130002 --proxy1.0 http://127.0.0.1:45825 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/18/stdout213 2> log/18/stderr213 data channel quit (pid 86586) 07:35:01.747232 =====> Closed passive DATA connection 07:35:01.747262 > "226 File transfer complete[CR][LF]" 07:35:01.790395 < "QUIT" 07:35:01.790451 > "221 bye bye baby[CR][LF]" 07:35:01.790871 MAIN sockfilt said DISC 07:35:01.790933 ====> Client disconnected 07:35:01.791031 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.585568 ====> Client connect 07:35:01.585852 Received DATA (on stdin) 07:35:01.585869 > 160 bytes data, server => client 07:35:01.585881 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.585892 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.585902 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.586092 < 16 bytes data, client => server 07:35:01.586112 'USER anonymous\r\n' 07:35:01.586431 Received DATA (on stdin) 07:35:01.586452 > 33 bytes data, server => client 07:35:01.586464 '331 We are happy you popped in!\r\n' 07:35:01.586521 < 22 bytes data, client => server 07:35:01.586534 'PASS ftp@example.com\r\n' 07:35:01.586748 Received DATA (on stdin) 07:35:01.586770 > 30 bytes data, server => client 07:35:01.586781 '230 Welcome you silly person\r\n' 07:35:01.586935 < 5 bytes data, client => server 07:35:01.586953 'PWD\r\n' 07:35:01.587159 Received DATA (on stdin) 07:35:01.587178 > 30 bytes data, server => client 07:35:01.587189 '257 "/" is current directory\r\n' 07:35:01.587301 < 6 bytes data, client => server 07:35:01.587318 'EPSV\r\n' 07:35:01.591423 Received DATA (on stdin) 07:35:01.591441 > 38 bytes data, server => client 07:35:01.591452 '229 Entering Passive Mode (|||36449|)\n' 07:35:01.592014 < 8 bytes data, client => server 07:35:01.592030 'TYPE I\r\n' 07:35:01.592265 Received DATA (on stdin) 07:35:01.592280 > 33 bytes data, server => client 07:35:01.592291 '200 I modify TYPE as you wanted\r\n' 07:35:01.592352 < 21 bytes data, client => server 07:35:01.592363 'SIZE verifiedserver\r\n' 07:35:01.592475 Received DATA (on stdin) 07:35:01.592488 > 8 bytes data, server => client 07:35:01.592498 '213 17\r\n' 07:35:01.592579 < 21 bytes data, client => server 07:35:01.592597 'RETR verifiedserver\r\n' 07:35:01.592865 Received DATA (on stdin) 07:35:01.592888 > 29 bytes data, server => client 07:35:01.592901 '150 Binary junk (17 bytes).\r\n' 07:35:01.593257 Received DATA (on stdin) 07:35:01.593273 > 28 bytes data, server => client 07:35:01.593284 '226 File transfer complete\r\n' 07:35:01.636191 < 6 bytes data, client => server 07:35:01.636220 'QUIT\r\n' 07:35:01.636447 Received DATA (on stdin) 07:35:01.636459 > 18 bytes data, server => client 07:35:01.636469 '221 bye bye baby\r\n' 07:35:01.636779 ====> Client disconnect 07:35:01.636923 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.590584 Running IPv4 version 07:35:01.590640 Listening on port 36449 07:35:01.590679 Wrote pid 86586 to log/15/server/ftp_sockdata.pid 07:35:01.591153 Received PING (on stdin) 07:35:01.591254 Received PORT (on stdin) 07:35:01.591977 ====> Client connect 07:35:01.592751 Received DATA (on stdin) 07:35:01.592774 > 17 bytes data, server => client 07:35:01.592785 'WE ROOLZ: 79835\r\n' 07:35:01.592876 Received DISC (on stdin) 07:35:01.592898 ====> Client forcibly disconnected 07:35:01.592984 Received QUIT (on stdin) 07:35:01.592996 quits 07:35:01.593045 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 210 === End of file server.cmd === Start of file valgrind210 ==86671== ==86671== Process terminating with default action of signal 4 (SIGILL) ==86671== Illegal opcode at address 0x4003082 ==86671== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86671== by 0x4003082: main (tool_main.c:234) === End of file valgrind210 setenv MSYS2_ARG_CONV_EXCL = http:// test 0214...[HTTP URL with escaped { and }] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind214 ../src/curl -q --output log/2/curl214.out --include --trace-ascii log/2/trace214 --trace-config all --trace-time "http://127.0.0.1:45457/\{\}\/214" > log/2/stdout214 2> log/2/stderr214 214: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 214 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind214 ../src/curl -q --output log/2/curl214.out --include --trace-ascii log/2/trace214 --trace-config all --trace-time "http://127.0.0.1:45457/\{\}\/214" > log/2/stdout214 2> log/2/stderr214 === End of file commands.log === Start of file http_server.log 07:35:01.759955 ====> Client connect 07:35:01.759992 accept_connection 3 returned 4 07:35:01.760009 accept_connection 3 returned 0 07:35:01.760023 Read 93 bytes 07:35:01.760033 Process 93 bytes request 07:35:01.760046 Got request: GET /verifiedserver HTTP/1.1 07:35:01.760055 Are-we-friendly question received 07:35:01.760080 Wrote request (93 bytes) input to log/2/server.input 07:35:01.760096 Identifying ourselves as friends 07:35:01.760280 Response sent (56 bytes) and written to log/2/server.response 07:35:01.760299 special request received, no persistency 07:35:01.760310 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 214 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind214 ==86825== ==86825== Process terminating with default action of signal 4 (SIGILL) ==86825== Illegal opcode at address 0x4003082 ==86825== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86825== by 0x4003082: main (tool_main.c:234) === End of file valgrind214 test 0213...[HTTP 1.0 proxy CONNECT auth NTLM and then POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind213 ../src/curl -q --output log/18/curl213.out --include --trace-ascii log/18/trace213 --trace-config all --trace-time http://test.remote.example.com.213:45825/path/2130002 --proxy1.0 http://127.0.0.1:45825 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/18/stdout213 2> log/18/stderr213 213: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 213 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind213 ../src/curl -q --output log/18/curl213.out --include --trace-ascii log/18/trace213 --trace-config all --trace-time http://test.remote.example.com.213:45825/path/2130002 --proxy1.0 http://127.0.0.1:45825 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/18/stdout213 2> log/18/stderr213 === End of file commands.log === Start of file http_server.log 07:35:01.747708 ====> Client connect 07:35:01.747739 accept_connection 3 returned 4 07:35:01.747755 accept_connection 3 returned 0 07:35:01.747768 Read 93 bytes 07:35:01.747778 Process 93 bytes request CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind212 ../src/curl -q --output log/21/curl212.out --include --trace-ascii log/21/trace212 --trace-config all --trace-time ftp://127.0.0.1:38701/a/path/212 ftp://127.0.0.1:38701/a/path/212 -P - > log/21/stdout212 2> log/21/stderr212 07:35:01.747792 Got request: GET /verifiedserver HTTP/1.1 07:35:01.747801 Are-we-friendly question received 07:35:01.747827 Wrote request (93 bytes) input to log/18/server.input 07:35:01.747842 Identifying ourselves as friends 07:35:01.747896 Response sent (56 bytes) and written to log/18/server.response 07:35:01.747906 special request received, no persistency 07:35:01.747914 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 213 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind213 ==86821== ==86821== Process terminating with default action of signal 4 (SIGILL) ==86821== Illegal opcode at address 0x4003082 ==86821== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86821== by 0x4003082: main (tool_main.c:234) === End of file valgrind213 test 0212...[Get two FTP files with no remote EPRT support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind212 ../src/curl -q --output log/21/curl212.out --include --trace-ascii log/21/trace212 --trace-config all --trace-time ftp://127.0.0.1:38701/a/path/212 ftp://127.0.0.1:38701/a/path/212 -P - > log/21/stdout212 2> log/21/stderr212 212: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 212 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind212 ../src/curl -q --output log/21/curl212.out --include --trace-ascii log/21/trace212 --trace-config all --trace-time ftp://127.0.0.1:38701/a/path/212 ftp://127.0.0.1:38701/a/path/212 -P - > log/21/stdout212 2> log/21/stderr212 === End of file commands.log === Start of file ftp_server.log 07:35:01.899896 ====> Client connect 07:35:01.900087 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:01.900477 < "USER anonymous" 07:35:01.900514 > "331 We are happy you popped in![CR][LF]" 07:35:01.900838 < "PASS ftp@example.com" 07:35:01.900889 > "230 Welcome you silly person[CR][LF]" 07:35:01.901130 < "PWD" 07:35:01.901169 > "257 "/" is current directory[CR][LF]" 07:35:01.901407 < "EPSV" 07:35:01.901435 ====> Passive DATA channel requested by client 07:35:01.901447 DATA sockfilt for passive data channel starting... 07:35:01.903907 DATA sockfilt for passive data channel started (pid 86812) 07:35:01.904043 DATA sockfilt for passive data channel listens on port 41917 07:35:01.904100 > "229 Entering Passive Mode (|||41917|)[LF]" 07:35:01.904117 Client has been notified that DATA conn will be accepted on port 41917 07:35:01.904386 Client connects to port 41917 07:35:01.904436 ====> Client established passive DATA connection on port 41917 07:35:01.904514 < "TYPE I" 07:35:01.904562 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:01.904790 < "SIZE verifiedserver" 07:35:01.904837 > "213 17[CR][LF]" 07:35:01.905041 < "RETR verifiedserver" 07:35:01.905076 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:01.905277 =====> Closing passive DATA connection... 07:35:01.905296 Server disconnects passive DATA connection 07:35:01.905422 Server disconnected passive DATA connection 07:35:01.905460 DATA sockfilt for passive data channel quits (pid 86812) 07:35:01.905748 DATA sockfilt for passive data channel quit (pid 86812) 07:35:01.905770 =====> Closed passive DATA connection 07:35:01.905801 > "226 File transfer complete[CR][LF]" 07:35:01.950408 < "QUIT" 07:35:01.950465 > "221 bye bye baby[CR][LF]" 07:35:01.950730 MAIN sockfilt said DISC 07:35:01.950786 ====> Client disconnected 07:35:01.950870 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.745758 ====> Client connect 07:35:01.746143 Received DATA (on stdin) 07:35:01.746163 > 160 bytes data, server => client 07:35:01.746175 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.746188 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.746198 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.746304 < 16 bytes data, client => server 07:35:01.746318 'USER anonymous\r\n' 07:35:01.746544 Received DATA (on stdin) 07:35:01.746559 > 33 bytes data, server => client 07:35:01.746569 '331 We are happy you popped in!\r\n' 07:35:01.746622 < 22 bytes data, client => server 07:35:01.746633 'PASS ftp@example.com\r\n' 07:35:01.746867 Received DATA (on stdin) 07:35:01.746890 > 30 bytes data, server => client 07:35:01.746902 '230 Welcome you silly person\r\n' 07:35:01.746959 < 5 bytes data, client => server 07:35:01.746971 'PWD\r\n' 07:35:01.747148 Received DATA (on stdin) 07:35:01.747168 > 30 bytes data, server => client 07:35:01.747179 '257 "/" is current directory\r\n' 07:35:01.747315 < 6 bytes data, client => server 07:35:01.747332 'EPSV\r\n' 07:35:01.750125 Received DATA (on stdin) 07:35:01.750143 > 38 bytes data, server => client 07:35:01.750154 '229 Entering Passive Mode (|||41917|)\n' 07:35:01.750325 < 8 bytes data, client => server 07:35:01.750337 'TYPE I\r\n' 07:35:01.750552 Received DATA (on stdin) 07:35:01.750564 > 33 bytes data, server => client 07:35:01.750575 '200 I modify TYPE as you wanted\r\n' 07:35:01.750638 < 21 bytes data, client => server 07:35:01.750650 'SIZE verifiedserver\r\n' 07:35:01.750864 Received DATA (on stdin) 07:35:01.750886 > 8 bytes data, server => client 07:35:01.750896 '213 17\r\n' 07:35:01.750945 < 21 bytes data, client => server 07:35:01.750956 'RETR verifiedserver\r\n' 07:35:01.751080 Received DATA (on stdin) 07:35:01.751091 > 29 bytes data, server => client 07:35:01.751101 '150 Binary junk (17 bytes).\r\n' 07:35:01.751792 Received DATA (on stdin) 07:35:01.751817 > 28 bytes data, server => client 07:35:01.751829 '226 File transfer complete\r\n' 07:35:01.796180 < 6 bytes data, client => server 07:35:01.796219 'QUIT\r\n' 07:35:01.796458 Received DATA (on stdin) 07:35:01.796471 > 18 bytes data, server => client 07:35:01.796481 '221 bye bye baby\r\n' 07:35:01.796633 ====> Client disconnect 07:35:01.796889 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:01.749705 Running IPv4 version 07:35:01.749777 Listening on port 41917 07:35:01.749818 Wrote pid 86812 to log/21/server/ftp_sockdata.pid 07:35:01.749837 Received PING (on stdin) 07:35:01.749927 Received PORT (on stdin) 07:35:01.750297 ====> Client connect 07:35:01.751130 Received DATA (on stdin) 07:35:01.751147 > 17 bytes data, server => client 07:35:01.751291 'WE ROOLZ: 81322\r\n' 07:35:01.751323 Received DISC (on stdin) 07:35:01.751335 ====> Client forcibly disconnected 07:35:01.751500 Received QUIT (on stdin) 07:35:01.751517 quits 07:35:01.751572 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPRT 500 no such command Testnum 212 === End of file server.cmd === Start of file valgrind212 ==86909== ==86909== Process terminating with default action of signal 4 (SIGILL) ==86909== Illegal opcode at address 0x4003082 ==86909== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==86909== by 0x4003082: main (tool_main.c:234) === End of CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind223 ../src/curl -q --output log/23/curl223.out --include --trace-ascii log/23/trace223 --trace-config all --trace-time http://127.0.0.1:45701/223 --compressed > log/23/stdout223 2> log/23/stderr223 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind222 ../src/curl -q --output log/1/curl222.out --include --trace-ascii log/1/trace222 --trace-config all --trace-time http://127.0.0.1:38941/222 --compressed > log/1/stdout222 2> log/1/stderr222 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind195 ../src/curl -q --output log/11/curl195.out --include --trace-ascii log/11/trace195 --trace-config all --trace-time ftp://127.0.0.1:43393/195 > log/11/stdout195 2> log/11/stderr195 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind215 ../src/curl -q --output log/4/curl215.out --include --trace-ascii log/4/trace215 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/215/ ftp://127.0.0.1:37869/a/path/215/ > log/4/stdout215 2> log/4/stderr215 file valgrind212 test 0223...[HTTP GET deflate compressed content with broken deflate header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind223 ../src/curl -q --output log/23/curl223.out --include --trace-ascii log/23/trace223 --trace-config all --trace-time http://127.0.0.1:45701/223 --compressed > log/23/stdout223 2> log/23/stderr223 223: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 223 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind223 ../src/curl -q --output log/23/curl223.out --include --trace-ascii log/23/trace223 --trace-config all --trace-time http://127.0.0.1:45701/223 --compressed > log/23/stdout223 2> log/23/stderr223 === End of file commands.log === Start of file http_server.log 07:35:01.966996 ====> Client connect 07:35:01.967029 accept_connection 3 returned 4 07:35:01.967045 accept_connection 3 returned 0 07:35:01.967060 Read 93 bytes 07:35:01.967069 Process 93 bytes request 07:35:01.967081 Got request: GET /verifiedserver HTTP/1.1 07:35:01.967090 Are-we-friendly question received 07:35:01.967114 Wrote request (93 bytes) input to log/23/server.input 07:35:01.967130 Identifying ourselves as friends 07:35:01.967178 Response sent (56 bytes) and written to log/23/server.response 07:35:01.967185 special request received, no persistency 07:35:01.967192 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 223 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind223 ==87356== ==87356== Process terminating with default action of signal 4 (SIGILL) ==87356== Illegal opcode at address 0x4003082 ==87356== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87356== by 0x4003082: main (tool_main.c:234) === End of file valgrind223 test 0222...[HTTP GET deflate compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind222 ../src/curl -q --output log/1/curl222.out --include --trace-ascii log/1/trace222 --trace-config all --trace-time http://127.0.0.1:38941/222 --compressed > log/1/stdout222 2> log/1/stderr222 222: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 222 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind222 ../src/curl -q --output log/1/curl222.out --include --trace-ascii log/1/trace222 --trace-config all --trace-time http://127.0.0.1:38941/222 --compressed > log/1/stdout222 2> log/1/stderr222 === End of file commands.log === Start of file http_server.log 07:35:01.966420 ====> Client connect 07:35:01.966459 accept_connection 3 returned 4 07:35:01.966476 accept_connection 3 returned 0 07:35:01.966490 Read 93 bytes 07:35:01.966499 Process 93 bytes request 07:35:01.966512 Got request: GET /verifiedserver HTTP/1.1 07:35:01.966521 Are-we-friendly question received 07:35:01.966547 Wrote request (93 bytes) input to log/1/server.input 07:35:01.966564 Identifying ourselves as friends 07:35:01.966622 Response sent (56 bytes) and written to log/1/server.response 07:35:01.966638 special request received, no persistency 07:35:01.966647 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 222 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind222 ==87445== ==87445== Process terminating with default action of signal 4 (SIGILL) ==87445== Illegal opcode at address 0x4003082 ==87445== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87445== by 0x4003082: main (tool_main.c:234) === End of file valgrind222 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/ftp_server.pid" --logfile "log/11/ftp_server.log" --logdir "log/11" --portfile "log/11/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 43393 (log/11/server/ftp_server.port) RUN: FTP server is PID 85489 port 43393 * pid ftp => 85489 85489 test 0195...[FTP response 530 after PASS, temporarily not allowed access] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind195 ../src/curl -q --output log/11/curl195.out --include --trace-ascii log/11/trace195 --trace-config all --trace-time ftp://127.0.0.1:43393/195 > log/11/stdout195 2> log/11/stderr195 195: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 195 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind195 ../src/curl -q --output log/11/curl195.out --include --trace-ascii log/11/trace195 --trace-config all --trace-time ftp://127.0.0.1:43393/195 > log/11/stdout195 2> log/11/stderr195 === End of file commands.log === Start of file ftp_server.log 07:35:01.261120 FTP server listens on port IPv4/43393 07:35:01.261212 logged pid 85489 in log/11/server/ftp_server.pid 07:35:01.261239 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.106818 Running IPv4 version 07:35:01.106903 Listening on port 43393 07:35:01.106948 Wrote pid 85555 to log/11/server/ftp_sockctrl.pid 07:35:01.106984 Wrote port 43393 to log/11/server/ftp_server.port 07:35:01.107007 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd REPLY PASS 530 temporarily not available Testnum 195 === End of file server.cmd === Start of file valgrind195 ==87650== ==87650== Process terminating with default action of signal 4 (SIGILL) ==87650== Illegal opcode at address 0x4003082 ==87650== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87650== by 0x4003082: main (tool_main.c:234) === End of file valgrind195 test 0215...[Get two FTP dir listings from the same remote dir: no second CWD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --nCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind219 ../src/curl -q --output log/19/curl219.out --include --trace-ascii log/19/trace219 --trace-config all --trace-time -x foo://127.0.0.1:47/219 http://127.0.0.1:47/219 > log/19/stdout219 2> log/19/stderr219 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind217 ../src/curl -q --include --trace-ascii log/7/trace217 --trace-config all --trace-time http://test.remote.example.com.217:39077/path/2170002 --proxy http://127.0.0.1:39077 --proxytunnel -w "%{http_code} %{http_connect}\n" > log/7/stdout217 2> log/7/stderr217 um-callers=16 --log-file=log/4/valgrind215 ../src/curl -q --output log/4/curl215.out --include --trace-ascii log/4/trace215 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/215/ ftp://127.0.0.1:37869/a/path/215/ > log/4/stdout215 2> log/4/stderr215 215: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 215 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind215 ../src/curl -q --output log/4/curl215.out --include --trace-ascii log/4/trace215 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/215/ ftp://127.0.0.1:37869/a/path/215/ > log/4/stdout215 2> log/4/stderr215 === End of file commands.log === Start of file ftp_server.log 07:35:02.015556 ====> Client connect 07:35:02.015735 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.015965 < "USER anonymous" 07:35:02.016063 > "331 We are happy you popped in![CR][LF]" 07:35:02.016432 < "PASS ftp@example.com" 07:35:02.016473 > "230 Welcome you silly person[CR][LF]" 07:35:02.016790 < "PWD" 07:35:02.016826 > "257 "/" is current directory[CR][LF]" 07:35:02.016973 < "EPSV" 07:35:02.016994 ====> Passive DATA channel requested by client 07:35:02.017006 DATA sockfilt for passive data channel starting... 07:35:02.019104 DATA sockfilt for passive data channel started (pid 86986) 07:35:02.019240 DATA sockfilt for passive data channel listens on port 36485 07:35:02.019287 > "229 Entering Passive Mode (|||36485|)[LF]" 07:35:02.019302 Client has been notified that DATA conn will be accepted on port 36485 07:35:02.019972 Client connects to port 36485 07:35:02.020034 ====> Client established passive DATA connection on port 36485 07:35:02.020152 < "TYPE I" 07:35:02.020191 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.020743 < "SIZE verifiedserver" 07:35:02.020781 > "213 17[CR][LF]" 07:35:02.020937 < "RETR verifiedserver" 07:35:02.020969 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.021048 =====> Closing passive DATA connection... 07:35:02.021063 Server disconnects passive DATA connection 07:35:02.021293 Server disconnected passive DATA connection 07:35:02.021319 DATA sockfilt for passive data channel quits (pid 86986) 07:35:02.021546 DATA sockfilt for passive data channel quit (pid 86986) 07:35:02.021569 =====> Closed passive DATA connection 07:35:02.021596 > "226 File transfer complete[CR][LF]" 07:35:02.067190 < "QUIT" 07:35:02.067291 > "221 bye bye baby[CR][LF]" 07:35:02.067852 MAIN sockfilt said DISC 07:35:02.067889 ====> Client disconnected 07:35:02.067950 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.861441 ====> Client connect 07:35:01.861707 Received DATA (on stdin) 07:35:01.861727 > 160 bytes data, server => client 07:35:01.861739 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.861748 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.861756 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.861812 < 16 bytes data, client => server 07:35:01.861823 'USER anonymous\r\n' 07:35:01.862089 Received DATA (on stdin) 07:35:01.862109 > 33 bytes data, server => client 07:35:01.862120 '331 We are happy you popped in!\r\n' 07:35:01.862204 < 22 bytes data, client => server 07:35:01.862215 'PASS ftp@example.com\r\n' 07:35:01.862487 Received DATA (on stdin) 07:35:01.862500 > 30 bytes data, server => client 07:35:01.862508 '230 Welcome you silly person\r\n' 07:35:01.862681 < 5 bytes data, client => server 07:35:01.862701 'PWD\r\n' 07:35:01.862817 Received DATA (on stdin) 07:35:01.862827 > 30 bytes data, server => client 07:35:01.862838 '257 "/" is current directory\r\n' 07:35:01.862890 < 6 bytes data, client => server 07:35:01.862900 'EPSV\r\n' 07:35:01.865296 Received DATA (on stdin) 07:35:01.865310 > 38 bytes data, server => client 07:35:01.865318 '229 Entering Passive Mode (|||36485|)\n' 07:35:01.865720 < 8 bytes data, client => server 07:35:01.865867 'TYPE I\r\n' 07:35:01.866210 Received DATA (on stdin) 07:35:01.866260 > 33 bytes data, server => client 07:35:01.866477 '200 I modify TYPE as you wanted\r\n' 07:35:01.866644 < 21 bytes data, client => server 07:35:01.866658 'SIZE verifiedserver\r\n' 07:35:01.866771 Received DATA (on stdin) 07:35:01.866783 > 8 bytes data, server => client 07:35:01.866792 '213 17\r\n' 07:35:01.866848 < 21 bytes data, client => server 07:35:01.866860 'RETR verifiedserver\r\n' 07:35:01.867052 Received DATA (on stdin) 07:35:01.867064 > 29 bytes data, server => client 07:35:01.867084 '150 Binary junk (17 bytes).\r\n' 07:35:01.867588 Received DATA (on stdin) 07:35:01.867601 > 28 bytes data, server => client 07:35:01.867612 '226 File transfer complete\r\n' 07:35:01.912918 < 6 bytes data, client => server 07:35:01.912988 'QUIT\r\n' 07:35:01.913288 Received DATA (on stdin) 07:35:01.913306 > 18 bytes data, server => client 07:35:01.913316 '221 bye bye baby\r\n' 07:35:01.913788 ====> Client disconnect 07:35:01.913940 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.864435 Running IPv4 version 07:35:02.864490 Listening on port 36485 07:35:02.864528 Wrote pid 86986 to log/4/server/ftp_sockdata.pid 07:35:02.864989 Received PING (on stdin) 07:35:02.865132 Received PORT (on stdin) 07:35:02.865682 ====> Client connect 07:35:02.867111 Received DATA (on stdin) 07:35:02.867124 > 17 bytes data, server => client 07:35:02.867135 'WE ROOLZ: 79844\r\n' 07:35:02.867160 Received DISC (on stdin) 07:35:02.867171 ====> Client forcibly disconnected 07:35:02.867321 Received QUIT (on stdin) 07:35:02.867334 quits 07:35:02.867391 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 215 === End of file server.cmd === Start of file valgrind215 ==87053== ==87053== Process terminating with default action of signal 4 (SIGILL) ==87053== Illegal opcode at address 0x4003082 ==87053== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87053== by 0x4003082: main (tool_main.c:234) === End of file valgrind215 * starts no server test 0219...[try using proxy with unsupported scheme] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind219 ../src/curl -q --output log/19/curl219.out --include --trace-ascii log/19/trace219 --trace-config all --trace-time -x foo://127.0.0.1:47/219 http://127.0.0.1:47/219 > log/19/stdout219 2> log/19/stderr219 curl returned 132, when expecting 7 219: exit FAILED == Contents of files in the log/19/ dir after test 219 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind219 ../src/curl -q --output log/19/curl219.out --include --trace-ascii log/19/trace219 --trace-config all --trace-time -x foo://127.0.0.1:47/219 http://127.0.0.1:47/219 > log/19/stdout219 2> log/19/stderr219 === End of file commands.log === Start of file server.cmd Testnum 219 === End of file server.cmd === Start of file valgrind219 ==87055== ==87055== Process terminating with default action of signal 4 (SIGILL) ==87055== Illegal opcode at address 0x4003082 ==87055== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87055== by 0x4003082: main (tool_main.c:234) === End of file valgrind219 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind216 ../src/curl -q --output log/10/curl216.out --include --trace-ascii log/10/trace216 --trace-config all --trace-time -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/ -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/%2e%2eanotherup.216 > log/10/stdout216 2> log/10/stderr216 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind220 ../src/curl -q --output log/16/curl220.out --include --trace-ascii log/16/trace220 --trace-config all --trace-time http://127.0.0.1:46739/220 --compressed > log/16/stdout220 2> log/16/stderr220 test 0217...[HTTP proxy CONNECT to proxy returning 405] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind217 ../src/curl -q --include --trace-ascii log/7/trace217 --trace-config all --trace-time http://test.remote.example.com.217:39077/path/2170002 --proxy http://127.0.0.1:39077 --proxytunnel -w "%{http_code} %{http_connect}\n" > log/7/stdout217 2> log/7/stderr217 217: stdout FAILED: --- log/7/check-expected 2025-07-18 07:35:02.700444885 +0000 +++ log/7/check-generated 2025-07-18 07:35:02.700444885 +0000 @@ -1,3 +0,0 @@ -HTTP/1.1 405 Method Not Allowed swsclose[CR][LF] -[CR][LF] -000 405[LF] == Contents of files in the log/7/ dir after test 217 === Start of file check-expected HTTP/1.1 405 Method Not Allowed swsclose[CR][LF] [CR][LF] 000 405[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind217 ../src/curl -q --include --trace-ascii log/7/trace217 --trace-config all --trace-time http://test.remote.example.com.217:39077/path/2170002 --proxy http://127.0.0.1:39077 --proxytunnel -w "%{http_code} %{http_connect}\n" > log/7/stdout217 2> log/7/stderr217 === End of file commands.log === Start of file http_server.log 07:35:01.895444 ====> Client connect 07:35:01.895477 accept_connection 3 returned 4 07:35:01.895493 accept_connection 3 returned 0 07:35:01.895540 Read 93 bytes 07:35:01.895552 Process 93 bytes request 07:35:01.895565 Got request: GET /verifiedserver HTTP/1.1 07:35:01.895575 Are-we-friendly question received 07:35:01.895603 Wrote request (93 bytes) input to log/7/server.input 07:35:01.895622 Identifying ourselves as friends 07:35:01.895680 Response sent (56 bytes) and written to log/7/server.response 07:35:01.895692 special request received, no persistency 07:35:01.895701 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 217 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind217 ==87021== ==87021== Process terminating with default action of signal 4 (SIGILL) ==87021== Illegal opcode at address 0x4003082 ==87021== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87021== by 0x4003082: main (tool_main.c:234) === End of file valgrind217 test 0216...[FTP upload two files to the same dir] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind216 ../src/curl -q --output log/10/curl216.out --include --trace-ascii log/10/trace216 --trace-config all --trace-time -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/ -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/%2e%2eanotherup.216 > log/10/stdout216 2> log/10/stderr216 216: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 216 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind216 ../src/curl -q --output log/10/curl216.out --include --trace-ascii log/10/trace216 --trace-config all --trace-time -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/ -T log/10/upload.216 ftp://127.0.0.1:39731/a/path/216/%2e%2eanotherup.216 > log/10/stdout216 2> log/10/stderr216 === End of file commands.log === Start of file ftp_server.log 07:35:02.048674 ====> Client connect 07:35:02.048815 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.049078 < "USER anonymous" 07:35:02.049112 > "331 We are happy you popped in![CR][LF]" 07:35:02.049287 < "PASS ftp@example.com" 07:35:02.049317 > "230 Welcome you silly person[CR][LF]" 07:35:02.049464 < "PWD" 07:35:02.049497 > "257 "/" is current directory[CR][LF]" 07:35:02.049744 < "EPSV" 07:35:02.049772 ====> Passive DATA channel requested by client 07:35:02.049785 DATA sockfilt for passive data channel starting... 07:35:02.051399 DATA sockfilt for passive data channel started (pid 87018) 07:35:02.051508 DATA sockfilt for passive data channel listens on port 35241 07:35:02.051548 > "229 Entering Passive Mode (|||35241|)[LF]" 07:35:02.051563 Client has been notified that DATA conn will be accepted on port 35241 07:35:02.051789 Client connects to port 35241 07:35:02.051818 ====> Client established passive DATA connection on port 35241 07:35:02.051886 < "TYPE I" 07:35:02.051912 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.052067 < "SIZE verifiedserver" 07:35:02.052103 > "213 17[CR][LF]" 07:35:02.052250 < "RETR verifiedserver" 07:35:02.052279 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.052350 =====> Closing passive DATA connection... 07:35:02.052366 Server disconnects passive DATA connection 07:35:02.052577 Server disconnected passive DATA connection 07:35:02.052605 DATA sockfilt for passive data channel quits (pid 87018) 07:35:02.052816 DATA sockfilt for passive data channel quit (pid 87018) 07:35:02.052839 =====> Closed passive DATA connection 07:35:02.052867 > "226 File transfer complete[CR][LF]" 07:35:02.096956 < "QUIT" 07:35:02.097012 > "221 bye bye baby[CR][LF]" 07:35:02.097194 MAIN sockfilt said DISC 07:35:02.097244 ====> Client disconnected 07:35:02.097317 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:01.894548 ====> Client connect 07:35:01.894778 Received DATA (on stdin) 07:35:01.894794 > 160 bytes data, server => client 07:35:01.894806 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:01.894817 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:01.894828 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:01.894897 < 16 bytes data, client => server 07:35:01.894909 'USER anonymous\r\n' 07:35:01.895087 Received DATA (on stdin) 07:35:01.895101 > 33 bytes data, server => client 07:35:01.895112 '331 We are happy you popped in!\r\n' 07:35:01.895177 < 22 bytes data, client => server 07:35:01.895195 'PASS ftp@example.com\r\n' 07:35:01.895309 Received DATA (on stdin) 07:35:01.895322 > 30 bytes data, server => client 07:35:01.895332 '230 Welcome you silly person\r\n' 07:35:01.895377 < 5 bytes data, client => server 07:35:01.895387 'PWD\r\n' 07:35:01.895497 Received DATA (on stdin) 07:35:01.895528 > 30 bytes data, server => client 07:35:01.895541 '257 "/" is current directory\r\n' 07:35:01.895622 < 6 bytes data, client => server 07:35:01.895644 'EPSV\r\n' 07:35:01.897563 Received DATA (on stdin) 07:35:01.897579 > 38 bytes data, server => client 07:35:01.897591 '229 Entering Passive Mode (|||35241|)\n' 07:35:01.897700 < 8 bytes data, client => server 07:35:01.897717 'TYPE I\r\n' 07:35:01.897904 Received DATA (on stdin) 07:35:01.897916 > 33 bytes data, server => client 07:35:01.897927 '200 I modify TYPE as you wanted\r\n' 07:35:01.897975 < 21 bytes data, client => server 07:35:01.897987 'SIZE verifiedserver\r\n' 07:35:01.898095 Received DATA (on stdin) 07:35:01.898106 > 8 bytes data, server => client 07:35:01.898117 '213 17\r\n' 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind218 ../src/curl -q --output log/24/curl218.out --include --trace-ascii log/24/trace218 --trace-config all --trace-time -T log/24/file218 -H "Transfer-Encoding: chunked" http://127.0.0.1:38675/218 > log/24/stdout218 2> log/24/stderr218 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind224 ../src/curl -q --output log/20/curl224.out --include --trace-ascii log/20/trace224 --trace-config all --trace-time http://127.0.0.1:37169/224 --compressed > log/20/stdout224 2> log/20/stderr224 7:35:01.898161 < 21 bytes data, client => server 07:35:01.898173 'RETR verifiedserver\r\n' 07:35:01.898357 Received DATA (on stdin) 07:35:01.898369 > 29 bytes data, server => client 07:35:01.898380 '150 Binary junk (17 bytes).\r\n' 07:35:01.898858 Received DATA (on stdin) 07:35:01.898871 > 28 bytes data, server => client 07:35:01.898881 '226 File transfer complete\r\n' 07:35:01.942786 < 6 bytes data, client => server 07:35:01.942810 'QUIT\r\n' 07:35:01.943009 Received DATA (on stdin) 07:35:01.943023 > 18 bytes data, server => client 07:35:01.943033 '221 bye bye baby\r\n' 07:35:01.943112 ====> Client disconnect 07:35:01.943311 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.897193 Running IPv4 version 07:35:02.897246 Listening on port 35241 07:35:02.897309 Wrote pid 87018 to log/10/server/ftp_sockdata.pid 07:35:02.897340 Received PING (on stdin) 07:35:02.897428 Received PORT (on stdin) 07:35:02.897736 ====> Client connect 07:35:02.898405 Received DATA (on stdin) 07:35:02.898418 > 17 bytes data, server => client 07:35:02.898428 'WE ROOLZ: 81708\r\n' 07:35:02.898450 Received DISC (on stdin) 07:35:02.898462 ====> Client forcibly disconnected 07:35:02.898601 Received QUIT (on stdin) 07:35:02.898613 quits 07:35:02.898682 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 216 === End of file server.cmd === Start of file upload.216 upload this file twice === End of file upload.216 === Start of file valgrind216 ==87206== ==87206== Process terminating with default action of signal 4 (SIGILL) ==87206== Illegal opcode at address 0x4003082 ==87206== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87206== by 0x4003082: main (tool_main.c:234) === End of file valgrind216 test 0220...[HTTP GET gzip compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind220 ../src/curl -q --output log/16/curl220.out --include --trace-ascii log/16/trace220 --trace-config all --trace-time http://127.0.0.1:46739/220 --compressed > log/16/stdout220 2> log/16/stderr220 220: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 220 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind220 ../src/curl -q --output log/16/curl220.out --include --trace-ascii log/16/trace220 --trace-config all --trace-time http://127.0.0.1:46739/220 --compressed > log/16/stdout220 2> log/16/stderr220 === End of file commands.log === Start of file http_server.log 07:35:01.940570 ====> Client connect 07:35:01.941561 accept_connection 3 returned 4 07:35:01.941599 accept_connection 3 returned 0 07:35:01.941614 Read 93 bytes 07:35:01.941625 Process 93 bytes request 07:35:01.941636 Got request: GET /verifiedserver HTTP/1.1 07:35:01.941645 Are-we-friendly question received 07:35:01.941674 Wrote request (93 bytes) input to log/16/server.input 07:35:01.941691 Identifying ourselves as friends 07:35:01.941753 Response sent (56 bytes) and written to log/16/server.response 07:35:01.941763 special request received, no persistency 07:35:01.941773 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 220 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind220 ==87213== ==87213== Process terminating with default action of signal 4 (SIGILL) ==87213== Illegal opcode at address 0x4003082 ==87213== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87213== by 0x4003082: main (tool_main.c:234) === End of file valgrind220 test 0218...[HTTP PUT from a file but enforce chunked transfer-encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind218 ../src/curl -q --output log/24/curl218.out --include --trace-ascii log/24/trace218 --trace-config all --trace-time -T log/24/file218 -H "Transfer-Encoding: chunked" http://127.0.0.1:38675/218 > log/24/stdout218 2> log/24/stderr218 218: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 218 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind218 ../src/curl -q --output log/24/curl218.out --include --trace-ascii log/24/trace218 --trace-config all --trace-time -T log/24/file218 -H "Transfer-Encoding: chunked" http://127.0.0.1:38675/218 > log/24/stdout218 2> log/24/stderr218 === End of file commands.log === Start of file file218 just some tiny teeny contents === End of file file218 === Start of file http_server.log 07:35:01.939146 ====> Client connect 07:35:01.939183 accept_connection 3 returned 4 07:35:01.939201 accept_connection 3 returned 0 07:35:01.939216 Read 93 bytes 07:35:01.939225 Process 93 bytes request 07:35:01.939237 Got request: GET /verifiedserver HTTP/1.1 07:35:01.939246 Are-we-friendly question received 07:35:01.939569 Wrote request (93 bytes) input to log/24/server.input 07:35:01.939599 Identifying ourselves as friends 07:35:01.940497 Response sent (56 bytes) and written to log/24/server.response 07:35:01.940512 special request received, no persistency 07:35:01.940521 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 218 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind218 ==87207== ==87207== Process terminating with default action of signal 4 (SIGILL) ==87207== Illegal opcode at address 0x4003082 ==87207== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87207== by 0x4003082: main (tool_main.c:234) === End of file valgrind218 test 0224...[HTTP GET gzip compressed content with huge comment and extra field] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind224 ../src/curl -q --output log/20/curl224.out --include --trace-ascii log/20/trace224 --trace-config all --trace-time http://127.0.0.1:37169/224 --compressed > log/20/stdout224 2> log/20/stderr224 224: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 224 === Start of file commands.log ../libtooCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind221 ../src/curl -q --output log/9/curl221.out --include --trace-ascii log/9/trace221 --trace-config all --trace-time http://127.0.0.1:34999/221 --compressed > log/9/stdout221 2> log/9/stderr221 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind225 ../src/curl -q --output log/3/curl225.out --include --trace-ascii log/3/trace225 --trace-config all --trace-time ftp://bad%0auser:passwd@127.0.0.1:34613/225%0a > log/3/stdout225 2> log/3/stderr225 l --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind224 ../src/curl -q --output log/20/curl224.out --include --trace-ascii log/20/trace224 --trace-config all --trace-time http://127.0.0.1:37169/224 --compressed > log/20/stdout224 2> log/20/stderr224 === End of file commands.log === Start of file http_server.log 07:35:01.971124 ====> Client connect 07:35:01.971155 accept_connection 3 returned 4 07:35:01.971170 accept_connection 3 returned 0 07:35:01.971183 Read 93 bytes 07:35:01.971193 Process 93 bytes request 07:35:01.971204 Got request: GET /verifiedserver HTTP/1.1 07:35:01.971213 Are-we-friendly question received 07:35:01.971236 Wrote request (93 bytes) input to log/20/server.input 07:35:01.971252 Identifying ourselves as friends 07:35:01.971302 Response sent (56 bytes) and written to log/20/server.response 07:35:01.971312 special request received, no persistency 07:35:01.971320 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 224 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind224 ==87389== ==87389== Process terminating with default action of signal 4 (SIGILL) ==87389== Illegal opcode at address 0x4003082 ==87389== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87389== by 0x4003082: main (tool_main.c:234) === End of file valgrind224 test 0221...[HTTP GET gzip compressed content with broken gzip header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind221 ../src/curl -q --output log/9/curl221.out --include --trace-ascii log/9/trace221 --trace-config all --trace-time http://127.0.0.1:34999/221 --compressed > log/9/stdout221 2> log/9/stderr221 221: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 221 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind221 ../src/curl -q --output log/9/curl221.out --include --trace-ascii log/9/trace221 --trace-config all --trace-time http://127.0.0.1:34999/221 --compressed > log/9/stdout221 2> log/9/stderr221 === End of file commands.log === Start of file http_server.log 07:35:01.956617 ====> Client connect 07:35:01.956649 accept_connection 3 returned 4 07:35:01.956664 accept_connection 3 returned 0 07:35:01.956678 Read 93 bytes 07:35:01.956687 Process 93 bytes request 07:35:01.956700 Got request: GET /verifiedserver HTTP/1.1 07:35:01.956709 Are-we-friendly question received 07:35:01.956733 Wrote request (93 bytes) input to log/9/server.input 07:35:01.956748 Identifying ourselves as friends 07:35:01.956799 Response sent (56 bytes) and written to log/9/server.response 07:35:01.956809 special request received, no persistency 07:35:01.956817 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 221 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind221 ==87325== ==87325== Process terminating with default action of signal 4 (SIGILL) ==87325== Illegal opcode at address 0x4003082 ==87325== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87325== by 0x4003082: main (tool_main.c:234) === End of file valgrind221 test 0225...[FTP %0a-code in URL's name part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind225 ../src/curl -q --output log/3/curl225.out --include --trace-ascii log/3/trace225 --trace-config all --trace-time ftp://bad%0auser:passwd@127.0.0.1:34613/225%0a > log/3/stdout225 2> log/3/stderr225 curl returned 132, when expecting 3 225: exit FAILED == Contents of files in the log/3/ dir after test 225 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind225 ../src/curl -q --output log/3/curl225.out --include --trace-ascii log/3/trace225 --trace-config all --trace-time ftp://bad%0auser:passwd@127.0.0.1:34613/225%0a > log/3/stdout225 2> log/3/stderr225 === End of file commands.log === Start of file ftp_server.log 07:35:02.203758 ====> Client connect 07:35:02.203947 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.204321 < "USER anonymous" 07:35:02.204376 > "331 We are happy you popped in![CR][LF]" 07:35:02.204613 < "PASS ftp@example.com" 07:35:02.204636 > "230 Welcome you silly person[CR][LF]" 07:35:02.204897 < "PWD" 07:35:02.204935 > "257 "/" is current directory[CR][LF]" 07:35:02.205079 < "EPSV" 07:35:02.205104 ====> Passive DATA channel requested by client 07:35:02.205116 DATA sockfilt for passive data channel starting... 07:35:02.206868 DATA sockfilt for passive data channel started (pid 87638) 07:35:02.206969 DATA sockfilt for passive data channel listens on port 37417 07:35:02.207005 > "229 Entering Passive Mode (|||37417|)[LF]" 07:35:02.207020 Client has been notified that DATA conn will be accepted on port 37417 07:35:02.207234 Client connects to port 37417 07:35:02.207260 ====> Client established passive DATA connection on port 37417 07:35:02.207318 < "TYPE I" 07:35:02.207343 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.207483 < "SIZE verifiedserver" 07:35:02.207514 > "213 17[CR][LF]" 07:35:02.207644 < "RETR verifiedserver" 07:35:02.207669 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.207733 =====> Closing passive DATA connection... 07:35:02.207746 Server disconnects passive DATA connection 07:35:02.207952 Server disconnected passive DATA connection 07:35:02.207976 DATA sockfilt for passive data channel quits (pid 87638) 07:35:02.208184 DATA sockfilt for passive data channel quit (pid 87638) 07:35:02.208203 =====> Closed passive DATA connection 07:35:02.208229 > "226 File transfer complete[CR][LF]" 07:35:02.253778 < "QUIT" 07:35:02.253828 > "221 bye bye baby[CR][LF]" 07:35:02.254658 MAIN sockfilt said DISC 07:35:02.254687 ====> Client disconnected 07:35:02.254772 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.049631 ====> Client connect 07:35:03.049955 Received DATA (on stdin) 07:35:03.049974 > 160 bytes data, server => client 07:35:03.049988 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.050012 ' \r\n220- / __| | | | |_) | | \r\n220CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind229 ../src/curl -q --output log/6/curl229.out --include --trace-ascii log/6/trace229 --trace-config all --trace-time ftp://127.0.0.1:36135/229 --ftp-account "one count" > log/6/stdout229 2> log/6/stderr229 - | (__| |_| | ' 07:35:03.050023 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.050107 < 16 bytes data, client => server 07:35:03.050124 'USER anonymous\r\n' 07:35:03.050405 Received DATA (on stdin) 07:35:03.050427 > 33 bytes data, server => client 07:35:03.050438 '331 We are happy you popped in!\r\n' 07:35:03.050525 < 22 bytes data, client => server 07:35:03.050535 'PASS ftp@example.com\r\n' 07:35:03.050648 Received DATA (on stdin) 07:35:03.050670 > 30 bytes data, server => client 07:35:03.050682 '230 Welcome you silly person\r\n' 07:35:03.050763 < 5 bytes data, client => server 07:35:03.050783 'PWD\r\n' 07:35:03.050924 Received DATA (on stdin) 07:35:03.050935 > 30 bytes data, server => client 07:35:03.050944 '257 "/" is current directory\r\n' 07:35:03.050995 < 6 bytes data, client => server 07:35:03.051006 'EPSV\r\n' 07:35:03.053016 Received DATA (on stdin) 07:35:03.053028 > 38 bytes data, server => client 07:35:03.053039 '229 Entering Passive Mode (|||37417|)\n' 07:35:03.053177 < 8 bytes data, client => server 07:35:03.053187 'TYPE I\r\n' 07:35:03.053332 Received DATA (on stdin) 07:35:03.053343 > 33 bytes data, server => client 07:35:03.053353 '200 I modify TYPE as you wanted\r\n' 07:35:03.053396 < 21 bytes data, client => server 07:35:03.053406 'SIZE verifiedserver\r\n' 07:35:03.053505 Received DATA (on stdin) 07:35:03.053515 > 8 bytes data, server => client 07:35:03.053525 '213 17\r\n' 07:35:03.053563 < 21 bytes data, client => server 07:35:03.053573 'RETR verifiedserver\r\n' 07:35:03.053735 Received DATA (on stdin) 07:35:03.053746 > 29 bytes data, server => client 07:35:03.053756 '150 Binary junk (17 bytes).\r\n' 07:35:03.054218 Received DATA (on stdin) 07:35:03.054231 > 28 bytes data, server => client 07:35:03.054241 '226 File transfer complete\r\n' 07:35:03.099584 < 6 bytes data, client => server 07:35:03.099613 'QUIT\r\n' 07:35:03.099822 Received DATA (on stdin) 07:35:03.099834 > 18 bytes data, server => client 07:35:03.099846 '221 bye bye baby\r\n' 07:35:03.100588 ====> Client disconnect 07:35:03.100771 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.052683 Running IPv4 version 07:35:02.052740 Listening on port 37417 07:35:02.052780 Wrote pid 87638 to log/3/server/ftp_sockdata.pid 07:35:02.052803 Received PING (on stdin) 07:35:02.052884 Received PORT (on stdin) 07:35:02.053152 ====> Client connect 07:35:02.053777 Received DATA (on stdin) 07:35:02.053789 > 17 bytes data, server => client 07:35:02.053802 'WE ROOLZ: 81974\r\n' 07:35:02.053824 Received DISC (on stdin) 07:35:02.053834 ====> Client forcibly disconnected 07:35:02.053970 Received QUIT (on stdin) 07:35:02.053981 quits 07:35:02.054038 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 225 === End of file server.cmd === Start of file valgrind225 ==87738== ==87738== Process terminating with default action of signal 4 (SIGILL) ==87738== Illegal opcode at address 0x4003082 ==87738== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87738== by 0x4003082: main (tool_main.c:234) === End of file valgrind225 test 0229...[FTP RETR with bad ACCT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind229 ../src/curl -q --output log/6/curl229.out --include --trace-ascii log/6/trace229 --trace-config all --trace-time ftp://127.0.0.1:36135/229 --ftp-account "one count" > log/6/stdout229 2> log/6/stderr229 229: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 229 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind229 ../src/curl -q --output log/6/curl229.out --include --trace-ascii log/6/trace229 --trace-config all --trace-time ftp://127.0.0.1:36135/229 --ftp-account "one count" > log/6/stdout229 2> log/6/stderr229 === End of file commands.log === Start of file ftp_server.log 07:35:02.260783 ====> Client connect 07:35:02.260942 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.261235 < "USER anonymous" 07:35:02.261270 > "331 We are happy you popped in![CR][LF]" 07:35:02.261434 < "PASS ftp@example.com" 07:35:02.261460 > "230 Welcome you silly person[CR][LF]" 07:35:02.261611 < "PWD" 07:35:02.261641 > "257 "/" is current directory[CR][LF]" 07:35:02.261800 < "EPSV" 07:35:02.261825 ====> Passive DATA channel requested by client 07:35:02.261837 DATA sockfilt for passive data channel starting... 07:35:02.266990 DATA sockfilt for passive data channel started (pid 87737) 07:35:02.267114 DATA sockfilt for passive data channel listens on port 42035 07:35:02.267157 > "229 Entering Passive Mode (|||42035|)[LF]" 07:35:02.267176 Client has been notified that DATA conn will be accepted on port 42035 07:35:02.267442 Client connects to port 42035 07:35:02.267470 ====> Client established passive DATA connection on port 42035 07:35:02.267543 < "TYPE I" 07:35:02.267572 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.267712 < "SIZE verifiedserver" 07:35:02.267745 > "213 17[CR][LF]" 07:35:02.267911 < "RETR verifiedserver" 07:35:02.267947 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.268022 =====> Closing passive DATA connection... 07:35:02.268036 Server disconnects passive DATA connection 07:35:02.268347 Server disconnected passive DATA connection 07:35:02.268373 DATA sockfilt for passive data channel quits (pid 87737) 07:35:02.269085 DATA sockfilt for passive data channel quit (pid 87737) 07:35:02.269112 =====> Closed passive DATA connection 07:35:02.269140 > "226 File transfer complete[CR][LF]" 07:35:02.310610 < "QUIT" 07:35:02.310663 > "221 bye bye baby[CR][LF]" 07:35:02.311080 MAIN sockfilt said DISC 07:35:02.311140 ====> Client disconnected 07:35:02.311203 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.106668 ====> Client connect 07:35:02.106951 Received DATA (on stdin) 07:35:02.106971 > 160 bytes data, server => client 07:35:02.106984 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.106995 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.107005 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.107091 < 16 bytes data, client => server 07:35:02.107106 'USER anonymous\r\n' 07:35:02.107263 Received DATA (on stdin) 07:35:02.107275 > 33 bytes data, server => client 07:35:02.107286 '331 We are happy you popped in!\r\n' 07:35:02.107335 < 22 bytes data, client => server 07:35:02.107348 'PASS ftp@example.com\r\n' 07:35:02.107450 Received DATA (on stdin) 07:35:02.107462 > 30 bytes data, server => client 07:35:02.107472 '230 Welcome you silly person\r\n' 07:35:02.107519 < 5 bytes data, client => server 07:35:02.107530 'PWD\r\n' 07:35:02.107630 Received DATA (on stdin) 07:35:02.107641 > 30 bytes data, server => client 07:35:02.107651 '257 "/" is current directory\r\n' 07:35:02.107706 < 6 bytes data, client => server 07:35:02.107720 'EPSV\r\n' 07:35:02.113175 Received DATA (on stdin) 07:35:02.113193 > 38 bytes data, server => client 07:35:02.113204 '229 Entering Passive Mode (|||42035|)\n' 07:35:02.113381 < 8 bytes data, client => server 07:35:02.113393 'TYPE I\r\n' 07:35:02.113562 Received DATA (on stdin) 07:35:02.113575 > 33 bytes data, server => client 07:35:02.113585 '200 I modify TYPE as you wanted\r\n' 07:35:02.113634 < 21 bytes data, client => server 07:35:02.113648 'SIZE verifiedserver\r\n' 07:35:02.113734 Received DATA (on stdin) 07:35:02.113744 > 8 bytes data, server => client 07:35:02.113753 '213 17\r\n' 07:35:02.113808 < 21 bytes data, client => server 07:35:02.1138CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind231 ../src/curl -q --output log/14/curl231.out --trace-ascii log/14/trace231 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/14/test231.txt -C 10 > log/14/stdout231 2> log/14/stderr231 27 'RETR verifiedserver\r\n' 07:35:02.114026 Received DATA (on stdin) 07:35:02.114037 > 29 bytes data, server => client 07:35:02.114047 '150 Binary junk (17 bytes).\r\n' 07:35:02.115131 Received DATA (on stdin) 07:35:02.115145 > 28 bytes data, server => client 07:35:02.115155 '226 File transfer complete\r\n' 07:35:02.156437 < 6 bytes data, client => server 07:35:02.156466 'QUIT\r\n' 07:35:02.156662 Received DATA (on stdin) 07:35:02.156676 > 18 bytes data, server => client 07:35:02.156687 '221 bye bye baby\r\n' 07:35:02.156976 ====> Client disconnect 07:35:02.157197 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.109179 Running IPv4 version 07:35:02.109233 Listening on port 42035 07:35:02.109267 Wrote pid 87737 to log/6/server/ftp_sockdata.pid 07:35:02.112899 Received PING (on stdin) 07:35:02.113015 Received PORT (on stdin) 07:35:02.113352 ====> Client connect 07:35:02.113946 Received DATA (on stdin) 07:35:02.113977 > 17 bytes data, server => client 07:35:02.113993 'WE ROOLZ: 79833\r\n' 07:35:02.114181 Received DISC (on stdin) 07:35:02.114191 ====> Client forcibly disconnected 07:35:02.114371 Received QUIT (on stdin) 07:35:02.114382 quits 07:35:02.114432 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 332 please provide account name REPLY ACCT 532 bluah Testnum 229 === End of file server.cmd === Start of file valgrind229 ==87901== ==87901== Process terminating with default action of signal 4 (SIGILL) ==87901== Illegal opcode at address 0x4003082 ==87901== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87901== by 0x4003082: main (tool_main.c:234) === End of file valgrind229 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind228 ../src/curl -q --output log/17/curl228.out --include --trace-ascii log/17/trace228 --trace-config all --trace-time ftp://127.0.0.1:39713/228 --ftp-account "one count" > log/17/stdout228 2> log/17/stderr228 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind227 ../src/curl -q --output log/5/curl227.out --include --trace-ascii log/5/trace227 --trace-config all --trace-time ftp://127.0.0.1:42261/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/5/stdout227 2> log/5/stderr227 test 0231...[file:// with resume] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind231 ../src/curl -q --output log/14/curl231.out --trace-ascii log/14/trace231 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/14/test231.txt -C 10 > log/14/stdout231 2> log/14/stderr231 231: data FAILED: --- log/14/check-expected 2025-07-18 07:35:02.847111554 +0000 +++ log/14/check-generated 2025-07-18 07:35:02.847111554 +0000 @@ -1,2 +0,0 @@ -B01234567[LF] -C01234567[LF] == Contents of files in the log/14/ dir after test 231 === Start of file check-expected B01234567[LF] C01234567[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind231 ../src/curl -q --output log/14/curl231.out --trace-ascii log/14/trace231 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/14/test231.txt -C 10 > log/14/stdout231 2> log/14/stderr231 === End of file commands.log === Start of file server.cmd Testnum 231 === End of file server.cmd === Start of file test231.txt A01234567 B01234567 C01234567 === End of file test231.txt === Start of file valgrind231 ==87886== ==87886== Process terminating with default action of signal 4 (SIGILL) ==87886== Illegal opcode at address 0x4003082 ==87886== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87886== by 0x4003082: main (tool_main.c:234) === End of file valgrind231 test 0227...[FTP with quote ops] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind227 ../src/curl -q --output log/5/curl227.out --include --trace-ascii log/5/trace227 --trace-config all --trace-time ftp://127.0.0.1:42261/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/5/stdout227 2> log/5/stderr227 227: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 227 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind227 ../src/curl -q --output log/5/curl227.out --include --trace-ascii log/5/trace227 --trace-config all --trace-time ftp://127.0.0.1:42261/227 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/5/stdout227 2> log/5/stderr227 === End of file commands.log === Start of file ftp_server.log 07:35:02.223072 ====> Client connect 07:35:02.223211 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.223476 < "USER anonymous" 07:35:02.223506 > "331 We are happy you popped in![CR][LF]" 07:35:02.223632 < "PASS ftp@example.com" 07:35:02.223650 > "230 Welcome you silly person[CR][LF]" 07:35:02.223759 < "PWD" 07:35:02.223780 > "257 "/" is current directory[CR][LF]" 07:35:02.223896 < "EPSV" 07:35:02.223916 ====> Passive DATA channel requested by client 07:35:02.223925 DATA sockfilt for passive data channel starting... 07:35:02.225361 DATA sockfilt for passive data channel started (pid 87674) 07:35:02.225447 DATA sockfilt for passive data channel listens on port 41613 07:35:02.225480 > "229 Entering Passive Mode (|||41613|)[LF]" 07:35:02.225496 Client has been notified that DATA conn will be accepted on port 41613 07:35:02.225671 Client connects to port 41613 07:35:02.225700 ====> Client established passive DATA connection on port 41613 07:35:02.225752 < "TYPE I" 07:35:02.225774 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.225883 < "SIZE verifiedserver" 07:35:02.225912 > "213 17[CR][LF]" 07:35:02.226013 < "RETR verifiedserver" 07:35:02.226038 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.226093 =====> Closing passive DATA connection... 07:35:02.226104 Server disconnects passive DATA connection 07:35:02.226230 Server disconnected passive DATA connection 07:35:02.226252 DATA sockfilt for passive data channel quits (pid 87674) 07:35:02.226445 DATA sockfilt for passive data channel quit (pid 87674) 07:35:02.226464 =====> Closed passive DATA connection 07:35:02.226486 > "226 File transfer complete[CR][LF]" 07:35:02.266982 < "QUIT" 07:35:02.267034 > "221 bye bye baby[CR][LF]" 07:35:02.267723 MAIN sockfilt said DISC 07:35:02.267751 ====> Client disconnected 07:35:02.267827 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.068942 ====> Client connect 07:35:02.069207 Received DATA (on stdin) 07:35:02.069220 > 160 bytes data, server => client 07:35:02.069229 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.069238 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.069246 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.069329 < 16 bytes data, client => server 07:35:02.069345 'USER anonymous\r\n' 07:35:02.069495 Received DATA (on stdin) 07:35:02.069505 > 33 bytes data, server => client 07:35:02.069513 '331 We are happy you popped in!\r\n' 07:35:02.069554 < 22 bytes data, client => server 07:35:02.069563 'PASS ftp@example.com\r\n' 07:35:02.069635 Received DATA (on stdin) 07:35:02.069643 > 30 bytes data, server => client 07:35:02.069651 '230 Welcome you silly person\r\n' 07:35:02.069686 < 5 bytes data, client => server 07:35:02.069694 'PWD\r\n' 07:35:02.069764 Received DATA (on stdin) 07:35:02.069772 > 30 bytes data, server => client 07:35:02.069780 '257 "/" is current directory\r\n' 07:35:02.069821 < 6 bytes data, client => server 07:35:02.069829 'EPSV\r\n' 07:35:02.071487 Received DATA (on stdin) 07:35:02.071500 > 38 bytes data, server => client 07:35:02.071508 '229 Entering Passive Mode (|||41613|)\n' 07:35:02.071615 < 8 bytes data, client => server 07:35:02.071630 'TYPE I\r\n' 07:35:02.071759 Received DATA (on stdin) 07:35:02.071768 > 33 bytes data, server => client 07:35:02.071777 '200 I modify TYPE as you wanted\r\n' 07:35:02.071818 < 21 bytes data, client => server 07:35:02.071831 'SIZE verifiedserver\r\n' 07:35:02.071896 Received DATA (on stdin) 07:35:02.071905 > 8 bytes data, server => client 07:35:02.071913 '213 17\r\n' 07:35:02.071950 < 21 bytes data, client => server 07:35:02.071962 'RETR verifiedserver\r\n' 07:35:02.072160 Received DATA (on stdin) 07:35:02.072169 > 29 bytes data, server => client 07:35:02.072178 '150 Binary junk (17 bytes).\r\n' 07:35:02.072473 Received DATA (on stdin) 07:35:02.072483 > 28 bytes data, server => client 07:35:02.072491 '226 File transfer complete\r\n' 07:35:02.112784 < 6 bytes data, client => server 07:35:02.112810 'QUIT\r\n' 07:35:02.113027 Received DATA (on stdin) 07:35:02.113039 > 18 bytes data, server => client 07:35:02.113049 '221 bye bye baby\r\n' 07:35:02.113664 ====> Client disconnect 07:35:02.113816 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.071206 Running IPv4 version 07:35:02.071257 Listening on port 41613 07:35:02.071287 Wrote pid 87674 to log/5/server/ftp_sockdata.pid 07:35:02.071303 Received PING (on stdin) 07:35:02.071367 Received PORT (on stdin) 07:35:02.071618 ====> Client connect 07:35:02.072092 Received DATA (on stdin) 07:35:02.072102 > 17 bytes data, server => client 07:35:02.072110 'WE ROOLZ: 79836\r\n' 07:35:02.072132 Received DISC (on stdin) 07:35:02.072140 ====> Client forcibly disconnected 07:35:02.072248 Received QUIT (on stdin) 07:35:02.072260 quits 07:35:02.072317 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command REPLY FAIL 500 this might not be a failure Testnum 227CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind230 ../src/curl -q --output log/12/curl230.out --include --trace-ascii log/12/trace230 --trace-config all --trace-time http://127.0.0.1:37285/230 --compressed > log/12/stdout230 2> log/12/stderr230 === End of file server.cmd === Start of file valgrind227 ==87758== ==87758== Process terminating with default action of signal 4 (SIGILL) ==87758== Illegal opcode at address 0x4003082 ==87758== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87758== by 0x4003082: main (tool_main.c:234) === End of file valgrind227 test 0228...[FTP RETR with ACCT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind228 ../src/curl -q --output log/17/curl228.out --include --trace-ascii log/17/trace228 --trace-config all --trace-time ftp://127.0.0.1:39713/228 --ftp-account "one count" > log/17/stdout228 2> log/17/stderr228 228: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 228 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind228 ../src/curl -q --output log/17/curl228.out --include --trace-ascii log/17/trace228 --trace-config all --trace-time ftp://127.0.0.1:39713/228 --ftp-account "one count" > log/17/stdout228 2> log/17/stderr228 === End of file commands.log === Start of file ftp_server.log 07:35:02.235609 ====> Client connect 07:35:02.235760 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.236042 < "USER anonymous" 07:35:02.236075 > "331 We are happy you popped in![CR][LF]" 07:35:02.236225 < "PASS ftp@example.com" 07:35:02.236248 > "230 Welcome you silly person[CR][LF]" 07:35:02.236385 < "PWD" 07:35:02.236410 > "257 "/" is current directory[CR][LF]" 07:35:02.236556 < "EPSV" 07:35:02.236579 ====> Passive DATA channel requested by client 07:35:02.236591 DATA sockfilt for passive data channel starting... 07:35:02.238642 DATA sockfilt for passive data channel started (pid 87700) 07:35:02.238749 DATA sockfilt for passive data channel listens on port 38327 07:35:02.238788 > "229 Entering Passive Mode (|||38327|)[LF]" 07:35:02.238804 Client has been notified that DATA conn will be accepted on port 38327 07:35:02.238993 Client connects to port 38327 07:35:02.239026 ====> Client established passive DATA connection on port 38327 07:35:02.239091 < "TYPE I" 07:35:02.239118 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.239303 < "SIZE verifiedserver" 07:35:02.239339 > "213 17[CR][LF]" 07:35:02.239493 < "RETR verifiedserver" 07:35:02.239526 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.239598 =====> Closing passive DATA connection... 07:35:02.239614 Server disconnects passive DATA connection 07:35:02.239760 Server disconnected passive DATA connection 07:35:02.239812 DATA sockfilt for passive data channel quits (pid 87700) 07:35:02.240051 DATA sockfilt for passive data channel quit (pid 87700) 07:35:02.240078 =====> Closed passive DATA connection 07:35:02.240113 > "226 File transfer complete[CR][LF]" 07:35:02.280478 < "QUIT" 07:35:02.280533 > "221 bye bye baby[CR][LF]" 07:35:02.281222 MAIN sockfilt said DISC 07:35:02.281245 ====> Client disconnected 07:35:02.281323 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.080921 ====> Client connect 07:35:02.081763 Received DATA (on stdin) 07:35:02.081778 > 160 bytes data, server => client 07:35:02.081790 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.081802 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.081812 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.081895 < 16 bytes data, client => server 07:35:02.081908 'USER anonymous\r\n' 07:35:02.082067 Received DATA (on stdin) 07:35:02.082079 > 33 bytes data, server => client 07:35:02.082089 '331 We are happy you popped in!\r\n' 07:35:02.082135 < 22 bytes data, client => server 07:35:02.082146 'PASS ftp@example.com\r\n' 07:35:02.082237 Received DATA (on stdin) 07:35:02.082248 > 30 bytes data, server => client 07:35:02.082258 '230 Welcome you silly person\r\n' 07:35:02.082300 < 5 bytes data, client => server 07:35:02.082310 'PWD\r\n' 07:35:02.082397 Received DATA (on stdin) 07:35:02.082408 > 30 bytes data, server => client 07:35:02.082418 '257 "/" is current directory\r\n' 07:35:02.082470 < 6 bytes data, client => server 07:35:02.082480 'EPSV\r\n' 07:35:02.084798 Received DATA (on stdin) 07:35:02.084811 > 38 bytes data, server => client 07:35:02.084822 '229 Entering Passive Mode (|||38327|)\n' 07:35:02.084957 < 8 bytes data, client => server 07:35:02.084969 'TYPE I\r\n' 07:35:02.085108 Received DATA (on stdin) 07:35:02.085121 > 33 bytes data, server => client 07:35:02.085132 '200 I modify TYPE as you wanted\r\n' 07:35:02.085187 < 21 bytes data, client => server 07:35:02.085204 'SIZE verifiedserver\r\n' 07:35:02.085331 Received DATA (on stdin) 07:35:02.085343 > 8 bytes data, server => client 07:35:02.085353 '213 17\r\n' 07:35:02.085400 < 21 bytes data, client => server 07:35:02.085412 'RETR verifiedserver\r\n' 07:35:02.085606 Received DATA (on stdin) 07:35:02.085618 > 29 bytes data, server => client 07:35:02.085629 '150 Binary junk (17 bytes).\r\n' 07:35:02.086103 Received DATA (on stdin) 07:35:02.086124 > 28 bytes data, server => client 07:35:02.086134 '226 File transfer complete\r\n' 07:35:02.126288 < 6 bytes data, client => server 07:35:02.126314 'QUIT\r\n' 07:35:02.126524 Received DATA (on stdin) 07:35:02.126534 > 18 bytes data, server => client 07:35:02.126542 '221 bye bye baby\r\n' 07:35:02.127169 ====> Client disconnect 07:35:02.127309 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.084445 Running IPv4 version 07:35:02.084511 Listening on port 38327 07:35:02.084552 Wrote pid 87700 to log/17/server/ftp_sockdata.pid 07:35:02.084570 Received PING (on stdin) 07:35:02.084663 Received PORT (on stdin) 07:35:02.084930 ====> Client connect 07:35:02.085656 Received DATA (on stdin) 07:35:02.085669 > 17 bytes data, server => client 07:35:02.085680 'WE ROOLZ: 79834\r\n' 07:35:02.085701 Received DISC (on stdin) 07:35:02.085713 ====> Client forcibly disconnected 07:35:02.085817 Received QUIT (on stdin) 07:35:02.085833 quits 07:35:02.085906 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 332 please provide account name REPLY ACCT 230 thank you Testnum 228 === End of file server.cmd === Start of file valgrind228 ==87795== ==87795== Process terminating with default action of signal 4 (SIGILL) ==87795== Illegal opcode at address 0x4003082 ==87795== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==87795== by 0x4003082: main (tool_main.c:234) === End of file valgrind228 test 0230...[HTTP GET multiply compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind230 ../src/curl -q --output log/12/curl230.out --include --trace-ascii log/12/trace230 --trace-config all --trace-time http://127.0.0.1:37285/230 --compressed > log/12/stdout230 2> log/12/stderr230 230: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 230 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind230 ../src/curl -q --output log/12/curl230.out --include --trace-ascii log/12/trace230 --trace-config all --trace-time http://127.0.0.1:37285/230 --compressed > log/12/stdout230 2> log/12/stderr230 === End of file commands.log === Start of file http_server.log 07:35:0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind233 ../src/curl -q --output log/8/curl233.out --include --trace-ascii log/8/trace233 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/233 -x 127.0.0.1:45261 --user iam:myself --proxy-user testing:this --location > log/8/stdout233 2> log/8/stderr233 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind232 ../src/curl -q --output log/22/curl232.out --include --trace-ascii log/22/trace232 --trace-config all --trace-time http://127.0.0.1:46761/232 --compressed > log/22/stdout232 2> log/22/stderr232 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind234 ../src/curl -q --output log/15/curl234.out --include --trace-ascii log/15/trace234 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/234 -x 127.0.0.1:36993 --user iam:myself --proxy-user testing:this --location-trusted > log/15/stdout234 2> log/15/stderr234 2.170254 ====> Client connect 07:35:02.170285 accept_connection 3 returned 4 07:35:02.170301 accept_connection 3 returned 0 07:35:02.170315 Read 93 bytes 07:35:02.170324 Process 93 bytes request 07:35:02.170336 Got request: GET /verifiedserver HTTP/1.1 07:35:02.170345 Are-we-friendly question received 07:35:02.170367 Wrote request (93 bytes) input to log/12/server.input 07:35:02.170383 Identifying ourselves as friends 07:35:02.170433 Response sent (56 bytes) and written to log/12/server.response 07:35:02.170444 special request received, no persistency 07:35:02.170453 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 230 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind230 ==88015== ==88015== Process terminating with default action of signal 4 (SIGILL) ==88015== Illegal opcode at address 0x4003082 ==88015== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88015== by 0x4003082: main (tool_main.c:234) === End of file valgrind230 test 0233...[HTTP, proxy, site+proxy auth and Location: to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind233 ../src/curl -q --output log/8/curl233.out --include --trace-ascii log/8/trace233 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/233 -x 127.0.0.1:45261 --user iam:myself --proxy-user testing:this --location > log/8/stdout233 2> log/8/stderr233 233: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 233 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind233 ../src/curl -q --output log/8/curl233.out --include --trace-ascii log/8/trace233 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/233 -x 127.0.0.1:45261 --user iam:myself --proxy-user testing:this --location > log/8/stdout233 2> log/8/stderr233 === End of file commands.log === Start of file http_server.log 07:35:02.209787 ====> Client connect 07:35:02.209817 accept_connection 3 returned 4 07:35:02.209833 accept_connection 3 returned 0 07:35:02.209847 Read 93 bytes 07:35:02.209858 Process 93 bytes request 07:35:02.209875 Got request: GET /verifiedserver HTTP/1.1 07:35:02.209885 Are-we-friendly question received 07:35:02.209908 Wrote request (93 bytes) input to log/8/server.input 07:35:02.209928 Identifying ourselves as friends 07:35:02.209984 Response sent (56 bytes) and written to log/8/server.response 07:35:02.209994 special request received, no persistency 07:35:02.210003 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 233 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind233 ==88103== ==88103== Process terminating with default action of signal 4 (SIGILL) ==88103== Illegal opcode at address 0x4003082 ==88103== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88103== by 0x4003082: main (tool_main.c:234) === End of file valgrind233 test 0232...[HTTP GET deflate raw-compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind232 ../src/curl -q --output log/22/curl232.out --include --trace-ascii log/22/trace232 --trace-config all --trace-time http://127.0.0.1:46761/232 --compressed > log/22/stdout232 2> log/22/stderr232 232: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 232 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind232 ../src/curl -q --output log/22/curl232.out --include --trace-ascii log/22/trace232 --trace-config all --trace-time http://127.0.0.1:46761/232 --compressed > log/22/stdout232 2> log/22/stderr232 === End of file commands.log === Start of file http_server.log 07:35:02.180686 ====> Client connect 07:35:02.180721 accept_connection 3 returned 4 07:35:02.180737 accept_connection 3 returned 0 07:35:02.180750 Read 93 bytes 07:35:02.180760 Process 93 bytes request 07:35:02.180772 Got request: GET /verifiedserver HTTP/1.1 07:35:02.180782 Are-we-friendly question received 07:35:02.180806 Wrote request (93 bytes) input to log/22/server.input 07:35:02.180821 Identifying ourselves as friends 07:35:02.180872 Response sent (56 bytes) and written to log/22/server.response 07:35:02.180882 special request received, no persistency 07:35:02.180890 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 232 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind232 ==88054== ==88054== Process terminating with default action of signal 4 (SIGILL) ==88054== Illegal opcode at address 0x4003082 ==88054== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88054== by 0x4003082: main (tool_main.c:234) === End of file valgrind232 test 0234...[HTTP, proxy, site+proxy auth and Location: to new host location-trusted] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind234 ../src/curl -q --output log/15/curl234.out --include --trace-ascii log/15/trace234 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/234 -x 127.0.0.1:36993 --user iam:myself --proxy-user testing:this --location-trusted > log/15/stdout234 2> log/15/stderr234 234: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 234 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind239 ../src/curl -q --output log/1/curl239.out --include --trace-ascii log/1/trace239 --trace-config all --trace-time http://127.0.0.1:38941/239 --proxy http://127.0.0.1:38941 --proxy-user testuser:testpass --proxy-ntlm -d "postit" > log/1/stdout239 2> log/1/stderr239 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind235 ../src/curl -q --output log/2/curl235.out --include --trace-ascii log/2/trace235 --trace-config all --trace-time ftp://127.0.0.1:42979/235 -T log/2/upload235 -C - > log/2/stdout235 2> log/2/stderr235 grind.supp --num-callers=16 --log-file=log/15/valgrind234 ../src/curl -q --output log/15/curl234.out --include --trace-ascii log/15/trace234 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/234 -x 127.0.0.1:36993 --user iam:myself --proxy-user testing:this --location-trusted > log/15/stdout234 2> log/15/stderr234 === End of file commands.log === Start of file http_server.log 07:35:02.225378 ====> Client connect 07:35:02.225424 accept_connection 3 returned 4 07:35:02.225441 accept_connection 3 returned 0 07:35:02.225456 Read 93 bytes 07:35:02.225466 Process 93 bytes request 07:35:02.225479 Got request: GET /verifiedserver HTTP/1.1 07:35:02.225488 Are-we-friendly question received 07:35:02.225515 Wrote request (93 bytes) input to log/15/server.input 07:35:02.225532 Identifying ourselves as friends 07:35:02.225596 Response sent (56 bytes) and written to log/15/server.response 07:35:02.225607 special request received, no persistency 07:35:02.225616 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 234 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind234 ==88163== ==88163== Process terminating with default action of signal 4 (SIGILL) ==88163== Illegal opcode at address 0x4003082 ==88163== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88163== by 0x4003082: main (tool_main.c:234) === End of file valgrind234 test 0239...[HTTP proxy-auth NTLM and then POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind239 ../src/curl -q --output log/1/curl239.out --include --trace-ascii log/1/trace239 --trace-config all --trace-time http://127.0.0.1:38941/239 --proxy http://127.0.0.1:38941 --proxy-user testuser:testpass --proxy-ntlm -d "postit" > log/1/stdout239 2> log/1/stderr239 239: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 239 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind239 ../src/curl -q --output log/1/curl239.out --include --trace-ascii log/1/trace239 --trace-config all --trace-time http://127.0.0.1:38941/239 --proxy http://127.0.0.1:38941 --proxy-user testuser:testpass --proxy-ntlm -d "postit" > log/1/stdout239 2> log/1/stderr239 === End of file commands.log === Start of file http_server.log 07:35:02.491883 ====> Client connect 07:35:02.491908 accept_connection 3 returned 4 07:35:02.491922 accept_connection 3 returned 0 07:35:02.491933 Read 93 bytes 07:35:02.491941 Process 93 bytes request 07:35:02.491950 Got request: GET /verifiedserver HTTP/1.1 07:35:02.491957 Are-we-friendly question received 07:35:02.491976 Wrote request (93 bytes) input to log/1/server.input 07:35:02.491989 Identifying ourselves as friends 07:35:02.492030 Response sent (56 bytes) and written to log/1/server.response 07:35:02.492037 special request received, no persistency 07:35:02.492044 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 239 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind239 ==88491== ==88491== Process terminating with default action of signal 4 (SIGILL) ==88491== Illegal opcode at address 0x4003082 ==88491== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88491== by 0x4003082: main (tool_main.c:234) === End of file valgrind239 test 0235...[FTP resumed upload but no file present remotely] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind235 ../src/curl -q --output log/2/curl235.out --include --trace-ascii log/2/trace235 --trace-config all --trace-time ftp://127.0.0.1:42979/235 -T log/2/upload235 -C - > log/2/stdout235 2> log/2/stderr235 235: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 235 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind235 ../src/curl -q --output log/2/curl235.out --include --trace-ascii log/2/trace235 --trace-config all --trace-time ftp://127.0.0.1:42979/235 -T log/2/upload235 -C - > log/2/stdout235 2> log/2/stderr235 === End of file commands.log === Start of file ftp_server.log 07:35:02.512016 ====> Client connect 07:35:02.512193 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.512509 < "USER anonymous" 07:35:02.512552 > "331 We are happy you popped in![CR][LF]" 07:35:02.512736 < "PASS ftp@example.com" 07:35:02.512762 > "230 Welcome you silly person[CR][LF]" 07:35:02.512969 < "PWD" 07:35:02.513023 > "257 "/" is current directory[CR][LF]" 07:35:02.513561 < "EPSV" 07:35:02.513593 ====> Passive DATA channel requested by client 07:35:02.513607 DATA sockfilt for passive data channel starting... 07:35:02.515511 DATA sockfilt for passive data channel started (pid 88287) 07:35:02.515613 DATA sockfilt for passive data channel listens on port 39347 07:35:02.515650 > "229 Entering Passive Mode (|||39347|)[LF]" 07:35:02.515667 Client has been notified that DATA conn will be accepted on port 39347 07:35:02.515883 Client connects to port 39347 07:35:02.515914 ====> Client established passive DATA connection on port 39347 07:35:02.515980 < "TYPE I" 07:35:02.516011 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.516169 < "SIZE verifiedserver" 07:35:02.516201 > "213 17[CR][LF]" 07:35:02.516352 < "RETR verifiedserver" 07:35:02.516385 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.516461 =====> Closing passive DATA connection... 07:35:02.516479 Server disconnects passive DATA connection 07:35:02.516587 Server disconnected passive DATA connection 07:35:02.516630 DATA sockfilt for passive data channel quits (pid 88287) 07:35:02.516892 DATA sockfilt for passive data channel quit (pid 88287) 07:35:02.516909 =====> Closed passive DATA connection 07:35:02.516940 > "226 File transfer complete[CR][LF]" 07:35:02.557734 < "QUIT" 07:35:02.557786 > "221 bye bye baby[CR][LF]" 07:35:02.558857 MAIN sockfilt said DISC 07:35:02.558900 ====> Client disconnected 07:35:02.558983 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.357877 ====> Client connect 07:35:02.358198 Received DATA (on stdinCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind236 ../src/curl -q --output log/18/curl236.out --include --trace-ascii log/18/trace236 --trace-config all --trace-time ftp://127.0.0.1:33107/236 -T log/18/file236.txt -C - > log/18/stdout236 2> log/18/stderr236 ) 07:35:02.358214 > 160 bytes data, server => client 07:35:02.358226 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.358237 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.358247 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.358371 < 16 bytes data, client => server 07:35:02.358402 'USER anonymous\r\n' 07:35:02.358549 Received DATA (on stdin) 07:35:02.358564 > 33 bytes data, server => client 07:35:02.358575 '331 We are happy you popped in!\r\n' 07:35:02.358637 < 22 bytes data, client => server 07:35:02.358651 'PASS ftp@example.com\r\n' 07:35:02.358752 Received DATA (on stdin) 07:35:02.358765 > 30 bytes data, server => client 07:35:02.358776 '230 Welcome you silly person\r\n' 07:35:02.358824 < 5 bytes data, client => server 07:35:02.358835 'PWD\r\n' 07:35:02.359022 Received DATA (on stdin) 07:35:02.359039 > 30 bytes data, server => client 07:35:02.359050 '257 "/" is current directory\r\n' 07:35:02.359440 < 6 bytes data, client => server 07:35:02.359460 'EPSV\r\n' 07:35:02.361660 Received DATA (on stdin) 07:35:02.361674 > 38 bytes data, server => client 07:35:02.361685 '229 Entering Passive Mode (|||39347|)\n' 07:35:02.361802 < 8 bytes data, client => server 07:35:02.361813 'TYPE I\r\n' 07:35:02.362003 Received DATA (on stdin) 07:35:02.362016 > 33 bytes data, server => client 07:35:02.362027 '200 I modify TYPE as you wanted\r\n' 07:35:02.362077 < 21 bytes data, client => server 07:35:02.362089 'SIZE verifiedserver\r\n' 07:35:02.362192 Received DATA (on stdin) 07:35:02.362204 > 8 bytes data, server => client 07:35:02.362214 '213 17\r\n' 07:35:02.362261 < 21 bytes data, client => server 07:35:02.362273 'RETR verifiedserver\r\n' 07:35:02.362365 Received DATA (on stdin) 07:35:02.362388 > 29 bytes data, server => client 07:35:02.362400 '150 Binary junk (17 bytes).\r\n' 07:35:02.362935 Received DATA (on stdin) 07:35:02.362948 > 28 bytes data, server => client 07:35:02.362958 '226 File transfer complete\r\n' 07:35:02.403552 < 6 bytes data, client => server 07:35:02.403576 'QUIT\r\n' 07:35:02.403780 Received DATA (on stdin) 07:35:02.403792 > 18 bytes data, server => client 07:35:02.403802 '221 bye bye baby\r\n' 07:35:02.404787 ====> Client disconnect 07:35:02.404977 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.361278 Running IPv4 version 07:35:02.361365 Listening on port 39347 07:35:02.361426 Wrote pid 88287 to log/2/server/ftp_sockdata.pid 07:35:02.361447 Received PING (on stdin) 07:35:02.361528 Received PORT (on stdin) 07:35:02.361805 ====> Client connect 07:35:02.362470 Received DATA (on stdin) 07:35:02.362484 > 17 bytes data, server => client 07:35:02.362494 'WE ROOLZ: 79845\r\n' 07:35:02.362526 Received DISC (on stdin) 07:35:02.362537 ====> Client forcibly disconnected 07:35:02.362642 Received QUIT (on stdin) 07:35:02.362668 quits 07:35:02.362741 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY SIZE 500 command not understood Testnum 235 === End of file server.cmd === Start of file upload235 this is the *****crap******** that we're gonna upload worx? === End of file upload235 === Start of file valgrind235 ==88309== ==88309== Process terminating with default action of signal 4 (SIGILL) ==88309== Illegal opcode at address 0x4003082 ==88309== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88309== by 0x4003082: main (tool_main.c:234) === End of file valgrind235 test 0236...[FTP resume upload but denied access to remote file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind236 ../src/curl -q --output log/18/curl236.out --include --trace-ascii log/18/trace236 --trace-config all --trace-time ftp://127.0.0.1:33107/236 -T log/18/file236.txt -C - > log/18/stdout236 2> log/18/stderr236 236: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 236 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind236 ../src/curl -q --output log/18/curl236.out --include --trace-ascii log/18/trace236 --trace-config all --trace-time ftp://127.0.0.1:33107/236 -T log/18/file236.txt -C - > log/18/stdout236 2> log/18/stderr236 === End of file commands.log === Start of file file236.txt Test data === End of file file236.txt === Start of file ftp_server.log 07:35:02.521497 ====> Client connect 07:35:02.521660 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.521931 < "USER anonymous" 07:35:02.521965 > "331 We are happy you popped in![CR][LF]" 07:35:02.522125 < "PASS ftp@example.com" 07:35:02.522152 > "230 Welcome you silly person[CR][LF]" 07:35:02.522303 < "PWD" 07:35:02.522330 > "257 "/" is current directory[CR][LF]" 07:35:02.522473 < "EPSV" 07:35:02.522497 ====> Passive DATA channel requested by client 07:35:02.522509 DATA sockfilt for passive data channel starting... 07:35:02.524030 DATA sockfilt for passive data channel started (pid 88289) 07:35:02.524125 DATA sockfilt for passive data channel listens on port 34169 07:35:02.524159 > "229 Entering Passive Mode (|||34169|)[LF]" 07:35:02.524174 Client has been notified that DATA conn will be accepted on port 34169 07:35:02.524361 Client connects to port 34169 07:35:02.524382 ====> Client established passive DATA connection on port 34169 07:35:02.524435 < "TYPE I" 07:35:02.524459 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.524595 < "SIZE verifiedserver" 07:35:02.524627 > "213 17[CR][LF]" 07:35:02.524752 < "RETR verifiedserver" 07:35:02.524779 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.524842 =====> Closing passive DATA connection... 07:35:02.524855 Server disconnects passive DATA connection 07:35:02.525024 Server disconnected passive DATA connection 07:35:02.525047 DATA sockfilt for passive data channel quits (pid 88289) 07:35:02.525278 DATA sockfilt for passive data channel quit (pid 88289) 07:35:02.525300 =====> Closed passive DATA connection 07:35:02.525327 > "226 File transfer complete[CR][LF]" 07:35:02.570501 < "QUIT" 07:35:02.570550 > "221 bye bye baby[CR][LF]" 07:35:02.571481 MAIN sockfilt said DISC 07:35:02.571508 ====> Client disconnected 07:35:02.571573 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.367330 ====> Client connect 07:35:02.367659 Received DATA (on stdin) 07:35:02.367673 > 160 bytes data, server => client 07:35:02.367685 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.367695 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.367705 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.367779 < 16 bytes data, client => server 07:35:02.367790 'USER anonymous\r\n' 07:35:02.367959 Received DATA (on stdin) 07:35:02.367972 > 33 bytes data, server => client 07:35:02.367982 '331 We are happy you popped in!\r\n' 07:35:02.368031 < 22 bytes data, client => server 07:35:02.368043 'PASS ftp@example.com\r\n' 07:35:02.368142 Received DATA (on stdin) 07:35:02.368154 > 30 bytes data, server => client 07:35:02.368165 '230 Welcome you silly person\r\n' 07:35:02.368212 < 5 bytes data, client => server 07:35:02.368223 'PWD\r\n' 07:35:02.368319 Received DATA (on stdin) 07:35:02.368330 > 30 bytes data, server => client 07:35:02.368340 '257 "/" is current directory\r\n' 07:35:02.368390 < 6 bytes data, client => server 07:35:02.368401 'EPSV\r\n' 07:35:02.370164 Received DATA (on stdin) 07:35:02.370176 > 38 bytes data, server => client 07:35:02.370187 '229 Entering Passive Mode (|||34169|)\n' 07:35:02.370290 < 8 bytes data, client => serCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind237 ../src/curl -q --output log/21/curl237.out --include --trace-ascii log/21/trace237 --trace-config all --trace-time ftp://127.0.0.1:38701/237 --disable-epsv > log/21/stdout237 2> log/21/stderr237 ver 07:35:02.370300 'TYPE I\r\n' 07:35:02.370447 Received DATA (on stdin) 07:35:02.370458 > 33 bytes data, server => client 07:35:02.370468 '200 I modify TYPE as you wanted\r\n' 07:35:02.370513 < 21 bytes data, client => server 07:35:02.370523 'SIZE verifiedserver\r\n' 07:35:02.370613 Received DATA (on stdin) 07:35:02.370623 > 8 bytes data, server => client 07:35:02.370633 '213 17\r\n' 07:35:02.370672 < 21 bytes data, client => server 07:35:02.370682 'RETR verifiedserver\r\n' 07:35:02.370844 Received DATA (on stdin) 07:35:02.370855 > 29 bytes data, server => client 07:35:02.370864 '150 Binary junk (17 bytes).\r\n' 07:35:02.371317 Received DATA (on stdin) 07:35:02.371330 > 28 bytes data, server => client 07:35:02.371340 '226 File transfer complete\r\n' 07:35:02.416337 < 6 bytes data, client => server 07:35:02.416362 'QUIT\r\n' 07:35:02.416544 Received DATA (on stdin) 07:35:02.416555 > 18 bytes data, server => client 07:35:02.416566 '221 bye bye baby\r\n' 07:35:02.417415 ====> Client disconnect 07:35:02.417562 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.369855 Running IPv4 version 07:35:02.369912 Listening on port 34169 07:35:02.369950 Wrote pid 88289 to log/18/server/ftp_sockdata.pid 07:35:02.369966 Received PING (on stdin) 07:35:02.370045 Received PORT (on stdin) 07:35:02.370293 ====> Client connect 07:35:02.370777 Received DATA (on stdin) 07:35:02.370794 > 17 bytes data, server => client 07:35:02.370805 'WE ROOLZ: 82311\r\n' 07:35:02.370943 Received DISC (on stdin) 07:35:02.370959 ====> Client forcibly disconnected 07:35:02.371041 Received QUIT (on stdin) 07:35:02.371051 quits 07:35:02.371130 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY SIZE 550 access to this file is very much denied REPLY APPE 550 I said: access to this file is very much denied REPLY STOR 550 I said: access to this file is very much denied REPLY SIZE 500 command not understood Testnum 236 === End of file server.cmd === Start of file valgrind236 ==88325== ==88325== Process terminating with default action of signal 4 (SIGILL) ==88325== Illegal opcode at address 0x4003082 ==88325== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88325== by 0x4003082: main (tool_main.c:234) === End of file valgrind236 test 0237...[FTP getting bad host in 227-response to PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind237 ../src/curl -q --output log/21/curl237.out --include --trace-ascii log/21/trace237 --trace-config all --trace-time ftp://127.0.0.1:38701/237 --disable-epsv > log/21/stdout237 2> log/21/stderr237 237: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 237 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind237 ../src/curl -q --output log/21/curl237.out --include --trace-ascii log/21/trace237 --trace-config all --trace-time ftp://127.0.0.1:38701/237 --disable-epsv > log/21/stdout237 2> log/21/stderr237 === End of file commands.log === Start of file ftp_server.log 07:35:02.555818 ====> Client connect 07:35:02.555984 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.556259 < "USER anonymous" 07:35:02.556297 > "331 We are happy you popped in![CR][LF]" 07:35:02.556462 < "PASS ftp@example.com" 07:35:02.556489 > "230 Welcome you silly person[CR][LF]" 07:35:02.556637 < "PWD" 07:35:02.556676 > "257 "/" is current directory[CR][LF]" 07:35:02.556840 < "EPSV" 07:35:02.556865 ====> Passive DATA channel requested by client 07:35:02.556877 DATA sockfilt for passive data channel starting... 07:35:02.558423 DATA sockfilt for passive data channel started (pid 88307) 07:35:02.558522 DATA sockfilt for passive data channel listens on port 38747 07:35:02.558557 > "229 Entering Passive Mode (|||38747|)[LF]" 07:35:02.558573 Client has been notified that DATA conn will be accepted on port 38747 07:35:02.558757 Client connects to port 38747 07:35:02.558780 ====> Client established passive DATA connection on port 38747 07:35:02.558838 < "TYPE I" 07:35:02.558863 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.558992 < "SIZE verifiedserver" 07:35:02.559027 > "213 17[CR][LF]" 07:35:02.559152 < "RETR verifiedserver" 07:35:02.559185 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.559258 =====> Closing passive DATA connection... 07:35:02.559275 Server disconnects passive DATA connection 07:35:02.559350 Server disconnected passive DATA connection 07:35:02.559369 DATA sockfilt for passive data channel quits (pid 88307) 07:35:02.559659 DATA sockfilt for passive data channel quit (pid 88307) 07:35:02.559687 =====> Closed passive DATA connection 07:35:02.559715 > "226 File transfer complete[CR][LF]" 07:35:02.600319 < "QUIT" 07:35:02.600374 > "221 bye bye baby[CR][LF]" 07:35:02.600564 MAIN sockfilt said DISC 07:35:02.600589 ====> Client disconnected 07:35:02.600675 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.401693 ====> Client connect 07:35:02.401989 Received DATA (on stdin) 07:35:02.402005 > 160 bytes data, server => client 07:35:02.402017 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.402028 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.402038 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.402103 < 16 bytes data, client => server 07:35:02.402117 'USER anonymous\r\n' 07:35:02.402291 Received DATA (on stdin) 07:35:02.402304 > 33 bytes data, server => client 07:35:02.402314 '331 We are happy you popped in!\r\n' 07:35:02.402364 < 22 bytes data, client => server 07:35:02.402377 'PASS ftp@example.com\r\n' 07:35:02.402478 Received DATA (on stdin) 07:35:02.402490 > 30 bytes data, server => client 07:35:02.402500 '230 Welcome you silly person\r\n' 07:35:02.402546 < 5 bytes data, client => server 07:35:02.402557 'PWD\r\n' 07:35:02.402668 Received DATA (on stdin) 07:35:02.402681 > 30 bytes data, server => client 07:35:02.402691 '257 "/" is current directory\r\n' 07:35:02.402746 < 6 bytes data, client => server 07:35:02.402759 'EPSV\r\n' 07:35:02.404565 Received DATA (on stdin) 07:35:02.404578 > 38 bytes data, server => client 07:35:02.404589 '229 Entering Passive Mode (|||38747|)\n' 07:35:02.404693 < 8 bytes data, client => server 07:35:02.404704 'TYPE I\r\n' 07:35:02.404852 Received DATA (on stdin) 07:35:02.404864 > 33 bytes data, server => client 07:35:02.404875 '200 I modify TYPE as you wanted\r\n' 07:35:02.404926 < 21 bytes data, client => server 07:35:02.404944 'SIZE verifiedserver\r\n' 07:35:02.405017 Received DATA (on stdin) 07:35:02.405029 > 8 bytes data, server => client 07:35:02.405039 '213 17\r\n' 07:35:02.405087 < 21 bytes data, client => server 07:35:02.405103 'RETR verifiedserver\r\n' 07:35:02.405267 Received DATA (on stdin) 07:35:02.405280 > 29 bytes data, server => client 07:35:02.405290 '150 Binary junk (17 bytes).\r\n' 07:35:02.405706 Received DATA (on stdin) 07:35:02.405719 > 28 bytes data, server => client 07:35:02.405730 '226 File transfer complete\r\n' 07:35:02.446118 < 6 bytes data, client => server 07:35:02.446146 'QUIT\r\n' 07:35:02.446363 Received DATA (on stdin) 07:35:02.446390 > 18 bytes data, server => client 07:35:02.446402 '221 bye bye baby\r\n' 07:35:02.446504 ====> Client disconnect 07:35:02.446612 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.404244 Running IPv4 version 07:35:02.404296 Listening on port 38747 07:35:02.404337 Wrote pid 88307 to log/21/server/ftp_sockdata.pid 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind238 ../src/curl -q --output log/23/curl238.out --include --trace-ascii log/23/trace238 --trace-config all --trace-time ftp://127.0.0.1:36145/238 > log/23/stdout238 2> log/23/stderr238 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind245 ../src/curl -q --output log/10/curl245.out --include --trace-ascii log/10/trace245 --trace-config all --trace-time http://127.0.0.1:34851/245 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout245 2> log/10/stderr245 7:35:02.404355 Received PING (on stdin) 07:35:02.404437 Received PORT (on stdin) 07:35:02.404696 ====> Client connect 07:35:02.405184 Received DATA (on stdin) 07:35:02.405199 > 17 bytes data, server => client 07:35:02.405209 'WE ROOLZ: 81322\r\n' 07:35:02.405266 Received DISC (on stdin) 07:35:02.405279 ====> Client forcibly disconnected 07:35:02.405369 Received QUIT (on stdin) 07:35:02.405382 quits 07:35:02.405452 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASV 227 Entering Passiv Mode (1216,256,2,127,127,127) Testnum 237 === End of file server.cmd === Start of file valgrind237 ==88400== ==88400== Process terminating with default action of signal 4 (SIGILL) ==88400== Illegal opcode at address 0x4003082 ==88400== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88400== by 0x4003082: main (tool_main.c:234) === End of file valgrind237 test 0238...[FTP getting bad port in response to EPSV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind238 ../src/curl -q --output log/23/curl238.out --include --trace-ascii log/23/trace238 --trace-config all --trace-time ftp://127.0.0.1:36145/238 > log/23/stdout238 2> log/23/stderr238 238: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 238 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind238 ../src/curl -q --output log/23/curl238.out --include --trace-ascii log/23/trace238 --trace-config all --trace-time ftp://127.0.0.1:36145/238 > log/23/stdout238 2> log/23/stderr238 === End of file commands.log === Start of file ftp_server.log 07:35:02.629825 ====> Client connect 07:35:02.629988 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.630288 < "USER anonymous" 07:35:02.630323 > "331 We are happy you popped in![CR][LF]" 07:35:02.630470 < "PASS ftp@example.com" 07:35:02.630494 > "230 Welcome you silly person[CR][LF]" 07:35:02.630643 < "PWD" 07:35:02.630672 > "257 "/" is current directory[CR][LF]" 07:35:02.630809 < "EPSV" 07:35:02.630833 ====> Passive DATA channel requested by client 07:35:02.630844 DATA sockfilt for passive data channel starting... 07:35:02.632379 DATA sockfilt for passive data channel started (pid 88454) 07:35:02.632485 DATA sockfilt for passive data channel listens on port 40561 07:35:02.632520 > "229 Entering Passive Mode (|||40561|)[LF]" 07:35:02.632535 Client has been notified that DATA conn will be accepted on port 40561 07:35:02.632702 Client connects to port 40561 07:35:02.632722 ====> Client established passive DATA connection on port 40561 07:35:02.632830 < "TYPE I" 07:35:02.632908 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.633135 < "SIZE verifiedserver" 07:35:02.633174 > "213 17[CR][LF]" 07:35:02.633313 < "RETR verifiedserver" 07:35:02.633351 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.633427 =====> Closing passive DATA connection... 07:35:02.633442 Server disconnects passive DATA connection 07:35:02.633582 Server disconnected passive DATA connection 07:35:02.633605 DATA sockfilt for passive data channel quits (pid 88454) 07:35:02.633798 DATA sockfilt for passive data channel quit (pid 88454) 07:35:02.633819 =====> Closed passive DATA connection 07:35:02.633845 > "226 File transfer complete[CR][LF]" 07:35:02.682903 < "QUIT" 07:35:02.682952 > "221 bye bye baby[CR][LF]" 07:35:02.683792 MAIN sockfilt said DISC 07:35:02.683818 ====> Client disconnected 07:35:02.683882 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.475720 ====> Client connect 07:35:02.475987 Received DATA (on stdin) 07:35:02.476012 > 160 bytes data, server => client 07:35:02.476025 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.476035 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.476045 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.476122 < 16 bytes data, client => server 07:35:02.476135 'USER anonymous\r\n' 07:35:02.476316 Received DATA (on stdin) 07:35:02.476328 > 33 bytes data, server => client 07:35:02.476338 '331 We are happy you popped in!\r\n' 07:35:02.476383 < 22 bytes data, client => server 07:35:02.476393 'PASS ftp@example.com\r\n' 07:35:02.476481 Received DATA (on stdin) 07:35:02.476491 > 30 bytes data, server => client 07:35:02.476501 '230 Welcome you silly person\r\n' 07:35:02.476545 < 5 bytes data, client => server 07:35:02.476555 'PWD\r\n' 07:35:02.476659 Received DATA (on stdin) 07:35:02.476670 > 30 bytes data, server => client 07:35:02.476679 '257 "/" is current directory\r\n' 07:35:02.476727 < 6 bytes data, client => server 07:35:02.476737 'EPSV\r\n' 07:35:02.478511 Received DATA (on stdin) 07:35:02.478532 > 38 bytes data, server => client 07:35:02.478543 '229 Entering Passive Mode (|||40561|)\n' 07:35:02.478674 < 8 bytes data, client => server 07:35:02.478686 'TYPE I\r\n' 07:35:02.478920 Received DATA (on stdin) 07:35:02.478945 > 33 bytes data, server => client 07:35:02.478957 '200 I modify TYPE as you wanted\r\n' 07:35:02.479023 < 21 bytes data, client => server 07:35:02.479038 'SIZE verifiedserver\r\n' 07:35:02.479166 Received DATA (on stdin) 07:35:02.479176 > 8 bytes data, server => client 07:35:02.479186 '213 17\r\n' 07:35:02.479228 < 21 bytes data, client => server 07:35:02.479238 'RETR verifiedserver\r\n' 07:35:02.479384 Received DATA (on stdin) 07:35:02.479404 > 29 bytes data, server => client 07:35:02.479419 '150 Binary junk (17 bytes).\r\n' 07:35:02.479836 Received DATA (on stdin) 07:35:02.479851 > 28 bytes data, server => client 07:35:02.479861 '226 File transfer complete\r\n' 07:35:02.528724 < 6 bytes data, client => server 07:35:02.528752 'QUIT\r\n' 07:35:02.528945 Received DATA (on stdin) 07:35:02.528956 > 18 bytes data, server => client 07:35:02.528966 '221 bye bye baby\r\n' 07:35:02.529728 ====> Client disconnect 07:35:02.529837 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.478209 Running IPv4 version 07:35:02.478263 Listening on port 40561 07:35:02.478298 Wrote pid 88454 to log/23/server/ftp_sockdata.pid 07:35:02.478314 Received PING (on stdin) 07:35:02.478401 Received PORT (on stdin) 07:35:02.478647 ====> Client connect 07:35:02.479357 Received DATA (on stdin) 07:35:02.479376 > 17 bytes data, server => client 07:35:02.479387 'WE ROOLZ: 81897\r\n' 07:35:02.479438 Received DISC (on stdin) 07:35:02.479455 ====> Client forcibly disconnected 07:35:02.479604 Received QUIT (on stdin) 07:35:02.479615 quits 07:35:02.479664 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 229 Entering Passiv Mode (|||1000000|) Testnum 238 === End of file server.cmd === Start of file valgrind238 ==88541== ==88541== Process terminating with default action of signal 4 (SIGILL) ==88541== Illegal opcode at address 0x4003082 ==88541== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88541== by 0x4003082: main (tool_main.c:234) === End of file valgrind238 test 0245...[HTTP POST --digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind245 ../src/curl -q --output log/10/curl245.out --include --trace-ascii log/10/trace245 --trace-config all --trace-time http://127.0.0.1:34851/245 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout245 2> log/10/stderr245 245: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failurCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind243 ../src/curl -q --output log/7/curl243.out --include --trace-ascii log/7/trace243 --trace-config all --trace-time http://127.0.0.1:39077/243 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-anyauth -d "postit" > log/7/stdout243 2> log/7/stderr243 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind246 ../src/curl -q --output log/24/curl246.out --include --trace-ascii log/24/trace246 --trace-config all --trace-time http://127.0.0.1:38675/246 -u auser:apasswd --digest -d "junkelijunk" > log/24/stdout246 2> log/24/stderr246 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind244 ../src/curl -q --output log/16/curl244.out --include --trace-ascii log/16/trace244 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:40585/fir%23t/th%69rd/244/ > log/16/stdout244 2> log/16/stderr244 e? Returned: 132 == Contents of files in the log/10/ dir after test 245 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind245 ../src/curl -q --output log/10/curl245.out --include --trace-ascii log/10/trace245 --trace-config all --trace-time http://127.0.0.1:34851/245 -u auser:apasswd --digest -d "junkelijunk" > log/10/stdout245 2> log/10/stderr245 === End of file commands.log === Start of file http_server.log 07:35:02.581755 ====> Client connect 07:35:02.581791 accept_connection 3 returned 4 07:35:02.581809 accept_connection 3 returned 0 07:35:02.581824 Read 93 bytes 07:35:02.581838 Process 93 bytes request 07:35:02.581850 Got request: GET /verifiedserver HTTP/1.1 07:35:02.581860 Are-we-friendly question received 07:35:02.581891 Wrote request (93 bytes) input to log/10/server.input 07:35:02.581908 Identifying ourselves as friends 07:35:02.581969 Response sent (56 bytes) and written to log/10/server.response 07:35:02.581981 special request received, no persistency 07:35:02.581990 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 245 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind245 ==88676== ==88676== Process terminating with default action of signal 4 (SIGILL) ==88676== Illegal opcode at address 0x4003082 ==88676== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88676== by 0x4003082: main (tool_main.c:234) === End of file valgrind245 test 0243...[HTTP POST with --proxy-anyauth, picking NTLM] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind243 ../src/curl -q --output log/7/curl243.out --include --trace-ascii log/7/trace243 --trace-config all --trace-time http://127.0.0.1:39077/243 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-anyauth -d "postit" > log/7/stdout243 2> log/7/stderr243 243: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 243 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind243 ../src/curl -q --output log/7/curl243.out --include --trace-ascii log/7/trace243 --trace-config all --trace-time http://127.0.0.1:39077/243 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-anyauth -d "postit" > log/7/stdout243 2> log/7/stderr243 === End of file commands.log === Start of file http_server.log 07:35:02.581715 ====> Client connect 07:35:02.581743 accept_connection 3 returned 4 07:35:02.581757 accept_connection 3 returned 0 07:35:02.581768 Read 93 bytes 07:35:02.581776 Process 93 bytes request 07:35:02.581788 Got request: GET /verifiedserver HTTP/1.1 07:35:02.581796 Are-we-friendly question received 07:35:02.581845 Wrote request (93 bytes) input to log/7/server.input 07:35:02.581859 Identifying ourselves as friends 07:35:02.581912 Response sent (56 bytes) and written to log/7/server.response 07:35:02.581922 special request received, no persistency 07:35:02.581931 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 243 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind243 ==88682== ==88682== Process terminating with default action of signal 4 (SIGILL) ==88682== Illegal opcode at address 0x4003082 ==88682== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88682== by 0x4003082: main (tool_main.c:234) === End of file valgrind243 test 0246...[HTTP POST --digest with server doing a 100 before 401 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind246 ../src/curl -q --output log/24/curl246.out --include --trace-ascii log/24/trace246 --trace-config all --trace-time http://127.0.0.1:38675/246 -u auser:apasswd --digest -d "junkelijunk" > log/24/stdout246 2> log/24/stderr246 246: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 246 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind246 ../src/curl -q --output log/24/curl246.out --include --trace-ascii log/24/trace246 --trace-config all --trace-time http://127.0.0.1:38675/246 -u auser:apasswd --digest -d "junkelijunk" > log/24/stdout246 2> log/24/stderr246 === End of file commands.log === Start of file http_server.log 07:35:02.586297 ====> Client connect 07:35:02.586328 accept_connection 3 returned 4 07:35:02.586343 accept_connection 3 returned 0 07:35:02.586356 Read 93 bytes 07:35:02.586365 Process 93 bytes request 07:35:02.586377 Got request: GET /verifiedserver HTTP/1.1 07:35:02.586385 Are-we-friendly question received 07:35:02.586409 Wrote request (93 bytes) input to log/24/server.input 07:35:02.586424 Identifying ourselves as friends 07:35:02.586477 Response sent (56 bytes) and written to log/24/server.response 07:35:02.586488 special request received, no persistency 07:35:02.586496 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 246 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind246 ==88679== ==88679== Process terminating with default action of signal 4 (SIGILL) ==88679== Illegal opcode at address 0x4003082 ==88679== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88679== by 0x4003082: main (tool_main.c:234) === End of file valgrind246 test 0244...[FTP dir listing with nocwd and URL encoded path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind244 ../srCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind248 ../src/curl -q --output log/9/curl248.out --include --trace-ascii log/9/trace248 --trace-config all --trace-time ftp://127.0.0.1:36299/248 -T log/9/test248.txt -z "apr 1 2005 08:00:00" > log/9/stdout248 2> log/9/stderr248 c/curl -q --output log/16/curl244.out --include --trace-ascii log/16/trace244 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:40585/fir%23t/th%69rd/244/ > log/16/stdout244 2> log/16/stderr244 244: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 244 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind244 ../src/curl -q --output log/16/curl244.out --include --trace-ascii log/16/trace244 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:40585/fir%23t/th%69rd/244/ > log/16/stdout244 2> log/16/stderr244 === End of file commands.log === Start of file ftp_server.log 07:35:02.737035 ====> Client connect 07:35:02.737193 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.737464 < "USER anonymous" 07:35:02.737500 > "331 We are happy you popped in![CR][LF]" 07:35:02.737661 < "PASS ftp@example.com" 07:35:02.737688 > "230 Welcome you silly person[CR][LF]" 07:35:02.737847 < "PWD" 07:35:02.737878 > "257 "/" is current directory[CR][LF]" 07:35:02.738083 < "EPSV" 07:35:02.738123 ====> Passive DATA channel requested by client 07:35:02.738136 DATA sockfilt for passive data channel starting... 07:35:02.739859 DATA sockfilt for passive data channel started (pid 88666) 07:35:02.739971 DATA sockfilt for passive data channel listens on port 32791 07:35:02.740013 > "229 Entering Passive Mode (|||32791|)[LF]" 07:35:02.740031 Client has been notified that DATA conn will be accepted on port 32791 07:35:02.740204 Client connects to port 32791 07:35:02.740230 ====> Client established passive DATA connection on port 32791 07:35:02.740293 < "TYPE I" 07:35:02.740318 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.740484 < "SIZE verifiedserver" 07:35:02.740519 > "213 17[CR][LF]" 07:35:02.740671 < "RETR verifiedserver" 07:35:02.740704 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.740781 =====> Closing passive DATA connection... 07:35:02.740797 Server disconnects passive DATA connection 07:35:02.740864 Server disconnected passive DATA connection 07:35:02.740885 DATA sockfilt for passive data channel quits (pid 88666) 07:35:02.741112 DATA sockfilt for passive data channel quit (pid 88666) 07:35:02.741137 =====> Closed passive DATA connection 07:35:02.741164 > "226 File transfer complete[CR][LF]" 07:35:02.783786 < "QUIT" 07:35:02.783837 > "221 bye bye baby[CR][LF]" 07:35:02.784026 MAIN sockfilt said DISC 07:35:02.784080 ====> Client disconnected 07:35:02.784289 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.582931 ====> Client connect 07:35:02.583196 Received DATA (on stdin) 07:35:02.583212 > 160 bytes data, server => client 07:35:02.583224 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.583234 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.583244 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.583311 < 16 bytes data, client => server 07:35:02.583323 'USER anonymous\r\n' 07:35:02.583494 Received DATA (on stdin) 07:35:02.583506 > 33 bytes data, server => client 07:35:02.583516 '331 We are happy you popped in!\r\n' 07:35:02.583566 < 22 bytes data, client => server 07:35:02.583578 'PASS ftp@example.com\r\n' 07:35:02.583678 Received DATA (on stdin) 07:35:02.583690 > 30 bytes data, server => client 07:35:02.583699 '230 Welcome you silly person\r\n' 07:35:02.583757 < 5 bytes data, client => server 07:35:02.583769 'PWD\r\n' 07:35:02.583867 Received DATA (on stdin) 07:35:02.583878 > 30 bytes data, server => client 07:35:02.583888 '257 "/" is current directory\r\n' 07:35:02.583941 < 6 bytes data, client => server 07:35:02.583953 'EPSV\r\n' 07:35:02.586023 Received DATA (on stdin) 07:35:02.586036 > 38 bytes data, server => client 07:35:02.586047 '229 Entering Passive Mode (|||32791|)\n' 07:35:02.586147 < 8 bytes data, client => server 07:35:02.586166 'TYPE I\r\n' 07:35:02.586307 Received DATA (on stdin) 07:35:02.586319 > 33 bytes data, server => client 07:35:02.586329 '200 I modify TYPE as you wanted\r\n' 07:35:02.586383 < 21 bytes data, client => server 07:35:02.586398 'SIZE verifiedserver\r\n' 07:35:02.586510 Received DATA (on stdin) 07:35:02.586522 > 8 bytes data, server => client 07:35:02.586532 '213 17\r\n' 07:35:02.586581 < 21 bytes data, client => server 07:35:02.586594 'RETR verifiedserver\r\n' 07:35:02.586793 Received DATA (on stdin) 07:35:02.586806 > 29 bytes data, server => client 07:35:02.586817 '150 Binary junk (17 bytes).\r\n' 07:35:02.587155 Received DATA (on stdin) 07:35:02.587168 > 28 bytes data, server => client 07:35:02.587179 '226 File transfer complete\r\n' 07:35:02.629590 < 6 bytes data, client => server 07:35:02.629613 'QUIT\r\n' 07:35:02.629826 Received DATA (on stdin) 07:35:02.629835 > 18 bytes data, server => client 07:35:02.629843 '221 bye bye baby\r\n' 07:35:02.629944 ====> Client disconnect 07:35:02.630070 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.585681 Running IPv4 version 07:35:02.585731 Listening on port 32791 07:35:02.585769 Wrote pid 88666 to log/16/server/ftp_sockdata.pid 07:35:02.585788 Received PING (on stdin) 07:35:02.585881 Received PORT (on stdin) 07:35:02.586146 ====> Client connect 07:35:02.586707 Received DATA (on stdin) 07:35:02.586721 > 17 bytes data, server => client 07:35:02.586731 'WE ROOLZ: 79929\r\n' 07:35:02.586791 Received DISC (on stdin) 07:35:02.586807 ====> Client forcibly disconnected 07:35:02.586879 Received QUIT (on stdin) 07:35:02.586888 quits 07:35:02.586941 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 244 === End of file server.cmd === Start of file valgrind244 ==88826== ==88826== Process terminating with default action of signal 4 (SIGILL) ==88826== Illegal opcode at address 0x4003082 ==88826== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88826== by 0x4003082: main (tool_main.c:234) === End of file valgrind244 test 0248...[FTP upload time condition evaluates FALSE => upload anyway] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind248 ../src/curl -q --output log/9/curl248.out --include --trace-ascii log/9/trace248 --trace-config all --trace-time ftp://127.0.0.1:36299/248 -T log/9/test248.txt -z "apr 1 2005 08:00:00" > log/9/stdout248 2> log/9/stderr248 248: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 248 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind248 ../src/curl -q --output log/9/curl248.out --include --trace-ascii log/9/trace248 --trace-config all --trace-time ftp://127.0.0.1:36299/248 -T log/9/test248.txt -z "apr 1 2005 08:00:00" > log/9/stdout248 2> log/9/stderr248 === End of file commands.log === Start of file ftp_server.log 07:35:02.747436 ====> Client connect 07:35:02.747565 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.747794 < "USER anonymous" 07:35:02.747822 > "331 We are happy you popped in![CR][LF]" 07:35:02.747965 < "PASS ftp@example.com" 07:35:02.747989 > "230 Welcome you silly person[CR][LF]" 07:35:02.748114 < "PWD" 07:35:02.748140 > "257 "/" is current directory[CR][LF]" 07:35:02.748270 log/3/stdout249 2> log/3/stderr249 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind250 ../src/curl -q --output log/6/curl250.out --include --trace log/6/trace250 --trace-config all --trace-time ftp://127.0.0.1:36135/ > log/6/stdout250 2> log/6/stderr250 "EPSV" 07:35:02.748291 ====> Passive DATA channel requested by client 07:35:02.748302 DATA sockfilt for passive data channel starting... 07:35:02.749630 DATA sockfilt for passive data channel started (pid 88675) 07:35:02.750091 DATA sockfilt for passive data channel listens on port 44877 07:35:02.750128 > "229 Entering Passive Mode (|||44877|)[LF]" 07:35:02.750145 Client has been notified that DATA conn will be accepted on port 44877 07:35:02.750336 Client connects to port 44877 07:35:02.750371 ====> Client established passive DATA connection on port 44877 07:35:02.750438 < "TYPE I" 07:35:02.750462 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.750603 < "SIZE verifiedserver" 07:35:02.750638 > "213 17[CR][LF]" 07:35:02.750777 < "RETR verifiedserver" 07:35:02.750806 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.750876 =====> Closing passive DATA connection... 07:35:02.750891 Server disconnects passive DATA connection 07:35:02.751079 Server disconnected passive DATA connection 07:35:02.751104 DATA sockfilt for passive data channel quits (pid 88675) 07:35:02.751325 DATA sockfilt for passive data channel quit (pid 88675) 07:35:02.751347 =====> Closed passive DATA connection 07:35:02.751376 > "226 File transfer complete[CR][LF]" 07:35:02.793649 < "QUIT" 07:35:02.793699 > "221 bye bye baby[CR][LF]" 07:35:02.794392 MAIN sockfilt said DISC 07:35:02.794412 ====> Client disconnected 07:35:02.794467 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.593335 ====> Client connect 07:35:02.593562 Received DATA (on stdin) 07:35:02.593575 > 160 bytes data, server => client 07:35:02.593586 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.593596 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.593605 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.593661 < 16 bytes data, client => server 07:35:02.593672 'USER anonymous\r\n' 07:35:02.593813 Received DATA (on stdin) 07:35:02.593824 > 33 bytes data, server => client 07:35:02.593834 '331 We are happy you popped in!\r\n' 07:35:02.593877 < 22 bytes data, client => server 07:35:02.593887 'PASS ftp@example.com\r\n' 07:35:02.593976 Received DATA (on stdin) 07:35:02.593985 > 30 bytes data, server => client 07:35:02.593995 '230 Welcome you silly person\r\n' 07:35:02.594034 < 5 bytes data, client => server 07:35:02.594044 'PWD\r\n' 07:35:02.594126 Received DATA (on stdin) 07:35:02.594136 > 30 bytes data, server => client 07:35:02.594145 '257 "/" is current directory\r\n' 07:35:02.594190 < 6 bytes data, client => server 07:35:02.594200 'EPSV\r\n' 07:35:02.596101 Received DATA (on stdin) 07:35:02.596117 > 38 bytes data, server => client 07:35:02.596128 '229 Entering Passive Mode (|||44877|)\n' 07:35:02.596270 < 8 bytes data, client => server 07:35:02.596283 'TYPE I\r\n' 07:35:02.596451 Received DATA (on stdin) 07:35:02.596462 > 33 bytes data, server => client 07:35:02.596471 '200 I modify TYPE as you wanted\r\n' 07:35:02.596514 < 21 bytes data, client => server 07:35:02.596525 'SIZE verifiedserver\r\n' 07:35:02.596627 Received DATA (on stdin) 07:35:02.596638 > 8 bytes data, server => client 07:35:02.596648 '213 17\r\n' 07:35:02.596691 < 21 bytes data, client => server 07:35:02.596702 'RETR verifiedserver\r\n' 07:35:02.596880 Received DATA (on stdin) 07:35:02.596891 > 29 bytes data, server => client 07:35:02.596900 '150 Binary junk (17 bytes).\r\n' 07:35:02.597371 Received DATA (on stdin) 07:35:02.597387 > 28 bytes data, server => client 07:35:02.597399 '226 File transfer complete\r\n' 07:35:02.639475 < 6 bytes data, client => server 07:35:02.639502 'QUIT\r\n' 07:35:02.639691 Received DATA (on stdin) 07:35:02.639701 > 18 bytes data, server => client 07:35:02.639709 '221 bye bye baby\r\n' 07:35:02.640339 ====> Client disconnect 07:35:02.640451 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.595488 Running IPv4 version 07:35:02.595533 Listening on port 44877 07:35:02.595560 Wrote pid 88675 to log/9/server/ftp_sockdata.pid 07:35:02.595574 Received PING (on stdin) 07:35:02.595991 Received PORT (on stdin) 07:35:02.596241 ====> Client connect 07:35:02.596922 Received DATA (on stdin) 07:35:02.596933 > 17 bytes data, server => client 07:35:02.596943 'WE ROOLZ: 80150\r\n' 07:35:02.596961 Received DISC (on stdin) 07:35:02.596971 ====> Client forcibly disconnected 07:35:02.597101 Received QUIT (on stdin) 07:35:02.597114 quits 07:35:02.597174 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 248 === End of file server.cmd === Start of file test248.txt data to see that FTP works so does it? === End of file test248.txt === Start of file valgrind248 ==88843== ==88843== Process terminating with default action of signal 4 (SIGILL) ==88843== Illegal opcode at address 0x4003082 ==88843== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88843== by 0x4003082: main (tool_main.c:234) === End of file valgrind248 test 0249...[HTTP 304 response with "illegal" Content-Length: header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind249 ../src/curl -q --output log/3/curl249.out --include --trace-ascii log/3/trace249 --trace-config all --trace-time http://127.0.0.1:42345/249 -z "dec 12 12:00:00 1999 GMT" > log/3/stdout249 2> log/3/stderr249 249: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 249 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind249 ../src/curl -q --output log/3/curl249.out --include --trace-ascii log/3/trace249 --trace-config all --trace-time http://127.0.0.1:42345/249 -z "dec 12 12:00:00 1999 GMT" > log/3/stdout249 2> log/3/stderr249 === End of file commands.log === Start of file http_server.log 07:35:02.692961 ====> Client connect 07:35:02.692994 accept_connection 3 returned 4 07:35:02.693009 accept_connection 3 returned 0 07:35:02.693023 Read 93 bytes 07:35:02.693032 Process 93 bytes request 07:35:02.693045 Got request: GET /verifiedserver HTTP/1.1 07:35:02.693055 Are-we-friendly question received 07:35:02.693076 Wrote request (93 bytes) input to log/3/server.input 07:35:02.693092 Identifying ourselves as friends 07:35:02.693145 Response sent (56 bytes) and written to log/3/server.response 07:35:02.693155 special request received, no persistency 07:35:02.693164 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 249 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind249 ==88969== ==88969== Process terminating with default action of signal 4 (SIGILL) ==88969== Illegal opcode at address 0x4003082 ==88969== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==88969== by 0x4003082: main (tool_main.c:234) === End of file valgrind249 test 0250...[FTP dir list PASV with slow response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind250 ../src/curl -q --output log/6/curl250CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind256 ../src/curl -q --include --trace-ascii log/22/trace256 --trace-config all --trace-time -x http://127.0.0.1:46761 http://127.0.0.1:46761/want/256 -C - --no-include -o log/22/fewl256.txt -U daniel:stenberg > log/22/stdout256 2> log/22/stderr256 .out --include --trace log/6/trace250 --trace-config all --trace-time ftp://127.0.0.1:36135/ > log/6/stdout250 2> log/6/stderr250 250: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 250 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind250 ../src/curl -q --output log/6/curl250.out --include --trace log/6/trace250 --trace-config all --trace-time ftp://127.0.0.1:36135/ > log/6/stdout250 2> log/6/stderr250 === End of file commands.log === Start of file ftp_server.log 07:35:02.867886 ====> Client connect 07:35:02.868047 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.868299 < "USER anonymous" 07:35:02.868337 > "331 We are happy you popped in![CR][LF]" 07:35:02.868477 < "PASS ftp@example.com" 07:35:02.868505 > "230 Welcome you silly person[CR][LF]" 07:35:02.868678 < "PWD" 07:35:02.868706 > "257 "/" is current directory[CR][LF]" 07:35:02.868847 < "EPSV" 07:35:02.868869 ====> Passive DATA channel requested by client 07:35:02.868881 DATA sockfilt for passive data channel starting... 07:35:02.870407 DATA sockfilt for passive data channel started (pid 88982) 07:35:02.870509 DATA sockfilt for passive data channel listens on port 41623 07:35:02.870548 > "229 Entering Passive Mode (|||41623|)[LF]" 07:35:02.870566 Client has been notified that DATA conn will be accepted on port 41623 07:35:02.870746 Client connects to port 41623 07:35:02.870772 ====> Client established passive DATA connection on port 41623 07:35:02.870829 < "TYPE I" 07:35:02.870853 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.870988 < "SIZE verifiedserver" 07:35:02.871018 > "213 17[CR][LF]" 07:35:02.871144 < "RETR verifiedserver" 07:35:02.871171 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.871232 =====> Closing passive DATA connection... 07:35:02.871245 Server disconnects passive DATA connection 07:35:02.871382 Server disconnected passive DATA connection 07:35:02.871431 DATA sockfilt for passive data channel quits (pid 88982) 07:35:02.871745 DATA sockfilt for passive data channel quit (pid 88982) 07:35:02.871767 =====> Closed passive DATA connection 07:35:02.871798 > "226 File transfer complete[CR][LF]" 07:35:02.914456 < "QUIT" 07:35:02.914502 > "221 bye bye baby[CR][LF]" 07:35:02.915563 MAIN sockfilt said DISC 07:35:02.915586 ====> Client disconnected 07:35:02.915652 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.712648 ====> Client connect 07:35:02.714048 Received DATA (on stdin) 07:35:02.714064 > 160 bytes data, server => client 07:35:02.714075 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.714086 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.714095 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.714166 < 16 bytes data, client => server 07:35:02.714183 'USER anonymous\r\n' 07:35:02.714332 Received DATA (on stdin) 07:35:02.714345 > 33 bytes data, server => client 07:35:02.714356 '331 We are happy you popped in!\r\n' 07:35:02.714400 < 22 bytes data, client => server 07:35:02.714412 'PASS ftp@example.com\r\n' 07:35:02.714496 Received DATA (on stdin) 07:35:02.714509 > 30 bytes data, server => client 07:35:02.714519 '230 Welcome you silly person\r\n' 07:35:02.714576 < 5 bytes data, client => server 07:35:02.714594 'PWD\r\n' 07:35:02.714694 Received DATA (on stdin) 07:35:02.714705 > 30 bytes data, server => client 07:35:02.714715 '257 "/" is current directory\r\n' 07:35:02.714765 < 6 bytes data, client => server 07:35:02.714775 'EPSV\r\n' 07:35:02.716559 Received DATA (on stdin) 07:35:02.716572 > 38 bytes data, server => client 07:35:02.716583 '229 Entering Passive Mode (|||41623|)\n' 07:35:02.716683 < 8 bytes data, client => server 07:35:02.716695 'TYPE I\r\n' 07:35:02.716841 Received DATA (on stdin) 07:35:02.716854 > 33 bytes data, server => client 07:35:02.716865 '200 I modify TYPE as you wanted\r\n' 07:35:02.716907 < 21 bytes data, client => server 07:35:02.716918 'SIZE verifiedserver\r\n' 07:35:02.717006 Received DATA (on stdin) 07:35:02.717017 > 8 bytes data, server => client 07:35:02.717026 '213 17\r\n' 07:35:02.717065 < 21 bytes data, client => server 07:35:02.717075 'RETR verifiedserver\r\n' 07:35:02.717233 Received DATA (on stdin) 07:35:02.717244 > 29 bytes data, server => client 07:35:02.717254 '150 Binary junk (17 bytes).\r\n' 07:35:02.717796 Received DATA (on stdin) 07:35:02.717813 > 28 bytes data, server => client 07:35:02.717823 '226 File transfer complete\r\n' 07:35:02.760283 < 6 bytes data, client => server 07:35:02.760314 'QUIT\r\n' 07:35:02.760493 Received DATA (on stdin) 07:35:02.760503 > 18 bytes data, server => client 07:35:02.760513 '221 bye bye baby\r\n' 07:35:02.761507 ====> Client disconnect 07:35:02.761639 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.716211 Running IPv4 version 07:35:02.716288 Listening on port 41623 07:35:02.716322 Wrote pid 88982 to log/6/server/ftp_sockdata.pid 07:35:02.716341 Received PING (on stdin) 07:35:02.716423 Received PORT (on stdin) 07:35:02.716684 ====> Client connect 07:35:02.717275 Received DATA (on stdin) 07:35:02.717290 > 17 bytes data, server => client 07:35:02.717300 'WE ROOLZ: 79833\r\n' 07:35:02.717321 Received DISC (on stdin) 07:35:02.717332 ====> Client forcibly disconnected 07:35:02.717440 Received QUIT (on stdin) 07:35:02.717456 quits 07:35:02.717537 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd SLOWDOWN Testnum 250 === End of file server.cmd === Start of file valgrind250 ==89074== ==89074== Process terminating with default action of signal 4 (SIGILL) ==89074== Illegal opcode at address 0x4003082 ==89074== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89074== by 0x4003082: main (tool_main.c:234) === End of file valgrind250 test 0256...[HTTP resume request over proxy with auth without server supporting it] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind256 ../src/curl -q --include --trace-ascii log/22/trace256 --trace-config all --trace-time -x http://127.0.0.1:46761 http://127.0.0.1:46761/want/256 -C - --no-include -o log/22/fewl256.txt -U daniel:stenberg > log/22/stdout256 2> log/22/stderr256 256: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 256 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind256 ../src/curl -q --include --trace-ascii log/22/trace256 --trace-config all --trace-time -x http://127.0.0.1:46761 http://127.0.0.1:46761/want/256 -C - --no-include -o log/22/fewl256.txt -U daniel:stenberg > log/22/stdout256 2> log/22/stderr256 === End of file commands.log === Start of file fewl256.txt This text is here to simulate a partly downloaded file to resume download on. === End of file fewl256.txt === Start of file http_server.log 07:35:02.760325 ====> Client connect 07:35:02.760358 accept_connection 3 returned 4 07:35:02.760371 accept_connection 3 returned 0 07:35:02.760383 Read 93 bytes 07:35:02.760391 Process 93 bytes request 07:35:02.760401 Got request: GET /verifiedserver HTTP/1.1 07:35:02.760409 Are-we-friendly question received 07:35:02.760434 Wrote request (93 bytes) input to log/22/server.input 07:35:02.760447 Identifying ourselves as friends 07:35:02.760500 Response sent (56 bytesCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind257 ../src/curl -q --output log/15/curl257.out --include --trace-ascii log/15/trace257 --trace-config all --trace-time http://supersite.com/want/257 -L -x http://127.0.0.1:36993 --netrc-optional --netrc-file log/15/netrc257 > log/15/stdout257 2> log/15/stderr257 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind251 ../src/curl -q --output log/14/curl251.out --include --trace-ascii log/14/trace251 --trace-config all --trace-time ftp://127.0.0.1:41711/ -P 127.0.0.1 > log/14/stdout251 2> log/14/stderr251 ) and written to log/22/server.response 07:35:02.760509 special request received, no persistency 07:35:02.760517 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 256 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind256 ==89078== ==89078== Process terminating with default action of signal 4 (SIGILL) ==89078== Illegal opcode at address 0x4003082 ==89078== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89078== by 0x4003082: main (tool_main.c:234) === End of file valgrind256 test 0257...[HTTP Location: following with --netrc-optional] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind257 ../src/curl -q --output log/15/curl257.out --include --trace-ascii log/15/trace257 --trace-config all --trace-time http://supersite.com/want/257 -L -x http://127.0.0.1:36993 --netrc-optional --netrc-file log/15/netrc257 > log/15/stdout257 2> log/15/stderr257 257: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 257 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind257 ../src/curl -q --output log/15/curl257.out --include --trace-ascii log/15/trace257 --trace-config all --trace-time http://supersite.com/want/257 -L -x http://127.0.0.1:36993 --netrc-optional --netrc-file log/15/netrc257 > log/15/stdout257 2> log/15/stderr257 === End of file commands.log === Start of file http_server.log 07:35:02.755605 ====> Client connect 07:35:02.755634 accept_connection 3 returned 4 07:35:02.755648 accept_connection 3 returned 0 07:35:02.755660 Read 93 bytes 07:35:02.755667 Process 93 bytes request 07:35:02.755680 Got request: GET /verifiedserver HTTP/1.1 07:35:02.755687 Are-we-friendly question received 07:35:02.755705 Wrote request (93 bytes) input to log/15/server.input 07:35:02.755718 Identifying ourselves as friends 07:35:02.755757 Response sent (56 bytes) and written to log/15/server.response 07:35:02.755764 special request received, no persistency 07:35:02.755770 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file netrc257 machine supersite.com login user1 password passwd1 machine anotherone.com login user2 password passwd2 === End of file netrc257 === Start of file server.cmd Testnum 257 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind257 ==89073== ==89073== Process terminating with default action of signal 4 (SIGILL) ==89073== Illegal opcode at address 0x4003082 ==89073== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89073== by 0x4003082: main (tool_main.c:234) === End of file valgrind257 test 0251...[FTP dir list, PORT with specified IP and slow response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind251 ../src/curl -q --output log/14/curl251.out --include --trace-ascii log/14/trace251 --trace-config all --trace-time ftp://127.0.0.1:41711/ -P 127.0.0.1 > log/14/stdout251 2> log/14/stderr251 251: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 251 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind251 ../src/curl -q --output log/14/curl251.out --include --trace-ascii log/14/trace251 --trace-config all --trace-time ftp://127.0.0.1:41711/ -P 127.0.0.1 > log/14/stdout251 2> log/14/stderr251 === End of file commands.log === Start of file ftp_server.log 07:35:02.885151 ====> Client connect 07:35:02.885333 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:02.885573 < "USER anonymous" 07:35:02.885607 > "331 We are happy you popped in![CR][LF]" 07:35:02.885885 < "PASS ftp@example.com" 07:35:02.885928 > "230 Welcome you silly person[CR][LF]" 07:35:02.886127 < "PWD" 07:35:02.886173 > "257 "/" is current directory[CR][LF]" 07:35:02.886390 < "EPSV" 07:35:02.886417 ====> Passive DATA channel requested by client 07:35:02.886430 DATA sockfilt for passive data channel starting... 07:35:02.888082 DATA sockfilt for passive data channel started (pid 89010) 07:35:02.888180 DATA sockfilt for passive data channel listens on port 37971 07:35:02.888210 > "229 Entering Passive Mode (|||37971|)[LF]" 07:35:02.888222 Client has been notified that DATA conn will be accepted on port 37971 07:35:02.888393 Client connects to port 37971 07:35:02.888414 ====> Client established passive DATA connection on port 37971 07:35:02.888462 < "TYPE I" 07:35:02.888481 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:02.888591 < "SIZE verifiedserver" 07:35:02.888618 > "213 17[CR][LF]" 07:35:02.888719 < "RETR verifiedserver" 07:35:02.888743 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:02.888798 =====> Closing passive DATA connection... 07:35:02.888809 Server disconnects passive DATA connection 07:35:02.888969 Server disconnected passive DATA connection 07:35:02.888989 DATA sockfilt for passive data channel quits (pid 89010) 07:35:02.889175 DATA sockfilt for passive data channel quit (pid 89010) 07:35:02.889192 =====> Closed passive DATA connection 07:35:02.889210 > "226 File transfer complete[CR][LF]" 07:35:02.933757 < "QUIT" 07:35:02.933802 > "221 bye bye baby[CR][LF]" 07:35:02.934485 MAIN sockfilt said DISC 07:35:02.934536 ====> Client disconnected 07:35:02.934620 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.731013 ====> Client connect 07:35:02.731286 Received DATA (on stdin) 07:35:02.731322 > 160 bytes data, server => client 07:35:02.731335 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.731346 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.731355 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.731451 < 16 bytes data, client => server 07:35:02.731463 'USER anonymous\r\n' 07:35:02.731601 Received DATA (on stdin) 07:35:02.731616 > 33 bytes data, server => client 07:35:02.731627 '331 We are happy you popped in!\r\n' 07:35:02.731683 < 22 bytes data, client => server 07:35:02.731699 'PASS ftp@example.com\r\n' 07:35:02.731919 Received DATA (on stdin) 07:35:02.731958 > 30 bytes data, server => client 07:35:02.731968 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind262 ../src/curl -q --output log/23/curl262.out --include --trace-ascii log/23/trace262 --trace-config all --trace-time http://127.0.0.1:45701/262 > log/23/stdout262 2> log/23/stderr262 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind259 ../src/curl -q --output log/2/curl259.out --include --trace-ascii log/2/trace259 --trace-config all --trace-time -x http://127.0.0.1:45457 http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/2/test259.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue" > log/2/stdout259 2> log/2/stderr259 '230 Welcome you silly person\r\n' 07:35:02.732014 < 5 bytes data, client => server 07:35:02.732024 'PWD\r\n' 07:35:02.732163 Received DATA (on stdin) 07:35:02.732187 > 30 bytes data, server => client 07:35:02.732204 '257 "/" is current directory\r\n' 07:35:02.732280 < 6 bytes data, client => server 07:35:02.732295 'EPSV\r\n' 07:35:02.734211 Received DATA (on stdin) 07:35:02.734221 > 38 bytes data, server => client 07:35:02.734229 '229 Entering Passive Mode (|||37971|)\n' 07:35:02.734340 < 8 bytes data, client => server 07:35:02.734348 'TYPE I\r\n' 07:35:02.734467 Received DATA (on stdin) 07:35:02.734476 > 33 bytes data, server => client 07:35:02.734484 '200 I modify TYPE as you wanted\r\n' 07:35:02.734519 < 21 bytes data, client => server 07:35:02.734527 'SIZE verifiedserver\r\n' 07:35:02.734601 Received DATA (on stdin) 07:35:02.734610 > 8 bytes data, server => client 07:35:02.734617 '213 17\r\n' 07:35:02.734649 < 21 bytes data, client => server 07:35:02.734657 'RETR verifiedserver\r\n' 07:35:02.734794 Received DATA (on stdin) 07:35:02.734802 > 29 bytes data, server => client 07:35:02.734810 '150 Binary junk (17 bytes).\r\n' 07:35:02.735195 Received DATA (on stdin) 07:35:02.735205 > 28 bytes data, server => client 07:35:02.735213 '226 File transfer complete\r\n' 07:35:02.779546 < 6 bytes data, client => server 07:35:02.779578 'QUIT\r\n' 07:35:02.779792 Received DATA (on stdin) 07:35:02.779803 > 18 bytes data, server => client 07:35:02.779812 '221 bye bye baby\r\n' 07:35:02.780396 ====> Client disconnect 07:35:02.780630 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:02.733914 Running IPv4 version 07:35:02.733969 Listening on port 37971 07:35:02.734003 Wrote pid 89010 to log/14/server/ftp_sockdata.pid 07:35:02.734020 Received PING (on stdin) 07:35:02.734094 Received PORT (on stdin) 07:35:02.734316 ====> Client connect 07:35:02.734827 Received DATA (on stdin) 07:35:02.734838 > 17 bytes data, server => client 07:35:02.734845 'WE ROOLZ: 79837\r\n' 07:35:02.734862 Received DISC (on stdin) 07:35:02.734870 ====> Client forcibly disconnected 07:35:02.734978 Received QUIT (on stdin) 07:35:02.734987 quits 07:35:02.735028 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd SLOWDOWN Testnum 251 === End of file server.cmd === Start of file valgrind251 ==89149== ==89149== Process terminating with default action of signal 4 (SIGILL) ==89149== Illegal opcode at address 0x4003082 ==89149== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89149== by 0x4003082: main (tool_main.c:234) === End of file valgrind251 test 0262...[Reject HTTP response with binary zero in header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind262 ../src/curl -q --output log/23/curl262.out --include --trace-ascii log/23/trace262 --trace-config all --trace-time http://127.0.0.1:45701/262 > log/23/stdout262 2> log/23/stderr262 262: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 262 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind262 ../src/curl -q --output log/23/curl262.out --include --trace-ascii log/23/trace262 --trace-config all --trace-time http://127.0.0.1:45701/262 > log/23/stdout262 2> log/23/stderr262 === End of file commands.log === Start of file http_server.log 07:35:02.984443 ====> Client connect 07:35:02.984475 accept_connection 3 returned 4 07:35:02.984524 accept_connection 3 returned 0 07:35:02.984545 Read 93 bytes 07:35:02.984554 Process 93 bytes request 07:35:02.984563 Got request: GET /verifiedserver HTTP/1.1 07:35:02.984570 Are-we-friendly question received 07:35:02.984596 Wrote request (93 bytes) input to log/23/server.input 07:35:02.984609 Identifying ourselves as friends 07:35:02.984657 Response sent (56 bytes) and written to log/23/server.response 07:35:02.984664 special request received, no persistency 07:35:02.984671 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 262 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind262 ==89398== ==89398== Process terminating with default action of signal 4 (SIGILL) ==89398== Illegal opcode at address 0x4003082 ==89398== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89398== by 0x4003082: main (tool_main.c:234) === End of file valgrind262 test 0259...[HTTP POST multipart with Expect: header using proxy anyauth (Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind259 ../src/curl -q --output log/2/curl259.out --include --trace-ascii log/2/trace259 --trace-config all --trace-time -x http://127.0.0.1:45457 http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/2/test259.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue" > log/2/stdout259 2> log/2/stderr259 259: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 259 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind259 ../src/curl -q --output log/2/curl259.out --include --trace-ascii log/2/trace259 --trace-config all --trace-time -x http://127.0.0.1:45457 http://remotehost:54321/we/want/259 -F name=daniel -F tool=curl -F file=@log/2/test259.txt -U uuuser:pppassword --proxy-anyauth -H "Expect: 100-continue" > log/2/stdout259 2> log/2/stderr259 === End of file commands.log === Start of file http_server.log 07:35:02.971809 ====> Client connect 07:35:02.971850 accept_connection 3 returned 4 07:35:02.971863 accept_connection 3 returned 0 07:35:02.971873 Read 93 bytes 07:35:02.971880 Process 93 bytes request 07:35:02.971888 Got request: GET /verifiedserver HTTP/1.1 07:35:02.971895 Are-we-friendly question received 07:35:02.971913 Wrote request (93 bytes) input to log/2/server.input 07:35:02.971925 Identifying ourselves as friends 07:35:02.971968 Response sent (56 bytes) and written to log/2/server.response 07:35:02.971975 special request received, no persistency 07:35:02.971981 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 259 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file test259.txt fooCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind261 ../src/curl -q --output log/21/curl261.out --include --trace-ascii log/21/trace261 --trace-config all --trace-time ftp://127.0.0.1:38701/261 > log/21/stdout261 2> log/21/stderr261 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind258 ../src/curl -q --output log/1/curl258.out --include --trace-ascii log/1/trace258 --trace-config all --trace-time -x http://127.0.0.1:38941 http://remotehost:54321/we/want/258 -F name=daniel -F tool=curl -F file=@log/1/test258.txt -H "Expect:" -U uuuser:pppassword --proxy-anyauth > log/1/stdout258 2> log/1/stderr258 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind260 ../src/curl -q --output log/18/curl260.out --include --trace-ascii log/18/trace260 --trace-config all --trace-time "http://127.0.0.1:45825?260" > log/18/stdout260 2> log/18/stderr260 - This is a moo- bar === End of file test259.txt === Start of file valgrind259 ==89362== ==89362== Process terminating with default action of signal 4 (SIGILL) ==89362== Illegal opcode at address 0x4003082 ==89362== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89362== by 0x4003082: main (tool_main.c:234) === End of file valgrind259 test 0261...[FTP RETR with 226 response code to TYPE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind261 ../src/curl -q --output log/21/curl261.out --include --trace-ascii log/21/trace261 --trace-config all --trace-time ftp://127.0.0.1:38701/261 > log/21/stdout261 2> log/21/stderr261 261: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 261 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind261 ../src/curl -q --output log/21/curl261.out --include --trace-ascii log/21/trace261 --trace-config all --trace-time ftp://127.0.0.1:38701/261 > log/21/stdout261 2> log/21/stderr261 === End of file commands.log === Start of file ftp_server.log 07:35:03.129644 ====> Client connect 07:35:03.129837 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:03.130086 < "USER anonymous" 07:35:03.130118 > "331 We are happy you popped in![CR][LF]" 07:35:03.130255 < "PASS ftp@example.com" 07:35:03.130275 > "230 Welcome you silly person[CR][LF]" 07:35:03.130379 < "PWD" 07:35:03.130400 > "257 "/" is current directory[CR][LF]" 07:35:03.130507 < "EPSV" 07:35:03.130525 ====> Passive DATA channel requested by client 07:35:03.130534 DATA sockfilt for passive data channel starting... 07:35:03.131716 DATA sockfilt for passive data channel started (pid 89352) 07:35:03.131795 DATA sockfilt for passive data channel listens on port 33393 07:35:03.131822 > "229 Entering Passive Mode (|||33393|)[LF]" 07:35:03.131836 Client has been notified that DATA conn will be accepted on port 33393 07:35:03.132481 Client connects to port 33393 07:35:03.132534 ====> Client established passive DATA connection on port 33393 07:35:03.132611 < "TYPE I" 07:35:03.132642 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:03.132821 < "SIZE verifiedserver" 07:35:03.132859 > "213 17[CR][LF]" 07:35:03.133050 < "RETR verifiedserver" 07:35:03.133090 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:03.133157 =====> Closing passive DATA connection... 07:35:03.133173 Server disconnects passive DATA connection 07:35:03.133240 Server disconnected passive DATA connection 07:35:03.133269 DATA sockfilt for passive data channel quits (pid 89352) 07:35:03.133550 DATA sockfilt for passive data channel quit (pid 89352) 07:35:03.133584 =====> Closed passive DATA connection 07:35:03.133613 > "226 File transfer complete[CR][LF]" 07:35:03.177597 < "QUIT" 07:35:03.177663 > "221 bye bye baby[CR][LF]" 07:35:03.178217 MAIN sockfilt said DISC 07:35:03.178250 ====> Client disconnected 07:35:03.178303 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.975014 ====> Client connect 07:35:02.975843 Received DATA (on stdin) 07:35:02.975858 > 160 bytes data, server => client 07:35:02.975868 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:02.975876 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:02.975883 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:02.975947 < 16 bytes data, client => server 07:35:02.975956 'USER anonymous\r\n' 07:35:02.976117 Received DATA (on stdin) 07:35:02.976129 > 33 bytes data, server => client 07:35:02.976137 '331 We are happy you popped in!\r\n' 07:35:02.976177 < 22 bytes data, client => server 07:35:02.976185 'PASS ftp@example.com\r\n' 07:35:02.976259 Received DATA (on stdin) 07:35:02.976268 > 30 bytes data, server => client 07:35:02.976276 '230 Welcome you silly person\r\n' 07:35:02.976309 < 5 bytes data, client => server 07:35:02.976316 'PWD\r\n' 07:35:02.976384 Received DATA (on stdin) 07:35:02.976392 > 30 bytes data, server => client 07:35:02.976400 '257 "/" is current directory\r\n' 07:35:02.976438 < 6 bytes data, client => server 07:35:02.976446 'EPSV\r\n' 07:35:02.977824 Received DATA (on stdin) 07:35:02.977835 > 38 bytes data, server => client 07:35:02.977845 '229 Entering Passive Mode (|||33393|)\n' 07:35:02.977990 < 8 bytes data, client => server 07:35:02.978002 'TYPE I\r\n' 07:35:02.978630 Received DATA (on stdin) 07:35:02.978642 > 33 bytes data, server => client 07:35:02.978650 '200 I modify TYPE as you wanted\r\n' 07:35:02.978714 < 21 bytes data, client => server 07:35:02.978735 'SIZE verifiedserver\r\n' 07:35:02.978850 Received DATA (on stdin) 07:35:02.978862 > 8 bytes data, server => client 07:35:02.978872 '213 17\r\n' 07:35:02.978929 < 21 bytes data, client => server 07:35:02.978950 'RETR verifiedserver\r\n' 07:35:02.979097 Received DATA (on stdin) 07:35:02.979118 > 29 bytes data, server => client 07:35:02.979129 '150 Binary junk (17 bytes).\r\n' 07:35:02.979603 Received DATA (on stdin) 07:35:02.979622 > 28 bytes data, server => client 07:35:02.979632 '226 File transfer complete\r\n' 07:35:03.023211 < 6 bytes data, client => server 07:35:03.023235 'QUIT\r\n' 07:35:03.023662 Received DATA (on stdin) 07:35:03.023677 > 18 bytes data, server => client 07:35:03.023688 '221 bye bye baby\r\n' 07:35:03.024152 ====> Client disconnect 07:35:03.024288 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:03.977568 Running IPv4 version 07:35:03.977612 Listening on port 33393 07:35:03.977642 Wrote pid 89352 to log/21/server/ftp_sockdata.pid 07:35:03.977657 Received PING (on stdin) 07:35:03.977723 Received PORT (on stdin) 07:35:03.977943 ====> Client connect 07:35:03.979101 Received DATA (on stdin) 07:35:03.979124 > 17 bytes data, server => client 07:35:03.979135 'WE ROOLZ: 81322\r\n' 07:35:03.979163 Received DISC (on stdin) 07:35:03.979177 ====> Client forcibly disconnected 07:35:03.979269 Received QUIT (on stdin) 07:35:03.979279 quits 07:35:03.979344 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY TYPE 226 Kind of on the positive side Testnum 261 === End of file server.cmd === Start of file valgrind261 ==89581== ==89581== Process terminating with default action of signal 4 (SIGILL) ==89581== Illegal opcode at address 0x4003082 ==89581== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89581== by 0x4003082: main (tool_main.c:234) === End of file valgrind261 test 0258...[HTTP POST multipart without Expect: header using proxy anyauth (Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind258 ../src/curl -q --output log/1/curl258.out --include --trace-ascii log/1/trace258 --trace-config all --trace-time -x http://127.0.0.1:38941 http://remotehost:54321/we/want/258 -F name=daniel -F tool=curl -F file=@log/1/test258.txt -H "Expect:" -U uuuser:pppassword --proxy-anyauth > log/1/stdout258 2> log/1/stderr258 258: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 258 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind258 ../src/curl -q --output log/1/curl258.out --include --trace-ascii log/1/trace258 --trace-config all --trace-time -x http://127.0.0.1:38941 http:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind264 ../src/curl -q --output log/7/curl264.out --include --trace-ascii log/7/trace264 --trace-config all --trace-time http://we.want.that.site.com/264 -x http://f%61ke:user@127.0.0.1:39077 > log/7/stdout264 2> log/7/stderr264 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind226 ../src/curl -q --output log/13/curl226.out --include --trace-ascii log/13/trace226 --trace-config all --trace-time ftp://127.0.0.1:40375/226%0d > log/13/stdout226 2> log/13/stderr226 //remotehost:54321/we/want/258 -F name=daniel -F tool=curl -F file=@log/1/test258.txt -H "Expect:" -U uuuser:pppassword --proxy-anyauth > log/1/stdout258 2> log/1/stderr258 === End of file commands.log === Start of file http_server.log 07:35:02.971081 ====> Client connect 07:35:02.971109 accept_connection 3 returned 4 07:35:02.971121 accept_connection 3 returned 0 07:35:02.971131 Read 93 bytes 07:35:02.971139 Process 93 bytes request 07:35:02.971149 Got request: GET /verifiedserver HTTP/1.1 07:35:02.971156 Are-we-friendly question received 07:35:02.971176 Wrote request (93 bytes) input to log/1/server.input 07:35:02.971191 Identifying ourselves as friends 07:35:02.971242 Response sent (56 bytes) and written to log/1/server.response 07:35:02.971251 special request received, no persistency 07:35:02.971259 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 258 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file test258.txt foo- This is a moo- bar === End of file test258.txt === Start of file valgrind258 ==89371== ==89371== Process terminating with default action of signal 4 (SIGILL) ==89371== Illegal opcode at address 0x4003082 ==89371== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89371== by 0x4003082: main (tool_main.c:234) === End of file valgrind258 test 0260...[HTTP GET URL without slash but with question mark] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind260 ../src/curl -q --output log/18/curl260.out --include --trace-ascii log/18/trace260 --trace-config all --trace-time "http://127.0.0.1:45825?260" > log/18/stdout260 2> log/18/stderr260 260: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 260 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind260 ../src/curl -q --output log/18/curl260.out --include --trace-ascii log/18/trace260 --trace-config all --trace-time "http://127.0.0.1:45825?260" > log/18/stdout260 2> log/18/stderr260 === End of file commands.log === Start of file http_server.log 07:35:02.974649 ====> Client connect 07:35:02.974675 accept_connection 3 returned 4 07:35:02.974687 accept_connection 3 returned 0 07:35:02.974698 Read 93 bytes 07:35:02.974705 Process 93 bytes request 07:35:02.974715 Got request: GET /verifiedserver HTTP/1.1 07:35:02.974722 Are-we-friendly question received 07:35:02.974740 Wrote request (93 bytes) input to log/18/server.input 07:35:02.974752 Identifying ourselves as friends 07:35:02.974792 Response sent (56 bytes) and written to log/18/server.response 07:35:02.974799 special request received, no persistency 07:35:02.974806 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 260 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind260 ==89358== ==89358== Process terminating with default action of signal 4 (SIGILL) ==89358== Illegal opcode at address 0x4003082 ==89358== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89358== by 0x4003082: main (tool_main.c:234) === End of file valgrind260 test 0264...[HTTP with proxy string including http:// and user+password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind264 ../src/curl -q --output log/7/curl264.out --include --trace-ascii log/7/trace264 --trace-config all --trace-time http://we.want.that.site.com/264 -x http://f%61ke:user@127.0.0.1:39077 > log/7/stdout264 2> log/7/stderr264 264: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 264 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind264 ../src/curl -q --output log/7/curl264.out --include --trace-ascii log/7/trace264 --trace-config all --trace-time http://we.want.that.site.com/264 -x http://f%61ke:user@127.0.0.1:39077 > log/7/stdout264 2> log/7/stderr264 === End of file commands.log === Start of file http_server.log 07:35:03.038417 ====> Client connect 07:35:03.038451 accept_connection 3 returned 4 07:35:03.038466 accept_connection 3 returned 0 07:35:03.038480 Read 93 bytes 07:35:03.038490 Process 93 bytes request 07:35:03.038501 Got request: GET /verifiedserver HTTP/1.1 07:35:03.038510 Are-we-friendly question received 07:35:03.038533 Wrote request (93 bytes) input to log/7/server.input 07:35:03.038547 Identifying ourselves as friends 07:35:03.038602 Response sent (56 bytes) and written to log/7/server.response 07:35:03.038613 special request received, no persistency 07:35:03.038622 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 264 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind264 ==89615== ==89615== Process terminating with default action of signal 4 (SIGILL) ==89615== Illegal opcode at address 0x4003082 ==89615== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89615== by 0x4003082: main (tool_main.c:234) === End of file valgrind264 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/13/server/ftp_server.pid" --logfile "log/13/ftp_server.log" --logdir "log/13" --portfile "log/13/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40375 (log/13/server/ftp_server.port) RUN: FTP server is PID 87629 port 40375 * pid ftp => 87629 87629 test 0226...[FTP %0d-code in URL's CWD part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind226 ../src/curl -q --CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind265 ../src/curl -q --output log/24/curl265.out --include --trace-ascii log/24/trace265 --trace-config all --trace-time http://test.remote.example.com.265:38675/path/2650002 --proxy http://127.0.0.1:38675 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/24/stdout265 2> log/24/stderr265 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind266 ../src/curl -q --output log/16/curl266.out --include --trace-ascii log/16/trace266 --trace-config all --trace-time http://127.0.0.1:46739/266 -D log/16/heads266 > log/16/stdout266 2> log/16/stderr266 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind267 ../src/curl -q --output log/9/curl267.out --include --trace-ascii log/9/trace267 --trace-config all --trace-time http://127.0.0.1:34999/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no" > log/9/stdout267 2> log/9/stderr267 output log/13/curl226.out --include --trace-ascii log/13/trace226 --trace-config all --trace-time ftp://127.0.0.1:40375/226%0d > log/13/stdout226 2> log/13/stderr226 curl returned 132, when expecting 3 226: exit FAILED == Contents of files in the log/13/ dir after test 226 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind226 ../src/curl -q --output log/13/curl226.out --include --trace-ascii log/13/trace226 --trace-config all --trace-time ftp://127.0.0.1:40375/226%0d > log/13/stdout226 2> log/13/stderr226 === End of file commands.log === Start of file ftp_server.log 07:35:02.230749 FTP server listens on port IPv4/40375 07:35:02.230810 logged pid 87629 in log/13/server/ftp_server.pid 07:35:02.230828 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.076530 Running IPv4 version 07:35:02.076582 Listening on port 40375 07:35:02.076622 Wrote pid 87691 to log/13/server/ftp_sockctrl.pid 07:35:02.076646 Wrote port 40375 to log/13/server/ftp_server.port 07:35:02.076661 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 226 === End of file server.cmd === Start of file valgrind226 ==89617== ==89617== Process terminating with default action of signal 4 (SIGILL) ==89617== Illegal opcode at address 0x4003082 ==89617== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89617== by 0x4003082: main (tool_main.c:234) === End of file valgrind226 test 0265...[HTTP proxy CONNECT auth NTLM and then POST, response-body in the 407] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind265 ../src/curl -q --output log/24/curl265.out --include --trace-ascii log/24/trace265 --trace-config all --trace-time http://test.remote.example.com.265:38675/path/2650002 --proxy http://127.0.0.1:38675 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/24/stdout265 2> log/24/stderr265 265: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 265 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind265 ../src/curl -q --output log/24/curl265.out --include --trace-ascii log/24/trace265 --trace-config all --trace-time http://test.remote.example.com.265:38675/path/2650002 --proxy http://127.0.0.1:38675 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel -d "postit" > log/24/stdout265 2> log/24/stderr265 === End of file commands.log === Start of file http_server.log 07:35:03.045370 ====> Client connect 07:35:03.045402 accept_connection 3 returned 4 07:35:03.045420 accept_connection 3 returned 0 07:35:03.045432 Read 93 bytes 07:35:03.045441 Process 93 bytes request 07:35:03.045452 Got request: GET /verifiedserver HTTP/1.1 07:35:03.045460 Are-we-friendly question received 07:35:03.045483 Wrote request (93 bytes) input to log/24/server.input 07:35:03.045497 Identifying ourselves as friends 07:35:03.045543 Response sent (56 bytes) and written to log/24/server.response 07:35:03.045550 special request received, no persistency 07:35:03.045556 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 265 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind265 ==89672== ==89672== Process terminating with default action of signal 4 (SIGILL) ==89672== Illegal opcode at address 0x4003082 ==89672== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89672== by 0x4003082: main (tool_main.c:234) === End of file valgrind265 test 0266...[HTTP GET with chunked Transfer-Encoding and chunked trailer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind266 ../src/curl -q --output log/16/curl266.out --include --trace-ascii log/16/trace266 --trace-config all --trace-time http://127.0.0.1:46739/266 -D log/16/heads266 > log/16/stdout266 2> log/16/stderr266 266: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 266 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind266 ../src/curl -q --output log/16/curl266.out --include --trace-ascii log/16/trace266 --trace-config all --trace-time http://127.0.0.1:46739/266 -D log/16/heads266 > log/16/stdout266 2> log/16/stderr266 === End of file commands.log === Start of file http_server.log 07:35:03.079858 ====> Client connect 07:35:03.079883 accept_connection 3 returned 4 07:35:03.079895 accept_connection 3 returned 0 07:35:03.079907 Read 93 bytes 07:35:03.079914 Process 93 bytes request 07:35:03.079925 Got request: GET /verifiedserver HTTP/1.1 07:35:03.079932 Are-we-friendly question received 07:35:03.079950 Wrote request (93 bytes) input to log/16/server.input 07:35:03.079962 Identifying ourselves as friends 07:35:03.080001 Response sent (56 bytes) and written to log/16/server.response 07:35:03.080008 special request received, no persistency 07:35:03.080015 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 266 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind266 ==89807== ==89807== Process terminating with default action of signal 4 (SIGILL) ==89807== Illegal opcode at address 0x4003082 ==89807== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89807== by 0x4003082: main (tool_main.c:234) === End of file valgrind266 test 0267...[HTTP POST with NTLM authorization and added custom headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind267 ../src/curl -q --output log/9/curl267.out --include --trace-ascii log/9/trace267 --trace-config all --trace-time http://127.0.0.1:34999/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no" > log/9/stdout267 2> log/9/stderr267 267: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 267 === Start of file commands.log ../libtool --mode=execute /usr/bin/vaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind268 ../src/curl -q --output log/3/curl268.out --include --trace-ascii log/3/trace268 --trace-config all --trace-time http://127.0.0.1:42345/268 --variable hello@log/3/junk --expand-data {{hello:json}} > log/3/stdout268 2> log/3/stderr268 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind269 ../src/curl -q --output log/6/curl269.out --include --trace-ascii log/6/trace269 --trace-config all --trace-time http://127.0.0.1:35775/269 --ignore-content-length > log/6/stdout269 2> log/6/stderr269 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind270 ../src/curl -q --output log/22/curl270.out --include --trace-ascii log/22/trace270 --trace-config all --trace-time ftp://127.0.0.1:42651/270 --ftp-skip-pasv-ip --disable-epsv > log/22/stdout270 2> log/22/stderr270 lgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind267 ../src/curl -q --output log/9/curl267.out --include --trace-ascii log/9/trace267 --trace-config all --trace-time http://127.0.0.1:34999/267 -u testuser:testpass --ntlm -d "data" -H "Header1: yes" -H "Header2: no" > log/9/stdout267 2> log/9/stderr267 === End of file commands.log === Start of file http_server.log 07:35:03.087849 ====> Client connect 07:35:03.087879 accept_connection 3 returned 4 07:35:03.087893 accept_connection 3 returned 0 07:35:03.087905 Read 93 bytes 07:35:03.087913 Process 93 bytes request 07:35:03.087923 Got request: GET /verifiedserver HTTP/1.1 07:35:03.087931 Are-we-friendly question received 07:35:03.087953 Wrote request (93 bytes) input to log/9/server.input 07:35:03.087967 Identifying ourselves as friends 07:35:03.088018 Response sent (56 bytes) and written to log/9/server.response 07:35:03.088028 special request received, no persistency 07:35:03.088036 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 267 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind267 ==89840== ==89840== Process terminating with default action of signal 4 (SIGILL) ==89840== Illegal opcode at address 0x4003082 ==89840== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89840== by 0x4003082: main (tool_main.c:234) === End of file valgrind267 test 0268...[JSON encoding of Unicode string] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind268 ../src/curl -q --output log/3/curl268.out --include --trace-ascii log/3/trace268 --trace-config all --trace-time http://127.0.0.1:42345/268 --variable hello@log/3/junk --expand-data {{hello:json}} > log/3/stdout268 2> log/3/stderr268 268: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 268 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind268 ../src/curl -q --output log/3/curl268.out --include --trace-ascii log/3/trace268 --trace-config all --trace-time http://127.0.0.1:42345/268 --variable hello@log/3/junk --expand-data {{hello:json}} > log/3/stdout268 2> log/3/stderr268 === End of file commands.log === Start of file http_server.log 07:35:03.169388 ====> Client connect 07:35:03.169424 accept_connection 3 returned 4 07:35:03.169438 accept_connection 3 returned 0 07:35:03.169451 Read 93 bytes 07:35:03.169459 Process 93 bytes request 07:35:03.169469 Got request: GET /verifiedserver HTTP/1.1 07:35:03.169476 Are-we-friendly question received 07:35:03.169493 Wrote request (93 bytes) input to log/3/server.input 07:35:03.169505 Identifying ourselves as friends 07:35:03.169564 Response sent (56 bytes) and written to log/3/server.response 07:35:03.169571 special request received, no persistency 07:35:03.169578 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file junk “ === End of file junk === Start of file server.cmd Testnum 268 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind268 ==89942== ==89942== Process terminating with default action of signal 4 (SIGILL) ==89942== Illegal opcode at address 0x4003082 ==89942== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==89942== by 0x4003082: main (tool_main.c:234) === End of file valgrind268 test 0269...[HTTP --ignore-content-length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind269 ../src/curl -q --output log/6/curl269.out --include --trace-ascii log/6/trace269 --trace-config all --trace-time http://127.0.0.1:35775/269 --ignore-content-length > log/6/stdout269 2> log/6/stderr269 269: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 269 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind269 ../src/curl -q --output log/6/curl269.out --include --trace-ascii log/6/trace269 --trace-config all --trace-time http://127.0.0.1:35775/269 --ignore-content-length > log/6/stdout269 2> log/6/stderr269 === End of file commands.log === Start of file http_server.log 07:35:03.201565 ====> Client connect 07:35:03.201605 accept_connection 3 returned 4 07:35:03.201618 accept_connection 3 returned 0 07:35:03.201630 Read 93 bytes 07:35:03.201637 Process 93 bytes request 07:35:03.201647 Got request: GET /verifiedserver HTTP/1.1 07:35:03.201654 Are-we-friendly question received 07:35:03.201675 Wrote request (93 bytes) input to log/6/server.input 07:35:03.201687 Identifying ourselves as friends 07:35:03.201733 Response sent (56 bytes) and written to log/6/server.response 07:35:03.201741 special request received, no persistency 07:35:03.201747 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 269 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind269 ==90025== ==90025== Process terminating with default action of signal 4 (SIGILL) ==90025== Illegal opcode at address 0x4003082 ==90025== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90025== by 0x4003082: main (tool_main.c:234) === End of file valgrind269 test 0270...[FTP RETR PASV --ftp-skip-pasv-ip] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind270 ../src/curl -q --output log/22/curl270.out --include --trace-ascii log/22/trace270 --trace-config all --trace-time ftp://127.0.0.1:42651/270 --ftp-skip-pasv-ip --disable-epsv > log/22/stdout270 2> log/22/stderr270 270: protocol FAILED! There was no cCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind272 ../src/curl -q --output log/14/curl272.out --include --trace-ascii log/14/trace272 --trace-config all --trace-time ftp://127.0.0.1:41711/272 -z "2004 jan 1 12:12:12 UTC" > log/14/stdout272 2> log/14/stderr272 ontent at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 270 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind270 ../src/curl -q --output log/22/curl270.out --include --trace-ascii log/22/trace270 --trace-config all --trace-time ftp://127.0.0.1:42651/270 --ftp-skip-pasv-ip --disable-epsv > log/22/stdout270 2> log/22/stderr270 === End of file commands.log === Start of file ftp_server.log 07:35:03.363003 ====> Client connect 07:35:03.363138 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:03.363446 < "USER anonymous" 07:35:03.363487 > "331 We are happy you popped in![CR][LF]" 07:35:03.363601 < "PASS ftp@example.com" 07:35:03.363621 > "230 Welcome you silly person[CR][LF]" 07:35:03.363719 < "PWD" 07:35:03.363742 > "257 "/" is current directory[CR][LF]" 07:35:03.363844 < "EPSV" 07:35:03.363862 ====> Passive DATA channel requested by client 07:35:03.363871 DATA sockfilt for passive data channel starting... 07:35:03.365516 DATA sockfilt for passive data channel started (pid 90021) 07:35:03.365620 DATA sockfilt for passive data channel listens on port 45217 07:35:03.365656 > "229 Entering Passive Mode (|||45217|)[LF]" 07:35:03.365672 Client has been notified that DATA conn will be accepted on port 45217 07:35:03.365895 Client connects to port 45217 07:35:03.365918 ====> Client established passive DATA connection on port 45217 07:35:03.365990 < "TYPE I" 07:35:03.366016 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:03.366166 < "SIZE verifiedserver" 07:35:03.366195 > "213 17[CR][LF]" 07:35:03.366320 < "RETR verifiedserver" 07:35:03.366348 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:03.366412 =====> Closing passive DATA connection... 07:35:03.366426 Server disconnects passive DATA connection 07:35:03.366563 Server disconnected passive DATA connection 07:35:03.366586 DATA sockfilt for passive data channel quits (pid 90021) 07:35:03.366820 DATA sockfilt for passive data channel quit (pid 90021) 07:35:03.366837 =====> Closed passive DATA connection 07:35:03.366859 > "226 File transfer complete[CR][LF]" 07:35:03.407032 < "QUIT" 07:35:03.407081 > "221 bye bye baby[CR][LF]" 07:35:03.407609 MAIN sockfilt said DISC 07:35:03.407660 ====> Client disconnected 07:35:03.407732 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.208894 ====> Client connect 07:35:03.209136 Received DATA (on stdin) 07:35:03.209149 > 160 bytes data, server => client 07:35:03.209160 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.209171 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.209180 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.209286 < 16 bytes data, client => server 07:35:03.209317 'USER anonymous\r\n' 07:35:03.209475 Received DATA (on stdin) 07:35:03.209485 > 33 bytes data, server => client 07:35:03.209493 '331 We are happy you popped in!\r\n' 07:35:03.209534 < 22 bytes data, client => server 07:35:03.209547 'PASS ftp@example.com\r\n' 07:35:03.209605 Received DATA (on stdin) 07:35:03.209614 > 30 bytes data, server => client 07:35:03.209621 '230 Welcome you silly person\r\n' 07:35:03.209657 < 5 bytes data, client => server 07:35:03.209668 'PWD\r\n' 07:35:03.209726 Received DATA (on stdin) 07:35:03.209734 > 30 bytes data, server => client 07:35:03.209742 '257 "/" is current directory\r\n' 07:35:03.209783 < 6 bytes data, client => server 07:35:03.209794 'EPSV\r\n' 07:35:03.211665 Received DATA (on stdin) 07:35:03.211679 > 38 bytes data, server => client 07:35:03.211690 '229 Entering Passive Mode (|||45217|)\n' 07:35:03.211814 < 8 bytes data, client => server 07:35:03.211825 'TYPE I\r\n' 07:35:03.212005 Received DATA (on stdin) 07:35:03.212016 > 33 bytes data, server => client 07:35:03.212029 '200 I modify TYPE as you wanted\r\n' 07:35:03.212082 < 21 bytes data, client => server 07:35:03.212092 'SIZE verifiedserver\r\n' 07:35:03.212182 Received DATA (on stdin) 07:35:03.212192 > 8 bytes data, server => client 07:35:03.212201 '213 17\r\n' 07:35:03.212240 < 21 bytes data, client => server 07:35:03.212250 'RETR verifiedserver\r\n' 07:35:03.212416 Received DATA (on stdin) 07:35:03.212428 > 29 bytes data, server => client 07:35:03.212437 '150 Binary junk (17 bytes).\r\n' 07:35:03.212848 Received DATA (on stdin) 07:35:03.212859 > 28 bytes data, server => client 07:35:03.212869 '226 File transfer complete\r\n' 07:35:03.252801 < 6 bytes data, client => server 07:35:03.252845 'QUIT\r\n' 07:35:03.253073 Received DATA (on stdin) 07:35:03.253084 > 18 bytes data, server => client 07:35:03.253093 '221 bye bye baby\r\n' 07:35:03.253527 ====> Client disconnect 07:35:03.253721 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:03.211341 Running IPv4 version 07:35:03.211398 Listening on port 45217 07:35:03.211429 Wrote pid 90021 to log/22/server/ftp_sockdata.pid 07:35:03.211445 Received PING (on stdin) 07:35:03.211531 Received PORT (on stdin) 07:35:03.211819 ====> Client connect 07:35:03.212346 Received DATA (on stdin) 07:35:03.212359 > 17 bytes data, server => client 07:35:03.212370 'WE ROOLZ: 79849\r\n' 07:35:03.212415 Received DISC (on stdin) 07:35:03.212430 ====> Client forcibly disconnected 07:35:03.212576 Received QUIT (on stdin) 07:35:03.212590 quits 07:35:03.212661 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd PASVBADIP Testnum 270 === End of file server.cmd === Start of file valgrind270 ==90091== ==90091== Process terminating with default action of signal 4 (SIGILL) ==90091== Illegal opcode at address 0x4003082 ==90091== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90091== by 0x4003082: main (tool_main.c:234) === End of file valgrind270 test 0272...[FTP timed conditioned get file with identical time stamp] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind272 ../src/curl -q --output log/14/curl272.out --include --trace-ascii log/14/trace272 --trace-config all --trace-time ftp://127.0.0.1:41711/272 -z "2004 jan 1 12:12:12 UTC" > log/14/stdout272 2> log/14/stderr272 272: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 272 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind272 ../src/curl -q --output log/14/curl272.out --include --trace-ascii log/14/trace272 --trace-config all --trace-time ftp://127.0.0.1:41711/272 -z "2004 jan 1 12:12:12 UTC" > log/14/stdout272 2> log/14/stderr272 === End of file commands.log === Start of file ftp_server.log 07:35:03.372915 ====> Client connect 07:35:03.373030 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:03.373226 < "USER anonymous" 07:35:03.373251 > "331 We are happy you popped in![CR][LF]" 07:35:03.373379 < "PASS ftp@example.com" 07:35:03.373397 > "230 Welcome you silly person[CR][LF]" 07:35:03.373499 < "PWD" 07:35:03.373519 > "257 "/" is current directory[CR][LF]" 07:35:03.373622 < "EPSV" 07:35:03.373638 ====> Passive DATA channel requested by client 07:35:03.373646 DATA sockfilt for passive data channel starting... 07:35:03.375113 DATA sockfilt for passive data channel started (pid 90052) 07:35:03.375213 DATA sockfilt for passive data chCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind282 ../src/curl -q --output log/9/curl282.out --include --trace-ascii log/9/trace282 --trace-config all --trace-time http://127.0.0.1:34999/282 > log/9/stdout282 2> log/9/stderr282 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind242 ../src/curl -q --output log/19/curl242.out --include --trace-ascii log/19/trace242 --trace-config all --trace-time -g "http://foobar:barfoo@[::1]:38461/242" > log/19/stdout242 2> log/19/stderr242 annel listens on port 44859 07:35:03.375249 > "229 Entering Passive Mode (|||44859|)[LF]" 07:35:03.375265 Client has been notified that DATA conn will be accepted on port 44859 07:35:03.375445 Client connects to port 44859 07:35:03.375473 ====> Client established passive DATA connection on port 44859 07:35:03.375533 < "TYPE I" 07:35:03.375557 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:03.375683 < "SIZE verifiedserver" 07:35:03.375717 > "213 17[CR][LF]" 07:35:03.375832 < "RETR verifiedserver" 07:35:03.375864 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:03.375934 =====> Closing passive DATA connection... 07:35:03.375947 Server disconnects passive DATA connection 07:35:03.376075 Server disconnected passive DATA connection 07:35:03.376107 DATA sockfilt for passive data channel quits (pid 90052) 07:35:03.376359 DATA sockfilt for passive data channel quit (pid 90052) 07:35:03.376377 =====> Closed passive DATA connection 07:35:03.376400 > "226 File transfer complete[CR][LF]" 07:35:03.422351 < "QUIT" 07:35:03.422403 > "221 bye bye baby[CR][LF]" 07:35:03.422602 MAIN sockfilt said DISC 07:35:03.422630 ====> Client disconnected 07:35:03.422696 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.218814 ====> Client connect 07:35:03.219022 Received DATA (on stdin) 07:35:03.219032 > 160 bytes data, server => client 07:35:03.219040 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.219049 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.219059 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.219107 < 16 bytes data, client => server 07:35:03.219116 'USER anonymous\r\n' 07:35:03.219236 Received DATA (on stdin) 07:35:03.219245 > 33 bytes data, server => client 07:35:03.219252 '331 We are happy you popped in!\r\n' 07:35:03.219286 < 22 bytes data, client => server 07:35:03.219293 'PASS ftp@example.com\r\n' 07:35:03.219381 Received DATA (on stdin) 07:35:03.219389 > 30 bytes data, server => client 07:35:03.219396 '230 Welcome you silly person\r\n' 07:35:03.219429 < 5 bytes data, client => server 07:35:03.219437 'PWD\r\n' 07:35:03.219502 Received DATA (on stdin) 07:35:03.219510 > 30 bytes data, server => client 07:35:03.219517 '257 "/" is current directory\r\n' 07:35:03.219554 < 6 bytes data, client => server 07:35:03.219561 'EPSV\r\n' 07:35:03.221255 Received DATA (on stdin) 07:35:03.221268 > 38 bytes data, server => client 07:35:03.221278 '229 Entering Passive Mode (|||44859|)\n' 07:35:03.221382 < 8 bytes data, client => server 07:35:03.221395 'TYPE I\r\n' 07:35:03.221546 Received DATA (on stdin) 07:35:03.221558 > 33 bytes data, server => client 07:35:03.221569 '200 I modify TYPE as you wanted\r\n' 07:35:03.221617 < 21 bytes data, client => server 07:35:03.221630 'SIZE verifiedserver\r\n' 07:35:03.221704 Received DATA (on stdin) 07:35:03.221715 > 8 bytes data, server => client 07:35:03.221725 '213 17\r\n' 07:35:03.221767 < 21 bytes data, client => server 07:35:03.221781 'RETR verifiedserver\r\n' 07:35:03.221936 Received DATA (on stdin) 07:35:03.221948 > 29 bytes data, server => client 07:35:03.221957 '150 Binary junk (17 bytes).\r\n' 07:35:03.222391 Received DATA (on stdin) 07:35:03.222403 > 28 bytes data, server => client 07:35:03.222413 '226 File transfer complete\r\n' 07:35:03.268211 < 6 bytes data, client => server 07:35:03.268242 'QUIT\r\n' 07:35:03.268402 Received DATA (on stdin) 07:35:03.268420 > 18 bytes data, server => client 07:35:03.268431 '221 bye bye baby\r\n' 07:35:03.268539 ====> Client disconnect 07:35:03.268687 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:03.220887 Running IPv4 version 07:35:03.220937 Listening on port 44859 07:35:03.220964 Wrote pid 90052 to log/14/server/ftp_sockdata.pid 07:35:03.221037 Received PING (on stdin) 07:35:03.221130 Received PORT (on stdin) 07:35:03.221383 ====> Client connect 07:35:03.221980 Received DATA (on stdin) 07:35:03.221992 > 17 bytes data, server => client 07:35:03.222001 'WE ROOLZ: 79837\r\n' 07:35:03.222025 Received DISC (on stdin) 07:35:03.222035 ====> Client forcibly disconnected 07:35:03.222105 Received QUIT (on stdin) 07:35:03.222116 quits 07:35:03.222177 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 272 === End of file server.cmd === Start of file valgrind272 ==90111== ==90111== Process terminating with default action of signal 4 (SIGILL) ==90111== Illegal opcode at address 0x4003082 ==90111== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90111== by 0x4003082: main (tool_main.c:234) === End of file valgrind272 test 0282...[HTTP GET with no response body or headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind282 ../src/curl -q --output log/9/curl282.out --include --trace-ascii log/9/trace282 --trace-config all --trace-time http://127.0.0.1:34999/282 > log/9/stdout282 2> log/9/stderr282 282: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 282 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind282 ../src/curl -q --output log/9/curl282.out --include --trace-ascii log/9/trace282 --trace-config all --trace-time http://127.0.0.1:34999/282 > log/9/stdout282 2> log/9/stderr282 === End of file commands.log === Start of file http_server.log 07:35:03.532144 ====> Client connect 07:35:03.532169 accept_connection 3 returned 4 07:35:03.532181 accept_connection 3 returned 0 07:35:03.532191 Read 93 bytes 07:35:03.532198 Process 93 bytes request 07:35:03.532208 Got request: GET /verifiedserver HTTP/1.1 07:35:03.532215 Are-we-friendly question received 07:35:03.532233 Wrote request (93 bytes) input to log/9/server.input 07:35:03.532245 Identifying ourselves as friends 07:35:03.532285 Response sent (56 bytes) and written to log/9/server.response 07:35:03.532292 special request received, no persistency 07:35:03.532298 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 282 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind282 ==90681== ==90681== Process terminating with default action of signal 4 (SIGILL) ==90681== Illegal opcode at address 0x4003082 ==90681== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90681== by 0x4003082: main (tool_main.c:234) === End of file valgrind282 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/19/server/http_ipv6_server.pid" --logfile "log/19/http_ipv6_server.log" --logdir "log/19" --portfile log/19/server/http_ipv6_server.port --config log/19/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 88548 port 38461 * pid http-ipv6 => 88548 88548 test 0242...[HTTP-IPv6 GET with username+password in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind242 ../src/curl -q --output log/19/curl242.out --include --trace-CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind280 ../src/curl -q --output log/24/curl280.out --include --trace-ascii log/24/trace280 --trace-config all --trace-time ftp://127.0.0.1:38657/280/ --ftp-alternative-to-user "USER replacement" > log/24/stdout280 2> log/24/stderr280 ascii log/19/trace242 --trace-config all --trace-time -g "http://foobar:barfoo@[::1]:38461/242" > log/19/stdout242 2> log/19/stderr242 242: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 242 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind242 ../src/curl -q --output log/19/curl242.out --include --trace-ascii log/19/trace242 --trace-config all --trace-time -g "http://foobar:barfoo@[::1]:38461/242" > log/19/stdout242 2> log/19/stderr242 === End of file commands.log === Start of file http_ipv6_server.log 07:35:02.571146 Running HTTP IPv6 version on port 38461 07:35:02.571221 Wrote pid 88548 to log/19/server/http_ipv6_server.pid 07:35:02.571252 Wrote port 38461 to log/19/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 242 === End of file server.cmd === Start of file valgrind242 ==90748== ==90748== Process terminating with default action of signal 4 (SIGILL) ==90748== Illegal opcode at address 0x4003082 ==90748== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90748== by 0x4003082: main (tool_main.c:234) === End of file valgrind242 test 0280...[FTP --ftp-alternative-to-user on USER failure] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind280 ../src/curl -q --output log/24/curl280.out --include --trace-ascii log/24/trace280 --trace-config all --trace-time ftp://127.0.0.1:38657/280/ --ftp-alternative-to-user "USER replacement" > log/24/stdout280 2> log/24/stderr280 280: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 280 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind280 ../src/curl -q --output log/24/curl280.out --include --trace-ascii log/24/trace280 --trace-config all --trace-time ftp://127.0.0.1:38657/280/ --ftp-alternative-to-user "USER replacement" > log/24/stdout280 2> log/24/stderr280 === End of file commands.log === Start of file ftp_server.log 07:35:03.645892 ====> Client connect 07:35:03.646077 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:03.646293 < "USER anonymous" 07:35:03.646325 > "331 We are happy you popped in![CR][LF]" 07:35:03.646464 < "PASS ftp@example.com" 07:35:03.646490 > "230 Welcome you silly person[CR][LF]" 07:35:03.646761 < "PWD" 07:35:03.646789 > "257 "/" is current directory[CR][LF]" 07:35:03.646965 < "EPSV" 07:35:03.647000 ====> Passive DATA channel requested by client 07:35:03.647013 DATA sockfilt for passive data channel starting... 07:35:03.648368 DATA sockfilt for passive data channel started (pid 90500) 07:35:03.648448 DATA sockfilt for passive data channel listens on port 43487 07:35:03.648480 > "229 Entering Passive Mode (|||43487|)[LF]" 07:35:03.648493 Client has been notified that DATA conn will be accepted on port 43487 07:35:03.648653 Client connects to port 43487 07:35:03.648691 ====> Client established passive DATA connection on port 43487 07:35:03.648750 < "TYPE I" 07:35:03.648777 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:03.649024 < "SIZE verifiedserver" 07:35:03.649068 > "213 17[CR][LF]" 07:35:03.649211 < "RETR verifiedserver" 07:35:03.649248 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:03.649318 =====> Closing passive DATA connection... 07:35:03.649333 Server disconnects passive DATA connection 07:35:03.649429 Server disconnected passive DATA connection 07:35:03.649457 DATA sockfilt for passive data channel quits (pid 90500) 07:35:03.649672 DATA sockfilt for passive data channel quit (pid 90500) 07:35:03.649697 =====> Closed passive DATA connection 07:35:03.649725 > "226 File transfer complete[CR][LF]" 07:35:03.694074 < "QUIT" 07:35:03.694132 > "221 bye bye baby[CR][LF]" 07:35:03.694846 MAIN sockfilt said DISC 07:35:03.694874 ====> Client disconnected 07:35:03.694941 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.491792 ====> Client connect 07:35:03.492042 Received DATA (on stdin) 07:35:03.492064 > 160 bytes data, server => client 07:35:03.492075 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.492085 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.492093 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.492163 < 16 bytes data, client => server 07:35:03.492174 'USER anonymous\r\n' 07:35:03.492316 Received DATA (on stdin) 07:35:03.492329 > 33 bytes data, server => client 07:35:03.492339 '331 We are happy you popped in!\r\n' 07:35:03.492390 < 22 bytes data, client => server 07:35:03.492405 'PASS ftp@example.com\r\n' 07:35:03.492478 Received DATA (on stdin) 07:35:03.492490 > 30 bytes data, server => client 07:35:03.492499 '230 Welcome you silly person\r\n' 07:35:03.492594 < 5 bytes data, client => server 07:35:03.492619 'PWD\r\n' 07:35:03.492778 Received DATA (on stdin) 07:35:03.492790 > 30 bytes data, server => client 07:35:03.492798 '257 "/" is current directory\r\n' 07:35:03.492861 < 6 bytes data, client => server 07:35:03.492882 'EPSV\r\n' 07:35:03.494482 Received DATA (on stdin) 07:35:03.494493 > 38 bytes data, server => client 07:35:03.494501 '229 Entering Passive Mode (|||43487|)\n' 07:35:03.494613 < 8 bytes data, client => server 07:35:03.494622 'TYPE I\r\n' 07:35:03.494766 Received DATA (on stdin) 07:35:03.494778 > 33 bytes data, server => client 07:35:03.494786 '200 I modify TYPE as you wanted\r\n' 07:35:03.494908 < 21 bytes data, client => server 07:35:03.494927 'SIZE verifiedserver\r\n' 07:35:03.495059 Received DATA (on stdin) 07:35:03.495070 > 8 bytes data, server => client 07:35:03.495078 '213 17\r\n' 07:35:03.495130 < 21 bytes data, client => server 07:35:03.495141 'RETR verifiedserver\r\n' 07:35:03.495258 Received DATA (on stdin) 07:35:03.495278 > 29 bytes data, server => client 07:35:03.495289 '150 Binary junk (17 bytes).\r\n' 07:35:03.495717 Received DATA (on stdin) 07:35:03.495732 > 28 bytes data, server => client 07:35:03.495743 '226 File transfer complete\r\n' 07:35:03.539906 < 6 bytes data, client => server 07:35:03.539928 'QUIT\r\n' 07:35:03.540102 Received DATA (on stdin) 07:35:03.540116 > 18 bytes data, server => client 07:35:03.540126 '221 bye bye baby\r\n' 07:35:03.540554 ====> Client disconnect 07:35:03.541062 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:03.494210 Running IPv4 version 07:35:03.494260 Listening on port 43487 07:35:03.494297 Wrote pid 90500 to log/24/server/ftp_sockdata.pid 07:35:03.494311 Received PING (on stdin) 07:35:03.494371 Received PORT (on stdin) 07:35:03.494593 ====> Client connect 07:35:03.495326 Received DATA (on stdin) 07:35:03.495339 > 17 bytes data, server => client 07:35:03.495349 'WE ROOLZ: 81588\r\n' 07:35:03.495378 Received DISC (on stdin) 07:35:03.495388 ====> Client forcibly disconnected 07:35:03.495463 Received QUIT (on stdin) 07:35:03.495476 quits 07:35:03.495531 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY USER 530 We don't like USER commands COUNT USER 1 Testnum 280 === End of file server.cmd === Start of file valgrind280 ==90723== ==90723== Process terminating with default action of signal 4 (SIGILL) ==90723== Illegal opcode at address 0x4003082 ==90723== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90723== by 0x4003082: main (tool_mainCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind247 ../src/curl -q --output log/20/curl247.out --include --trace-ascii log/20/trace247 --trace-config all --trace-time ftp://127.0.0.1:45671/247 -T log/20/test247.txt -z "apr 1 2005 08:00:00" > log/20/stdout247 2> log/20/stderr247 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind278 ../src/curl -q --output log/7/curl278.out --include --trace-ascii log/7/trace278 --trace-config all --trace-time http://we.want.that.site.com/278 -x http://f%61ke:@127.0.0.1:39077 > log/7/stdout278 2> log/7/stderr278 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind276 ../src/curl -q --output log/1/curl276.out --include --trace-ascii log/1/trace276 --trace-config all --trace-time "http://127.0.0.1:38941/want?uri=http://anything/276?secondq/276" -L > log/1/stdout276 2> log/1/stderr276 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind274 ../src/curl -q --output log/2/curl274.out --include --trace-ascii log/2/trace274 --trace-config all --trace-time http://127.0.0.1:45457/want/274 -L --max-redirs 0 > log/2/stdout274 2> log/2/stderr274 .c:234) === End of file valgrind280 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/20/server/ftp_server.pid" --logfile "log/20/ftp_server.log" --logdir "log/20" --portfile "log/20/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 45671 (log/20/server/ftp_server.port) RUN: FTP server is PID 88588 port 45671 * pid ftp => 88588 88588 test 0247...[FTP upload time condition evaluates TRUE => skip upload] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind247 ../src/curl -q --output log/20/curl247.out --include --trace-ascii log/20/trace247 --trace-config all --trace-time ftp://127.0.0.1:45671/247 -T log/20/test247.txt -z "apr 1 2005 08:00:00" > log/20/stdout247 2> log/20/stderr247 247: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 247 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind247 ../src/curl -q --output log/20/curl247.out --include --trace-ascii log/20/trace247 --trace-config all --trace-time ftp://127.0.0.1:45671/247 -T log/20/test247.txt -z "apr 1 2005 08:00:00" > log/20/stdout247 2> log/20/stderr247 === End of file commands.log === Start of file ftp_server.log 07:35:02.762117 FTP server listens on port IPv4/45671 07:35:02.762189 logged pid 88588 in log/20/server/ftp_server.pid 07:35:02.762211 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:02.607879 Running IPv4 version 07:35:02.607944 Listening on port 45671 07:35:02.607981 Wrote pid 88721 to log/20/server/ftp_sockctrl.pid 07:35:02.608009 Wrote port 45671 to log/20/server/ftp_server.port 07:35:02.608027 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 247 === End of file server.cmd === Start of file test247.txt data to see that FTP works so does it? === End of file test247.txt === Start of file valgrind247 ==90840== ==90840== Process terminating with default action of signal 4 (SIGILL) ==90840== Illegal opcode at address 0x4003082 ==90840== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90840== by 0x4003082: main (tool_main.c:234) === End of file valgrind247 test 0278...[HTTP with proxy string including http:// and user+empty password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind278 ../src/curl -q --output log/7/curl278.out --include --trace-ascii log/7/trace278 --trace-config all --trace-time http://we.want.that.site.com/278 -x http://f%61ke:@127.0.0.1:39077 > log/7/stdout278 2> log/7/stderr278 278: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 278 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind278 ../src/curl -q --output log/7/curl278.out --include --trace-ascii log/7/trace278 --trace-config all --trace-time http://we.want.that.site.com/278 -x http://f%61ke:@127.0.0.1:39077 > log/7/stdout278 2> log/7/stderr278 === End of file commands.log === Start of file http_server.log 07:35:03.464831 ====> Client connect 07:35:03.464855 accept_connection 3 returned 4 07:35:03.464868 accept_connection 3 returned 0 07:35:03.464878 Read 93 bytes 07:35:03.464886 Process 93 bytes request 07:35:03.464894 Got request: GET /verifiedserver HTTP/1.1 07:35:03.464900 Are-we-friendly question received 07:35:03.464919 Wrote request (93 bytes) input to log/7/server.input 07:35:03.464930 Identifying ourselves as friends 07:35:03.464974 Response sent (56 bytes) and written to log/7/server.response 07:35:03.464981 special request received, no persistency 07:35:03.464988 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 278 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind278 ==90326== ==90326== Process terminating with default action of signal 4 (SIGILL) ==90326== Illegal opcode at address 0x4003082 ==90326== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90326== by 0x4003082: main (tool_main.c:234) === End of file valgrind278 test 0276...[HTTP Location: following with multiple question marks in URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind276 ../src/curl -q --output log/1/curl276.out --include --trace-ascii log/1/trace276 --trace-config all --trace-time "http://127.0.0.1:38941/want?uri=http://anything/276?secondq/276" -L > log/1/stdout276 2> log/1/stderr276 276: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 276 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind276 ../src/curl -q --output log/1/curl276.out --include --trace-ascii log/1/trace276 --trace-config all --trace-time "http://127.0.0.1:38941/want?uri=http://anything/276?secondq/276" -L > log/1/stdout276 2> log/1/stderr276 === End of file commands.log === Start of file http_server.log 07:35:03.462235 ====> Client connect 07:35:03.462257 accept_connection 3 returned 4 07:35:03.462269 accept_connection 3 returned 0 07:35:03.462279 Read 93 bytes 07:35:03.462286 Process 93 bytes request 07:35:03.462294 Got request: GET /verifiedserver HTTP/1.1 07:35:03.462301 Are-we-friendly question received 07:35:03.462317 Wrote request (93 bytes) input to log/1/server.input 07:35:03.462328 Identifying ourselves as friends 07:35:03.462365 Response sent (56 bytes) and written to log/1/server.response 07:35:03.462372 special request received, no persistency 07:35:03.462378 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 276 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind276 ==90310== ==90310== Process terminating with default action of signal 4 (SIGILL) ==90310== Illegal opcode at address 0x4003082 ==90310== at 0x4003082: UnknownInlinedFun (string_fortifieCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind273 ../src/curl -q --output log/23/curl273.out --include --trace-ascii log/23/trace273 --trace-config all --trace-time http://127.0.0.1:45701/273 -u testuser:testpass --digest > log/23/stdout273 2> log/23/stderr273 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind281 ../src/curl -q --output log/16/curl281.out --include --trace-ascii log/16/trace281 --trace-config all --trace-time http://127.0.0.1:46739/we/want/281 -f -T log/16/test281.txt > log/16/stdout281 2> log/16/stderr281 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind277 ../src/curl -q --output log/18/curl277.out --include --trace-ascii log/18/trace277 --trace-config all --trace-time http://127.0.0.1:45825/want/277 -F name=daniel -H "Content-Type: text/info" > log/18/stdout277 2> log/18/stderr277 d.h:59) ==90310== by 0x4003082: main (tool_main.c:234) === End of file valgrind276 test 0274...[HTTP Location: following with --max-redirs 0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind274 ../src/curl -q --output log/2/curl274.out --include --trace-ascii log/2/trace274 --trace-config all --trace-time http://127.0.0.1:45457/want/274 -L --max-redirs 0 > log/2/stdout274 2> log/2/stderr274 274: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 274 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind274 ../src/curl -q --output log/2/curl274.out --include --trace-ascii log/2/trace274 --trace-config all --trace-time http://127.0.0.1:45457/want/274 -L --max-redirs 0 > log/2/stdout274 2> log/2/stderr274 === End of file commands.log === Start of file http_server.log 07:35:03.458389 ====> Client connect 07:35:03.458419 accept_connection 3 returned 4 07:35:03.458435 accept_connection 3 returned 0 07:35:03.458445 Read 93 bytes 07:35:03.458453 Process 93 bytes request 07:35:03.458462 Got request: GET /verifiedserver HTTP/1.1 07:35:03.458469 Are-we-friendly question received 07:35:03.458491 Wrote request (93 bytes) input to log/2/server.input 07:35:03.458504 Identifying ourselves as friends 07:35:03.458546 Response sent (56 bytes) and written to log/2/server.response 07:35:03.458554 special request received, no persistency 07:35:03.458560 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 274 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind274 ==90300== ==90300== Process terminating with default action of signal 4 (SIGILL) ==90300== Illegal opcode at address 0x4003082 ==90300== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90300== by 0x4003082: main (tool_main.c:234) === End of file valgrind274 test 0273...[HTTP with two Digest authorization headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind273 ../src/curl -q --output log/23/curl273.out --include --trace-ascii log/23/trace273 --trace-config all --trace-time http://127.0.0.1:45701/273 -u testuser:testpass --digest > log/23/stdout273 2> log/23/stderr273 273: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 273 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind273 ../src/curl -q --output log/23/curl273.out --include --trace-ascii log/23/trace273 --trace-config all --trace-time http://127.0.0.1:45701/273 -u testuser:testpass --digest > log/23/stdout273 2> log/23/stderr273 === End of file commands.log === Start of file http_server.log 07:35:03.456190 ====> Client connect 07:35:03.456220 accept_connection 3 returned 4 07:35:03.456234 accept_connection 3 returned 0 07:35:03.456246 Read 93 bytes 07:35:03.456254 Process 93 bytes request 07:35:03.456264 Got request: GET /verifiedserver HTTP/1.1 07:35:03.456271 Are-we-friendly question received 07:35:03.456289 Wrote request (93 bytes) input to log/23/server.input 07:35:03.456301 Identifying ourselves as friends 07:35:03.456345 Response sent (56 bytes) and written to log/23/server.response 07:35:03.456352 special request received, no persistency 07:35:03.456358 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 273 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind273 ==90299== ==90299== Process terminating with default action of signal 4 (SIGILL) ==90299== Illegal opcode at address 0x4003082 ==90299== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90299== by 0x4003082: main (tool_main.c:234) === End of file valgrind273 test 0281...[HTTP PUT from file with 100 + 401 responses and -f without auth given] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind281 ../src/curl -q --output log/16/curl281.out --include --trace-ascii log/16/trace281 --trace-config all --trace-time http://127.0.0.1:46739/we/want/281 -f -T log/16/test281.txt > log/16/stdout281 2> log/16/stderr281 281: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 281 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind281 ../src/curl -q --output log/16/curl281.out --include --trace-ascii log/16/trace281 --trace-config all --trace-time http://127.0.0.1:46739/we/want/281 -f -T log/16/test281.txt > log/16/stdout281 2> log/16/stderr281 === End of file commands.log === Start of file http_server.log 07:35:03.504149 ====> Client connect 07:35:03.504181 accept_connection 3 returned 4 07:35:03.504196 accept_connection 3 returned 0 07:35:03.504209 Read 93 bytes 07:35:03.504217 Process 93 bytes request 07:35:03.504229 Got request: GET /verifiedserver HTTP/1.1 07:35:03.504237 Are-we-friendly question received 07:35:03.504257 Wrote request (93 bytes) input to log/16/server.input 07:35:03.504271 Identifying ourselves as friends 07:35:03.504332 Response sent (56 bytes) and written to log/16/server.response 07:35:03.504342 special request received, no persistency 07:35:03.504349 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 281 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file test281.txt Weird file to CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind279 ../src/curl -q --output log/13/curl279.out --include --trace-ascii log/13/trace279 --trace-config all --trace-time http://we.want.that.site.com/279 -x http://f%61ke@127.0.0.1:33627 > log/13/stdout279 2> log/13/stderr279 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind240 ../src/curl -q --output log/11/curl240.out --include --trace-ascii log/11/trace240 --trace-config all --trace-time -g "http://[::1]:42945/240" > log/11/stdout240 2> log/11/stderr240 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind254 ../src/curl -q --output log/12/curl254.out --include --trace-ascii log/12/trace254 --trace-config all --trace-time -g "ftp://[::1]:38945/" --disable-epsv > log/12/stdout254 2> log/12/stderr254 upload === End of file test281.txt === Start of file valgrind281 ==90619== ==90619== Process terminating with default action of signal 4 (SIGILL) ==90619== Illegal opcode at address 0x4003082 ==90619== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90619== by 0x4003082: main (tool_main.c:234) === End of file valgrind281 test 0277...[HTTP RFC1867-type formposting with custom Content-Type] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind277 ../src/curl -q --output log/18/curl277.out --include --trace-ascii log/18/trace277 --trace-config all --trace-time http://127.0.0.1:45825/want/277 -F name=daniel -H "Content-Type: text/info" > log/18/stdout277 2> log/18/stderr277 277: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 277 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind277 ../src/curl -q --output log/18/curl277.out --include --trace-ascii log/18/trace277 --trace-config all --trace-time http://127.0.0.1:45825/want/277 -F name=daniel -H "Content-Type: text/info" > log/18/stdout277 2> log/18/stderr277 === End of file commands.log === Start of file http_server.log 07:35:03.463550 ====> Client connect 07:35:03.463575 accept_connection 3 returned 4 07:35:03.463587 accept_connection 3 returned 0 07:35:03.463597 Read 93 bytes 07:35:03.463604 Process 93 bytes request 07:35:03.463612 Got request: GET /verifiedserver HTTP/1.1 07:35:03.463619 Are-we-friendly question received 07:35:03.463637 Wrote request (93 bytes) input to log/18/server.input 07:35:03.463648 Identifying ourselves as friends 07:35:03.463692 Response sent (56 bytes) and written to log/18/server.response 07:35:03.463700 special request received, no persistency 07:35:03.463706 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 277 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind277 ==90311== ==90311== Process terminating with default action of signal 4 (SIGILL) ==90311== Illegal opcode at address 0x4003082 ==90311== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90311== by 0x4003082: main (tool_main.c:234) === End of file valgrind277 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/11/server/http_ipv6_server.pid" --logfile "log/11/http_ipv6_server.log" --logdir "log/11" --portfile log/11/server/http_ipv6_server.port --config log/11/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 88527 port 42945 * pid http-ipv6 => 88527 88527 test 0240...[HTTP-IPv6 GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind240 ../src/curl -q --output log/11/curl240.out --include --trace-ascii log/11/trace240 --trace-config all --trace-time -g "http://[::1]:42945/240" > log/11/stdout240 2> log/11/stderr240 240: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 240 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind240 ../src/curl -q --output log/11/curl240.out --include --trace-ascii log/11/trace240 --trace-config all --trace-time -g "http://[::1]:42945/240" > log/11/stdout240 2> log/11/stderr240 === End of file commands.log === Start of file http_ipv6_server.log 07:35:02.553151 Running HTTP IPv6 version on port 42945 07:35:02.553228 Wrote pid 88527 to log/11/server/http_ipv6_server.pid 07:35:02.553260 Wrote port 42945 to log/11/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 240 === End of file server.cmd === Start of file valgrind240 ==90683== ==90683== Process terminating with default action of signal 4 (SIGILL) ==90683== Illegal opcode at address 0x4003082 ==90683== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90683== by 0x4003082: main (tool_main.c:234) === End of file valgrind240 test 0279...[HTTP with proxy string including http:// and user only] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind279 ../src/curl -q --output log/13/curl279.out --include --trace-ascii log/13/trace279 --trace-config all --trace-time http://we.want.that.site.com/279 -x http://f%61ke@127.0.0.1:33627 > log/13/stdout279 2> log/13/stderr279 279: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 279 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind279 ../src/curl -q --output log/13/curl279.out --include --trace-ascii log/13/trace279 --trace-config all --trace-time http://we.want.that.site.com/279 -x http://f%61ke@127.0.0.1:33627 > log/13/stdout279 2> log/13/stderr279 === End of file commands.log === Start of file http_server.log 07:35:03.467123 ====> Client connect 07:35:03.467151 accept_connection 3 returned 4 07:35:03.467166 accept_connection 3 returned 0 07:35:03.467179 Read 93 bytes 07:35:03.467188 Process 93 bytes request 07:35:03.467198 Got request: GET /verifiedserver HTTP/1.1 07:35:03.467207 Are-we-friendly question received 07:35:03.467229 Wrote request (93 bytes) input to log/13/server.input 07:35:03.467243 Identifying ourselves as friends 07:35:03.467292 Response sent (56 bytes) and written to log/13/server.response 07:35:03.467302 special request received, no persistency 07:35:03.467310 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 279 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind279 ==90340== ==90340== Process terminating with default action of signal 4 (SIGILL) ==90340== Illegal opcode at address 0x4003082 ==90340== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90340== by 0x4003082: main (tool_main.c:234) === End of file valgrind279 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind253 ../src/curl -q --output log/5/curl253.out --include --trace-ascii log/5/trace253 --trace-config all --trace-time -g "ftp://[::1]:43227/" -P - > log/5/stdout253 2> log/5/stderr253 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind252 ../src/curl -q --output log/17/curl252.out --include --trace-ascii log/17/trace252 --trace-config all --trace-time -g "ftp://[::1]:33929/" > log/17/stdout252 2> log/17/stderr252 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind255 ../src/curl -q --output log/8/curl255.out --include --trace-ascii log/8/trace255 --trace-config all --trace-time -g "ftp://[::1]:33541/" -P - --disable-eprt > log/8/stdout255 2> log/8/stderr255 og/12/server/ftp_ipv6_server.pid" --logfile "log/12/ftp_ipv6_server.log" --logdir "log/12" --portfile "log/12/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 38945 (log/12/server/ftp_ipv6_server.port) RUN: FTP-IPv6 server is PID 88980 port 38945 * pid ftp-ipv6 => 88980 88980 test 0254...[FTP IPv6 dir list PASV and --disable-epsv] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind254 ../src/curl -q --output log/12/curl254.out --include --trace-ascii log/12/trace254 --trace-config all --trace-time -g "ftp://[::1]:38945/" --disable-epsv > log/12/stdout254 2> log/12/stderr254 254: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 254 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind254 ../src/curl -q --output log/12/curl254.out --include --trace-ascii log/12/trace254 --trace-config all --trace-time -g "ftp://[::1]:38945/" --disable-epsv > log/12/stdout254 2> log/12/stderr254 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:02.900839 FTP server listens on port IPv6/38945 07:35:02.900912 logged pid 88980 in log/12/server/ftp_ipv6_server.pid 07:35:02.900934 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:02.746603 Running IPv6 version 07:35:02.746663 Listening on port 38945 07:35:02.746698 Wrote pid 89054 to log/12/server/ftp_ipv6_sockctrl.pid 07:35:02.746725 Wrote port 38945 to log/12/server/ftp_ipv6_server.port 07:35:02.746744 Received PING (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file server.cmd Testnum 254 === End of file server.cmd === Start of file valgrind254 ==90972== ==90972== Process terminating with default action of signal 4 (SIGILL) ==90972== Illegal opcode at address 0x4003082 ==90972== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90972== by 0x4003082: main (tool_main.c:234) === End of file valgrind254 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/5/server/ftp_ipv6_server.pid" --logfile "log/5/ftp_ipv6_server.log" --logdir "log/5" --portfile "log/5/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 43227 (log/5/server/ftp_ipv6_server.port) RUN: FTP-IPv6 server is PID 88968 port 43227 * pid ftp-ipv6 => 88968 88968 test 0253...[FTP IPv6 dir list with EPRT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind253 ../src/curl -q --output log/5/curl253.out --include --trace-ascii log/5/trace253 --trace-config all --trace-time -g "ftp://[::1]:43227/" -P - > log/5/stdout253 2> log/5/stderr253 253: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 253 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind253 ../src/curl -q --output log/5/curl253.out --include --trace-ascii log/5/trace253 --trace-config all --trace-time -g "ftp://[::1]:43227/" -P - > log/5/stdout253 2> log/5/stderr253 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:02.895138 FTP server listens on port IPv6/43227 07:35:02.895229 logged pid 88968 in log/5/server/ftp_ipv6_server.pid 07:35:02.895249 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:02.740773 Running IPv6 version 07:35:02.740838 Listening on port 43227 07:35:02.740873 Wrote pid 89030 to log/5/server/ftp_ipv6_sockctrl.pid 07:35:02.740909 Wrote port 43227 to log/5/server/ftp_ipv6_server.port 07:35:02.741027 Received PING (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file server.cmd Testnum 253 === End of file server.cmd === Start of file valgrind253 ==90954== ==90954== Process terminating with default action of signal 4 (SIGILL) ==90954== Illegal opcode at address 0x4003082 ==90954== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90954== by 0x4003082: main (tool_main.c:234) === End of file valgrind253 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/17/server/ftp_ipv6_server.pid" --logfile "log/17/ftp_ipv6_server.log" --logdir "log/17" --portfile "log/17/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 33929 (log/17/server/ftp_ipv6_server.port) RUN: FTP-IPv6 server is PID 88967 port 33929 * pid ftp-ipv6 => 88967 88967 test 0252...[FTP IPv6 dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind252 ../src/curl -q --output log/17/curl252.out --include --trace-ascii log/17/trace252 --trace-config all --trace-time -g "ftp://[::1]:33929/" > log/17/stdout252 2> log/17/stderr252 252: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 252 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind252 ../src/curl -q --output log/17/curl252.out --include --trace-ascii log/17/trace252 --trace-config all --trace-time -g "ftp://[::1]:33929/" > log/17/stdout252 2> log/17/stderr252 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:02.896671 FTP server listens on port IPv6/33929 07:35:02.896735 logged pid 88967 in log/17/server/ftp_ipv6_server.pid 07:35:02.896753 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:02.742425 Running IPv6 version 07:35:02.742481 Listening on port 33929 07:35:02.742517 Wrote pid 89035 to log/17/server/ftp_ipv6_sockctrl.pid 07:35:02.742544 Wrote port 33929 to log/17/server/ftp_ipv6_server.port 07:35:02.742560 Received PING (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file server.cmd Testnum 252 === End of file server.cmd === Start of file valgrind252 ==90952== ==90952== Process terminating with default action of signal 4 (SIGILL) ==90952== Illegal opcode at address 0x4003082 ==90952== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==90952== by 0x4003082: main (tool_main.c:234) === End of file valgrind252 test 0300 SKIPPED: no stunnel startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/8/server/ftp_ipv6_server.pid" --logfile "log/8/ftp_ipv6_server.log" --logdir "log/8" --portfile "log/8/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 33541 (log/8/server/ftp_ipv6_server.port) RUN: FTP-IPv6 server is PID 89013 port 33541 * pid ftp-ipv6 => 89013 89013 test 0255...[FTP IPv6 dir list with EPRT and --disable-eprt] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind255 ../src/curl -q --output log/8/curl255.out --include --trace-ascii log/8/trace255 --trace-config all --trace-time -g "ftp://[::1]:33541/" -P - --disable-eprt > log/8/stdout255 2> log/8/stderr255 255: protocCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind292 ../src/curl -q --output log/1/curl292.out --include --trace-ascii log/1/trace292 --trace-config all --trace-time http://127.0.0.1:38941/292 --max-filesize 1000 > log/1/stdout292 2> log/1/stderr292 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind287 ../src/curl -q --include --trace-ascii log/9/trace287 --trace-config all --trace-time http://test.remote.example.com.287:34999/path/287 -H "User-Agent: looser/2015" --proxy http://127.0.0.1:34999 --proxytunnel --proxy-header "User-Agent: looser/2007" > log/9/stdout287 2> log/9/stderr287 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind288 ../src/curl -q --output log/19/curl288.out --trace-ascii log/19/trace288 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test288.txt > log/19/stdout288 2> log/19/stderr288 ol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 255 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind255 ../src/curl -q --output log/8/curl255.out --include --trace-ascii log/8/trace255 --trace-config all --trace-time -g "ftp://[::1]:33541/" -P - --disable-eprt > log/8/stdout255 2> log/8/stderr255 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:02.920401 FTP server listens on port IPv6/33541 07:35:02.920457 logged pid 89013 in log/8/server/ftp_ipv6_server.pid 07:35:02.920474 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:02.766213 Running IPv6 version 07:35:02.766255 Listening on port 33541 07:35:02.766287 Wrote pid 89070 to log/8/server/ftp_ipv6_sockctrl.pid 07:35:02.766310 Wrote port 33541 to log/8/server/ftp_ipv6_server.port 07:35:02.766324 Received PING (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file server.cmd Testnum 255 === End of file server.cmd === Start of file valgrind255 ==91033== ==91033== Process terminating with default action of signal 4 (SIGILL) ==91033== Illegal opcode at address 0x4003082 ==91033== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91033== by 0x4003082: main (tool_main.c:234) === End of file valgrind255 test 0302 SKIPPED: no stunnel test 0301 SKIPPED: no stunnel test 0292...[HTTP GET with maximum filesize not exceeded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind292 ../src/curl -q --output log/1/curl292.out --include --trace-ascii log/1/trace292 --trace-config all --trace-time http://127.0.0.1:38941/292 --max-filesize 1000 > log/1/stdout292 2> log/1/stderr292 292: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 292 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind292 ../src/curl -q --output log/1/curl292.out --include --trace-ascii log/1/trace292 --trace-config all --trace-time http://127.0.0.1:38941/292 --max-filesize 1000 > log/1/stdout292 2> log/1/stderr292 === End of file commands.log === Start of file http_server.log 07:35:03.980377 ====> Client connect 07:35:03.980401 accept_connection 3 returned 4 07:35:03.980413 accept_connection 3 returned 0 07:35:03.980423 Read 93 bytes 07:35:03.980430 Process 93 bytes request 07:35:03.980439 Got request: GET /verifiedserver HTTP/1.1 07:35:03.980446 Are-we-friendly question received 07:35:03.980494 Wrote request (93 bytes) input to log/1/server.input 07:35:03.980517 Identifying ourselves as friends 07:35:03.980571 Response sent (56 bytes) and written to log/1/server.response 07:35:03.980579 special request received, no persistency 07:35:03.980585 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 292 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind292 ==91420== ==91420== Process terminating with default action of signal 4 (SIGILL) ==91420== Illegal opcode at address 0x4003082 ==91420== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91420== by 0x4003082: main (tool_main.c:234) === End of file valgrind292 test 0287...[HTTP proxy CONNECT with custom User-Agent header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind287 ../src/curl -q --include --trace-ascii log/9/trace287 --trace-config all --trace-time http://test.remote.example.com.287:34999/path/287 -H "User-Agent: looser/2015" --proxy http://127.0.0.1:34999 --proxytunnel --proxy-header "User-Agent: looser/2007" > log/9/stdout287 2> log/9/stderr287 287: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:04.567111595 +0000 +++ log/9/check-generated 2025-07-18 07:35:04.567111595 +0000 @@ -1,2 +0,0 @@ -HTTP/1.1 405 Method Not Allowed swsclose[CR][LF] -[CR][LF] == Contents of files in the log/9/ dir after test 287 === Start of file check-expected HTTP/1.1 405 Method Not Allowed swsclose[CR][LF] [CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind287 ../src/curl -q --include --trace-ascii log/9/trace287 --trace-config all --trace-time http://test.remote.example.com.287:34999/path/287 -H "User-Agent: looser/2015" --proxy http://127.0.0.1:34999 --proxytunnel --proxy-header "User-Agent: looser/2007" > log/9/stdout287 2> log/9/stderr287 === End of file commands.log === Start of file http_server.log 07:35:03.929650 ====> Client connect 07:35:03.929679 accept_connection 3 returned 4 07:35:03.929693 accept_connection 3 returned 0 07:35:03.929705 Read 93 bytes 07:35:03.929714 Process 93 bytes request 07:35:03.929724 Got request: GET /verifiedserver HTTP/1.1 07:35:03.929731 Are-we-friendly question received 07:35:03.929750 Wrote request (93 bytes) input to log/9/server.input 07:35:03.929762 Identifying ourselves as friends 07:35:03.929819 Response sent (56 bytes) and written to log/9/server.response 07:35:03.929826 special request received, no persistency 07:35:03.929833 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 287 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind287 ==91194== ==91194== Process terminating with default action of signal 4 (SIGILL) ==91194== Illegal opcode at address 0x4003082 ==91194== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91194== by 0x4003082: main (tool_main.c:234) === End of file valgrind287 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind289 ../src/curl -q --output log/24/curl289.out --include --trace-ascii log/24/trace289 --trace-config all --trace-time ftp://127.0.0.1:38657/289 -T log/24/illegal-nonexistent-file -C - > log/24/stdout289 2> log/24/stderr289 * starts no server setenv all_proxy = http://fake:user@127.0.0.1:47/ test 0288...[file:// with (unsupported) proxy, authentication and range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind288 ../src/curl -q --output log/19/curl288.out --trace-ascii log/19/trace288 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test288.txt > log/19/stdout288 2> log/19/stderr288 288: data FAILED: --- log/19/check-expected 2025-07-18 07:35:04.577111595 +0000 +++ log/19/check-generated 2025-07-18 07:35:04.577111595 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/19/ dir after test 288 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind288 ../src/curl -q --output log/19/curl288.out --trace-ascii log/19/trace288 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test288.txt > log/19/stdout288 2> log/19/stderr288 === End of file commands.log === Start of file server.cmd Testnum 288 === End of file server.cmd === Start of file test288.txt foo bar bar foo moo === End of file test288.txt === Start of file valgrind288 ==91165== ==91165== Process terminating with default action of signal 4 (SIGILL) ==91165== Illegal opcode at address 0x4003082 ==91165== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91165== by 0x4003082: main (tool_main.c:234) === End of file valgrind288 test 0289...[FTP resume upload but denied access to local file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind289 ../src/curl -q --output log/24/curl289.out --include --trace-ascii log/24/trace289 --trace-config all --trace-time ftp://127.0.0.1:38657/289 -T log/24/illegal-nonexistent-file -C - > log/24/stdout289 2> log/24/stderr289 curl returned 132, when expecting 26 289: exit FAILED == Contents of files in the log/24/ dir after test 289 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind289 ../src/curl -q --output log/24/curl289.out --include --trace-ascii log/24/trace289 --trace-config all --trace-time ftp://127.0.0.1:38657/289 -T log/24/illegal-nonexistent-file -C - > log/24/stdout289 2> log/24/stderr289 === End of file commands.log === Start of file ftp_server.log 07:35:04.107635 ====> Client connect 07:35:04.107806 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.108156 < "USER anonymous" 07:35:04.108205 > "331 We are happy you popped in![CR][LF]" 07:35:04.108531 < "PASS ftp@example.com" 07:35:04.108560 > "230 Welcome you silly person[CR][LF]" 07:35:04.108689 < "PWD" 07:35:04.108722 > "257 "/" is current directory[CR][LF]" 07:35:04.108960 < "EPSV" 07:35:04.108995 ====> Passive DATA channel requested by client 07:35:04.109011 DATA sockfilt for passive data channel starting... 07:35:04.110691 DATA sockfilt for passive data channel started (pid 91244) 07:35:04.110797 DATA sockfilt for passive data channel listens on port 32991 07:35:04.110832 > "229 Entering Passive Mode (|||32991|)[LF]" 07:35:04.110847 Client has been notified that DATA conn will be accepted on port 32991 07:35:04.111031 Client connects to port 32991 07:35:04.111057 ====> Client established passive DATA connection on port 32991 07:35:04.111126 < "TYPE I" 07:35:04.111154 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.111298 < "SIZE verifiedserver" 07:35:04.111374 > "213 17[CR][LF]" 07:35:04.111534 < "RETR verifiedserver" 07:35:04.111621 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.111695 =====> Closing passive DATA connection... 07:35:04.111710 Server disconnects passive DATA connection 07:35:04.111814 Server disconnected passive DATA connection 07:35:04.111833 DATA sockfilt for passive data channel quits (pid 91244) 07:35:04.112051 DATA sockfilt for passive data channel quit (pid 91244) 07:35:04.112072 =====> Closed passive DATA connection 07:35:04.112097 > "226 File transfer complete[CR][LF]" 07:35:04.156943 < "QUIT" 07:35:04.156988 > "221 bye bye baby[CR][LF]" 07:35:04.157104 MAIN sockfilt said DISC 07:35:04.157127 ====> Client disconnected 07:35:04.157172 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.953521 ====> Client connect 07:35:03.953777 Received DATA (on stdin) 07:35:03.953810 > 160 bytes data, server => client 07:35:03.953822 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.953833 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.953843 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.953936 < 16 bytes data, client => server 07:35:03.953947 'USER anonymous\r\n' 07:35:03.954201 Received DATA (on stdin) 07:35:03.954215 > 33 bytes data, server => client 07:35:03.954226 '331 We are happy you popped in!\r\n' 07:35:03.954278 < 22 bytes data, client => server 07:35:03.954293 'PASS ftp@example.com\r\n' 07:35:03.954550 Received DATA (on stdin) 07:35:03.954563 > 30 bytes data, server => client 07:35:03.954573 '230 Welcome you silly person\r\n' 07:35:03.954620 < 5 bytes data, client => server 07:35:03.954633 'PWD\r\n' 07:35:03.954713 Received DATA (on stdin) 07:35:03.954749 > 30 bytes data, server => client 07:35:03.954823 '257 "/" is current directory\r\n' 07:35:03.954889 < 6 bytes data, client => server 07:35:03.954899 'EPSV\r\n' 07:35:03.956839 Received DATA (on stdin) 07:35:03.956851 > 38 bytes data, server => client 07:35:03.956861 '229 Entering Passive Mode (|||32991|)\n' 07:35:03.956974 < 8 bytes data, client => server 07:35:03.956984 'TYPE I\r\n' 07:35:03.957146 Received DATA (on stdin) 07:35:03.957157 > 33 bytes data, server => client 07:35:03.957166 '200 I modify TYPE as you wanted\r\n' 07:35:03.957211 < 21 bytes data, client => server 07:35:03.957222 'SIZE verifiedserver\r\n' 07:35:03.957382 Received DATA (on stdin) 07:35:03.957393 > 8 bytes data, server => client 07:35:03.957402 '213 17\r\n' 07:35:03.957464 < 21 bytes data, client => server 07:35:03.957485 'RETR verifiedserver\r\n' 07:35:03.957628 Received DATA (on stdin) 07:35:03.957648 > 29 bytes data, server => client 07:35:03.957659 '150 Binary junk (17 bytes).\r\n' 07:35:03.958086 Received DATA (on stdin) 07:35:03.958108 > 28 bytes data, server => client 07:35:03.958123 '226 File transfer complete\r\n' 07:35:04.002784 < 6 bytes data, client => server 07:35:04.002809 'QUIT\r\n' 07:35:04.002981 Received DATA (on stdin) 07:35:04.002993 > 18 bytes data, server => client 07:35:04.003004 '221 bye bye baby\r\n' 07:35:04.003049 ====> Client disconnect 07:35:04.003155 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.956519 Running IPv4 version 07:35:04.956575 Listening on port 32991 07:35:04.956611 Wrote pid 91244 to log/24/server/ftp_sockdata.pid 07:35:04.956625 Received PING (on stdin) 07:35:04.956702 Received PORT (on stdin) 07:35:04.956952 ====> Client connect 07:35:04.957702 Received DATA (on stdin) 07:35:04.957714 > 17 bytes data, server => client 07:35:04.957723 'WE ROOLZ: 81588\r\n' 07:35:04.957748 Received DISC (on stdin) 07:35:04.957758 ====> Client forcibly disconnected 07:35:04.957827 Received QUIT (on stdin) 07:35:04.957837 quits 07:35:04.957902 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 289 === End of file server.cmd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind293 ../src/curl -q --output log/2/curl293.out --include --trace-ascii log/2/trace293 --trace-config all --trace-time http://127.0.0.1:45457/293 --max-filesize 2 > log/2/stdout293 2> log/2/stderr293 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind290 ../src/curl -q --output log/20/curl290.out --include --trace-ascii log/20/trace290 --trace-config all --trace-time ftp://127.0.0.1:45671/290 --max-filesize 30 > log/20/stdout290 2> log/20/stderr290 === Start of file valgrind289 ==91499== ==91499== Process terminating with default action of signal 4 (SIGILL) ==91499== Illegal opcode at address 0x4003082 ==91499== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91499== by 0x4003082: main (tool_main.c:234) === End of file valgrind289 test 0320 SKIPPED: no gnutls-serv (with SRP support) test 0321 SKIPPED: no gnutls-serv (with SRP support) test 0322 SKIPPED: no gnutls-serv (with SRP support) test 0293...[HTTP GET with maximum filesize exceeded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind293 ../src/curl -q --output log/2/curl293.out --include --trace-ascii log/2/trace293 --trace-config all --trace-time http://127.0.0.1:45457/293 --max-filesize 2 > log/2/stdout293 2> log/2/stderr293 293: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 293 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind293 ../src/curl -q --output log/2/curl293.out --include --trace-ascii log/2/trace293 --trace-config all --trace-time http://127.0.0.1:45457/293 --max-filesize 2 > log/2/stdout293 2> log/2/stderr293 === End of file commands.log === Start of file http_server.log 07:35:03.979497 ====> Client connect 07:35:03.979531 accept_connection 3 returned 4 07:35:03.979546 accept_connection 3 returned 0 07:35:03.979556 Read 93 bytes 07:35:03.979564 Process 93 bytes request 07:35:03.979575 Got request: GET /verifiedserver HTTP/1.1 07:35:03.979582 Are-we-friendly question received 07:35:03.979603 Wrote request (93 bytes) input to log/2/server.input 07:35:03.979616 Identifying ourselves as friends 07:35:03.979665 Response sent (56 bytes) and written to log/2/server.response 07:35:03.979675 special request received, no persistency 07:35:03.979683 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 293 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind293 ==91419== ==91419== Process terminating with default action of signal 4 (SIGILL) ==91419== Illegal opcode at address 0x4003082 ==91419== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91419== by 0x4003082: main (tool_main.c:234) === End of file valgrind293 test 0290...[FTP download maximum filesize exceeded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind290 ../src/curl -q --output log/20/curl290.out --include --trace-ascii log/20/trace290 --trace-config all --trace-time ftp://127.0.0.1:45671/290 --max-filesize 30 > log/20/stdout290 2> log/20/stderr290 290: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 290 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind290 ../src/curl -q --output log/20/curl290.out --include --trace-ascii log/20/trace290 --trace-config all --trace-time ftp://127.0.0.1:45671/290 --max-filesize 30 > log/20/stdout290 2> log/20/stderr290 === End of file commands.log === Start of file ftp_server.log 07:35:04.128858 ====> Client connect 07:35:04.129017 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.129369 < "USER anonymous" 07:35:04.129403 > "331 We are happy you popped in![CR][LF]" 07:35:04.129709 < "PASS ftp@example.com" 07:35:04.129758 > "230 Welcome you silly person[CR][LF]" 07:35:04.129907 < "PWD" 07:35:04.129940 > "257 "/" is current directory[CR][LF]" 07:35:04.130097 < "EPSV" 07:35:04.130144 ====> Passive DATA channel requested by client 07:35:04.130165 DATA sockfilt for passive data channel starting... 07:35:04.131672 DATA sockfilt for passive data channel started (pid 91368) 07:35:04.131767 DATA sockfilt for passive data channel listens on port 39351 07:35:04.131795 > "229 Entering Passive Mode (|||39351|)[LF]" 07:35:04.131807 Client has been notified that DATA conn will be accepted on port 39351 07:35:04.132029 Client connects to port 39351 07:35:04.132058 ====> Client established passive DATA connection on port 39351 07:35:04.132132 < "TYPE I" 07:35:04.132163 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.132399 < "SIZE verifiedserver" 07:35:04.132437 > "213 17[CR][LF]" 07:35:04.132604 < "RETR verifiedserver" 07:35:04.132648 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.132717 =====> Closing passive DATA connection... 07:35:04.132734 Server disconnects passive DATA connection 07:35:04.132906 Server disconnected passive DATA connection 07:35:04.132931 DATA sockfilt for passive data channel quits (pid 91368) 07:35:04.133129 DATA sockfilt for passive data channel quit (pid 91368) 07:35:04.133154 =====> Closed passive DATA connection 07:35:04.133183 > "226 File transfer complete[CR][LF]" 07:35:04.173691 < "QUIT" 07:35:04.173750 > "221 bye bye baby[CR][LF]" 07:35:04.174036 MAIN sockfilt said DISC 07:35:04.174075 ====> Client disconnected 07:35:04.174131 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.974753 ====> Client connect 07:35:03.975022 Received DATA (on stdin) 07:35:03.975050 > 160 bytes data, server => client 07:35:03.975061 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.975070 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.975078 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.975218 < 16 bytes data, client => server 07:35:03.975230 'USER anonymous\r\n' 07:35:03.975397 Received DATA (on stdin) 07:35:03.975418 > 33 bytes data, server => client 07:35:03.975429 '331 We are happy you popped in!\r\n' 07:35:03.975534 < 22 bytes data, client => server 07:35:03.975553 'PASS ftp@example.com\r\n' 07:35:03.975751 Received DATA (on stdin) 07:35:03.975764 > 30 bytes data, server => client 07:35:03.975774 '230 Welcome you silly person\r\n' 07:35:03.975820 < 5 bytes data, client => server 07:35:03.975831 'PWD\r\n' 07:35:03.975933 Received DATA (on stdin) 07:35:03.975944 > 30 bytes data, server => client 07:35:03.975952 '257 "/" is current directory\r\n' 07:35:03.976010 < 6 bytes data, client => server 07:35:03.976020 'EPSV\r\n' 07:35:03.977764 Received DATA (on stdin) 07:35:03.977781 > 38 bytes data, server => client 07:35:03.977790 '229 Entering Passive Mode (|||39351|)\n' 07:35:03.977882 < 8 bytes data, client => server 07:35:03.977903 'TYPE I\r\n' 07:35:03.978158 Received DATA (on stdin) 07:35:03.978173 > 33 bytes data, server => client 07:35:03.978183 '200 I modify TYPE as you wanted\r\n' 07:35:03.978252 < 21 bytes data, client => server 07:35:03.978264 'SIZE verifiedserver\r\n' 07:35:03.978427 Received DATA (on stdin) 07:35:03.978439 > 8 bytes data, server => client 07:35:03.978447 '213 17\r\n' 07:35:03.978499 < 21 bytes data, client => server 07:35:03.9785CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind298 ../src/curl -q --output log/11/curl298.out --include --trace-ascii log/11/trace298 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:43393/first/second/th%69rd/298 > log/11/stdout298 2> log/11/stderr298 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind291 ../src/curl -q --output log/7/curl291.out --include --trace-ascii log/7/trace291 --trace-config all --trace-time ftp://127.0.0.1:40197/291 --max-filesize 100 > log/7/stdout291 2> log/7/stderr291 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind263 ../src/curl -q --output log/10/curl263.out --include --trace-ascii log/10/trace263 --trace-config all --trace-time -g -x "http://[::1]:43029" http://veryveryremotesite.com/263 > log/10/stdout263 2> log/10/stderr263 15 'RETR verifiedserver\r\n' 07:35:03.978725 Received DATA (on stdin) 07:35:03.978738 > 29 bytes data, server => client 07:35:03.978749 '150 Binary junk (17 bytes).\r\n' 07:35:03.979174 Received DATA (on stdin) 07:35:03.979187 > 28 bytes data, server => client 07:35:03.979209 '226 File transfer complete\r\n' 07:35:04.019479 < 6 bytes data, client => server 07:35:04.019510 'QUIT\r\n' 07:35:04.019745 Received DATA (on stdin) 07:35:04.019757 > 18 bytes data, server => client 07:35:04.019767 '221 bye bye baby\r\n' 07:35:04.019961 ====> Client disconnect 07:35:04.020117 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.977498 Running IPv4 version 07:35:04.977551 Listening on port 39351 07:35:04.977586 Wrote pid 91368 to log/20/server/ftp_sockdata.pid 07:35:04.977604 Received PING (on stdin) 07:35:04.977688 Received PORT (on stdin) 07:35:04.977968 ====> Client connect 07:35:04.978785 Received DATA (on stdin) 07:35:04.978799 > 17 bytes data, server => client 07:35:04.978809 'WE ROOLZ: 88588\r\n' 07:35:04.978836 Received DISC (on stdin) 07:35:04.978848 ====> Client forcibly disconnected 07:35:04.978930 Received QUIT (on stdin) 07:35:04.978940 quits 07:35:04.978995 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 290 === End of file server.cmd === Start of file valgrind290 ==91578== ==91578== Process terminating with default action of signal 4 (SIGILL) ==91578== Illegal opcode at address 0x4003082 ==91578== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91578== by 0x4003082: main (tool_main.c:234) === End of file valgrind290 test 0298...[FTP CWD with --ftp-method nocwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind298 ../src/curl -q --output log/11/curl298.out --include --trace-ascii log/11/trace298 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:43393/first/second/th%69rd/298 > log/11/stdout298 2> log/11/stderr298 298: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 298 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind298 ../src/curl -q --output log/11/curl298.out --include --trace-ascii log/11/trace298 --trace-config all --trace-time --ftp-method nocwd ftp://127.0.0.1:43393/first/second/th%69rd/298 > log/11/stdout298 2> log/11/stderr298 === End of file commands.log === Start of file ftp_server.log 07:35:04.145702 ====> Client connect 07:35:04.145845 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.146044 < "USER anonymous" 07:35:04.146069 > "331 We are happy you popped in![CR][LF]" 07:35:04.146194 < "PASS ftp@example.com" 07:35:04.146213 > "230 Welcome you silly person[CR][LF]" 07:35:04.146322 < "PWD" 07:35:04.146343 > "257 "/" is current directory[CR][LF]" 07:35:04.146448 < "EPSV" 07:35:04.146468 ====> Passive DATA channel requested by client 07:35:04.146478 DATA sockfilt for passive data channel starting... 07:35:04.147620 DATA sockfilt for passive data channel started (pid 91428) 07:35:04.147689 DATA sockfilt for passive data channel listens on port 37167 07:35:04.147716 > "229 Entering Passive Mode (|||37167|)[LF]" 07:35:04.147727 Client has been notified that DATA conn will be accepted on port 37167 07:35:04.147836 Client connects to port 37167 07:35:04.147856 ====> Client established passive DATA connection on port 37167 07:35:04.147901 < "TYPE I" 07:35:04.147920 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.148082 < "SIZE verifiedserver" 07:35:04.148126 > "213 17[CR][LF]" 07:35:04.148259 < "RETR verifiedserver" 07:35:04.148282 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.148340 =====> Closing passive DATA connection... 07:35:04.148350 Server disconnects passive DATA connection 07:35:04.148489 Server disconnected passive DATA connection 07:35:04.148511 DATA sockfilt for passive data channel quits (pid 91428) 07:35:04.148691 DATA sockfilt for passive data channel quit (pid 91428) 07:35:04.148704 =====> Closed passive DATA connection 07:35:04.148723 > "226 File transfer complete[CR][LF]" 07:35:04.194010 < "QUIT" 07:35:04.194051 > "221 bye bye baby[CR][LF]" 07:35:04.194594 MAIN sockfilt said DISC 07:35:04.194636 ====> Client disconnected 07:35:04.194702 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.991594 ====> Client connect 07:35:03.991819 Received DATA (on stdin) 07:35:03.991833 > 160 bytes data, server => client 07:35:03.991850 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.991861 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.991869 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.991920 < 16 bytes data, client => server 07:35:03.991929 'USER anonymous\r\n' 07:35:03.992055 Received DATA (on stdin) 07:35:03.992064 > 33 bytes data, server => client 07:35:03.992072 '331 We are happy you popped in!\r\n' 07:35:03.992117 < 22 bytes data, client => server 07:35:03.992125 'PASS ftp@example.com\r\n' 07:35:03.992188 Received DATA (on stdin) 07:35:03.992207 > 30 bytes data, server => client 07:35:03.992216 '230 Welcome you silly person\r\n' 07:35:03.992250 < 5 bytes data, client => server 07:35:03.992257 'PWD\r\n' 07:35:03.992326 Received DATA (on stdin) 07:35:03.992335 > 30 bytes data, server => client 07:35:03.992343 '257 "/" is current directory\r\n' 07:35:03.992378 < 6 bytes data, client => server 07:35:03.992385 'EPSV\r\n' 07:35:03.993688 Received DATA (on stdin) 07:35:03.993700 > 38 bytes data, server => client 07:35:03.993708 '229 Entering Passive Mode (|||37167|)\n' 07:35:03.993780 < 8 bytes data, client => server 07:35:03.993788 'TYPE I\r\n' 07:35:03.993914 Received DATA (on stdin) 07:35:03.993924 > 33 bytes data, server => client 07:35:03.993932 '200 I modify TYPE as you wanted\r\n' 07:35:03.993967 < 21 bytes data, client => server 07:35:03.993975 'SIZE verifiedserver\r\n' 07:35:03.994118 Received DATA (on stdin) 07:35:03.994132 > 8 bytes data, server => client 07:35:03.994139 '213 17\r\n' 07:35:03.994187 < 21 bytes data, client => server 07:35:03.994195 'RETR verifiedserver\r\n' 07:35:03.994273 Received DATA (on stdin) 07:35:03.994289 > 29 bytes data, server => client 07:35:03.994297 '150 Binary junk (17 bytes).\r\n' 07:35:03.994708 Received DATA (on stdin) 07:35:03.994717 > 28 bytes data, server => client 07:35:03.994725 '226 File transfer complete\r\n' 07:35:04.039468 < 6 bytes data, client => server 07:35:04.039490 'QUIT\r\n' 07:35:04.040041 Received DATA (on stdin) 07:35:04.040052 > 18 bytes data, server => client 07:35:04.040060 '221 bye bye baby\r\n' 07:35:04.040517 ====> Client disconnect 07:35:04.040694 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.993401 Running IPv4 version 07:35:04.993442 Listening on port 37167 07:35:04.993469 Wrote pid 91428 to log/11/server/ftp_sockdata.pid 07:35:04.993566 Received PING (on stdin) 07:35:04.993623 Received PORT (on stdin) 07:35:04.993783 ====> Client connect 07:35:04.994340 Received DATA (on stdin) 07:35:04.994365 > 17 bytes data, server => client 07:35:04.994373 'WE ROOLZ: 85489\r\n' 07:35:04.994394 Received DISC (on stdin) 07:35:04.994403 ====> Client forcibly disconnected 07:35:04.994501 Received QUIT (on stdin) 07:35:04.994524 quits 07:35:04.994575 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 298 === End of file server.cmd === Start of file valgrind298 ==91716== ==91716== Process terminating with default action of signal 4 (SIGILL) ==91716== Illegal opcode at address 0x4003082 ==91716== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91716== by 0x4003082: main (tool_main.c:234) === End of file valgrind298 test 0291...[FTP download maximum filesize not exceeded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind291 ../src/curl -q --output log/7/curl291.out --include --trace-ascii log/7/trace291 --trace-config all --trace-time ftp://127.0.0.1:40197/291 --max-filesize 100 > log/7/stdout291 2> log/7/stderr291 291: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 291 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind291 ../src/curl -q --output log/7/curl291.out --include --trace-ascii log/7/trace291 --trace-config all --trace-time ftp://127.0.0.1:40197/291 --max-filesize 100 > log/7/stdout291 2> log/7/stderr291 === End of file commands.log === Start of file ftp_server.log 07:35:04.132208 ====> Client connect 07:35:04.132342 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.132687 < "USER anonymous" 07:35:04.132733 > "331 We are happy you popped in![CR][LF]" 07:35:04.133126 < "PASS ftp@example.com" 07:35:04.133195 > "230 Welcome you silly person[CR][LF]" 07:35:04.133326 < "PWD" 07:35:04.133364 > "257 "/" is current directory[CR][LF]" 07:35:04.133539 < "EPSV" 07:35:04.133576 ====> Passive DATA channel requested by client 07:35:04.133587 DATA sockfilt for passive data channel starting... 07:35:04.134854 DATA sockfilt for passive data channel started (pid 91391) 07:35:04.134936 DATA sockfilt for passive data channel listens on port 34607 07:35:04.134964 > "229 Entering Passive Mode (|||34607|)[LF]" 07:35:04.134976 Client has been notified that DATA conn will be accepted on port 34607 07:35:04.135168 Client connects to port 34607 07:35:04.135194 ====> Client established passive DATA connection on port 34607 07:35:04.135256 < "TYPE I" 07:35:04.135282 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.135419 < "SIZE verifiedserver" 07:35:04.135455 > "213 17[CR][LF]" 07:35:04.135595 < "RETR verifiedserver" 07:35:04.135623 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.135683 =====> Closing passive DATA connection... 07:35:04.135696 Server disconnects passive DATA connection 07:35:04.135763 Server disconnected passive DATA connection 07:35:04.135781 DATA sockfilt for passive data channel quits (pid 91391) 07:35:04.136026 DATA sockfilt for passive data channel quit (pid 91391) 07:35:04.136048 =====> Closed passive DATA connection 07:35:04.136074 > "226 File transfer complete[CR][LF]" 07:35:04.177323 < "QUIT" 07:35:04.177392 > "221 bye bye baby[CR][LF]" 07:35:04.178240 MAIN sockfilt said DISC 07:35:04.178296 ====> Client disconnected 07:35:04.178355 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.978112 ====> Client connect 07:35:03.978309 Received DATA (on stdin) 07:35:03.978332 > 160 bytes data, server => client 07:35:03.978344 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.978354 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.978364 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.978440 < 16 bytes data, client => server 07:35:03.978452 'USER anonymous\r\n' 07:35:03.978726 Received DATA (on stdin) 07:35:03.978744 > 33 bytes data, server => client 07:35:03.978756 '331 We are happy you popped in!\r\n' 07:35:03.978896 < 22 bytes data, client => server 07:35:03.978945 'PASS ftp@example.com\r\n' 07:35:03.979177 Received DATA (on stdin) 07:35:03.979196 > 30 bytes data, server => client 07:35:03.979206 '230 Welcome you silly person\r\n' 07:35:03.979256 < 5 bytes data, client => server 07:35:03.979268 'PWD\r\n' 07:35:03.979354 Received DATA (on stdin) 07:35:03.979366 > 30 bytes data, server => client 07:35:03.979376 '257 "/" is current directory\r\n' 07:35:03.979444 < 6 bytes data, client => server 07:35:03.979467 'EPSV\r\n' 07:35:03.980965 Received DATA (on stdin) 07:35:03.980975 > 38 bytes data, server => client 07:35:03.980983 '229 Entering Passive Mode (|||34607|)\n' 07:35:03.981109 < 8 bytes data, client => server 07:35:03.981120 'TYPE I\r\n' 07:35:03.981272 Received DATA (on stdin) 07:35:03.981283 > 33 bytes data, server => client 07:35:03.981293 '200 I modify TYPE as you wanted\r\n' 07:35:03.981336 < 21 bytes data, client => server 07:35:03.981347 'SIZE verifiedserver\r\n' 07:35:03.981448 Received DATA (on stdin) 07:35:03.981465 > 8 bytes data, server => client 07:35:03.981476 '213 17\r\n' 07:35:03.981532 < 21 bytes data, client => server 07:35:03.981544 'RETR verifiedserver\r\n' 07:35:03.981673 Received DATA (on stdin) 07:35:03.981683 > 29 bytes data, server => client 07:35:03.981693 '150 Binary junk (17 bytes).\r\n' 07:35:03.982063 Received DATA (on stdin) 07:35:03.982075 > 28 bytes data, server => client 07:35:03.982085 '226 File transfer complete\r\n' 07:35:04.023135 < 6 bytes data, client => server 07:35:04.023161 'QUIT\r\n' 07:35:04.023381 Received DATA (on stdin) 07:35:04.023389 > 18 bytes data, server => client 07:35:04.023397 '221 bye bye baby\r\n' 07:35:04.024165 ====> Client disconnect 07:35:04.024349 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.980706 Running IPv4 version 07:35:04.980751 Listening on port 34607 07:35:04.980782 Wrote pid 91391 to log/7/server/ftp_sockdata.pid 07:35:04.980795 Received PING (on stdin) 07:35:04.980861 Received PORT (on stdin) 07:35:04.981082 ====> Client connect 07:35:04.981620 Received DATA (on stdin) 07:35:04.981632 > 17 bytes data, server => client 07:35:04.981642 'WE ROOLZ: 81417\r\n' 07:35:04.981690 Received DISC (on stdin) 07:35:04.981703 ====> Client forcibly disconnected 07:35:04.981772 Received QUIT (on stdin) 07:35:04.981785 quits 07:35:04.981840 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 291 === End of file server.cmd === Start of file valgrind291 ==91595== ==91595== Process terminating with default action of signal 4 (SIGILL) ==91595== Illegal opcode at address 0x4003082 ==91595== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91595== by 0x4003082: main (tool_main.c:234) === End of file valgrind291 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/10/server/http_ipv6_server.pid" --logfile "log/10/http_ipv6_server.log" --logdir "log/10" --portfile log/10/server/http_ipv6_server.port --config log/10/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 89462 port 43029 * pid http-ipv6 => 89462 89462 test 0263...[HTTP-IPv6 GET with proxy specified using IPv6-numerical address] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind263 ../src/curl -q --output log/10/curl263.out --include --trace-ascii log/10/trace263 --trace-config all --trace-time -g -x "http://[::1]:43029" http://veryveryremotesite.com/263 > log/10/stdout263 2> log/10/stderr263 263: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 263 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind295 ../src/curl -q --output log/16/curl295.out --include --trace-ascii log/16/trace295 --trace-config all --trace-time ftp://127.0.0.1:40585/295/ > log/16/stdout295 2> log/16/stderr295 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind296 ../src/curl -q --output log/18/curl296.out --include --trace-ascii log/18/trace296 --trace-config all --trace-time --ftp-method multicwd ftp://127.0.0.1:33107/first/second/third/296 > log/18/stdout296 2> log/18/stderr296 valgrind263 ../src/curl -q --output log/10/curl263.out --include --trace-ascii log/10/trace263 --trace-config all --trace-time -g -x "http://[::1]:43029" http://veryveryremotesite.com/263 > log/10/stdout263 2> log/10/stderr263 === End of file commands.log === Start of file http_ipv6_server.log 07:35:03.025798 Running HTTP IPv6 version on port 43029 07:35:03.025868 Wrote pid 89462 to log/10/server/http_ipv6_server.pid 07:35:03.025891 Wrote port 43029 to log/10/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 263 === End of file server.cmd === Start of file valgrind263 ==91521== ==91521== Process terminating with default action of signal 4 (SIGILL) ==91521== Illegal opcode at address 0x4003082 ==91521== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91521== by 0x4003082: main (tool_main.c:234) === End of file valgrind263 test 0295...[FTP ACCT request without --ftp-account] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind295 ../src/curl -q --output log/16/curl295.out --include --trace-ascii log/16/trace295 --trace-config all --trace-time ftp://127.0.0.1:40585/295/ > log/16/stdout295 2> log/16/stderr295 295: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 295 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind295 ../src/curl -q --output log/16/curl295.out --include --trace-ascii log/16/trace295 --trace-config all --trace-time ftp://127.0.0.1:40585/295/ > log/16/stdout295 2> log/16/stderr295 === End of file commands.log === Start of file ftp_server.log 07:35:04.140536 ====> Client connect 07:35:04.140704 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.141016 < "USER anonymous" 07:35:04.141066 > "331 We are happy you popped in![CR][LF]" 07:35:04.141212 < "PASS ftp@example.com" 07:35:04.141235 > "230 Welcome you silly person[CR][LF]" 07:35:04.141379 < "PWD" 07:35:04.141404 > "257 "/" is current directory[CR][LF]" 07:35:04.141520 < "EPSV" 07:35:04.141538 ====> Passive DATA channel requested by client 07:35:04.141547 DATA sockfilt for passive data channel starting... 07:35:04.142728 DATA sockfilt for passive data channel started (pid 91416) 07:35:04.142804 DATA sockfilt for passive data channel listens on port 43239 07:35:04.142828 > "229 Entering Passive Mode (|||43239|)[LF]" 07:35:04.142839 Client has been notified that DATA conn will be accepted on port 43239 07:35:04.143010 Client connects to port 43239 07:35:04.143033 ====> Client established passive DATA connection on port 43239 07:35:04.143079 < "TYPE I" 07:35:04.143097 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.143204 < "SIZE verifiedserver" 07:35:04.143227 > "213 17[CR][LF]" 07:35:04.143324 < "RETR verifiedserver" 07:35:04.143368 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.143423 =====> Closing passive DATA connection... 07:35:04.143434 Server disconnects passive DATA connection 07:35:04.143535 Server disconnected passive DATA connection 07:35:04.143553 DATA sockfilt for passive data channel quits (pid 91416) 07:35:04.143727 DATA sockfilt for passive data channel quit (pid 91416) 07:35:04.143760 =====> Closed passive DATA connection 07:35:04.143794 > "226 File transfer complete[CR][LF]" 07:35:04.186904 < "QUIT" 07:35:04.186955 > "221 bye bye baby[CR][LF]" 07:35:04.187253 MAIN sockfilt said DISC 07:35:04.187296 ====> Client disconnected 07:35:04.187363 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.986443 ====> Client connect 07:35:03.986702 Received DATA (on stdin) 07:35:03.986714 > 160 bytes data, server => client 07:35:03.986723 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.986731 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.986739 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.986829 < 16 bytes data, client => server 07:35:03.986851 'USER anonymous\r\n' 07:35:03.987058 Received DATA (on stdin) 07:35:03.987070 > 33 bytes data, server => client 07:35:03.987081 '331 We are happy you popped in!\r\n' 07:35:03.987126 < 22 bytes data, client => server 07:35:03.987136 'PASS ftp@example.com\r\n' 07:35:03.987223 Received DATA (on stdin) 07:35:03.987233 > 30 bytes data, server => client 07:35:03.987243 '230 Welcome you silly person\r\n' 07:35:03.987289 < 5 bytes data, client => server 07:35:03.987303 'PWD\r\n' 07:35:03.987390 Received DATA (on stdin) 07:35:03.987398 > 30 bytes data, server => client 07:35:03.987406 '257 "/" is current directory\r\n' 07:35:03.987446 < 6 bytes data, client => server 07:35:03.987454 'EPSV\r\n' 07:35:03.988825 Received DATA (on stdin) 07:35:03.988835 > 38 bytes data, server => client 07:35:03.988843 '229 Entering Passive Mode (|||43239|)\n' 07:35:03.988954 < 8 bytes data, client => server 07:35:03.988964 'TYPE I\r\n' 07:35:03.989082 Received DATA (on stdin) 07:35:03.989090 > 33 bytes data, server => client 07:35:03.989098 '200 I modify TYPE as you wanted\r\n' 07:35:03.989132 < 21 bytes data, client => server 07:35:03.989140 'SIZE verifiedserver\r\n' 07:35:03.989210 Received DATA (on stdin) 07:35:03.989218 > 8 bytes data, server => client 07:35:03.989225 '213 17\r\n' 07:35:03.989255 < 21 bytes data, client => server 07:35:03.989263 'RETR verifiedserver\r\n' 07:35:03.989418 Received DATA (on stdin) 07:35:03.989427 > 29 bytes data, server => client 07:35:03.989435 '150 Binary junk (17 bytes).\r\n' 07:35:03.989768 Received DATA (on stdin) 07:35:03.989778 > 28 bytes data, server => client 07:35:03.989787 '226 File transfer complete\r\n' 07:35:04.032767 < 6 bytes data, client => server 07:35:04.032789 'QUIT\r\n' 07:35:04.032953 Received DATA (on stdin) 07:35:04.032970 > 18 bytes data, server => client 07:35:04.032981 '221 bye bye baby\r\n' 07:35:04.033182 ====> Client disconnect 07:35:04.033355 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.988585 Running IPv4 version 07:35:04.988633 Listening on port 43239 07:35:04.988658 Wrote pid 91416 to log/16/server/ftp_sockdata.pid 07:35:04.988671 Received PING (on stdin) 07:35:04.988732 Received PORT (on stdin) 07:35:04.988930 ====> Client connect 07:35:04.989436 Received DATA (on stdin) 07:35:04.989447 > 17 bytes data, server => client 07:35:04.989455 'WE ROOLZ: 79929\r\n' 07:35:04.989473 Received DISC (on stdin) 07:35:04.989482 ====> Client forcibly disconnected 07:35:04.989545 Received QUIT (on stdin) 07:35:04.989555 quits 07:35:04.989597 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 332 Give me an ACCT now REPLY PWD 530 No ACCT, go away Testnum 295 === End of file server.cmd === Start of file valgrind295 ==91656== ==91656== Process terminating with default action of signal 4 (SIGILL) ==91656== Illegal opcode at address 0x4003082 ==91656== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91656== by 0x4003082: main (tool_main.c:234) === End of file valgrind295 test 0296...[FTP CWD with --ftp-method multicwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind296 ../src/curl -q --output log/18/curl296.out --include --trace-ascii log/18/trace296 --trace-config all --trace-time --ftp-method multicwd ftp://127.0.0.1:33107/first/second/third/296 > log/18/stdout296 2> log/18/stderr296 296: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? TotalCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind297 ../src/curl -q --output log/13/curl297.out --include --trace-ascii log/13/trace297 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:40375/first/second/third/297 > log/13/stdout297 2> log/13/stderr297 curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 296 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind296 ../src/curl -q --output log/18/curl296.out --include --trace-ascii log/18/trace296 --trace-config all --trace-time --ftp-method multicwd ftp://127.0.0.1:33107/first/second/third/296 > log/18/stdout296 2> log/18/stderr296 === End of file commands.log === Start of file ftp_server.log 07:35:04.143466 ====> Client connect 07:35:04.143650 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.143908 < "USER anonymous" 07:35:04.143951 > "331 We are happy you popped in![CR][LF]" 07:35:04.144120 < "PASS ftp@example.com" 07:35:04.144168 > "230 Welcome you silly person[CR][LF]" 07:35:04.144287 < "PWD" 07:35:04.144345 > "257 "/" is current directory[CR][LF]" 07:35:04.144487 < "EPSV" 07:35:04.144507 ====> Passive DATA channel requested by client 07:35:04.144516 DATA sockfilt for passive data channel starting... 07:35:04.145775 DATA sockfilt for passive data channel started (pid 91421) 07:35:04.145875 DATA sockfilt for passive data channel listens on port 46553 07:35:04.145904 > "229 Entering Passive Mode (|||46553|)[LF]" 07:35:04.145918 Client has been notified that DATA conn will be accepted on port 46553 07:35:04.146059 Client connects to port 46553 07:35:04.146078 ====> Client established passive DATA connection on port 46553 07:35:04.146126 < "TYPE I" 07:35:04.146147 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.146317 < "SIZE verifiedserver" 07:35:04.146342 > "213 17[CR][LF]" 07:35:04.146457 < "RETR verifiedserver" 07:35:04.146481 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.146535 =====> Closing passive DATA connection... 07:35:04.146547 Server disconnects passive DATA connection 07:35:04.146643 Server disconnected passive DATA connection 07:35:04.146670 DATA sockfilt for passive data channel quits (pid 91421) 07:35:04.146914 DATA sockfilt for passive data channel quit (pid 91421) 07:35:04.146939 =====> Closed passive DATA connection 07:35:04.146962 > "226 File transfer complete[CR][LF]" 07:35:04.190632 < "QUIT" 07:35:04.190683 > "221 bye bye baby[CR][LF]" 07:35:04.190943 MAIN sockfilt said DISC 07:35:04.190984 ====> Client disconnected 07:35:04.191033 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.989378 ====> Client connect 07:35:03.989654 Received DATA (on stdin) 07:35:03.989671 > 160 bytes data, server => client 07:35:03.989681 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.989689 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.989696 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.989770 < 16 bytes data, client => server 07:35:03.989779 'USER anonymous\r\n' 07:35:03.989941 Received DATA (on stdin) 07:35:03.989953 > 33 bytes data, server => client 07:35:03.989961 '331 We are happy you popped in!\r\n' 07:35:03.990011 < 22 bytes data, client => server 07:35:03.990023 'PASS ftp@example.com\r\n' 07:35:03.990160 Received DATA (on stdin) 07:35:03.990170 > 30 bytes data, server => client 07:35:03.990179 '230 Welcome you silly person\r\n' 07:35:03.990218 < 5 bytes data, client => server 07:35:03.990226 'PWD\r\n' 07:35:03.990336 Received DATA (on stdin) 07:35:03.990348 > 30 bytes data, server => client 07:35:03.990356 '257 "/" is current directory\r\n' 07:35:03.990403 < 6 bytes data, client => server 07:35:03.990412 'EPSV\r\n' 07:35:03.991897 Received DATA (on stdin) 07:35:03.991907 > 38 bytes data, server => client 07:35:03.991915 '229 Entering Passive Mode (|||46553|)\n' 07:35:03.991977 < 8 bytes data, client => server 07:35:03.991990 'TYPE I\r\n' 07:35:03.992133 Received DATA (on stdin) 07:35:03.992145 > 33 bytes data, server => client 07:35:03.992154 '200 I modify TYPE as you wanted\r\n' 07:35:03.992243 < 21 bytes data, client => server 07:35:03.992251 'SIZE verifiedserver\r\n' 07:35:03.992326 Received DATA (on stdin) 07:35:03.992335 > 8 bytes data, server => client 07:35:03.992342 '213 17\r\n' 07:35:03.992385 < 21 bytes data, client => server 07:35:03.992393 'RETR verifiedserver\r\n' 07:35:03.992502 Received DATA (on stdin) 07:35:03.992514 > 29 bytes data, server => client 07:35:03.992522 '150 Binary junk (17 bytes).\r\n' 07:35:03.992950 Received DATA (on stdin) 07:35:03.992961 > 28 bytes data, server => client 07:35:03.992969 '226 File transfer complete\r\n' 07:35:04.036473 < 6 bytes data, client => server 07:35:04.036494 'QUIT\r\n' 07:35:04.036661 Received DATA (on stdin) 07:35:04.036681 > 18 bytes data, server => client 07:35:04.036693 '221 bye bye baby\r\n' 07:35:04.036871 ====> Client disconnect 07:35:04.037008 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.991621 Running IPv4 version 07:35:04.991673 Listening on port 46553 07:35:04.991699 Wrote pid 91421 to log/18/server/ftp_sockdata.pid 07:35:04.991714 Received PING (on stdin) 07:35:04.991788 Received PORT (on stdin) 07:35:04.992009 ====> Client connect 07:35:04.992514 Received DATA (on stdin) 07:35:04.992543 > 17 bytes data, server => client 07:35:04.992553 'WE ROOLZ: 82311\r\n' 07:35:04.992577 Received DISC (on stdin) 07:35:04.992588 ====> Client forcibly disconnected 07:35:04.992676 Received QUIT (on stdin) 07:35:04.992717 quits 07:35:04.992762 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 296 === End of file server.cmd === Start of file valgrind296 ==91679== ==91679== Process terminating with default action of signal 4 (SIGILL) ==91679== Illegal opcode at address 0x4003082 ==91679== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91679== by 0x4003082: main (tool_main.c:234) === End of file valgrind296 test 0297...[FTP CWD with --ftp-method singlecwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind297 ../src/curl -q --output log/13/curl297.out --include --trace-ascii log/13/trace297 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:40375/first/second/third/297 > log/13/stdout297 2> log/13/stderr297 297: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 297 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind297 ../src/curl -q --output log/13/curl297.out --include --trace-ascii log/13/trace297 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:40375/first/second/third/297 > log/13/stdout297 2> log/13/stderr297 === End of file commands.log === Start of file ftp_server.log 07:35:04.143522 ====> Client connect 07:35:04.143649 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.143952 < "USER anonymous" 07:35:04.143994 > "331 We are happy you popped in![CR][LF]" 07:35:04.144155 < "PASS ftp@example.com" 07:35:04.144187 > "230 Welcome you silly person[CR][LF]" 07:35:04.144347 < "PWD" 07:35:04.144374 > "257 "/" is current directory[CR][LF]" 07:35:04.144500 < "EPSV" 07:35:04.144521 ====> Passive DATA channel requested by client 07:35:04.144530 DATA sockfilt for passive data channel starting... 07:35:04.145663 DATA sockfilt for passive data channel started (pid 91422) 07:35:04.145747 DATA sockfilt for passive data channel listens on port 37983 07:35:04.145779 > "229 Entering PassivCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind294 ../src/curl -q --output log/23/curl294.out --include --trace-ascii log/23/trace294 --trace-config all --trace-time ftp://127.0.0.1:36145/294/ --ftp-account "data for acct" > log/23/stdout294 2> log/23/stderr294 e Mode (|||37983|)[LF]" 07:35:04.145791 Client has been notified that DATA conn will be accepted on port 37983 07:35:04.145911 Client connects to port 37983 07:35:04.145932 ====> Client established passive DATA connection on port 37983 07:35:04.145997 < "TYPE I" 07:35:04.146021 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.146166 < "SIZE verifiedserver" 07:35:04.146202 > "213 17[CR][LF]" 07:35:04.146330 < "RETR verifiedserver" 07:35:04.146355 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.146413 =====> Closing passive DATA connection... 07:35:04.146423 Server disconnects passive DATA connection 07:35:04.146520 Server disconnected passive DATA connection 07:35:04.146543 DATA sockfilt for passive data channel quits (pid 91422) 07:35:04.146785 DATA sockfilt for passive data channel quit (pid 91422) 07:35:04.146806 =====> Closed passive DATA connection 07:35:04.146830 > "226 File transfer complete[CR][LF]" 07:35:04.186916 < "QUIT" 07:35:04.186966 > "221 bye bye baby[CR][LF]" 07:35:04.187258 MAIN sockfilt said DISC 07:35:04.187282 ====> Client disconnected 07:35:04.187351 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.989433 ====> Client connect 07:35:03.989642 Received DATA (on stdin) 07:35:03.989653 > 160 bytes data, server => client 07:35:03.989662 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.989670 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:03.989678 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.989735 < 16 bytes data, client => server 07:35:03.989744 'USER anonymous\r\n' 07:35:03.989989 Received DATA (on stdin) 07:35:03.990003 > 33 bytes data, server => client 07:35:03.990011 '331 We are happy you popped in!\r\n' 07:35:03.990067 < 22 bytes data, client => server 07:35:03.990076 'PASS ftp@example.com\r\n' 07:35:03.990176 Received DATA (on stdin) 07:35:03.990189 > 30 bytes data, server => client 07:35:03.990197 '230 Welcome you silly person\r\n' 07:35:03.990263 < 5 bytes data, client => server 07:35:03.990275 'PWD\r\n' 07:35:03.990359 Received DATA (on stdin) 07:35:03.990370 > 30 bytes data, server => client 07:35:03.990378 '257 "/" is current directory\r\n' 07:35:03.990427 < 6 bytes data, client => server 07:35:03.990436 'EPSV\r\n' 07:35:03.991758 Received DATA (on stdin) 07:35:03.991775 > 38 bytes data, server => client 07:35:03.991783 '229 Entering Passive Mode (|||37983|)\n' 07:35:03.991864 < 8 bytes data, client => server 07:35:03.991875 'TYPE I\r\n' 07:35:03.992001 Received DATA (on stdin) 07:35:03.992010 > 33 bytes data, server => client 07:35:03.992018 '200 I modify TYPE as you wanted\r\n' 07:35:03.992048 < 21 bytes data, client => server 07:35:03.992055 'SIZE verifiedserver\r\n' 07:35:03.992190 Received DATA (on stdin) 07:35:03.992199 > 8 bytes data, server => client 07:35:03.992206 '213 17\r\n' 07:35:03.992256 < 21 bytes data, client => server 07:35:03.992265 'RETR verifiedserver\r\n' 07:35:03.992377 Received DATA (on stdin) 07:35:03.992392 > 29 bytes data, server => client 07:35:03.992401 '150 Binary junk (17 bytes).\r\n' 07:35:03.992815 Received DATA (on stdin) 07:35:03.992825 > 28 bytes data, server => client 07:35:03.992832 '226 File transfer complete\r\n' 07:35:04.032771 < 6 bytes data, client => server 07:35:04.032796 'QUIT\r\n' 07:35:04.032962 Received DATA (on stdin) 07:35:04.032976 > 18 bytes data, server => client 07:35:04.032986 '221 bye bye baby\r\n' 07:35:04.033199 ====> Client disconnect 07:35:04.033346 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.991512 Running IPv4 version 07:35:04.991560 Listening on port 37983 07:35:04.991588 Wrote pid 91422 to log/13/server/ftp_sockdata.pid 07:35:04.991601 Received PING (on stdin) 07:35:04.991671 Received PORT (on stdin) 07:35:04.991859 ====> Client connect 07:35:04.992414 Received DATA (on stdin) 07:35:04.992427 > 17 bytes data, server => client 07:35:04.992435 'WE ROOLZ: 87629\r\n' 07:35:04.992454 Received DISC (on stdin) 07:35:04.992464 ====> Client forcibly disconnected 07:35:04.992539 Received QUIT (on stdin) 07:35:04.992549 quits 07:35:04.992593 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 297 === End of file server.cmd === Start of file valgrind297 ==91653== ==91653== Process terminating with default action of signal 4 (SIGILL) ==91653== Illegal opcode at address 0x4003082 ==91653== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91653== by 0x4003082: main (tool_main.c:234) === End of file valgrind297 test 0294...[FTP --ftp-account on ACCT request] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind294 ../src/curl -q --output log/23/curl294.out --include --trace-ascii log/23/trace294 --trace-config all --trace-time ftp://127.0.0.1:36145/294/ --ftp-account "data for acct" > log/23/stdout294 2> log/23/stderr294 294: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 294 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind294 ../src/curl -q --output log/23/curl294.out --include --trace-ascii log/23/trace294 --trace-config all --trace-time ftp://127.0.0.1:36145/294/ --ftp-account "data for acct" > log/23/stdout294 2> log/23/stderr294 === End of file commands.log === Start of file ftp_server.log 07:35:04.137843 ====> Client connect 07:35:04.137951 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.138144 < "USER anonymous" 07:35:04.138206 > "331 We are happy you popped in![CR][LF]" 07:35:04.138352 < "PASS ftp@example.com" 07:35:04.138375 > "230 Welcome you silly person[CR][LF]" 07:35:04.138485 < "PWD" 07:35:04.138506 > "257 "/" is current directory[CR][LF]" 07:35:04.138964 < "EPSV" 07:35:04.139058 ====> Passive DATA channel requested by client 07:35:04.139072 DATA sockfilt for passive data channel starting... 07:35:04.140570 DATA sockfilt for passive data channel started (pid 91414) 07:35:04.140718 DATA sockfilt for passive data channel listens on port 42679 07:35:04.140767 > "229 Entering Passive Mode (|||42679|)[LF]" 07:35:04.140788 Client has been notified that DATA conn will be accepted on port 42679 07:35:04.140961 Client connects to port 42679 07:35:04.140987 ====> Client established passive DATA connection on port 42679 07:35:04.141047 < "TYPE I" 07:35:04.141074 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.141233 < "SIZE verifiedserver" 07:35:04.141263 > "213 17[CR][LF]" 07:35:04.141438 < "RETR verifiedserver" 07:35:04.141491 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.141562 =====> Closing passive DATA connection... 07:35:04.141576 Server disconnects passive DATA connection 07:35:04.141708 Server disconnected passive DATA connection 07:35:04.141739 DATA sockfilt for passive data channel quits (pid 91414) 07:35:04.141948 DATA sockfilt for passive data channel quit (pid 91414) 07:35:04.141968 =====> Closed passive DATA connection 07:35:04.141990 > "226 File transfer complete[CR][LF]" 07:35:04.183839 < "QUIT" 07:35:04.183881 > "221 bye bye baby[CR][LF]" 07:35:04.184504 MAIN sockfilt said DISC 07:35:04.184528 ====> Client disconnected 07:35:04.184575 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:03.983750 ====> Client connect 07:35:03.983944 Received DATA (on stdin) 07:35:03.983954 > 160 bytes data, server => client 07:35:03.983963 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:03.983970 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind315 ../src/curl -q --output log/5/curl315.out --include --trace-ascii log/5/trace315 --trace-config all --trace-time http://127.0.0.1:46675/315 --compressed > log/5/stdout315 2> log/5/stderr315 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind314 ../src/curl -q --output log/8/curl314.out --include --trace-ascii log/8/trace314 --trace-config all --trace-time http://127.0.0.1:45261/314 --compressed > log/8/stdout314 2> log/8/stderr314 7:35:03.983978 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:03.984025 < 16 bytes data, client => server 07:35:03.984033 'USER anonymous\r\n' 07:35:03.984194 Received DATA (on stdin) 07:35:03.984209 > 33 bytes data, server => client 07:35:03.984223 '331 We are happy you popped in!\r\n' 07:35:03.984272 < 22 bytes data, client => server 07:35:03.984284 'PASS ftp@example.com\r\n' 07:35:03.984360 Received DATA (on stdin) 07:35:03.984369 > 30 bytes data, server => client 07:35:03.984377 '230 Welcome you silly person\r\n' 07:35:03.984413 < 5 bytes data, client => server 07:35:03.984421 'PWD\r\n' 07:35:03.984489 Received DATA (on stdin) 07:35:03.984496 > 30 bytes data, server => client 07:35:03.984504 '257 "/" is current directory\r\n' 07:35:03.984852 < 6 bytes data, client => server 07:35:03.984867 'EPSV\r\n' 07:35:03.986783 Received DATA (on stdin) 07:35:03.986800 > 38 bytes data, server => client 07:35:03.986809 '229 Entering Passive Mode (|||42679|)\n' 07:35:03.986922 < 8 bytes data, client => server 07:35:03.986931 'TYPE I\r\n' 07:35:03.987065 Received DATA (on stdin) 07:35:03.987080 > 33 bytes data, server => client 07:35:03.987091 '200 I modify TYPE as you wanted\r\n' 07:35:03.987147 < 21 bytes data, client => server 07:35:03.987158 'SIZE verifiedserver\r\n' 07:35:03.987250 Received DATA (on stdin) 07:35:03.987260 > 8 bytes data, server => client 07:35:03.987269 '213 17\r\n' 07:35:03.987313 < 21 bytes data, client => server 07:35:03.987323 'RETR verifiedserver\r\n' 07:35:03.987566 Received DATA (on stdin) 07:35:03.987580 > 29 bytes data, server => client 07:35:03.987590 '150 Binary junk (17 bytes).\r\n' 07:35:03.987977 Received DATA (on stdin) 07:35:03.987986 > 28 bytes data, server => client 07:35:03.987994 '226 File transfer complete\r\n' 07:35:04.029688 < 6 bytes data, client => server 07:35:04.029709 'QUIT\r\n' 07:35:04.029873 Received DATA (on stdin) 07:35:04.029887 > 18 bytes data, server => client 07:35:04.029896 '221 bye bye baby\r\n' 07:35:04.030449 ====> Client disconnect 07:35:04.030559 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.986394 Running IPv4 version 07:35:04.986447 Listening on port 42679 07:35:04.986474 Wrote pid 91414 to log/23/server/ftp_sockdata.pid 07:35:04.986492 Received PING (on stdin) 07:35:04.986589 Received PORT (on stdin) 07:35:04.986900 ====> Client connect 07:35:04.987616 Received DATA (on stdin) 07:35:04.987627 > 17 bytes data, server => client 07:35:04.987636 'WE ROOLZ: 81897\r\n' 07:35:04.987657 Received DISC (on stdin) 07:35:04.987667 ====> Client forcibly disconnected 07:35:04.987737 Received QUIT (on stdin) 07:35:04.987749 quits 07:35:04.987802 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 332 Give me an ACCT now REPLY ACCT 230 Thank-you for the ACCT Testnum 294 === End of file server.cmd === Start of file valgrind294 ==91635== ==91635== Process terminating with default action of signal 4 (SIGILL) ==91635== Illegal opcode at address 0x4003082 ==91635== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==91635== by 0x4003082: main (tool_main.c:234) === End of file valgrind294 test 0315...[HTTP GET brotli compressed content with broken header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind315 ../src/curl -q --output log/5/curl315.out --include --trace-ascii log/5/trace315 --trace-config all --trace-time http://127.0.0.1:46675/315 --compressed > log/5/stdout315 2> log/5/stderr315 315: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 315 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind315 ../src/curl -q --output log/5/curl315.out --include --trace-ascii log/5/trace315 --trace-config all --trace-time http://127.0.0.1:46675/315 --compressed > log/5/stdout315 2> log/5/stderr315 === End of file commands.log === Start of file http_server.log 07:35:04.205745 ====> Client connect 07:35:04.205784 accept_connection 3 returned 4 07:35:04.205800 accept_connection 3 returned 0 07:35:04.205813 Read 93 bytes 07:35:04.205823 Process 93 bytes request 07:35:04.205834 Got request: GET /verifiedserver HTTP/1.1 07:35:04.205843 Are-we-friendly question received 07:35:04.205893 Wrote request (93 bytes) input to log/5/server.input 07:35:04.205909 Identifying ourselves as friends 07:35:04.205966 Response sent (56 bytes) and written to log/5/server.response 07:35:04.205999 special request received, no persistency 07:35:04.206007 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 315 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind315 ==92079== ==92079== Process terminating with default action of signal 4 (SIGILL) ==92079== Illegal opcode at address 0x4003082 ==92079== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92079== by 0x4003082: main (tool_main.c:234) === End of file valgrind315 test 0314...[HTTP GET brotli compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind314 ../src/curl -q --output log/8/curl314.out --include --trace-ascii log/8/trace314 --trace-config all --trace-time http://127.0.0.1:45261/314 --compressed > log/8/stdout314 2> log/8/stderr314 314: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 314 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind314 ../src/curl -q --output log/8/curl314.out --include --trace-ascii log/8/trace314 --trace-config all --trace-time http://127.0.0.1:45261/314 --compressed > log/8/stdout314 2> log/8/stderr314 === End of file commands.log === Start of file http_server.log 07:35:04.205745 ====> Client connect 07:35:04.205779 accept_connection 3 returned 4 07:35:04.205794 accept_connection 3 returned 0 07:35:04.205807 Read 93 bytes 07:35:04.205816 Process 93 bytes request 07:35:04.205827 Got request: GET /verifiedserver HTTP/1.1 07:35:04.205836 Are-we-friendly question received 07:35:04.205890 Wrote request (93 bytes) input to log/8/server.input 07:35:04.205907 Identifying ourselves as friends 07:35:04.205964 Response sent (56 bytes) and written to log/8/server.response 07:35:04.205987 special request received, no persistency 07:35:04.205995 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verifyCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind271 ../src/curl -q --output log/15/curl271.out --include --trace-ascii log/15/trace271 --trace-config all --trace-time tftp://127.0.0.1:51756//271 > log/15/stdout271 2> log/15/stderr271 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind299 ../src/curl -q --output log/12/curl299.out --include --trace-ascii log/12/trace299 --trace-config all --trace-time -x http://127.0.0.1:37285 -u michal:aybabtu ftp://host.com/we/want/299 > log/12/stdout299 2> log/12/stderr299 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind316 ../src/curl -q --output log/17/curl316.out --include --trace-ascii log/17/trace316 --trace-config all --trace-time http://127.0.0.1:39089/316 --compressed > log/17/stdout316 2> log/17/stderr316 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind331 ../src/curl -q --output log/7/curl331.out --include --trace-ascii log/7/trace331 --trace-config all --trace-time -x http://127.0.0.1:39077 http://moo/we/want/331 -b none http://moo/we/want/3310002 > log/7/stdout331 2> log/7/stderr331 .out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 314 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind314 ==92111== ==92111== Process terminating with default action of signal 4 (SIGILL) ==92111== Illegal opcode at address 0x4003082 ==92111== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92111== by 0x4003082: main (tool_main.c:234) === End of file valgrind314 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/15/server/tftp_server.pid" --portfile "log/15/server/tftp_server.port" --logfile "log/15/tftp_server.log" --logdir "log/15" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 89987 port 51756 * pid tftp => 89987 89987 test 0271...[TFTP retrieve] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind271 ../src/curl -q --output log/15/curl271.out --include --trace-ascii log/15/trace271 --trace-config all --trace-time tftp://127.0.0.1:51756//271 > log/15/stdout271 2> log/15/stderr271 271: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 271 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind271 ../src/curl -q --output log/15/curl271.out --include --trace-ascii log/15/trace271 --trace-config all --trace-time tftp://127.0.0.1:51756//271 > log/15/stdout271 2> log/15/stderr271 === End of file commands.log === Start of file server.cmd Testnum 271 === End of file server.cmd === Start of file tftp_server.log 07:35:03.217834 Wrote pid 89987 to log/15/server/tftp_server.pid 07:35:03.217888 Wrote port 51756 to log/15/server/tftp_server.port 07:35:03.217899 Running IPv4 version on port UDP/51756 === End of file tftp_server.log === Start of file valgrind271 ==92036== ==92036== Process terminating with default action of signal 4 (SIGILL) ==92036== Illegal opcode at address 0x4003082 ==92036== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92036== by 0x4003082: main (tool_main.c:234) === End of file valgrind271 test 0299...[FTP over HTTP proxy with user:pass not in url] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind299 ../src/curl -q --output log/12/curl299.out --include --trace-ascii log/12/trace299 --trace-config all --trace-time -x http://127.0.0.1:37285 -u michal:aybabtu ftp://host.com/we/want/299 > log/12/stdout299 2> log/12/stderr299 299: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 299 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind299 ../src/curl -q --output log/12/curl299.out --include --trace-ascii log/12/trace299 --trace-config all --trace-time -x http://127.0.0.1:37285 -u michal:aybabtu ftp://host.com/we/want/299 > log/12/stdout299 2> log/12/stderr299 === End of file commands.log === Start of file http_server.log 07:35:04.196604 ====> Client connect 07:35:04.196629 accept_connection 3 returned 4 07:35:04.196642 accept_connection 3 returned 0 07:35:04.196653 Read 93 bytes 07:35:04.196661 Process 93 bytes request 07:35:04.196672 Got request: GET /verifiedserver HTTP/1.1 07:35:04.196678 Are-we-friendly question received 07:35:04.196697 Wrote request (93 bytes) input to log/12/server.input 07:35:04.196708 Identifying ourselves as friends 07:35:04.196751 Response sent (56 bytes) and written to log/12/server.response 07:35:04.196758 special request received, no persistency 07:35:04.196764 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 299 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind299 ==92032== ==92032== Process terminating with default action of signal 4 (SIGILL) ==92032== Illegal opcode at address 0x4003082 ==92032== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92032== by 0x4003082: main (tool_main.c:234) === End of file valgrind299 test 0316...[HTTP GET brotli compressed content of size more than CURL_MAX_WRITE_SIZE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind316 ../src/curl -q --output log/17/curl316.out --include --trace-ascii log/17/trace316 --trace-config all --trace-time http://127.0.0.1:39089/316 --compressed > log/17/stdout316 2> log/17/stderr316 316: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 316 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind316 ../src/curl -q --output log/17/curl316.out --include --trace-ascii log/17/trace316 --trace-config all --trace-time http://127.0.0.1:39089/316 --compressed > log/17/stdout316 2> log/17/stderr316 === End of file commands.log === Start of file http_server.log 07:35:04.228822 ====> Client connect 07:35:04.228857 accept_connection 3 returned 4 07:35:04.228874 accept_connection 3 returned 0 07:35:04.228889 Read 93 bytes 07:35:04.228899 Process 93 bytes request 07:35:04.228912 Got request: GET /verifiedserver HTTP/1.1 07:35:04.228922 Are-we-friendly question received 07:35:04.228946 Wrote request (93 bytes) input to log/17/server.input 07:35:04.228962 Identifying ourselves as friends 07:35:04.229019 Response sent (56 bytes) and written to log/17/server.response 07:35:04.229028 special request received, no persistency 07:35:04.229037 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 316 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind316 ==92222== ==92222== Process terminating with default action of signal 4 (SIGILL) ==92222== Illegal opcode at address 0x4003082 ==92222== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92222== by 0x4003082: main (tool_main.c:234) === End of file valgrind316 test 0331...[HTTP with cookie using host CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind317 ../src/curl -q --output log/1/curl317.out --include --trace-ascii log/1/trace317 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/317 -x 127.0.0.1:38941 -H "Authorization: s3cr3t" --proxy-user testing:this --location > log/1/stdout317 2> log/1/stderr317 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind326 ../src/curl -q --output log/24/curl326.out --trace-ascii log/24/trace326 --trace-config all --trace-time http://127.0.0.1:38675/326 --raw > log/24/stdout326 2> log/24/stderr326 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind329 ../src/curl -q --output log/11/curl329.out --include --trace-ascii log/11/trace329 --trace-config all --trace-time http://127.0.0.1:41173/we/want/329 -b log/11/jar329.txt -b log/11/jar329-2.txt -H "Host: host.foo.com" http://127.0.0.1:41173/we/want/3290002 > log/11/stdout329 2> log/11/stderr329 name 'moo'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind331 ../src/curl -q --output log/7/curl331.out --include --trace-ascii log/7/trace331 --trace-config all --trace-time -x http://127.0.0.1:39077 http://moo/we/want/331 -b none http://moo/we/want/3310002 > log/7/stdout331 2> log/7/stderr331 331: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 331 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind331 ../src/curl -q --output log/7/curl331.out --include --trace-ascii log/7/trace331 --trace-config all --trace-time -x http://127.0.0.1:39077 http://moo/we/want/331 -b none http://moo/we/want/3310002 > log/7/stdout331 2> log/7/stderr331 === End of file commands.log === Start of file http_server.log 07:35:04.537414 ====> Client connect 07:35:04.537452 accept_connection 3 returned 4 07:35:04.537478 accept_connection 3 returned 0 07:35:04.537500 Read 93 bytes 07:35:04.537510 Process 93 bytes request 07:35:04.537521 Got request: GET /verifiedserver HTTP/1.1 07:35:04.537530 Are-we-friendly question received 07:35:04.537565 Wrote request (93 bytes) input to log/7/server.input 07:35:04.537582 Identifying ourselves as friends 07:35:04.537742 Response sent (56 bytes) and written to log/7/server.response 07:35:04.537753 special request received, no persistency 07:35:04.537762 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 331 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind331 ==92825== ==92825== Process terminating with default action of signal 4 (SIGILL) ==92825== Illegal opcode at address 0x4003082 ==92825== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92825== by 0x4003082: main (tool_main.c:234) === End of file valgrind331 test 0317...[HTTP with custom Authorization: and redirect to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind317 ../src/curl -q --output log/1/curl317.out --include --trace-ascii log/1/trace317 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/317 -x 127.0.0.1:38941 -H "Authorization: s3cr3t" --proxy-user testing:this --location > log/1/stdout317 2> log/1/stderr317 317: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 317 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind317 ../src/curl -q --output log/1/curl317.out --include --trace-ascii log/1/trace317 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/317 -x 127.0.0.1:38941 -H "Authorization: s3cr3t" --proxy-user testing:this --location > log/1/stdout317 2> log/1/stderr317 === End of file commands.log === Start of file http_server.log 07:35:04.433929 ====> Client connect 07:35:04.433954 accept_connection 3 returned 4 07:35:04.433966 accept_connection 3 returned 0 07:35:04.433976 Read 93 bytes 07:35:04.433984 Process 93 bytes request 07:35:04.433994 Got request: GET /verifiedserver HTTP/1.1 07:35:04.434001 Are-we-friendly question received 07:35:04.434017 Wrote request (93 bytes) input to log/1/server.input 07:35:04.434029 Identifying ourselves as friends 07:35:04.434068 Response sent (56 bytes) and written to log/1/server.response 07:35:04.434075 special request received, no persistency 07:35:04.434081 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 317 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind317 ==92345== ==92345== Process terminating with default action of signal 4 (SIGILL) ==92345== Illegal opcode at address 0x4003082 ==92345== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92345== by 0x4003082: main (tool_main.c:234) === End of file valgrind317 test 0326...[HTTP GET chunked data in raw mode] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind326 ../src/curl -q --output log/24/curl326.out --trace-ascii log/24/trace326 --trace-config all --trace-time http://127.0.0.1:38675/326 --raw > log/24/stdout326 2> log/24/stderr326 326: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 326 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind326 ../src/curl -q --output log/24/curl326.out --trace-ascii log/24/trace326 --trace-config all --trace-time http://127.0.0.1:38675/326 --raw > log/24/stdout326 2> log/24/stderr326 === End of file commands.log === Start of file http_server.log 07:35:04.462991 ====> Client connect 07:35:04.463019 accept_connection 3 returned 4 07:35:04.463033 accept_connection 3 returned 0 07:35:04.463044 Read 93 bytes 07:35:04.463053 Process 93 bytes request 07:35:04.463063 Got request: GET /verifiedserver HTTP/1.1 07:35:04.463070 Are-we-friendly question received 07:35:04.463112 Wrote request (93 bytes) input to log/24/server.input 07:35:04.463140 Identifying ourselves as friends 07:35:04.463221 Response sent (56 bytes) and written to log/24/server.response 07:35:04.463231 special request received, no persistency 07:35:04.463240 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 326 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind326 ==92419== ==92419== Process terminating with default action of CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind283 ../src/curl -q --output log/3/curl283.out --include --trace-ascii log/3/trace283 --trace-config all --trace-time tftp://127.0.0.1:40393//invalid-file --tftp-blksize 1024 > log/3/stdout283 2> log/3/stderr283 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind334 ../src/curl -q --output log/13/curl334.out --include --trace-ascii log/13/trace334 --trace-config all --trace-time http://127.0.0.1:33627/want/334 > log/13/stdout334 2> log/13/stderr334 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind319 ../src/curl -q --output log/9/curl319.out --trace-ascii log/9/trace319 --trace-config all --trace-time http://127.0.0.1:34999/319 --raw > log/9/stdout319 2> log/9/stderr319 signal 4 (SIGILL) ==92419== Illegal opcode at address 0x4003082 ==92419== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92419== by 0x4003082: main (tool_main.c:234) === End of file valgrind326 setenv TZ = GMT test 0329...[HTTP cookie with Max-Age=0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind329 ../src/curl -q --output log/11/curl329.out --include --trace-ascii log/11/trace329 --trace-config all --trace-time http://127.0.0.1:41173/we/want/329 -b log/11/jar329.txt -b log/11/jar329-2.txt -H "Host: host.foo.com" http://127.0.0.1:41173/we/want/3290002 > log/11/stdout329 2> log/11/stderr329 329: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 329 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind329 ../src/curl -q --output log/11/curl329.out --include --trace-ascii log/11/trace329 --trace-config all --trace-time http://127.0.0.1:41173/we/want/329 -b log/11/jar329.txt -b log/11/jar329-2.txt -H "Host: host.foo.com" http://127.0.0.1:41173/we/want/3290002 > log/11/stdout329 2> log/11/stderr329 === End of file commands.log === Start of file http_server.log 07:35:04.537325 ====> Client connect 07:35:04.537353 accept_connection 3 returned 4 07:35:04.537371 accept_connection 3 returned 0 07:35:04.537385 Read 93 bytes 07:35:04.537395 Process 93 bytes request 07:35:04.537410 Got request: GET /verifiedserver HTTP/1.1 07:35:04.537420 Are-we-friendly question received 07:35:04.537477 Wrote request (93 bytes) input to log/11/server.input 07:35:04.537497 Identifying ourselves as friends 07:35:04.537544 Response sent (56 bytes) and written to log/11/server.response 07:35:04.537551 special request received, no persistency 07:35:04.537562 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file jar329.txt .host.foo.com TRUE /we/want/ FALSE 22147483647 test no .host.foo.com TRUE /we/want/ FALSE 22147483647 tester yes === End of file jar329.txt === Start of file server.cmd Testnum 329 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind329 ==92831== ==92831== Process terminating with default action of signal 4 (SIGILL) ==92831== Illegal opcode at address 0x4003082 ==92831== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92831== by 0x4003082: main (tool_main.c:234) === End of file valgrind329 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/3/server/tftp_server.pid" --portfile "log/3/server/tftp_server.port" --logfile "log/3/tftp_server.log" --logdir "log/3" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 90756 port 40393 * pid tftp => 90756 90756 test 0283...[TFTP retrieve on invalid file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind283 ../src/curl -q --output log/3/curl283.out --include --trace-ascii log/3/trace283 --trace-config all --trace-time tftp://127.0.0.1:40393//invalid-file --tftp-blksize 1024 > log/3/stdout283 2> log/3/stderr283 283: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 283 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind283 ../src/curl -q --output log/3/curl283.out --include --trace-ascii log/3/trace283 --trace-config all --trace-time tftp://127.0.0.1:40393//invalid-file --tftp-blksize 1024 > log/3/stdout283 2> log/3/stderr283 === End of file commands.log === Start of file server.cmd Testnum 283 === End of file server.cmd === Start of file tftp_server.log 07:35:03.576464 Wrote pid 90756 to log/3/server/tftp_server.pid 07:35:03.576503 Wrote port 40393 to log/3/server/tftp_server.port 07:35:03.576512 Running IPv4 version on port UDP/40393 === End of file tftp_server.log === Start of file valgrind283 ==92935== ==92935== Process terminating with default action of signal 4 (SIGILL) ==92935== Illegal opcode at address 0x4003082 ==92935== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92935== by 0x4003082: main (tool_main.c:234) === End of file valgrind283 test 0334...[HTTP 204 No content with chunked header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind334 ../src/curl -q --output log/13/curl334.out --include --trace-ascii log/13/trace334 --trace-config all --trace-time http://127.0.0.1:33627/want/334 > log/13/stdout334 2> log/13/stderr334 334: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 334 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind334 ../src/curl -q --output log/13/curl334.out --include --trace-ascii log/13/trace334 --trace-config all --trace-time http://127.0.0.1:33627/want/334 > log/13/stdout334 2> log/13/stderr334 === End of file commands.log === Start of file http_server.log 07:35:04.549163 ====> Client connect 07:35:04.549192 accept_connection 3 returned 4 07:35:04.549209 accept_connection 3 returned 0 07:35:04.549223 Read 93 bytes 07:35:04.549233 Process 93 bytes request 07:35:04.549246 Got request: GET /verifiedserver HTTP/1.1 07:35:04.549255 Are-we-friendly question received 07:35:04.549280 Wrote request (93 bytes) input to log/13/server.input 07:35:04.549295 Identifying ourselves as friends 07:35:04.549366 Response sent (56 bytes) and written to log/13/server.response 07:35:04.549376 special request received, no persistency 07:35:04.549385 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 334 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind334 ==92872== ==92872== Process terminating with default action of signal 4 (SIGILL) ==92872== Illegal opcode at address 0x4003082 ==92872== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92872== by 0x4003082: main (tool_main.c:234) === End of file valgrind334 test 0319...[HTTP GET gobbledigook transfer-encoded data in rawCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind318 ../src/curl -q --output log/19/curl318.out --include --trace-ascii log/19/trace318 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/318 -x 127.0.0.1:33487 -H "Authorization: s3cr3t" --proxy-user testing:this --location-trusted > log/19/stdout318 2> log/19/stderr318 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind275 ../src/curl -q --output log/21/curl275.out --include --trace-ascii log/21/trace275 --trace-config all --trace-time http://remotesite.com.275:41087/we/want/that/page/275 -p -x 127.0.0.1:40643 --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:41087/we/want/that/page/275 > log/21/stdout275 2> log/21/stderr275 mode] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind319 ../src/curl -q --output log/9/curl319.out --trace-ascii log/9/trace319 --trace-config all --trace-time http://127.0.0.1:34999/319 --raw > log/9/stdout319 2> log/9/stderr319 319: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 319 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind319 ../src/curl -q --output log/9/curl319.out --trace-ascii log/9/trace319 --trace-config all --trace-time http://127.0.0.1:34999/319 --raw > log/9/stdout319 2> log/9/stderr319 === End of file commands.log === Start of file http_server.log 07:35:04.452039 ====> Client connect 07:35:04.452071 accept_connection 3 returned 4 07:35:04.452089 accept_connection 3 returned 0 07:35:04.452104 Read 93 bytes 07:35:04.452113 Process 93 bytes request 07:35:04.452126 Got request: GET /verifiedserver HTTP/1.1 07:35:04.452135 Are-we-friendly question received 07:35:04.452208 Wrote request (93 bytes) input to log/9/server.input 07:35:04.452273 Identifying ourselves as friends 07:35:04.452346 Response sent (56 bytes) and written to log/9/server.response 07:35:04.452355 special request received, no persistency 07:35:04.452362 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 319 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind319 ==92378== ==92378== Process terminating with default action of signal 4 (SIGILL) ==92378== Illegal opcode at address 0x4003082 ==92378== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92378== by 0x4003082: main (tool_main.c:234) === End of file valgrind319 test 0318...[HTTP with custom Authorization: and redirect to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind318 ../src/curl -q --output log/19/curl318.out --include --trace-ascii log/19/trace318 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/318 -x 127.0.0.1:33487 -H "Authorization: s3cr3t" --proxy-user testing:this --location-trusted > log/19/stdout318 2> log/19/stderr318 318: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 318 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind318 ../src/curl -q --output log/19/curl318.out --include --trace-ascii log/19/trace318 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/318 -x 127.0.0.1:33487 -H "Authorization: s3cr3t" --proxy-user testing:this --location-trusted > log/19/stdout318 2> log/19/stderr318 === End of file commands.log === Start of file http_server.log 07:35:04.452392 ====> Client connect 07:35:04.452428 accept_connection 3 returned 4 07:35:04.452444 accept_connection 3 returned 0 07:35:04.452456 Read 93 bytes 07:35:04.452464 Process 93 bytes request 07:35:04.452475 Got request: GET /verifiedserver HTTP/1.1 07:35:04.452482 Are-we-friendly question received 07:35:04.452504 Wrote request (93 bytes) input to log/19/server.input 07:35:04.452517 Identifying ourselves as friends 07:35:04.452563 Response sent (56 bytes) and written to log/19/server.response 07:35:04.452571 special request received, no persistency 07:35:04.452578 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 318 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind318 ==92382== ==92382== Process terminating with default action of signal 4 (SIGILL) ==92382== Illegal opcode at address 0x4003082 ==92382== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92382== by 0x4003082: main (tool_main.c:234) === End of file valgrind318 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/21/server/http2_server.pid" --logfile "log/21/http2_server.log" --logdir "log/21" --portfile log/21/server/http2_server.port --config log/21/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 90296 port 40643 * pid http-proxy => 90296 90296 test 0275...[HTTP CONNECT with proxytunnel getting two URLs from the same host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind275 ../src/curl -q --output log/21/curl275.out --include --trace-ascii log/21/trace275 --trace-config all --trace-time http://remotesite.com.275:41087/we/want/that/page/275 -p -x 127.0.0.1:40643 --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:41087/we/want/that/page/275 > log/21/stdout275 2> log/21/stderr275 275: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 275 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind275 ../src/curl -q --output log/21/curl275.out --include --trace-ascii log/21/trace275 --trace-config all --trace-time http://remotesite.com.275:41087/we/want/that/page/275 -p -x 127.0.0.1:40643 --user iam:myself --proxy-user youare:yourself http://remotesite.com.275:41087/we/want/that/page/275 > log/21/stdout275 2> log/21/stderr275 === End of file commands.log === Start of file http2_server.log 07:35:03.478901 Run as proxy, CONNECT to host 127.0.0.1 07:35:03.478988 Running HTTP IPv4 version on port 40643 07:35:03.479028 Wrote pid 90296 to log/21/server/http2_server.pid 07:35:03.479054 Wrote port 40643 to log/21/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:35:03.460882 ====> Client connect 07:35:03.460904 accept_connection 3 returned 4 07:35:03.460917 accept_connection 3 returned 0 07:35:03.460927 Read 93 bytes 07:35:03.460935 Process 93 bytes request 07:35:03.460943 Got request: GET /verifiedserver HTTP/1.1 07:35:03.460950 Are-we-friendly question received 07:35:03.460966 Wrote request (93 bytes) input to log/21/server.input 07:35:03.460978 Identifying ourselves as friCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind327 ../src/curl -q --output log/2/curl327.out --include --trace-ascii log/2/trace327 --trace-config all --trace-time http://127.0.0.1:45457/we/want/327 -b none -c log/2/cookies327 http://127.0.0.1:45457/we/want/3270002 > log/2/stdout327 2> log/2/stderr327 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind328 ../src/curl -q --output log/20/curl328.out --include --trace-ascii log/20/trace328 --trace-config all --trace-time http://127.0.0.1:37169/hello/328 --compressed > log/20/stdout328 2> log/20/stderr328 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind333 ../src/curl -q --output log/18/curl333.out --include --trace-ascii log/18/trace333 --trace-config all --trace-time --no-proxy "hey" http://127.0.0.1:47/333 > log/18/stdout333 2> log/18/stderr333 ends 07:35:03.461017 Response sent (56 bytes) and written to log/21/server.response 07:35:03.461026 special request received, no persistency 07:35:03.461033 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 275 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind275 ==92431== ==92431== Process terminating with default action of signal 4 (SIGILL) ==92431== Illegal opcode at address 0x4003082 ==92431== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92431== by 0x4003082: main (tool_main.c:234) === End of file valgrind275 test 0327...[HTTP with cookiejar without cookies left] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind327 ../src/curl -q --output log/2/curl327.out --include --trace-ascii log/2/trace327 --trace-config all --trace-time http://127.0.0.1:45457/we/want/327 -b none -c log/2/cookies327 http://127.0.0.1:45457/we/want/3270002 > log/2/stdout327 2> log/2/stderr327 327: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 327 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind327 ../src/curl -q --output log/2/curl327.out --include --trace-ascii log/2/trace327 --trace-config all --trace-time http://127.0.0.1:45457/we/want/327 -b none -c log/2/cookies327 http://127.0.0.1:45457/we/want/3270002 > log/2/stdout327 2> log/2/stderr327 === End of file commands.log === Start of file http_server.log 07:35:04.487460 ====> Client connect 07:35:04.487490 accept_connection 3 returned 4 07:35:04.487502 accept_connection 3 returned 0 07:35:04.487513 Read 93 bytes 07:35:04.487520 Process 93 bytes request 07:35:04.487531 Got request: GET /verifiedserver HTTP/1.1 07:35:04.487538 Are-we-friendly question received 07:35:04.487557 Wrote request (93 bytes) input to log/2/server.input 07:35:04.487569 Identifying ourselves as friends 07:35:04.487610 Response sent (56 bytes) and written to log/2/server.response 07:35:04.487617 special request received, no persistency 07:35:04.487623 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 327 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind327 ==92581== ==92581== Process terminating with default action of signal 4 (SIGILL) ==92581== Illegal opcode at address 0x4003082 ==92581== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92581== by 0x4003082: main (tool_main.c:234) === End of file valgrind327 test 0328...[HTTP with "Content-Encoding: none] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind328 ../src/curl -q --output log/20/curl328.out --include --trace-ascii log/20/trace328 --trace-config all --trace-time http://127.0.0.1:37169/hello/328 --compressed > log/20/stdout328 2> log/20/stderr328 328: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 328 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind328 ../src/curl -q --output log/20/curl328.out --include --trace-ascii log/20/trace328 --trace-config all --trace-time http://127.0.0.1:37169/hello/328 --compressed > log/20/stdout328 2> log/20/stderr328 === End of file commands.log === Start of file http_server.log 07:35:04.508230 ====> Client connect 07:35:04.508262 accept_connection 3 returned 4 07:35:04.508277 accept_connection 3 returned 0 07:35:04.508290 Read 93 bytes 07:35:04.508299 Process 93 bytes request 07:35:04.508310 Got request: GET /verifiedserver HTTP/1.1 07:35:04.508319 Are-we-friendly question received 07:35:04.508341 Wrote request (93 bytes) input to log/20/server.input 07:35:04.508357 Identifying ourselves as friends 07:35:04.508405 Response sent (56 bytes) and written to log/20/server.response 07:35:04.508414 special request received, no persistency 07:35:04.508422 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 328 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind328 ==92672== ==92672== Process terminating with default action of signal 4 (SIGILL) ==92672== Illegal opcode at address 0x4003082 ==92672== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92672== by 0x4003082: main (tool_main.c:234) === End of file valgrind328 * starts no server test 0333...[Try a non-boolean command line option with --no-] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind333 ../src/curl -q --output log/18/curl333.out --include --trace-ascii log/18/trace333 --trace-config all --trace-time --no-proxy "hey" http://127.0.0.1:47/333 > log/18/stdout333 2> log/18/stderr333 curl returned 132, when expecting 2 333: exit FAILED == Contents of files in the log/18/ dir after test 333 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind333 ../src/curl -q --output log/18/curl333.out --include --trace-ascii log/18/trace333 --trace-config all --trace-time --no-proxy "hey" http://127.0.0.1:47/333 > log/18/stdout333 2> log/18/stderr333 === End of file commands.log === Start of file server.cmd Testnum 333 === End of file server.cmd === Start of file valgrind333 ==92741== ==92741== Process terminating with default action of signal 4 (SIGILL) ==92741== Illegal opcode at address 0x4003082 ==92741== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92741== by 0x4003082: main (tool_main.c:234) === EnCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind330 ../src/curl -q --output log/10/curl330.out --include --trace-ascii log/10/trace330 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/330 -x 127.0.0.1:34851 -H "Cookie: test=yes" --location > log/10/stdout330 2> log/10/stderr330 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind335 ../src/curl -q --output log/23/curl335.out --include --trace-ascii log/23/trace335 --trace-config all --trace-time http://digest:alot@data.from.server.requiring.digest.hohoho.com/335 --proxy http://foo:bar@127.0.0.1:45701 --proxy-digest --digest > log/23/stdout335 2> log/23/stderr335 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind284 ../src/curl -q --output log/6/curl284.out --include --trace-ascii log/6/trace284 --trace-config all --trace-time tftp://127.0.0.1:41394//284 > log/6/stdout284 2> log/6/stderr284 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind286 ../src/curl -q --output log/14/curl286.out --include --trace-ascii log/14/trace286 --trace-config all --trace-time -T log/14/test286.txt tftp://127.0.0.1:50292// > log/14/stdout286 2> log/14/stderr286 d of file valgrind333 test 0330...[HTTP with custom Cookie: and redirect to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind330 ../src/curl -q --output log/10/curl330.out --include --trace-ascii log/10/trace330 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/330 -x 127.0.0.1:34851 -H "Cookie: test=yes" --location > log/10/stdout330 2> log/10/stderr330 330: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 330 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind330 ../src/curl -q --output log/10/curl330.out --include --trace-ascii log/10/trace330 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/330 -x 127.0.0.1:34851 -H "Cookie: test=yes" --location > log/10/stdout330 2> log/10/stderr330 === End of file commands.log === Start of file http_server.log 07:35:04.537338 ====> Client connect 07:35:04.537370 accept_connection 3 returned 4 07:35:04.537386 accept_connection 3 returned 0 07:35:04.537399 Read 93 bytes 07:35:04.537408 Process 93 bytes request 07:35:04.537425 Got request: GET /verifiedserver HTTP/1.1 07:35:04.537460 Are-we-friendly question received 07:35:04.537514 Wrote request (93 bytes) input to log/10/server.input 07:35:04.537530 Identifying ourselves as friends 07:35:04.537588 Response sent (56 bytes) and written to log/10/server.response 07:35:04.537598 special request received, no persistency 07:35:04.537606 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 330 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind330 ==92832== ==92832== Process terminating with default action of signal 4 (SIGILL) ==92832== Illegal opcode at address 0x4003082 ==92832== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92832== by 0x4003082: main (tool_main.c:234) === End of file valgrind330 test 0335...[HTTP with proxy Digest and site Digest with creds in URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind335 ../src/curl -q --output log/23/curl335.out --include --trace-ascii log/23/trace335 --trace-config all --trace-time http://digest:alot@data.from.server.requiring.digest.hohoho.com/335 --proxy http://foo:bar@127.0.0.1:45701 --proxy-digest --digest > log/23/stdout335 2> log/23/stderr335 335: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 335 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind335 ../src/curl -q --output log/23/curl335.out --include --trace-ascii log/23/trace335 --trace-config all --trace-time http://digest:alot@data.from.server.requiring.digest.hohoho.com/335 --proxy http://foo:bar@127.0.0.1:45701 --proxy-digest --digest > log/23/stdout335 2> log/23/stderr335 === End of file commands.log === Start of file http_server.log 07:35:04.557175 ====> Client connect 07:35:04.557202 accept_connection 3 returned 4 07:35:04.557216 accept_connection 3 returned 0 07:35:04.557228 Read 93 bytes 07:35:04.557236 Process 93 bytes request 07:35:04.557247 Got request: GET /verifiedserver HTTP/1.1 07:35:04.557254 Are-we-friendly question received 07:35:04.557272 Wrote request (93 bytes) input to log/23/server.input 07:35:04.557284 Identifying ourselves as friends 07:35:04.557328 Response sent (56 bytes) and written to log/23/server.response 07:35:04.557336 special request received, no persistency 07:35:04.557343 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 335 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind335 ==92956== ==92956== Process terminating with default action of signal 4 (SIGILL) ==92956== Illegal opcode at address 0x4003082 ==92956== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==92956== by 0x4003082: main (tool_main.c:234) === End of file valgrind335 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/6/server/tftp_server.pid" --portfile "log/6/server/tftp_server.port" --logfile "log/6/tftp_server.log" --logdir "log/6" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 90921 port 41394 * pid tftp => 90921 90921 test 0284...[TFTP retrieve of boundary case 512 byte file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind284 ../src/curl -q --output log/6/curl284.out --include --trace-ascii log/6/trace284 --trace-config all --trace-time tftp://127.0.0.1:41394//284 > log/6/stdout284 2> log/6/stderr284 284: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 284 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind284 ../src/curl -q --output log/6/curl284.out --include --trace-ascii log/6/trace284 --trace-config all --trace-time tftp://127.0.0.1:41394//284 > log/6/stdout284 2> log/6/stderr284 === End of file commands.log === Start of file server.cmd Testnum 284 === End of file server.cmd === Start of file tftp_server.log 07:35:03.619103 Wrote pid 90921 to log/6/server/tftp_server.pid 07:35:03.619142 Wrote port 41394 to log/6/server/tftp_server.port 07:35:03.619152 Running IPv4 version on port UDP/41394 === End of file tftp_server.log === Start of file valgrind284 ==93162== ==93162== Process terminating with default action of signal 4 (SIGILL) ==93162== Illegal opcode at address 0x4003082 ==93162== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93162== by 0x4003082: main (tool_main.c:234) === End of file valgrind284 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/14/server/tftp_server.pid" --portfile "log/14/server/tftp_server.port" --logfile "log/14/tftp_server.log" --logdir "log/14" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 90960 port 50292 * pid tftCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind285 ../src/curl -q --output log/22/curl285.out --include --trace-ascii log/22/trace285 --trace-config all --trace-time -T log/22/test285.txt tftp://127.0.0.1:47431// --connect-timeout 549 > log/22/stdout285 2> log/22/stderr285 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind338 ../src/curl -q --output log/15/curl338.out --include --trace-ascii log/15/trace338 --trace-config all --trace-time http://127.0.0.1:36993/338 --next http://127.0.0.1:36993/338 --anyauth -u foo:moo > log/15/stdout338 2> log/15/stderr338 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind339 ../src/curl -q --output log/12/curl339.out --include --trace-ascii log/12/trace339 --trace-config all --trace-time http://127.0.0.1:37285/339 --etag-save log/12/etag339 > log/12/stdout339 2> log/12/stderr339 p => 90960 90960 test 0286...[TFTP send of boundary case 512 byte file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind286 ../src/curl -q --output log/14/curl286.out --include --trace-ascii log/14/trace286 --trace-config all --trace-time -T log/14/test286.txt tftp://127.0.0.1:50292// > log/14/stdout286 2> log/14/stderr286 286: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 286 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind286 ../src/curl -q --output log/14/curl286.out --include --trace-ascii log/14/trace286 --trace-config all --trace-time -T log/14/test286.txt tftp://127.0.0.1:50292// > log/14/stdout286 2> log/14/stderr286 === End of file commands.log === Start of file server.cmd Testnum 286 === End of file server.cmd === Start of file test286.txt A chunk of data which exactly fits into a 512 byte TFTP block, testing a boundary condition in the TFTP transmit code. 89ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF 123456789ABCDEF === End of file test286.txt === Start of file tftp_server.log 07:35:03.742646 Wrote pid 90960 to log/14/server/tftp_server.pid 07:35:03.742698 Wrote port 50292 to log/14/server/tftp_server.port 07:35:03.742708 Running IPv4 version on port UDP/50292 === End of file tftp_server.log === Start of file valgrind286 ==93238== ==93238== Process terminating with default action of signal 4 (SIGILL) ==93238== Illegal opcode at address 0x4003082 ==93238== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93238== by 0x4003082: main (tool_main.c:234) === End of file valgrind286 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/22/server/tftp_server.pid" --portfile "log/22/server/tftp_server.port" --logfile "log/22/tftp_server.log" --logdir "log/22" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 90955 port 47431 * pid tftp => 90955 90955 test 0285...[TFTP send] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind285 ../src/curl -q --output log/22/curl285.out --include --trace-ascii log/22/trace285 --trace-config all --trace-time -T log/22/test285.txt tftp://127.0.0.1:47431// --connect-timeout 549 > log/22/stdout285 2> log/22/stderr285 285: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 285 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind285 ../src/curl -q --output log/22/curl285.out --include --trace-ascii log/22/trace285 --trace-config all --trace-time -T log/22/test285.txt tftp://127.0.0.1:47431// --connect-timeout 549 > log/22/stdout285 2> log/22/stderr285 === End of file commands.log === Start of file server.cmd Testnum 285 === End of file server.cmd === Start of file test285.txt a chunk of data sent to server === End of file test285.txt === Start of file tftp_server.log 07:35:03.742897 Wrote pid 90955 to log/22/server/tftp_server.pid 07:35:03.742950 Wrote port 47431 to log/22/server/tftp_server.port 07:35:03.742961 Running IPv4 version on port UDP/47431 === End of file tftp_server.log === Start of file valgrind285 ==93226== ==93226== Process terminating with default action of signal 4 (SIGILL) ==93226== Illegal opcode at address 0x4003082 ==93226== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93226== by 0x4003082: main (tool_main.c:234) === End of file valgrind285 test 0338...[ANYAUTH connection reuse of non-authed connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind338 ../src/curl -q --output log/15/curl338.out --include --trace-ascii log/15/trace338 --trace-config all --trace-time http://127.0.0.1:36993/338 --next http://127.0.0.1:36993/338 --anyauth -u foo:moo > log/15/stdout338 2> log/15/stderr338 338: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 338 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind338 ../src/curl -q --output log/15/curl338.out --include --trace-ascii log/15/trace338 --trace-config all --trace-time http://127.0.0.1:36993/338 --next http://127.0.0.1:36993/338 --anyauth -u foo:moo > log/15/stdout338 2> log/15/stderr338 === End of file commands.log === Start of file http_server.log 07:35:04.787005 ====> Client connect 07:35:04.787039 accept_connection 3 returned 4 07:35:04.787056 accept_connection 3 returned 0 07:35:04.787066 Read 93 bytes 07:35:04.787074 Process 93 bytes request 07:35:04.787084 Got request: GET /verifiedserver HTTP/1.1 07:35:04.787091 Are-we-friendly question received 07:35:04.787135 Wrote request (93 bytes) input to log/15/server.input 07:35:04.787150 Identifying ourselves as friends 07:35:04.787201 Response sent (56 bytes) and written to log/15/server.response 07:35:04.787209 special request received, no persistency 07:35:04.787218 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 338 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind338 ==93408== ==93408== Process terminating with default action of signal 4 (SIGILL) ==93408== Illegal opcode at address 0x4003082 ==93408== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93408== by 0x4003082: main (tool_main.c:234) === End of file valgrind338 test 0339...[Check if --etag-save saved correct etag to a file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind339 ../src/curl -q --output log/12/curl339.out --include --trace-ascii log/12/trace339 --trace-config all --trace-time http://127.0.0.1:37285/339 --etag-save log/12/etag339 > log/12/stdout339 2> log/12/stderr339 339: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 339 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind340 ../src/curl -q --output log/17/curl340.out --include --trace-ascii log/17/trace340 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:39713/%00first/second/third/340 > log/17/stdout340 2> log/17/stderr340 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind336 ../src/curl -q --output log/5/curl336.out --include --trace-ascii log/5/trace336 --trace-config all --trace-time ftp://127.0.0.1:42261/336 --range 3-6 > log/5/stdout336 2> log/5/stderr336 --num-callers=16 --log-file=log/12/valgrind339 ../src/curl -q --output log/12/curl339.out --include --trace-ascii log/12/trace339 --trace-config all --trace-time http://127.0.0.1:37285/339 --etag-save log/12/etag339 > log/12/stdout339 2> log/12/stderr339 === End of file commands.log === Start of file http_server.log 07:35:04.797459 ====> Client connect 07:35:04.797486 accept_connection 3 returned 4 07:35:04.797498 accept_connection 3 returned 0 07:35:04.797508 Read 93 bytes 07:35:04.797516 Process 93 bytes request 07:35:04.797525 Got request: GET /verifiedserver HTTP/1.1 07:35:04.797532 Are-we-friendly question received 07:35:04.797549 Wrote request (93 bytes) input to log/12/server.input 07:35:04.797561 Identifying ourselves as friends 07:35:04.797599 Response sent (56 bytes) and written to log/12/server.response 07:35:04.797606 special request received, no persistency 07:35:04.797613 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 339 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind339 ==93425== ==93425== Process terminating with default action of signal 4 (SIGILL) ==93425== Illegal opcode at address 0x4003082 ==93425== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93425== by 0x4003082: main (tool_main.c:234) === End of file valgrind339 test 0340...[FTP using %00 in path with singlecwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind340 ../src/curl -q --output log/17/curl340.out --include --trace-ascii log/17/trace340 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:39713/%00first/second/third/340 > log/17/stdout340 2> log/17/stderr340 340: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 340 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind340 ../src/curl -q --output log/17/curl340.out --include --trace-ascii log/17/trace340 --trace-config all --trace-time --ftp-method singlecwd ftp://127.0.0.1:39713/%00first/second/third/340 > log/17/stdout340 2> log/17/stderr340 === End of file commands.log === Start of file ftp_server.log 07:35:04.953366 ====> Client connect 07:35:04.953541 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.954934 < "USER anonymous" 07:35:04.954981 > "331 We are happy you popped in![CR][LF]" 07:35:04.955159 < "PASS ftp@example.com" 07:35:04.955182 > "230 Welcome you silly person[CR][LF]" 07:35:04.955307 < "PWD" 07:35:04.955335 > "257 "/" is current directory[CR][LF]" 07:35:04.955463 < "EPSV" 07:35:04.955484 ====> Passive DATA channel requested by client 07:35:04.955495 DATA sockfilt for passive data channel starting... 07:35:04.957307 DATA sockfilt for passive data channel started (pid 93411) 07:35:04.957430 DATA sockfilt for passive data channel listens on port 40227 07:35:04.957473 > "229 Entering Passive Mode (|||40227|)[LF]" 07:35:04.957489 Client has been notified that DATA conn will be accepted on port 40227 07:35:04.957662 Client connects to port 40227 07:35:04.957683 ====> Client established passive DATA connection on port 40227 07:35:04.957752 < "TYPE I" 07:35:04.957781 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.957899 < "SIZE verifiedserver" 07:35:04.957930 > "213 17[CR][LF]" 07:35:04.958041 < "RETR verifiedserver" 07:35:04.958072 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.958140 =====> Closing passive DATA connection... 07:35:04.958153 Server disconnects passive DATA connection 07:35:04.958216 Server disconnected passive DATA connection 07:35:04.958234 DATA sockfilt for passive data channel quits (pid 93411) 07:35:04.958444 DATA sockfilt for passive data channel quit (pid 93411) 07:35:04.958466 =====> Closed passive DATA connection 07:35:04.958491 > "226 File transfer complete[CR][LF]" 07:35:05.000669 < "QUIT" 07:35:05.000723 > "221 bye bye baby[CR][LF]" 07:35:05.000944 MAIN sockfilt said DISC 07:35:05.000992 ====> Client disconnected 07:35:05.001076 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:04.798988 ====> Client connect 07:35:04.799508 Received DATA (on stdin) 07:35:04.799524 > 160 bytes data, server => client 07:35:04.799536 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:04.799547 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:04.799557 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:04.799614 < 16 bytes data, client => server 07:35:04.799625 'USER anonymous\r\n' 07:35:04.800979 Received DATA (on stdin) 07:35:04.801000 > 33 bytes data, server => client 07:35:04.801011 '331 We are happy you popped in!\r\n' 07:35:04.801072 < 22 bytes data, client => server 07:35:04.801082 'PASS ftp@example.com\r\n' 07:35:04.801170 Received DATA (on stdin) 07:35:04.801181 > 30 bytes data, server => client 07:35:04.801192 '230 Welcome you silly person\r\n' 07:35:04.801237 < 5 bytes data, client => server 07:35:04.801251 'PWD\r\n' 07:35:04.801323 Received DATA (on stdin) 07:35:04.801337 > 30 bytes data, server => client 07:35:04.801348 '257 "/" is current directory\r\n' 07:35:04.801400 < 6 bytes data, client => server 07:35:04.801413 'EPSV\r\n' 07:35:04.803482 Received DATA (on stdin) 07:35:04.803495 > 38 bytes data, server => client 07:35:04.803506 '229 Entering Passive Mode (|||40227|)\n' 07:35:04.803604 < 8 bytes data, client => server 07:35:04.803614 'TYPE I\r\n' 07:35:04.803770 Received DATA (on stdin) 07:35:04.803781 > 33 bytes data, server => client 07:35:04.803791 '200 I modify TYPE as you wanted\r\n' 07:35:04.803833 < 21 bytes data, client => server 07:35:04.803846 'SIZE verifiedserver\r\n' 07:35:04.803919 Received DATA (on stdin) 07:35:04.803930 > 8 bytes data, server => client 07:35:04.803939 '213 17\r\n' 07:35:04.803977 < 21 bytes data, client => server 07:35:04.803987 'RETR verifiedserver\r\n' 07:35:04.804117 Received DATA (on stdin) 07:35:04.804127 > 29 bytes data, server => client 07:35:04.804137 '150 Binary junk (17 bytes).\r\n' 07:35:04.804480 Received DATA (on stdin) 07:35:04.804492 > 28 bytes data, server => client 07:35:04.804503 '226 File transfer complete\r\n' 07:35:04.846476 < 6 bytes data, client => server 07:35:04.846505 'QUIT\r\n' 07:35:04.846718 Received DATA (on stdin) 07:35:04.846730 > 18 bytes data, server => client 07:35:04.846740 '221 bye bye baby\r\n' 07:35:04.846861 ====> Client disconnect 07:35:04.847067 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.803122 Running IPv4 version 07:35:04.803175 Listening on port 40227 07:35:04.803214 Wrote pid 93411 to log/17/server/ftp_sockdata.pid 07:35:04.803234 Received PING (on stdin) 07:35:04.803334 Received PORT (on stdin) 07:35:04.803604 ====> Client connect 07:35:04.804066 Received DATA (on stdin) 07:35:04.804077 > 17 bytes data, server => client 07:35:04.804087 'WE ROOLZ: 79834\r\n' 07:35:04.804145 Received DISC (on stdin) 07:35:04.804158 ====> Client forcibly disconnected 07:35:04.804231 ReceiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind337 ../src/curl -q --output log/8/curl337.out --include --trace-ascii log/8/trace337 --trace-config all --trace-time ftp://127.0.0.1:44159/337 --range 3-6 > log/8/stdout337 2> log/8/stderr337 ved QUIT (on stdin) 07:35:04.804241 quits 07:35:04.804295 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 340 === End of file server.cmd === Start of file valgrind340 ==93547== ==93547== Process terminating with default action of signal 4 (SIGILL) ==93547== Illegal opcode at address 0x4003082 ==93547== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93547== by 0x4003082: main (tool_main.c:234) === End of file valgrind340 test 0336...[FTP range download when SIZE doesn't work] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind336 ../src/curl -q --output log/5/curl336.out --include --trace-ascii log/5/trace336 --trace-config all --trace-time ftp://127.0.0.1:42261/336 --range 3-6 > log/5/stdout336 2> log/5/stderr336 336: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 336 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind336 ../src/curl -q --output log/5/curl336.out --include --trace-ascii log/5/trace336 --trace-config all --trace-time ftp://127.0.0.1:42261/336 --range 3-6 > log/5/stdout336 2> log/5/stderr336 === End of file commands.log === Start of file ftp_server.log 07:35:04.930689 ====> Client connect 07:35:04.930831 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.931080 < "USER anonymous" 07:35:04.931112 > "331 We are happy you popped in![CR][LF]" 07:35:04.931279 < "PASS ftp@example.com" 07:35:04.931303 > "230 Welcome you silly person[CR][LF]" 07:35:04.931437 < "PWD" 07:35:04.931463 > "257 "/" is current directory[CR][LF]" 07:35:04.931601 < "EPSV" 07:35:04.931622 ====> Passive DATA channel requested by client 07:35:04.931634 DATA sockfilt for passive data channel starting... 07:35:04.933241 DATA sockfilt for passive data channel started (pid 93356) 07:35:04.933405 DATA sockfilt for passive data channel listens on port 35983 07:35:04.933451 > "229 Entering Passive Mode (|||35983|)[LF]" 07:35:04.933469 Client has been notified that DATA conn will be accepted on port 35983 07:35:04.933974 Client connects to port 35983 07:35:04.934022 ====> Client established passive DATA connection on port 35983 07:35:04.934114 < "TYPE I" 07:35:04.934150 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.934305 < "SIZE verifiedserver" 07:35:04.934350 > "213 17[CR][LF]" 07:35:04.934527 < "RETR verifiedserver" 07:35:04.934557 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.934624 =====> Closing passive DATA connection... 07:35:04.934638 Server disconnects passive DATA connection 07:35:04.934878 Server disconnected passive DATA connection 07:35:04.934903 DATA sockfilt for passive data channel quits (pid 93356) 07:35:04.935141 DATA sockfilt for passive data channel quit (pid 93356) 07:35:04.935163 =====> Closed passive DATA connection 07:35:04.935184 > "226 File transfer complete[CR][LF]" 07:35:04.980576 < "QUIT" 07:35:04.980651 > "221 bye bye baby[CR][LF]" 07:35:04.981074 MAIN sockfilt said DISC 07:35:04.981103 ====> Client disconnected 07:35:04.981198 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:04.776572 ====> Client connect 07:35:04.776830 Received DATA (on stdin) 07:35:04.776844 > 160 bytes data, server => client 07:35:04.776856 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:04.776866 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:04.776876 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:04.776941 < 16 bytes data, client => server 07:35:04.776952 'USER anonymous\r\n' 07:35:04.777104 Received DATA (on stdin) 07:35:04.777116 > 33 bytes data, server => client 07:35:04.777126 '331 We are happy you popped in!\r\n' 07:35:04.777175 < 22 bytes data, client => server 07:35:04.777185 'PASS ftp@example.com\r\n' 07:35:04.777291 Received DATA (on stdin) 07:35:04.777303 > 30 bytes data, server => client 07:35:04.777313 '230 Welcome you silly person\r\n' 07:35:04.777355 < 5 bytes data, client => server 07:35:04.777365 'PWD\r\n' 07:35:04.777450 Received DATA (on stdin) 07:35:04.777461 > 30 bytes data, server => client 07:35:04.777471 '257 "/" is current directory\r\n' 07:35:04.777519 < 6 bytes data, client => server 07:35:04.777529 'EPSV\r\n' 07:35:04.779463 Received DATA (on stdin) 07:35:04.779477 > 38 bytes data, server => client 07:35:04.779488 '229 Entering Passive Mode (|||35983|)\n' 07:35:04.779890 < 8 bytes data, client => server 07:35:04.779906 'TYPE I\r\n' 07:35:04.780140 Received DATA (on stdin) 07:35:04.780151 > 33 bytes data, server => client 07:35:04.780161 '200 I modify TYPE as you wanted\r\n' 07:35:04.780209 < 21 bytes data, client => server 07:35:04.780220 'SIZE verifiedserver\r\n' 07:35:04.780343 Received DATA (on stdin) 07:35:04.780359 > 8 bytes data, server => client 07:35:04.780369 '213 17\r\n' 07:35:04.780441 < 21 bytes data, client => server 07:35:04.780452 'RETR verifiedserver\r\n' 07:35:04.780626 Received DATA (on stdin) 07:35:04.780637 > 29 bytes data, server => client 07:35:04.780647 '150 Binary junk (17 bytes).\r\n' 07:35:04.781172 Received DATA (on stdin) 07:35:04.781185 > 28 bytes data, server => client 07:35:04.781195 '226 File transfer complete\r\n' 07:35:04.826330 < 6 bytes data, client => server 07:35:04.826367 'QUIT\r\n' 07:35:04.826645 Received DATA (on stdin) 07:35:04.826658 > 18 bytes data, server => client 07:35:04.826668 '221 bye bye baby\r\n' 07:35:04.827010 ====> Client disconnect 07:35:04.827193 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.779063 Running IPv4 version 07:35:04.779124 Listening on port 35983 07:35:04.779157 Wrote pid 93356 to log/5/server/ftp_sockdata.pid 07:35:04.779174 Received PING (on stdin) 07:35:04.779255 Received PORT (on stdin) 07:35:04.779832 ====> Client connect 07:35:04.780709 Received DATA (on stdin) 07:35:04.780725 > 17 bytes data, server => client 07:35:04.780735 'WE ROOLZ: 79836\r\n' 07:35:04.780759 Received DISC (on stdin) 07:35:04.780770 ====> Client forcibly disconnected 07:35:04.780917 Received QUIT (on stdin) 07:35:04.780928 quits 07:35:04.780988 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command REPLY SIZE 500 no such command Testnum 336 === End of file server.cmd === Start of file valgrind336 ==93496== ==93496== Process terminating with default action of signal 4 (SIGILL) ==93496== Illegal opcode at address 0x4003082 ==93496== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93496== by 0x4003082: main (tool_main.c:234) === End of file valgrind336 test 0337...[FTP range download with SIZE returning extra crap] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind337 ../src/curl -q --output log/8/curl337.out --include --trace-ascii log/8/trace337 --trace-config all --trace-time ftp://127.0.0.1:44159/337 --range 3-6 > log/8/stdout337 2> log/8/stderr337 337: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 337 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind337 ../src/curl -q --output log/8/curl337.out --include --trace-ascii log/8/trace337 --trace-config all --trace-time ftp://127.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind351 ../src/curl -q --output log/20/curl351.out --include --trace-ascii log/20/trace351 --trace-config all --trace-time ftp://127.0.0.1:45671// --ftp-method nocwd > log/20/stdout351 2> log/20/stderr351 0.0.1:44159/337 --range 3-6 > log/8/stdout337 2> log/8/stderr337 === End of file commands.log === Start of file ftp_server.log 07:35:04.937910 ====> Client connect 07:35:04.938047 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:04.938290 < "USER anonymous" 07:35:04.938322 > "331 We are happy you popped in![CR][LF]" 07:35:04.938494 < "PASS ftp@example.com" 07:35:04.938520 > "230 Welcome you silly person[CR][LF]" 07:35:04.938709 < "PWD" 07:35:04.938757 > "257 "/" is current directory[CR][LF]" 07:35:04.938901 < "EPSV" 07:35:04.938923 ====> Passive DATA channel requested by client 07:35:04.938935 DATA sockfilt for passive data channel starting... 07:35:04.940832 DATA sockfilt for passive data channel started (pid 93384) 07:35:04.940930 DATA sockfilt for passive data channel listens on port 35253 07:35:04.940964 > "229 Entering Passive Mode (|||35253|)[LF]" 07:35:04.940980 Client has been notified that DATA conn will be accepted on port 35253 07:35:04.941160 Client connects to port 35253 07:35:04.941185 ====> Client established passive DATA connection on port 35253 07:35:04.941337 < "TYPE I" 07:35:04.941380 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:04.941546 < "SIZE verifiedserver" 07:35:04.941579 > "213 17[CR][LF]" 07:35:04.941716 < "RETR verifiedserver" 07:35:04.941746 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:04.941814 =====> Closing passive DATA connection... 07:35:04.941829 Server disconnects passive DATA connection 07:35:04.942213 Server disconnected passive DATA connection 07:35:04.942246 DATA sockfilt for passive data channel quits (pid 93384) 07:35:04.942471 DATA sockfilt for passive data channel quit (pid 93384) 07:35:04.942492 =====> Closed passive DATA connection 07:35:04.942521 > "226 File transfer complete[CR][LF]" 07:35:04.983672 < "QUIT" 07:35:04.983724 > "221 bye bye baby[CR][LF]" 07:35:04.983835 MAIN sockfilt said DISC 07:35:04.983855 ====> Client disconnected 07:35:04.983940 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.783796 ====> Client connect 07:35:05.784050 Received DATA (on stdin) 07:35:05.784063 > 160 bytes data, server => client 07:35:05.784075 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.784086 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.784096 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.784155 < 16 bytes data, client => server 07:35:05.784167 'USER anonymous\r\n' 07:35:05.784313 Received DATA (on stdin) 07:35:05.784325 > 33 bytes data, server => client 07:35:05.784336 '331 We are happy you popped in!\r\n' 07:35:05.784422 < 22 bytes data, client => server 07:35:05.784444 'PASS ftp@example.com\r\n' 07:35:05.784511 Received DATA (on stdin) 07:35:05.784525 > 30 bytes data, server => client 07:35:05.784536 '230 Welcome you silly person\r\n' 07:35:05.784591 < 5 bytes data, client => server 07:35:05.784603 'PWD\r\n' 07:35:05.784750 Received DATA (on stdin) 07:35:05.784764 > 30 bytes data, server => client 07:35:05.784774 '257 "/" is current directory\r\n' 07:35:05.784832 < 6 bytes data, client => server 07:35:05.784847 'EPSV\r\n' 07:35:05.786977 Received DATA (on stdin) 07:35:05.786991 > 38 bytes data, server => client 07:35:05.787002 '229 Entering Passive Mode (|||35253|)\n' 07:35:05.787199 < 8 bytes data, client => server 07:35:05.787222 'TYPE I\r\n' 07:35:05.787373 Received DATA (on stdin) 07:35:05.787385 > 33 bytes data, server => client 07:35:05.787397 '200 I modify TYPE as you wanted\r\n' 07:35:05.787457 < 21 bytes data, client => server 07:35:05.787469 'SIZE verifiedserver\r\n' 07:35:05.787568 Received DATA (on stdin) 07:35:05.787579 > 8 bytes data, server => client 07:35:05.787589 '213 17\r\n' 07:35:05.787631 < 21 bytes data, client => server 07:35:05.787642 'RETR verifiedserver\r\n' 07:35:05.787819 Received DATA (on stdin) 07:35:05.787831 > 29 bytes data, server => client 07:35:05.787841 '150 Binary junk (17 bytes).\r\n' 07:35:05.788514 Received DATA (on stdin) 07:35:05.788530 > 28 bytes data, server => client 07:35:05.788541 '226 File transfer complete\r\n' 07:35:05.829477 < 6 bytes data, client => server 07:35:05.829509 'QUIT\r\n' 07:35:05.829718 Received DATA (on stdin) 07:35:05.829729 > 18 bytes data, server => client 07:35:05.829739 '221 bye bye baby\r\n' 07:35:05.829786 ====> Client disconnect 07:35:05.829928 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:04.786537 Running IPv4 version 07:35:04.786595 Listening on port 35253 07:35:04.786631 Wrote pid 93384 to log/8/server/ftp_sockdata.pid 07:35:04.786768 Received PING (on stdin) 07:35:04.786847 Received PORT (on stdin) 07:35:04.787103 ====> Client connect 07:35:04.788023 Received DATA (on stdin) 07:35:04.788048 > 17 bytes data, server => client 07:35:04.788059 'WE ROOLZ: 81995\r\n' 07:35:04.788089 Received DISC (on stdin) 07:35:04.788102 ====> Client forcibly disconnected 07:35:04.788249 Received QUIT (on stdin) 07:35:04.788260 quits 07:35:04.788312 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command REPLY SIZE 213 file: 213, Size =51 Testnum 337 === End of file server.cmd === Start of file valgrind337 ==93504== ==93504== Process terminating with default action of signal 4 (SIGILL) ==93504== Illegal opcode at address 0x4003082 ==93504== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93504== by 0x4003082: main (tool_main.c:234) === End of file valgrind337 test 0351...[FTP root dir list nocwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind351 ../src/curl -q --output log/20/curl351.out --include --trace-ascii log/20/trace351 --trace-config all --trace-time ftp://127.0.0.1:45671// --ftp-method nocwd > log/20/stdout351 2> log/20/stderr351 351: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 351 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind351 ../src/curl -q --output log/20/curl351.out --include --trace-ascii log/20/trace351 --trace-config all --trace-time ftp://127.0.0.1:45671// --ftp-method nocwd > log/20/stdout351 2> log/20/stderr351 === End of file commands.log === Start of file ftp_server.log 07:35:05.241456 ====> Client connect 07:35:05.241591 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.241842 < "USER anonymous" 07:35:05.241882 > "331 We are happy you popped in![CR][LF]" 07:35:05.242035 < "PASS ftp@example.com" 07:35:05.242058 > "230 Welcome you silly person[CR][LF]" 07:35:05.242192 < "PWD" 07:35:05.242221 > "257 "/" is current directory[CR][LF]" 07:35:05.242359 < "EPSV" 07:35:05.242383 ====> Passive DATA channel requested by client 07:35:05.242395 DATA sockfilt for passive data channel starting... 07:35:05.244630 DATA sockfilt for passive data channel started (pid 94122) 07:35:05.244746 DATA sockfilt for passive data channel listens on port 45015 07:35:05.244785 > "229 Entering Passive Mode (|||45015|)[LF]" 07:35:05.244803 Client has been notified that DATA conn will be accepted on port 45015 07:35:05.245033 Client connects to port 45015 07:35:05.245065 ====> Client established passive DATA connection on port 45015 07:35:05.245142 < "TYPE I" 07:35:05.245171 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.245623 < "SIZE verifiedserver" 07:35:05.245655 > "213 17[CR][LF]" 07:35:05.245784 < "RETR verifiedserver" 07:35:0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind355 ../src/curl -q --output log/6/curl355.out --include --trace-ascii log/6/trace355 --trace-config all --trace-time http://127.0.0.1:35775/355 --alt-svc "" > log/6/stdout355 2> log/6/stderr355 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind350 ../src/curl -q --output log/2/curl350.out --include --trace-ascii log/2/trace350 --trace-config all --trace-time ftp://127.0.0.1:42979// --ftp-method multicwd > log/2/stdout350 2> log/2/stderr350 5.245814 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.245883 =====> Closing passive DATA connection... 07:35:05.245897 Server disconnects passive DATA connection 07:35:05.246050 Server disconnected passive DATA connection 07:35:05.246101 DATA sockfilt for passive data channel quits (pid 94122) 07:35:05.246455 DATA sockfilt for passive data channel quit (pid 94122) 07:35:05.246477 =====> Closed passive DATA connection 07:35:05.246512 > "226 File transfer complete[CR][LF]" 07:35:05.287008 < "QUIT" 07:35:05.287062 > "221 bye bye baby[CR][LF]" 07:35:05.287191 MAIN sockfilt said DISC 07:35:05.287216 ====> Client disconnected 07:35:05.287294 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.087347 ====> Client connect 07:35:05.087592 Received DATA (on stdin) 07:35:05.087606 > 160 bytes data, server => client 07:35:05.087618 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.087629 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.087638 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.087702 < 16 bytes data, client => server 07:35:05.087713 'USER anonymous\r\n' 07:35:05.087874 Received DATA (on stdin) 07:35:05.087886 > 33 bytes data, server => client 07:35:05.087897 '331 We are happy you popped in!\r\n' 07:35:05.087944 < 22 bytes data, client => server 07:35:05.087956 'PASS ftp@example.com\r\n' 07:35:05.088046 Received DATA (on stdin) 07:35:05.088057 > 30 bytes data, server => client 07:35:05.088066 '230 Welcome you silly person\r\n' 07:35:05.088107 < 5 bytes data, client => server 07:35:05.088118 'PWD\r\n' 07:35:05.088209 Received DATA (on stdin) 07:35:05.088219 > 30 bytes data, server => client 07:35:05.088229 '257 "/" is current directory\r\n' 07:35:05.088276 < 6 bytes data, client => server 07:35:05.088287 'EPSV\r\n' 07:35:05.090801 Received DATA (on stdin) 07:35:05.090819 > 38 bytes data, server => client 07:35:05.090830 '229 Entering Passive Mode (|||45015|)\n' 07:35:05.090969 < 8 bytes data, client => server 07:35:05.090985 'TYPE I\r\n' 07:35:05.091446 Received DATA (on stdin) 07:35:05.091463 > 33 bytes data, server => client 07:35:05.091477 '200 I modify TYPE as you wanted\r\n' 07:35:05.091529 < 21 bytes data, client => server 07:35:05.091540 'SIZE verifiedserver\r\n' 07:35:05.091643 Received DATA (on stdin) 07:35:05.091654 > 8 bytes data, server => client 07:35:05.091663 '213 17\r\n' 07:35:05.091702 < 21 bytes data, client => server 07:35:05.091712 'RETR verifiedserver\r\n' 07:35:05.091887 Received DATA (on stdin) 07:35:05.091897 > 29 bytes data, server => client 07:35:05.091907 '150 Binary junk (17 bytes).\r\n' 07:35:05.092512 Received DATA (on stdin) 07:35:05.092529 > 28 bytes data, server => client 07:35:05.092540 '226 File transfer complete\r\n' 07:35:05.132777 < 6 bytes data, client => server 07:35:05.132802 'QUIT\r\n' 07:35:05.133060 Received DATA (on stdin) 07:35:05.133078 > 18 bytes data, server => client 07:35:05.133088 '221 bye bye baby\r\n' 07:35:05.133137 ====> Client disconnect 07:35:05.133286 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.090323 Running IPv4 version 07:35:05.090386 Listening on port 45015 07:35:05.090426 Wrote pid 94122 to log/20/server/ftp_sockdata.pid 07:35:05.090565 Received PING (on stdin) 07:35:05.090653 Received PORT (on stdin) 07:35:05.090974 ====> Client connect 07:35:05.091934 Received DATA (on stdin) 07:35:05.091946 > 17 bytes data, server => client 07:35:05.091956 'WE ROOLZ: 88588\r\n' 07:35:05.091978 Received DISC (on stdin) 07:35:05.091989 ====> Client forcibly disconnected 07:35:05.092109 Received QUIT (on stdin) 07:35:05.092127 quits 07:35:05.092194 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 351 === End of file server.cmd === Start of file valgrind351 ==94288== ==94288== Process terminating with default action of signal 4 (SIGILL) ==94288== Illegal opcode at address 0x4003082 ==94288== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94288== by 0x4003082: main (tool_main.c:234) === End of file valgrind351 test 0355...[load Alt-Svc from file and use] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind355 ../src/curl -q --output log/6/curl355.out --include --trace-ascii log/6/trace355 --trace-config all --trace-time http://127.0.0.1:35775/355 --alt-svc "" > log/6/stdout355 2> log/6/stderr355 355: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 355 === Start of file altsvc-355 h1 example.com 80 h1 127.0.0.1 35775 "20290222 22:19:28" 0 0 === End of file altsvc-355 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind355 ../src/curl -q --output log/6/curl355.out --include --trace-ascii log/6/trace355 --trace-config all --trace-time http://127.0.0.1:35775/355 --alt-svc "" > log/6/stdout355 2> log/6/stderr355 === End of file commands.log === Start of file http_server.log 07:35:05.135717 ====> Client connect 07:35:05.135749 accept_connection 3 returned 4 07:35:05.135764 accept_connection 3 returned 0 07:35:05.135777 Read 93 bytes 07:35:05.135786 Process 93 bytes request 07:35:05.135798 Got request: GET /verifiedserver HTTP/1.1 07:35:05.135808 Are-we-friendly question received 07:35:05.135829 Wrote request (93 bytes) input to log/6/server.input 07:35:05.135845 Identifying ourselves as friends 07:35:05.135893 Response sent (56 bytes) and written to log/6/server.response 07:35:05.135902 special request received, no persistency 07:35:05.135911 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 355 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind355 ==94289== ==94289== Process terminating with default action of signal 4 (SIGILL) ==94289== Illegal opcode at address 0x4003082 ==94289== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94289== by 0x4003082: main (tool_main.c:234) === End of file valgrind355 test 0350...[FTP root dir list multicwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind350 ../src/curl -q --output log/2/curl350.out --include --trace-ascii log/2/trace350 --trace-config all --trace-time ftp://127.0.0.1:42979// --ftp-method multicwd > log/2/stdout350 2> log/2/stderr350 350: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 350 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind350 ../src/curl -q --output log/2/curl350.out --include --trace-ascii log/2/trace350 --trace-config all --trace-time ftp://127.0.0.1:42979// --ftp-method multicwd > log/2/stdout350 2> log/2/stderr350 === End of file commands.log === Start of file ftp_server.log 07:35:05.239337 ====> ClieCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind352 ../src/curl -q --output log/18/curl352.out --include --trace-ascii log/18/trace352 --trace-config all --trace-time ftp://127.0.0.1:33107// --ftp-method singlecwd > log/18/stdout352 2> log/18/stderr352 nt connect 07:35:05.239476 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.239786 < "USER anonymous" 07:35:05.239820 > "331 We are happy you popped in![CR][LF]" 07:35:05.239961 < "PASS ftp@example.com" 07:35:05.239989 > "230 Welcome you silly person[CR][LF]" 07:35:05.240118 < "PWD" 07:35:05.240146 > "257 "/" is current directory[CR][LF]" 07:35:05.240348 < "EPSV" 07:35:05.240386 ====> Passive DATA channel requested by client 07:35:05.240400 DATA sockfilt for passive data channel starting... 07:35:05.242089 DATA sockfilt for passive data channel started (pid 94111) 07:35:05.242214 DATA sockfilt for passive data channel listens on port 40363 07:35:05.242255 > "229 Entering Passive Mode (|||40363|)[LF]" 07:35:05.242273 Client has been notified that DATA conn will be accepted on port 40363 07:35:05.242500 Client connects to port 40363 07:35:05.242518 ====> Client established passive DATA connection on port 40363 07:35:05.242600 < "TYPE I" 07:35:05.242631 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.242786 < "SIZE verifiedserver" 07:35:05.242826 > "213 17[CR][LF]" 07:35:05.242966 < "RETR verifiedserver" 07:35:05.243006 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.243101 =====> Closing passive DATA connection... 07:35:05.243118 Server disconnects passive DATA connection 07:35:05.243239 Server disconnected passive DATA connection 07:35:05.243266 DATA sockfilt for passive data channel quits (pid 94111) 07:35:05.243514 DATA sockfilt for passive data channel quit (pid 94111) 07:35:05.243539 =====> Closed passive DATA connection 07:35:05.243573 > "226 File transfer complete[CR][LF]" 07:35:05.290517 < "QUIT" 07:35:05.290565 > "221 bye bye baby[CR][LF]" 07:35:05.291123 MAIN sockfilt said DISC 07:35:05.291164 ====> Client disconnected 07:35:05.291232 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.085215 ====> Client connect 07:35:05.085477 Received DATA (on stdin) 07:35:05.085491 > 160 bytes data, server => client 07:35:05.085503 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.085514 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.085524 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.085642 < 16 bytes data, client => server 07:35:05.085655 'USER anonymous\r\n' 07:35:05.085811 Received DATA (on stdin) 07:35:05.085822 > 33 bytes data, server => client 07:35:05.085833 '331 We are happy you popped in!\r\n' 07:35:05.085879 < 22 bytes data, client => server 07:35:05.085890 'PASS ftp@example.com\r\n' 07:35:05.085982 Received DATA (on stdin) 07:35:05.085993 > 30 bytes data, server => client 07:35:05.086003 '230 Welcome you silly person\r\n' 07:35:05.086054 < 5 bytes data, client => server 07:35:05.086065 'PWD\r\n' 07:35:05.086136 Received DATA (on stdin) 07:35:05.086149 > 30 bytes data, server => client 07:35:05.086159 '257 "/" is current directory\r\n' 07:35:05.086224 < 6 bytes data, client => server 07:35:05.086236 'EPSV\r\n' 07:35:05.088272 Received DATA (on stdin) 07:35:05.088295 > 38 bytes data, server => client 07:35:05.088307 '229 Entering Passive Mode (|||40363|)\n' 07:35:05.088467 < 8 bytes data, client => server 07:35:05.088480 'TYPE I\r\n' 07:35:05.088625 Received DATA (on stdin) 07:35:05.088639 > 33 bytes data, server => client 07:35:05.088650 '200 I modify TYPE as you wanted\r\n' 07:35:05.088703 < 21 bytes data, client => server 07:35:05.088714 'SIZE verifiedserver\r\n' 07:35:05.088818 Received DATA (on stdin) 07:35:05.088832 > 8 bytes data, server => client 07:35:05.088842 '213 17\r\n' 07:35:05.088891 < 21 bytes data, client => server 07:35:05.088902 'RETR verifiedserver\r\n' 07:35:05.089174 Received DATA (on stdin) 07:35:05.089193 > 29 bytes data, server => client 07:35:05.089204 '150 Binary junk (17 bytes).\r\n' 07:35:05.089567 Received DATA (on stdin) 07:35:05.089580 > 28 bytes data, server => client 07:35:05.089591 '226 File transfer complete\r\n' 07:35:05.136352 < 6 bytes data, client => server 07:35:05.136376 'QUIT\r\n' 07:35:05.136560 Received DATA (on stdin) 07:35:05.136572 > 18 bytes data, server => client 07:35:05.136582 '221 bye bye baby\r\n' 07:35:05.137051 ====> Client disconnect 07:35:05.137221 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.087788 Running IPv4 version 07:35:05.087858 Listening on port 40363 07:35:05.087991 Wrote pid 94111 to log/2/server/ftp_sockdata.pid 07:35:05.088013 Received PING (on stdin) 07:35:05.088117 Received PORT (on stdin) 07:35:05.088440 ====> Client connect 07:35:05.089111 Received DATA (on stdin) 07:35:05.089123 > 17 bytes data, server => client 07:35:05.089133 'WE ROOLZ: 79845\r\n' 07:35:05.089162 Received DISC (on stdin) 07:35:05.089175 ====> Client forcibly disconnected 07:35:05.089265 Received QUIT (on stdin) 07:35:05.089277 quits 07:35:05.089357 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 350 === End of file server.cmd === Start of file valgrind350 ==94297== ==94297== Process terminating with default action of signal 4 (SIGILL) ==94297== Illegal opcode at address 0x4003082 ==94297== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94297== by 0x4003082: main (tool_main.c:234) === End of file valgrind350 test 0352...[FTP root dir list singlecwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind352 ../src/curl -q --output log/18/curl352.out --include --trace-ascii log/18/trace352 --trace-config all --trace-time ftp://127.0.0.1:33107// --ftp-method singlecwd > log/18/stdout352 2> log/18/stderr352 352: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 352 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind352 ../src/curl -q --output log/18/curl352.out --include --trace-ascii log/18/trace352 --trace-config all --trace-time ftp://127.0.0.1:33107// --ftp-method singlecwd > log/18/stdout352 2> log/18/stderr352 === End of file commands.log === Start of file ftp_server.log 07:35:05.255973 ====> Client connect 07:35:05.256142 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.256560 < "USER anonymous" 07:35:05.256619 > "331 We are happy you popped in![CR][LF]" 07:35:05.256811 < "PASS ftp@example.com" 07:35:05.256839 > "230 Welcome you silly person[CR][LF]" 07:35:05.257276 < "PWD" 07:35:05.257311 > "257 "/" is current directory[CR][LF]" 07:35:05.257644 < "EPSV" 07:35:05.257671 ====> Passive DATA channel requested by client 07:35:05.257684 DATA sockfilt for passive data channel starting... 07:35:05.260181 DATA sockfilt for passive data channel started (pid 94188) 07:35:05.260301 DATA sockfilt for passive data channel listens on port 46271 07:35:05.260345 > "229 Entering Passive Mode (|||46271|)[LF]" 07:35:05.260361 Client has been notified that DATA conn will be accepted on port 46271 07:35:05.262350 Client connects to port 46271 07:35:05.262410 ====> Client established passive DATA connection on port 46271 07:35:05.262516 < "TYPE I" 07:35:05.262559 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.262810 < "SIZE verifiedserver" 07:35:05.262866 > "213 17[CR][LF]" 07:35:05.263010 < "RETR verifiedserver" 07:35:05.263046 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.263125 =====> Closing passive DATA connection... 07:35:05.263141 Server disconnects passive DATA connection 07:35:05.263376 Server disconnected passiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind353 ../src/curl -q --output log/10/curl353.out --include --trace-ascii log/10/trace353 --trace-config all --trace-time ftp://127.0.0.1:39731/ --ftp-method singlecwd > log/10/stdout353 2> log/10/stderr353 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind354 ../src/curl -q --output log/23/curl354.out --include --trace-ascii log/23/trace354 --trace-config all --trace-time ftp://127.0.0.1:36145/354 > log/23/stdout354 2> log/23/stderr354 ve DATA connection 07:35:05.263403 DATA sockfilt for passive data channel quits (pid 94188) 07:35:05.263823 DATA sockfilt for passive data channel quit (pid 94188) 07:35:05.263866 =====> Closed passive DATA connection 07:35:05.263908 > "226 File transfer complete[CR][LF]" 07:35:05.307009 < "QUIT" 07:35:05.307057 > "221 bye bye baby[CR][LF]" 07:35:05.307347 MAIN sockfilt said DISC 07:35:05.307401 ====> Client disconnected 07:35:05.307468 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.101838 ====> Client connect 07:35:05.102115 Received DATA (on stdin) 07:35:05.102154 > 160 bytes data, server => client 07:35:05.102167 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.102179 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.102189 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.102314 < 16 bytes data, client => server 07:35:05.102328 'USER anonymous\r\n' 07:35:05.102625 Received DATA (on stdin) 07:35:05.102648 > 33 bytes data, server => client 07:35:05.102658 '331 We are happy you popped in!\r\n' 07:35:05.102710 < 22 bytes data, client => server 07:35:05.102722 'PASS ftp@example.com\r\n' 07:35:05.102830 Received DATA (on stdin) 07:35:05.102842 > 30 bytes data, server => client 07:35:05.102856 '230 Welcome you silly person\r\n' 07:35:05.103175 < 5 bytes data, client => server 07:35:05.103191 'PWD\r\n' 07:35:05.103319 Received DATA (on stdin) 07:35:05.103347 > 30 bytes data, server => client 07:35:05.103360 '257 "/" is current directory\r\n' 07:35:05.103534 < 6 bytes data, client => server 07:35:05.103556 'EPSV\r\n' 07:35:05.106362 Received DATA (on stdin) 07:35:05.106380 > 38 bytes data, server => client 07:35:05.106391 '229 Entering Passive Mode (|||46271|)\n' 07:35:05.108232 < 8 bytes data, client => server 07:35:05.108260 'TYPE I\r\n' 07:35:05.108552 Received DATA (on stdin) 07:35:05.108564 > 33 bytes data, server => client 07:35:05.108574 '200 I modify TYPE as you wanted\r\n' 07:35:05.108653 < 21 bytes data, client => server 07:35:05.108675 'SIZE verifiedserver\r\n' 07:35:05.108859 Received DATA (on stdin) 07:35:05.108870 > 8 bytes data, server => client 07:35:05.108880 '213 17\r\n' 07:35:05.108923 < 21 bytes data, client => server 07:35:05.108934 'RETR verifiedserver\r\n' 07:35:05.109133 Received DATA (on stdin) 07:35:05.109144 > 29 bytes data, server => client 07:35:05.109154 '150 Binary junk (17 bytes).\r\n' 07:35:05.109910 Received DATA (on stdin) 07:35:05.109928 > 28 bytes data, server => client 07:35:05.109938 '226 File transfer complete\r\n' 07:35:05.152823 < 6 bytes data, client => server 07:35:05.152849 'QUIT\r\n' 07:35:05.153050 Received DATA (on stdin) 07:35:05.153061 > 18 bytes data, server => client 07:35:05.153071 '221 bye bye baby\r\n' 07:35:05.153265 ====> Client disconnect 07:35:05.153458 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.105718 Running IPv4 version 07:35:05.105799 Listening on port 46271 07:35:05.105848 Wrote pid 94188 to log/18/server/ftp_sockdata.pid 07:35:05.106114 Received PING (on stdin) 07:35:05.106198 Received PORT (on stdin) 07:35:05.108000 ====> Client connect 07:35:05.109176 Received DATA (on stdin) 07:35:05.109195 > 17 bytes data, server => client 07:35:05.109206 'WE ROOLZ: 82311\r\n' 07:35:05.109238 Received DISC (on stdin) 07:35:05.109252 ====> Client forcibly disconnected 07:35:05.109402 Received QUIT (on stdin) 07:35:05.109414 quits 07:35:05.109549 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 352 === End of file server.cmd === Start of file valgrind352 ==94348== ==94348== Process terminating with default action of signal 4 (SIGILL) ==94348== Illegal opcode at address 0x4003082 ==94348== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94348== by 0x4003082: main (tool_main.c:234) === End of file valgrind352 test 0353...[FTP home dir list singlecwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind353 ../src/curl -q --output log/10/curl353.out --include --trace-ascii log/10/trace353 --trace-config all --trace-time ftp://127.0.0.1:39731/ --ftp-method singlecwd > log/10/stdout353 2> log/10/stderr353 353: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 353 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind353 ../src/curl -q --output log/10/curl353.out --include --trace-ascii log/10/trace353 --trace-config all --trace-time ftp://127.0.0.1:39731/ --ftp-method singlecwd > log/10/stdout353 2> log/10/stderr353 === End of file commands.log === Start of file ftp_server.log 07:35:05.272750 ====> Client connect 07:35:05.272931 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.273215 < "USER anonymous" 07:35:05.273253 > "331 We are happy you popped in![CR][LF]" 07:35:05.273546 < "PASS ftp@example.com" 07:35:05.273587 > "230 Welcome you silly person[CR][LF]" 07:35:05.273714 < "PWD" 07:35:05.273738 > "257 "/" is current directory[CR][LF]" 07:35:05.273858 < "EPSV" 07:35:05.273876 ====> Passive DATA channel requested by client 07:35:05.273886 DATA sockfilt for passive data channel starting... 07:35:05.276871 DATA sockfilt for passive data channel started (pid 94249) 07:35:05.276980 DATA sockfilt for passive data channel listens on port 45293 07:35:05.277020 > "229 Entering Passive Mode (|||45293|)[LF]" 07:35:05.277036 Client has been notified that DATA conn will be accepted on port 45293 07:35:05.277247 Client connects to port 45293 07:35:05.277278 ====> Client established passive DATA connection on port 45293 07:35:05.277333 < "TYPE I" 07:35:05.277357 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.277486 < "SIZE verifiedserver" 07:35:05.277524 > "213 17[CR][LF]" 07:35:05.277673 < "RETR verifiedserver" 07:35:05.277706 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.277784 =====> Closing passive DATA connection... 07:35:05.277798 Server disconnects passive DATA connection 07:35:05.277998 Server disconnected passive DATA connection 07:35:05.278022 DATA sockfilt for passive data channel quits (pid 94249) 07:35:05.278276 DATA sockfilt for passive data channel quit (pid 94249) 07:35:05.278296 =====> Closed passive DATA connection 07:35:05.278320 > "226 File transfer complete[CR][LF]" 07:35:05.320776 < "QUIT" 07:35:05.320826 > "221 bye bye baby[CR][LF]" 07:35:05.321407 MAIN sockfilt said DISC 07:35:05.321435 ====> Client disconnected 07:35:05.321499 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.118627 ====> Client connect 07:35:05.118932 Received DATA (on stdin) 07:35:05.118945 > 160 bytes data, server => client 07:35:05.118956 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.118966 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.118975 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.119042 < 16 bytes data, client => server 07:35:05.119053 'USER anonymous\r\n' 07:35:05.119245 Received DATA (on stdin) 07:35:05.119256 > 33 bytes data, server => client 07:35:05.119266 '331 We are happy you popped in!\r\n' 07:35:05.119376 < 22 bytes data, client => server 07:35:05.119402 'PASS ftp@example.com\r\n' 07:35:05.119576 Received DATA (on stdin) 07:35:05.119586 > 30 bytes data, server => client 07:35:05.119594 '230 Welcome you silly person\r\n' 07:35:05.119636 < 5 bytes data, client => server 07:35:05.119645 'PWD\r\n' 07:35:05.119722 Received DATA (on stdin) 07:35:05.119730 > 30 bytes data, server => client 07:35:05.119738 '257 "/" is current directory\r\n' 07:35:05.119787 < 6 bytes data, client => server 07:35:05.119795 'EPSV\r\n' 07:35:05.123011 Received DATA (on stdin) 07:35:05.123032 > 38 bytes data, server => client 07:35:05.123044 '229 Entering Passive Mode (|||45293|)\n' 07:35:05.123187 < 8 bytes data, client => server 07:35:05.123196 'TYPE I\r\n' 07:35:05.123343 Received DATA (on stdin) 07:35:05.123352 > 33 bytes data, server => client 07:35:05.123362 '200 I modify TYPE as you wanted\r\n' 07:35:05.123402 < 21 bytes data, client => server 07:35:05.123410 'SIZE verifiedserver\r\n' 07:35:05.123515 Received DATA (on stdin) 07:35:05.123528 > 8 bytes data, server => client 07:35:05.123537 '213 17\r\n' 07:35:05.123588 < 21 bytes data, client => server 07:35:05.123599 'RETR verifiedserver\r\n' 07:35:05.123786 Received DATA (on stdin) 07:35:05.123797 > 29 bytes data, server => client 07:35:05.123806 '150 Binary junk (17 bytes).\r\n' 07:35:05.124309 Received DATA (on stdin) 07:35:05.124320 > 28 bytes data, server => client 07:35:05.124330 '226 File transfer complete\r\n' 07:35:05.166609 < 6 bytes data, client => server 07:35:05.166633 'QUIT\r\n' 07:35:05.166819 Received DATA (on stdin) 07:35:05.166847 > 18 bytes data, server => client 07:35:05.166859 '221 bye bye baby\r\n' 07:35:05.167347 ====> Client disconnect 07:35:05.167493 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.122236 Running IPv4 version 07:35:05.122284 Listening on port 45293 07:35:05.122315 Wrote pid 94249 to log/10/server/ftp_sockdata.pid 07:35:05.122794 Received PING (on stdin) 07:35:05.122888 Received PORT (on stdin) 07:35:05.123157 ====> Client connect 07:35:05.123829 Received DATA (on stdin) 07:35:05.123842 > 17 bytes data, server => client 07:35:05.123852 'WE ROOLZ: 81708\r\n' 07:35:05.123873 Received DISC (on stdin) 07:35:05.123883 ====> Client forcibly disconnected 07:35:05.124017 Received QUIT (on stdin) 07:35:05.124027 quits 07:35:05.124094 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 353 === End of file server.cmd === Start of file valgrind353 ==94410== ==94410== Process terminating with default action of signal 4 (SIGILL) ==94410== Illegal opcode at address 0x4003082 ==94410== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94410== by 0x4003082: main (tool_main.c:234) === End of file valgrind353 test 0354...[FTP without password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind354 ../src/curl -q --output log/23/curl354.out --include --trace-ascii log/23/trace354 --trace-config all --trace-time ftp://127.0.0.1:36145/354 > log/23/stdout354 2> log/23/stderr354 354: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 354 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind354 ../src/curl -q --output log/23/curl354.out --include --trace-ascii log/23/trace354 --trace-config all --trace-time ftp://127.0.0.1:36145/354 > log/23/stdout354 2> log/23/stderr354 === End of file commands.log === Start of file ftp_server.log 07:35:05.286009 ====> Client connect 07:35:05.286214 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.286489 < "USER anonymous" 07:35:05.286514 > "331 We are happy you popped in![CR][LF]" 07:35:05.286630 < "PASS ftp@example.com" 07:35:05.286648 > "230 Welcome you silly person[CR][LF]" 07:35:05.286899 < "PWD" 07:35:05.286953 > "257 "/" is current directory[CR][LF]" 07:35:05.287110 < "EPSV" 07:35:05.287135 ====> Passive DATA channel requested by client 07:35:05.287148 DATA sockfilt for passive data channel starting... 07:35:05.288851 DATA sockfilt for passive data channel started (pid 94281) 07:35:05.288939 DATA sockfilt for passive data channel listens on port 40763 07:35:05.288971 > "229 Entering Passive Mode (|||40763|)[LF]" 07:35:05.288986 Client has been notified that DATA conn will be accepted on port 40763 07:35:05.289163 Client connects to port 40763 07:35:05.289182 ====> Client established passive DATA connection on port 40763 07:35:05.289239 < "TYPE I" 07:35:05.289265 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.289452 < "SIZE verifiedserver" 07:35:05.289491 > "213 17[CR][LF]" 07:35:05.289618 < "RETR verifiedserver" 07:35:05.289645 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.289713 =====> Closing passive DATA connection... 07:35:05.289727 Server disconnects passive DATA connection 07:35:05.289917 Server disconnected passive DATA connection 07:35:05.289939 DATA sockfilt for passive data channel quits (pid 94281) 07:35:05.290191 DATA sockfilt for passive data channel quit (pid 94281) 07:35:05.290212 =====> Closed passive DATA connection 07:35:05.290236 > "226 File transfer complete[CR][LF]" 07:35:05.330305 < "QUIT" 07:35:05.330363 > "221 bye bye baby[CR][LF]" 07:35:05.330503 MAIN sockfilt said DISC 07:35:05.330531 ====> Client disconnected 07:35:05.330601 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.131180 ====> Client connect 07:35:05.132220 Received DATA (on stdin) 07:35:05.132239 > 160 bytes data, server => client 07:35:05.132248 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.132256 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.132263 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.132357 < 16 bytes data, client => server 07:35:05.132366 'USER anonymous\r\n' 07:35:05.132503 Received DATA (on stdin) 07:35:05.132511 > 33 bytes data, server => client 07:35:05.132519 '331 We are happy you popped in!\r\n' 07:35:05.132556 < 22 bytes data, client => server 07:35:05.132563 'PASS ftp@example.com\r\n' 07:35:05.132631 Received DATA (on stdin) 07:35:05.132655 > 30 bytes data, server => client 07:35:05.132664 '230 Welcome you silly person\r\n' 07:35:05.132725 < 5 bytes data, client => server 07:35:05.132748 'PWD\r\n' 07:35:05.132948 Received DATA (on stdin) 07:35:05.132960 > 30 bytes data, server => client 07:35:05.132971 '257 "/" is current directory\r\n' 07:35:05.133034 < 6 bytes data, client => server 07:35:05.133051 'EPSV\r\n' 07:35:05.134948 Received DATA (on stdin) 07:35:05.134966 > 38 bytes data, server => client 07:35:05.134977 '229 Entering Passive Mode (|||40763|)\n' 07:35:05.135132 < 8 bytes data, client => server 07:35:05.135142 'TYPE I\r\n' 07:35:05.135255 Received DATA (on stdin) 07:35:05.135270 > 33 bytes data, server => client 07:35:05.135281 '200 I modify TYPE as you wanted\r\n' 07:35:05.135337 < 21 bytes data, client => server 07:35:05.135352 'SIZE verifiedserver\r\n' 07:35:05.135479 Received DATA (on stdin) 07:35:05.135489 > 8 bytes data, server => client 07:35:05.135498 '213 17\r\n' 07:35:05.135537 < 21 bytes data, client => server 07:35:05.135547 'RETR verifiedserver\r\n' 07:35:05.135719 Received DATA (on stdin) 07:35:05.135729 > 29 bytes data, server => client 07:35:05.135738 '150 Binary junk (17 bytes).\r\n' 07:35:05.136224 Received DATA (on stdin) 07:35:05.136235 > 28 bytes data, server => client 07:35:05.136245 '226 File transfer complete\r\n' 07:35:05.176112 < 6 bytes data, client => server 07:35:05.176139 'QUIT\r\n' 07:35:05.176359 Received DATA (on stdin) 07:35:05.176372 > 18 bytes data, server => client 07:35:05.176383 '221 bye bye baby\r\n' 07:35:05.176449 ====> Client disconnect 07:35:05.176594 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.134569 Running IPv4 version 07:35:05.134637 Listening on port 407CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind342 ../src/curl -q --output log/1/curl342.out --include --trace-ascii log/1/trace342 --trace-config all --trace-time http://127.0.0.1:38941/342 --etag-compare log/1/etag342 > log/1/stdout342 2> log/1/stderr342 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind341 ../src/curl -q --output log/7/curl341.out --include --trace-ascii log/7/trace341 --trace-config all --trace-time http://127.0.0.1:39077/341 --etag-compare log/7/etag341 > log/7/stdout341 2> log/7/stderr341 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind346 ../src/curl -q --output log/13/curl346.out --include --trace-ascii log/13/trace346 --trace-config all --trace-time -x http://127.0.0.1:33627/346 -U puser: -u suser: http://remote.example/346 > log/13/stdout346 2> log/13/stderr346 63 07:35:05.134676 Wrote pid 94281 to log/23/server/ftp_sockdata.pid 07:35:05.134789 Received PING (on stdin) 07:35:05.134860 Received PORT (on stdin) 07:35:05.135103 ====> Client connect 07:35:05.135759 Received DATA (on stdin) 07:35:05.135770 > 17 bytes data, server => client 07:35:05.135780 'WE ROOLZ: 81897\r\n' 07:35:05.135799 Received DISC (on stdin) 07:35:05.135809 ====> Client forcibly disconnected 07:35:05.135934 Received QUIT (on stdin) 07:35:05.135944 quits 07:35:05.136006 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY USER 200 fine, proceed without password Testnum 354 === End of file server.cmd === Start of file valgrind354 ==94468== ==94468== Process terminating with default action of signal 4 (SIGILL) ==94468== Illegal opcode at address 0x4003082 ==94468== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94468== by 0x4003082: main (tool_main.c:234) === End of file valgrind354 test 0342...[Check if --etag-compare set correct etag in header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind342 ../src/curl -q --output log/1/curl342.out --include --trace-ascii log/1/trace342 --trace-config all --trace-time http://127.0.0.1:38941/342 --etag-compare log/1/etag342 > log/1/stdout342 2> log/1/stderr342 342: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 342 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind342 ../src/curl -q --output log/1/curl342.out --include --trace-ascii log/1/trace342 --trace-config all --trace-time http://127.0.0.1:38941/342 --etag-compare log/1/etag342 > log/1/stdout342 2> log/1/stderr342 === End of file commands.log === Start of file etag342 "21025-dc7-39462498" === End of file etag342 === Start of file http_server.log 07:35:05.032414 ====> Client connect 07:35:05.032456 accept_connection 3 returned 4 07:35:05.032470 accept_connection 3 returned 0 07:35:05.032481 Read 93 bytes 07:35:05.032489 Process 93 bytes request 07:35:05.032506 Got request: GET /verifiedserver HTTP/1.1 07:35:05.032538 Are-we-friendly question received 07:35:05.032570 Wrote request (93 bytes) input to log/1/server.input 07:35:05.032587 Identifying ourselves as friends 07:35:05.032662 Response sent (56 bytes) and written to log/1/server.response 07:35:05.032673 special request received, no persistency 07:35:05.032681 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 342 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind342 ==93765== ==93765== Process terminating with default action of signal 4 (SIGILL) ==93765== Illegal opcode at address 0x4003082 ==93765== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93765== by 0x4003082: main (tool_main.c:234) === End of file valgrind342 test 0341...[A non existing file with --etag-compare is just a blank] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind341 ../src/curl -q --output log/7/curl341.out --include --trace-ascii log/7/trace341 --trace-config all --trace-time http://127.0.0.1:39077/341 --etag-compare log/7/etag341 > log/7/stdout341 2> log/7/stderr341 341: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 341 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind341 ../src/curl -q --output log/7/curl341.out --include --trace-ascii log/7/trace341 --trace-config all --trace-time http://127.0.0.1:39077/341 --etag-compare log/7/etag341 > log/7/stdout341 2> log/7/stderr341 === End of file commands.log === Start of file http_server.log 07:35:05.025287 ====> Client connect 07:35:05.025319 accept_connection 3 returned 4 07:35:05.025335 accept_connection 3 returned 0 07:35:05.025349 Read 93 bytes 07:35:05.025358 Process 93 bytes request 07:35:05.025371 Got request: GET /verifiedserver HTTP/1.1 07:35:05.025380 Are-we-friendly question received 07:35:05.025403 Wrote request (93 bytes) input to log/7/server.input 07:35:05.025419 Identifying ourselves as friends 07:35:05.025479 Response sent (56 bytes) and written to log/7/server.response 07:35:05.025489 special request received, no persistency 07:35:05.025500 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 341 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind341 ==93753== ==93753== Process terminating with default action of signal 4 (SIGILL) ==93753== Illegal opcode at address 0x4003082 ==93753== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93753== by 0x4003082: main (tool_main.c:234) === End of file valgrind341 test 0346...[HTTP GET over proxy with credentials using blank passwords] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind346 ../src/curl -q --output log/13/curl346.out --include --trace-ascii log/13/trace346 --trace-config all --trace-time -x http://127.0.0.1:33627/346 -U puser: -u suser: http://remote.example/346 > log/13/stdout346 2> log/13/stderr346 346: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 346 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind346 ../src/curl -q --output log/13/curl346.out --include --trace-ascii log/13/trace346 --trace-config all --trace-time -x http://127.0.0.1:33627/346 -U puser: -u suser: http://remote.example/346 > log/13/stdout346 2> log/13/stderr346 === End of file commands.log === Start of file http_server.log 07:35:05.034028 ====> Client connect 07:35:05.034050 accept_connection 3 returned 4 07:35:05.034062 accept_connection 3 returned 0 07:35:05.034072 Read 93 bytes 07:35:05.034080 Process 93 bytes request 07:35:05.034088 Got request: GET /verifiedserver HTTP/1.1 07:35:05.034095 Are-we-friendly question received 07:35:05.034111 Wrote request (93 bytes) input to log/13/server.inpuCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind343 ../src/curl -q --output log/24/curl343.out --include --trace-ascii log/24/trace343 --trace-config all --trace-time http://127.0.0.1:38675/343 --etag-compare log/24/etag343 --etag-save log/24/out343 > log/24/stdout343 2> log/24/stderr343 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind347 ../src/curl -q --output log/9/curl347.out --include --trace-ascii log/9/trace347 --trace-config all --trace-time http://127.0.0.1:34999/347 --etag-save log/9/etag347 > log/9/stdout347 2> log/9/stderr347 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind345 ../src/curl -q --output log/3/curl345.out --include --trace-ascii log/3/trace345 --trace-config all --trace-time http://127.0.0.1:42345/345 --etag-compare log/3/etag345 --etag-save log/3/etag345 > log/3/stdout345 2> log/3/stderr345 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind344 ../src/curl -q --output log/11/curl344.out --include --trace-ascii log/11/trace344 --trace-config all --trace-time http://127.0.0.1:41173/344 --etag-compare log/11/etag344 --etag-save log/11/etag344 > log/11/stdout344 2> log/11/stderr344 t 07:35:05.034123 Identifying ourselves as friends 07:35:05.034162 Response sent (56 bytes) and written to log/13/server.response 07:35:05.034169 special request received, no persistency 07:35:05.034176 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 346 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind346 ==93786== ==93786== Process terminating with default action of signal 4 (SIGILL) ==93786== Illegal opcode at address 0x4003082 ==93786== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93786== by 0x4003082: main (tool_main.c:234) === End of file valgrind346 test 0343...[Both --etag-compare and --etag-save to save new Etag] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind343 ../src/curl -q --output log/24/curl343.out --include --trace-ascii log/24/trace343 --trace-config all --trace-time http://127.0.0.1:38675/343 --etag-compare log/24/etag343 --etag-save log/24/out343 > log/24/stdout343 2> log/24/stderr343 343: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 343 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind343 ../src/curl -q --output log/24/curl343.out --include --trace-ascii log/24/trace343 --trace-config all --trace-time http://127.0.0.1:38675/343 --etag-compare log/24/etag343 --etag-save log/24/out343 > log/24/stdout343 2> log/24/stderr343 === End of file commands.log === Start of file etag343 "21025-dc7-39462498" === End of file etag343 === Start of file http_server.log 07:35:05.033384 ====> Client connect 07:35:05.033415 accept_connection 3 returned 4 07:35:05.033430 accept_connection 3 returned 0 07:35:05.033442 Read 93 bytes 07:35:05.033451 Process 93 bytes request 07:35:05.033461 Got request: GET /verifiedserver HTTP/1.1 07:35:05.033470 Are-we-friendly question received 07:35:05.033494 Wrote request (93 bytes) input to log/24/server.input 07:35:05.033509 Identifying ourselves as friends 07:35:05.033564 Response sent (56 bytes) and written to log/24/server.response 07:35:05.033573 special request received, no persistency 07:35:05.033581 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 343 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind343 ==93785== ==93785== Process terminating with default action of signal 4 (SIGILL) ==93785== Illegal opcode at address 0x4003082 ==93785== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93785== by 0x4003082: main (tool_main.c:234) === End of file valgrind343 test 0345...[Both --etag-compare and -save store new Etag using one pre-existing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind345 ../src/curl -q --output log/3/curl345.out --include --trace-ascii log/3/trace345 --trace-config all --trace-time http://127.0.0.1:42345/345 --etag-compare log/3/etag345 --etag-save log/3/etag345 > log/3/stdout345 2> log/3/stderr345 345: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 345 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind345 ../src/curl -q --output log/3/curl345.out --include --trace-ascii log/3/trace345 --trace-config all --trace-time http://127.0.0.1:42345/345 --etag-compare log/3/etag345 --etag-save log/3/etag345 > log/3/stdout345 2> log/3/stderr345 === End of file commands.log === Start of file etag345 "21025-dc7-39462498" === End of file etag345 === Start of file http_server.log 07:35:05.036995 ====> Client connect 07:35:05.037038 accept_connection 3 returned 4 07:35:05.037092 accept_connection 3 returned 0 07:35:05.037113 Read 93 bytes 07:35:05.037123 Process 93 bytes request 07:35:05.037135 Got request: GET /verifiedserver HTTP/1.1 07:35:05.037144 Are-we-friendly question received 07:35:05.037177 Wrote request (93 bytes) input to log/3/server.input 07:35:05.037193 Identifying ourselves as friends 07:35:05.037254 Response sent (56 bytes) and written to log/3/server.response 07:35:05.037264 special request received, no persistency 07:35:05.037272 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 345 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind345 ==93790== ==93790== Process terminating with default action of signal 4 (SIGILL) ==93790== Illegal opcode at address 0x4003082 ==93790== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93790== by 0x4003082: main (tool_main.c:234) === End of file valgrind345 test 0347...[--etag-save with blank incoming header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind347 ../src/curl -q --output log/9/curl347.out --include --trace-ascii log/9/trace347 --trace-config all --trace-time http://127.0.0.1:34999/347 --etag-save log/9/etag347 > log/9/stdout347 2> log/9/stderr347 347: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 347 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind347 ../src/curl -q --output log/9/curl347.out --include --trace-ascii log/9/trace347 --trace-config all --trace-time http://127.0.0.1:34999/347 --etag-save log/9/etag347 > log/9/stdout347 2> log/9/stderr347 === End of file commands.log === Start of file CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind349 ../src/curl -q --output log/21/curl349.out --include --trace-ascii log/21/trace349 --trace-config all --trace-time http://127.0.0.1:41087/349 --fail-with-body > log/21/stdout349 2> log/21/stderr349 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind360 ../src/curl -q --output log/22/curl360.out --include --trace-ascii log/22/trace360 --trace-config all --trace-time http://127.0.0.1:46761/360 --fail-with-body --fail > log/22/stdout360 2> log/22/stderr360 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind357 ../src/curl -q --output log/14/curl357.out --include --trace-ascii log/14/trace357 --trace-config all --trace-time http://127.0.0.1:37963/we/want/357 -T log/14/test357.txt --expect100-timeout 99 > log/14/stdout357 2> log/14/stderr357 http_server.log 07:35:05.062019 ====> Client connect 07:35:05.062054 accept_connection 3 returned 4 07:35:05.062070 accept_connection 3 returned 0 07:35:05.062085 Read 93 bytes 07:35:05.062095 Process 93 bytes request 07:35:05.062110 Got request: GET /verifiedserver HTTP/1.1 07:35:05.062122 Are-we-friendly question received 07:35:05.062179 Wrote request (93 bytes) input to log/9/server.input 07:35:05.062199 Identifying ourselves as friends 07:35:05.062259 Response sent (56 bytes) and written to log/9/server.response 07:35:05.062269 special request received, no persistency 07:35:05.062278 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 347 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind347 ==94000== ==94000== Process terminating with default action of signal 4 (SIGILL) ==94000== Illegal opcode at address 0x4003082 ==94000== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94000== by 0x4003082: main (tool_main.c:234) === End of file valgrind347 test 0344...[Both --etag-compare and -save store new Etag using non-existing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind344 ../src/curl -q --output log/11/curl344.out --include --trace-ascii log/11/trace344 --trace-config all --trace-time http://127.0.0.1:41173/344 --etag-compare log/11/etag344 --etag-save log/11/etag344 > log/11/stdout344 2> log/11/stderr344 344: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 344 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind344 ../src/curl -q --output log/11/curl344.out --include --trace-ascii log/11/trace344 --trace-config all --trace-time http://127.0.0.1:41173/344 --etag-compare log/11/etag344 --etag-save log/11/etag344 > log/11/stdout344 2> log/11/stderr344 === End of file commands.log === Start of file http_server.log 07:35:05.032771 ====> Client connect 07:35:05.032810 accept_connection 3 returned 4 07:35:05.032826 accept_connection 3 returned 0 07:35:05.032840 Read 93 bytes 07:35:05.032850 Process 93 bytes request 07:35:05.032863 Got request: GET /verifiedserver HTTP/1.1 07:35:05.032871 Are-we-friendly question received 07:35:05.032896 Wrote request (93 bytes) input to log/11/server.input 07:35:05.032912 Identifying ourselves as friends 07:35:05.032969 Response sent (56 bytes) and written to log/11/server.response 07:35:05.032980 special request received, no persistency 07:35:05.032988 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 344 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind344 ==93766== ==93766== Process terminating with default action of signal 4 (SIGILL) ==93766== Illegal opcode at address 0x4003082 ==93766== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==93766== by 0x4003082: main (tool_main.c:234) === End of file valgrind344 test 0349...[HTTP GET --fail-with-body on HTTP error return] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind349 ../src/curl -q --output log/21/curl349.out --include --trace-ascii log/21/trace349 --trace-config all --trace-time http://127.0.0.1:41087/349 --fail-with-body > log/21/stdout349 2> log/21/stderr349 349: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 349 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind349 ../src/curl -q --output log/21/curl349.out --include --trace-ascii log/21/trace349 --trace-config all --trace-time http://127.0.0.1:41087/349 --fail-with-body > log/21/stdout349 2> log/21/stderr349 === End of file commands.log === Start of file http_server.log 07:35:05.083285 ====> Client connect 07:35:05.083316 accept_connection 3 returned 4 07:35:05.083333 accept_connection 3 returned 0 07:35:05.083347 Read 93 bytes 07:35:05.083357 Process 93 bytes request 07:35:05.083370 Got request: GET /verifiedserver HTTP/1.1 07:35:05.083380 Are-we-friendly question received 07:35:05.083405 Wrote request (93 bytes) input to log/21/server.input 07:35:05.083421 Identifying ourselves as friends 07:35:05.083478 Response sent (56 bytes) and written to log/21/server.response 07:35:05.083488 special request received, no persistency 07:35:05.083498 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 349 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind349 ==94151== ==94151== Process terminating with default action of signal 4 (SIGILL) ==94151== Illegal opcode at address 0x4003082 ==94151== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94151== by 0x4003082: main (tool_main.c:234) === End of file valgrind349 test 0357...[HTTP PUT with Expect: 100-continue and 417 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind357 ../src/curl -q --output log/14/curl357.out --include --trace-ascii log/14/trace357 --trace-config all --trace-time http://127.0.0.1:37963/we/want/357 -T log/14/test357.txt --expect100-timeout 99 > log/14/stdout357 2> log/14/stderr357 357: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 357 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind357 ../src/curl -q --output log/14/curl357.out --include --trace-ascii log/14/trace357 --trace-config all --trace-time http://127.0.0.1:37963/we/want/357 -T log/14/test357.txt --expect100-timeout 99 > log/14/stdout357 2> log/14/stderr357 === End of file commands.log === Start of file http_server.log 07:35:05.276341 ====> Client connect 07:35:05.276382 accept_connection 3 returned 4 07:35:05.276399 accept_connection 3 returned 0 07:35:05.276414 Read 93 bytes 07:35:05.276424 Process 93 bytes request 07:35:05.276439 Got request: GET /verifiedserver HTTP/1.1 07:35:05.276449 Are-we-friendly question received 07:35:05.276477 Wrote request (93 bytes) input to log/14/server.input 07:35:05.276494 Identifying ourselves as friends 07:35:05.276563 Response sent (56 bytes) and written to log/14/server.response 07:35:05.276575 special request received, no persistency 07:35:05.276584 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd no-expect Testnum 357 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file test357.txt xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx === End of file test357.txt === Start of file valgrind357 ==94644== ==94644== Process terminating with default action of signal 4 (SIGILL) ==94644== Illegal opcode at address 0x4003082 ==94644== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94644== by 0x4003082: main (tool_main.c:234) === End of file valgrind357 test 0360...[Error on both --fail-with-body and --fail] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind360 ../src/curl -q --output log/22/curl360.out --include --trace-ascii log/22/trace360 --trace-config all --trace-time http://127.0.0.1:46761/360 --fail-with-body --fail > log/22/stdout360 2> log/22/stderr360 curl returned 132, when expecting 2 360: exit FAILED == Contents of files in the log/22/ dir after test 360 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind360 ../src/curl -q --output log/22/curl360.out --include --trace-ascii log/22/trace360 --trace-config all --trace-time http://127.0.0.1:46761/360 --fail-with-body --fail > log/22/stdout360 2> log/22/stderr360 === End of file commands.log === Start of file http_server.log 07:35:05.277438 ====> ClienCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind361 ../src/curl -q --output log/15/curl361.out --include --trace-ascii log/15/trace361 --trace-config all --trace-time http://127.0.0.1:36993/361 http://127.0.0.1:36993/361 --fail-with-body > log/15/stdout361 2> log/15/stderr361 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind367 ../src/curl -q --output log/8/curl367.out --include --trace-ascii log/8/trace367 --trace-config all --trace-time http://:example@127.0.0.1:45261/367 > log/8/stdout367 2> log/8/stderr367 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind365 ../src/curl -q --output log/5/curl365.out --include --trace-ascii log/5/trace365 --trace-config all --trace-time http://127.0.0.1:46675/365 > log/5/stdout365 2> log/5/stderr365 t connect 07:35:05.277464 accept_connection 3 returned 4 07:35:05.277476 accept_connection 3 returned 0 07:35:05.277487 Read 93 bytes 07:35:05.277494 Process 93 bytes request 07:35:05.277503 Got request: GET /verifiedserver HTTP/1.1 07:35:05.277510 Are-we-friendly question received 07:35:05.277529 Wrote request (93 bytes) input to log/22/server.input 07:35:05.277542 Identifying ourselves as friends 07:35:05.277582 Response sent (56 bytes) and written to log/22/server.response 07:35:05.277590 special request received, no persistency 07:35:05.277597 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 360 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind360 ==94619== ==94619== Process terminating with default action of signal 4 (SIGILL) ==94619== Illegal opcode at address 0x4003082 ==94619== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94619== by 0x4003082: main (tool_main.c:234) === End of file valgrind360 test 0361...[HTTP GET --fail-with-body on HTTP error return - twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind361 ../src/curl -q --output log/15/curl361.out --include --trace-ascii log/15/trace361 --trace-config all --trace-time http://127.0.0.1:36993/361 http://127.0.0.1:36993/361 --fail-with-body > log/15/stdout361 2> log/15/stderr361 361: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 361 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind361 ../src/curl -q --output log/15/curl361.out --include --trace-ascii log/15/trace361 --trace-config all --trace-time http://127.0.0.1:36993/361 http://127.0.0.1:36993/361 --fail-with-body > log/15/stdout361 2> log/15/stderr361 === End of file commands.log === Start of file http_server.log 07:35:05.331251 ====> Client connect 07:35:05.331282 accept_connection 3 returned 4 07:35:05.331297 accept_connection 3 returned 0 07:35:05.331311 Read 93 bytes 07:35:05.331320 Process 93 bytes request 07:35:05.331332 Got request: GET /verifiedserver HTTP/1.1 07:35:05.331341 Are-we-friendly question received 07:35:05.331366 Wrote request (93 bytes) input to log/15/server.input 07:35:05.331382 Identifying ourselves as friends 07:35:05.331436 Response sent (56 bytes) and written to log/15/server.response 07:35:05.331446 special request received, no persistency 07:35:05.331455 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 361 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind361 ==94750== ==94750== Process terminating with default action of signal 4 (SIGILL) ==94750== Illegal opcode at address 0x4003082 ==94750== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94750== by 0x4003082: main (tool_main.c:234) === End of file valgrind361 test 0367...[Empty user name provided in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind367 ../src/curl -q --output log/8/curl367.out --include --trace-ascii log/8/trace367 --trace-config all --trace-time http://:example@127.0.0.1:45261/367 > log/8/stdout367 2> log/8/stderr367 367: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 367 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind367 ../src/curl -q --output log/8/curl367.out --include --trace-ascii log/8/trace367 --trace-config all --trace-time http://:example@127.0.0.1:45261/367 > log/8/stdout367 2> log/8/stderr367 === End of file commands.log === Start of file http_server.log 07:35:05.374349 ====> Client connect 07:35:05.374378 accept_connection 3 returned 4 07:35:05.374394 accept_connection 3 returned 0 07:35:05.374406 Read 93 bytes 07:35:05.374415 Process 93 bytes request 07:35:05.374426 Got request: GET /verifiedserver HTTP/1.1 07:35:05.374435 Are-we-friendly question received 07:35:05.374459 Wrote request (93 bytes) input to log/8/server.input 07:35:05.374474 Identifying ourselves as friends 07:35:05.374524 Response sent (56 bytes) and written to log/8/server.response 07:35:05.374533 special request received, no persistency 07:35:05.374542 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 367 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind367 ==94852== ==94852== Process terminating with default action of signal 4 (SIGILL) ==94852== Illegal opcode at address 0x4003082 ==94852== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94852== by 0x4003082: main (tool_main.c:234) === End of file valgrind367 test 0365...[HTTP/1.1 with chunked AND Content-Length headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind365 ../src/curl -q --output log/5/curl365.out --include --trace-ascii log/5/trace365 --trace-config all --trace-time http://127.0.0.1:46675/365 > log/5/stdout365 2> log/5/stderr365 365: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 365 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind365 ../src/curl -q --output log/5/curl365.out --include --trace-ascii log/5/trace365 --trace-config all --trace-time http://127.0.0.1:46675/365 > log/5/stdout365 2> log/5/stderr365 === End of file commands.log =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind366 ../src/curl -q --output log/17/curl366.out --include --trace-ascii log/17/trace366 --trace-config all --trace-time http://127.0.0.1:39089/366 --retry 2 --retry-max-time 10 > log/17/stdout366 2> log/17/stderr366 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind362 ../src/curl -q --output log/12/curl362.out --include --trace-ascii log/12/trace362 --trace-config all --trace-time ftp://127.0.0.1:39735/362 -T log/12/test362.txt --continue-at - > log/12/stdout362 2> log/12/stderr362 == Start of file http_server.log 07:35:05.374154 ====> Client connect 07:35:05.374188 accept_connection 3 returned 4 07:35:05.374203 accept_connection 3 returned 0 07:35:05.374217 Read 93 bytes 07:35:05.374226 Process 93 bytes request 07:35:05.374238 Got request: GET /verifiedserver HTTP/1.1 07:35:05.374247 Are-we-friendly question received 07:35:05.374270 Wrote request (93 bytes) input to log/5/server.input 07:35:05.374285 Identifying ourselves as friends 07:35:05.374337 Response sent (56 bytes) and written to log/5/server.response 07:35:05.374346 special request received, no persistency 07:35:05.374354 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 365 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind365 ==94854== ==94854== Process terminating with default action of signal 4 (SIGILL) ==94854== Illegal opcode at address 0x4003082 ==94854== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94854== by 0x4003082: main (tool_main.c:234) === End of file valgrind365 test 0366...[HTTP --retry-max-time with too long Retry-After] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind366 ../src/curl -q --output log/17/curl366.out --include --trace-ascii log/17/trace366 --trace-config all --trace-time http://127.0.0.1:39089/366 --retry 2 --retry-max-time 10 > log/17/stdout366 2> log/17/stderr366 366: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 366 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind366 ../src/curl -q --output log/17/curl366.out --include --trace-ascii log/17/trace366 --trace-config all --trace-time http://127.0.0.1:39089/366 --retry 2 --retry-max-time 10 > log/17/stdout366 2> log/17/stderr366 === End of file commands.log === Start of file http_server.log 07:35:05.374158 ====> Client connect 07:35:05.374191 accept_connection 3 returned 4 07:35:05.374207 accept_connection 3 returned 0 07:35:05.374220 Read 93 bytes 07:35:05.374230 Process 93 bytes request 07:35:05.374241 Got request: GET /verifiedserver HTTP/1.1 07:35:05.374250 Are-we-friendly question received 07:35:05.374274 Wrote request (93 bytes) input to log/17/server.input 07:35:05.374289 Identifying ourselves as friends 07:35:05.374344 Response sent (56 bytes) and written to log/17/server.response 07:35:05.374354 special request received, no persistency 07:35:05.374363 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 366 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind366 ==94853== ==94853== Process terminating with default action of signal 4 (SIGILL) ==94853== Illegal opcode at address 0x4003082 ==94853== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94853== by 0x4003082: main (tool_main.c:234) === End of file valgrind366 test 0362...[FTP resume upload file with nothing to start from] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind362 ../src/curl -q --output log/12/curl362.out --include --trace-ascii log/12/trace362 --trace-config all --trace-time ftp://127.0.0.1:39735/362 -T log/12/test362.txt --continue-at - > log/12/stdout362 2> log/12/stderr362 362: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 362 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind362 ../src/curl -q --output log/12/curl362.out --include --trace-ascii log/12/trace362 --trace-config all --trace-time ftp://127.0.0.1:39735/362 -T log/12/test362.txt --continue-at - > log/12/stdout362 2> log/12/stderr362 === End of file commands.log === Start of file ftp_server.log 07:35:05.501089 ====> Client connect 07:35:05.501762 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.502134 < "USER anonymous" 07:35:05.502229 > "331 We are happy you popped in![CR][LF]" 07:35:05.502371 < "PASS ftp@example.com" 07:35:05.502393 > "230 Welcome you silly person[CR][LF]" 07:35:05.502524 < "PWD" 07:35:05.502548 > "257 "/" is current directory[CR][LF]" 07:35:05.502680 < "EPSV" 07:35:05.502704 ====> Passive DATA channel requested by client 07:35:05.502715 DATA sockfilt for passive data channel starting... 07:35:05.504651 DATA sockfilt for passive data channel started (pid 94758) 07:35:05.504780 DATA sockfilt for passive data channel listens on port 42127 07:35:05.504829 > "229 Entering Passive Mode (|||42127|)[LF]" 07:35:05.504845 Client has been notified that DATA conn will be accepted on port 42127 07:35:05.505212 Client connects to port 42127 07:35:05.505246 ====> Client established passive DATA connection on port 42127 07:35:05.505313 < "TYPE I" 07:35:05.505338 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.505521 < "SIZE verifiedserver" 07:35:05.505563 > "213 17[CR][LF]" 07:35:05.505759 < "RETR verifiedserver" 07:35:05.505796 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.505870 =====> Closing passive DATA connection... 07:35:05.505886 Server disconnects passive DATA connection 07:35:05.505970 Server disconnected passive DATA connection 07:35:05.505988 DATA sockfilt for passive data channel quits (pid 94758) 07:35:05.506246 DATA sockfilt for passive data channel quit (pid 94758) 07:35:05.506269 =====> Closed passive DATA connection 07:35:05.506296 > "226 File transfer complete[CR][LF]" 07:35:05.547063 < "QUIT" 07:35:05.547115 > "221 bye bye baby[CR][LF]" 07:35:05.547957 MAIN sockfilt said DISC 07:35:05.547984 ====> Client disconnected 07:35:05.548058 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:06.346414 ====> Client connect 07:35:06.347765 Received DATA (on stdin) 07:35:06.347782 > 160 bytes data, server => client 07:35:06.347794 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:06.347804 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:06.347813 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:06.347917 < 16 bytes data, client => server 07:35:06.347930 'USER anonymous\r\n' 07:35:06.348219 Received DATA (on stdin) 07CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind332 ../src/curl -q --output log/16/curl332.out --include --trace-ascii log/16/trace332 --trace-config all --trace-time tftp://127.0.0.1:52374//332 --tftp-blksize 400 > log/16/stdout332 2> log/16/stderr332 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind374 ../src/curl -q --output log/1/curl374.out --include --trace-ascii log/1/trace374 --trace-config all --trace-time http://127.0.0.1:38941/gif/374 > log/1/stdout374 2> log/1/stderr374 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind384 ../src/curl -q --output log/9/curl384.out --include --trace-ascii log/9/trace384 --trace-config all --trace-time --json @- http://127.0.0.1:34999/384 -H "Accept: foobar/*" log/9/stdout384 2> log/9/stderr384 :35:06.348231 > 33 bytes data, server => client 07:35:06.348241 '331 We are happy you popped in!\r\n' 07:35:06.348285 < 22 bytes data, client => server 07:35:06.348295 'PASS ftp@example.com\r\n' 07:35:06.348380 Received DATA (on stdin) 07:35:06.348390 > 30 bytes data, server => client 07:35:06.348399 '230 Welcome you silly person\r\n' 07:35:06.348442 < 5 bytes data, client => server 07:35:06.348452 'PWD\r\n' 07:35:06.348533 Received DATA (on stdin) 07:35:06.348543 > 30 bytes data, server => client 07:35:06.348552 '257 "/" is current directory\r\n' 07:35:06.348598 < 6 bytes data, client => server 07:35:06.348608 'EPSV\r\n' 07:35:06.350844 Received DATA (on stdin) 07:35:06.350862 > 38 bytes data, server => client 07:35:06.350874 '229 Entering Passive Mode (|||42127|)\n' 07:35:06.351134 < 8 bytes data, client => server 07:35:06.351147 'TYPE I\r\n' 07:35:06.351310 Received DATA (on stdin) 07:35:06.351322 > 33 bytes data, server => client 07:35:06.351333 '200 I modify TYPE as you wanted\r\n' 07:35:06.351404 < 21 bytes data, client => server 07:35:06.351416 'SIZE verifiedserver\r\n' 07:35:06.351555 Received DATA (on stdin) 07:35:06.351566 > 8 bytes data, server => client 07:35:06.351575 '213 17\r\n' 07:35:06.351633 < 21 bytes data, client => server 07:35:06.351656 'RETR verifiedserver\r\n' 07:35:06.351879 Received DATA (on stdin) 07:35:06.351895 > 29 bytes data, server => client 07:35:06.351906 '150 Binary junk (17 bytes).\r\n' 07:35:06.352286 Received DATA (on stdin) 07:35:06.352299 > 28 bytes data, server => client 07:35:06.352309 '226 File transfer complete\r\n' 07:35:06.392863 < 6 bytes data, client => server 07:35:06.392890 'QUIT\r\n' 07:35:06.393107 Received DATA (on stdin) 07:35:06.393119 > 18 bytes data, server => client 07:35:06.393129 '221 bye bye baby\r\n' 07:35:06.393894 ====> Client disconnect 07:35:06.394056 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.350435 Running IPv4 version 07:35:05.350507 Listening on port 42127 07:35:05.350555 Wrote pid 94758 to log/12/server/ftp_sockdata.pid 07:35:05.350576 Received PING (on stdin) 07:35:05.350687 Received PORT (on stdin) 07:35:05.351140 ====> Client connect 07:35:05.351858 Received DATA (on stdin) 07:35:05.351877 > 17 bytes data, server => client 07:35:05.351888 'WE ROOLZ: 81035\r\n' 07:35:05.351915 Received DISC (on stdin) 07:35:05.351928 ====> Client forcibly disconnected 07:35:05.351988 Received QUIT (on stdin) 07:35:05.352003 quits 07:35:05.352067 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 362 === End of file server.cmd === Start of file test362.txt data to see that FTP works so does it? === End of file test362.txt === Start of file valgrind362 ==94917== ==94917== Process terminating with default action of signal 4 (SIGILL) ==94917== Illegal opcode at address 0x4003082 ==94917== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==94917== by 0x4003082: main (tool_main.c:234) === End of file valgrind362 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/16/server/tftp_server.pid" --portfile "log/16/server/tftp_server.port" --logfile "log/16/tftp_server.log" --logdir "log/16" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 92679 port 52374 * pid tftp => 92679 92679 test 0332...[TFTP retrieve with blksize 400] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind332 ../src/curl -q --output log/16/curl332.out --include --trace-ascii log/16/trace332 --trace-config all --trace-time tftp://127.0.0.1:52374//332 --tftp-blksize 400 > log/16/stdout332 2> log/16/stderr332 332: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 332 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind332 ../src/curl -q --output log/16/curl332.out --include --trace-ascii log/16/trace332 --trace-config all --trace-time tftp://127.0.0.1:52374//332 --tftp-blksize 400 > log/16/stdout332 2> log/16/stderr332 === End of file commands.log === Start of file server.cmd Testnum 332 === End of file server.cmd === Start of file tftp_server.log 07:35:04.543954 Wrote pid 92679 to log/16/server/tftp_server.pid 07:35:04.544003 Wrote port 52374 to log/16/server/tftp_server.port 07:35:04.544015 Running IPv4 version on port UDP/52374 === End of file tftp_server.log === Start of file valgrind332 ==95052== ==95052== Process terminating with default action of signal 4 (SIGILL) ==95052== Illegal opcode at address 0x4003082 ==95052== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95052== by 0x4003082: main (tool_main.c:234) === End of file valgrind332 test 0374...[Valid gif with two frames. No new line in data section.] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind374 ../src/curl -q --output log/1/curl374.out --include --trace-ascii log/1/trace374 --trace-config all --trace-time http://127.0.0.1:38941/gif/374 > log/1/stdout374 2> log/1/stderr374 374: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 374 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind374 ../src/curl -q --output log/1/curl374.out --include --trace-ascii log/1/trace374 --trace-config all --trace-time http://127.0.0.1:38941/gif/374 > log/1/stdout374 2> log/1/stderr374 === End of file commands.log === Start of file http_server.log 07:35:05.664933 ====> Client connect 07:35:05.664968 accept_connection 3 returned 4 07:35:05.664987 accept_connection 3 returned 0 07:35:05.665002 Read 93 bytes 07:35:05.665013 Process 93 bytes request 07:35:05.665027 Got request: GET /verifiedserver HTTP/1.1 07:35:05.665037 Are-we-friendly question received 07:35:05.665064 Wrote request (93 bytes) input to log/1/server.input 07:35:05.665081 Identifying ourselves as friends 07:35:05.665136 Response sent (56 bytes) and written to log/1/server.response 07:35:05.665147 special request received, no persistency 07:35:05.665157 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 374 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind374 ==95415== ==95415== Process terminating with default action of signal 4 (SIGILL) ==95415== Illegal opcode at address 0x4003082 ==95415== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95415== by 0x4003082: main (tool_main.c:234) === End of file valgrind374 test 0384...[HTTP with --json from stdin] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind384 ../src/curl -q --output log/9/curl384.out --include --trace-ascii log/9/trace384 --trace-cCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind379 ../src/curl -q --include --trace-ascii log/24/trace379 --trace-config all --trace-time http://127.0.0.1:38675/379 -o log/24/save --remove-on-error --no-clobber > log/24/stdout379 2> log/24/stderr379 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind383 ../src/curl -q --output log/21/curl383.out --include --trace-ascii log/21/trace383 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:41087/383 > log/21/stdout383 2> log/21/stderr383 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind370 ../src/curl -q --output log/2/curl370.out --include --trace-ascii log/2/trace370 --trace-config all --trace-time http://127.0.0.1:47/370 --etag-save log/2/nowhere/etag370 > log/2/stdout370 2> log/2/stderr370 onfig all --trace-time --json @- http://127.0.0.1:34999/384 -H "Accept: foobar/*" log/9/stdout384 2> log/9/stderr384 384: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 384 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind384 ../src/curl -q --output log/9/curl384.out --include --trace-ascii log/9/trace384 --trace-config all --trace-time --json @- http://127.0.0.1:34999/384 -H "Accept: foobar/*" log/9/stdout384 2> log/9/stderr384 === End of file commands.log === Start of file http_server.log 07:35:05.691222 ====> Client connect 07:35:05.691251 accept_connection 3 returned 4 07:35:05.691269 accept_connection 3 returned 0 07:35:05.691283 Read 93 bytes 07:35:05.691293 Process 93 bytes request 07:35:05.691306 Got request: GET /verifiedserver HTTP/1.1 07:35:05.691316 Are-we-friendly question received 07:35:05.691340 Wrote request (93 bytes) input to log/9/server.input 07:35:05.691357 Identifying ourselves as friends 07:35:05.691415 Response sent (56 bytes) and written to log/9/server.response 07:35:05.691426 special request received, no persistency 07:35:05.691435 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 384 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stdin-for-384 { "drink": "coffe" } === End of file stdin-for-384 === Start of file valgrind384 ==95648== ==95648== Process terminating with default action of signal 4 (SIGILL) ==95648== Illegal opcode at address 0x4003082 ==95648== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95648== by 0x4003082: main (tool_main.c:234) === End of file valgrind384 test 0379...[--remove-on-error with --no-clobber and an added number] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind379 ../src/curl -q --include --trace-ascii log/24/trace379 --trace-config all --trace-time http://127.0.0.1:38675/379 -o log/24/save --remove-on-error --no-clobber > log/24/stdout379 2> log/24/stderr379 379: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 379 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind379 ../src/curl -q --include --trace-ascii log/24/trace379 --trace-config all --trace-time http://127.0.0.1:38675/379 -o log/24/save --remove-on-error --no-clobber > log/24/stdout379 2> log/24/stderr379 === End of file commands.log === Start of file http_server.log 07:35:05.685011 ====> Client connect 07:35:05.685044 accept_connection 3 returned 4 07:35:05.685060 accept_connection 3 returned 0 07:35:05.685075 Read 93 bytes 07:35:05.685085 Process 93 bytes request 07:35:05.685099 Got request: GET /verifiedserver HTTP/1.1 07:35:05.685108 Are-we-friendly question received 07:35:05.685134 Wrote request (93 bytes) input to log/24/server.input 07:35:05.685150 Identifying ourselves as friends 07:35:05.685223 Response sent (56 bytes) and written to log/24/server.response 07:35:05.685233 special request received, no persistency 07:35:05.685242 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file save exists before command runs === End of file save === Start of file server.cmd Testnum 379 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind379 ==95606== ==95606== Process terminating with default action of signal 4 (SIGILL) ==95606== Illegal opcode at address 0x4003082 ==95606== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95606== by 0x4003082: main (tool_main.c:234) === End of file valgrind379 test 0383...[HTTP with --json] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind383 ../src/curl -q --output log/21/curl383.out --include --trace-ascii log/21/trace383 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:41087/383 > log/21/stdout383 2> log/21/stderr383 383: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 383 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind383 ../src/curl -q --output log/21/curl383.out --include --trace-ascii log/21/trace383 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:41087/383 > log/21/stdout383 2> log/21/stderr383 === End of file commands.log === Start of file http_server.log 07:35:05.689270 ====> Client connect 07:35:05.689307 accept_connection 3 returned 4 07:35:05.689325 accept_connection 3 returned 0 07:35:05.689339 Read 93 bytes 07:35:05.689349 Process 93 bytes request 07:35:05.689360 Got request: GET /verifiedserver HTTP/1.1 07:35:05.689370 Are-we-friendly question received 07:35:05.689396 Wrote request (93 bytes) input to log/21/server.input 07:35:05.689413 Identifying ourselves as friends 07:35:05.689470 Response sent (56 bytes) and written to log/21/server.response 07:35:05.689481 special request received, no persistency 07:35:05.689490 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 383 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind383 ==95627== ==95627== Process terminating with default action of signal 4 (SIGILL) ==95627== Illegal opcode at address 0x4003082 ==95627== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95627== by 0x4003082: main (tool_main.c:234) === End of file valgrind383 * starts no server test 0370..CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind380 ../src/curl -q --output log/3/curl380.out --include --trace-ascii log/3/trace380 --trace-config all --trace-time --netrc --netrc-file log/3/netrc380 ftp://mary@127.0.0.1:34613/ > log/3/stdout380 2> log/3/stderr380 .[--etag-save with bad path - no transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind370 ../src/curl -q --output log/2/curl370.out --include --trace-ascii log/2/trace370 --trace-config all --trace-time http://127.0.0.1:47/370 --etag-save log/2/nowhere/etag370 > log/2/stdout370 2> log/2/stderr370 curl returned 132, when expecting 26 370: exit FAILED == Contents of files in the log/2/ dir after test 370 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind370 ../src/curl -q --output log/2/curl370.out --include --trace-ascii log/2/trace370 --trace-config all --trace-time http://127.0.0.1:47/370 --etag-save log/2/nowhere/etag370 > log/2/stdout370 2> log/2/stderr370 === End of file commands.log === Start of file server.cmd Testnum 370 === End of file server.cmd === Start of file valgrind370 ==95118== ==95118== Process terminating with default action of signal 4 (SIGILL) ==95118== Illegal opcode at address 0x4003082 ==95118== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95118== by 0x4003082: main (tool_main.c:234) === End of file valgrind370 test 0380...[pick netrc password based on user name in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind380 ../src/curl -q --output log/3/curl380.out --include --trace-ascii log/3/trace380 --trace-config all --trace-time --netrc --netrc-file log/3/netrc380 ftp://mary@127.0.0.1:34613/ > log/3/stdout380 2> log/3/stderr380 380: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 380 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind380 ../src/curl -q --output log/3/curl380.out --include --trace-ascii log/3/trace380 --trace-config all --trace-time --netrc --netrc-file log/3/netrc380 ftp://mary@127.0.0.1:34613/ > log/3/stdout380 2> log/3/stderr380 === End of file commands.log === Start of file ftp_server.log 07:35:05.839292 ====> Client connect 07:35:05.839449 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.839713 < "USER anonymous" 07:35:05.839750 > "331 We are happy you popped in![CR][LF]" 07:35:05.840230 < "PASS ftp@example.com" 07:35:05.840280 > "230 Welcome you silly person[CR][LF]" 07:35:05.840428 < "PWD" 07:35:05.840457 > "257 "/" is current directory[CR][LF]" 07:35:05.840602 < "EPSV" 07:35:05.840622 ====> Passive DATA channel requested by client 07:35:05.840634 DATA sockfilt for passive data channel starting... 07:35:05.842018 DATA sockfilt for passive data channel started (pid 95520) 07:35:05.842109 DATA sockfilt for passive data channel listens on port 43999 07:35:05.842144 > "229 Entering Passive Mode (|||43999|)[LF]" 07:35:05.842160 Client has been notified that DATA conn will be accepted on port 43999 07:35:05.842368 Client connects to port 43999 07:35:05.842393 ====> Client established passive DATA connection on port 43999 07:35:05.842449 < "TYPE I" 07:35:05.842471 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.842615 < "SIZE verifiedserver" 07:35:05.842648 > "213 17[CR][LF]" 07:35:05.842782 < "RETR verifiedserver" 07:35:05.842813 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.842879 =====> Closing passive DATA connection... 07:35:05.842892 Server disconnects passive DATA connection 07:35:05.843092 Server disconnected passive DATA connection 07:35:05.843121 DATA sockfilt for passive data channel quits (pid 95520) 07:35:05.843375 DATA sockfilt for passive data channel quit (pid 95520) 07:35:05.843399 =====> Closed passive DATA connection 07:35:05.843424 > "226 File transfer complete[CR][LF]" 07:35:05.883931 < "QUIT" 07:35:05.884010 > "221 bye bye baby[CR][LF]" 07:35:05.885534 MAIN sockfilt said DISC 07:35:05.885585 ====> Client disconnected 07:35:05.885660 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:06.685193 ====> Client connect 07:35:06.685435 Received DATA (on stdin) 07:35:06.685456 > 160 bytes data, server => client 07:35:06.685468 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:06.685479 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:06.685489 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:06.685556 < 16 bytes data, client => server 07:35:06.685569 'USER anonymous\r\n' 07:35:06.685935 Received DATA (on stdin) 07:35:06.685964 > 33 bytes data, server => client 07:35:06.685984 '331 We are happy you popped in!\r\n' 07:35:06.686073 < 22 bytes data, client => server 07:35:06.686084 'PASS ftp@example.com\r\n' 07:35:06.686272 Received DATA (on stdin) 07:35:06.686284 > 30 bytes data, server => client 07:35:06.686294 '230 Welcome you silly person\r\n' 07:35:06.686339 < 5 bytes data, client => server 07:35:06.686350 'PWD\r\n' 07:35:06.686445 Received DATA (on stdin) 07:35:06.686456 > 30 bytes data, server => client 07:35:06.686466 '257 "/" is current directory\r\n' 07:35:06.686515 < 6 bytes data, client => server 07:35:06.686527 'EPSV\r\n' 07:35:06.688152 Received DATA (on stdin) 07:35:06.688165 > 38 bytes data, server => client 07:35:06.688175 '229 Entering Passive Mode (|||43999|)\n' 07:35:06.688308 < 8 bytes data, client => server 07:35:06.688318 'TYPE I\r\n' 07:35:06.688454 Received DATA (on stdin) 07:35:06.688466 > 33 bytes data, server => client 07:35:06.688476 '200 I modify TYPE as you wanted\r\n' 07:35:06.688525 < 21 bytes data, client => server 07:35:06.688537 'SIZE verifiedserver\r\n' 07:35:06.688636 Received DATA (on stdin) 07:35:06.688647 > 8 bytes data, server => client 07:35:06.688656 '213 17\r\n' 07:35:06.688699 < 21 bytes data, client => server 07:35:06.688711 'RETR verifiedserver\r\n' 07:35:06.688956 Received DATA (on stdin) 07:35:06.688967 > 29 bytes data, server => client 07:35:06.688978 '150 Binary junk (17 bytes).\r\n' 07:35:06.689415 Received DATA (on stdin) 07:35:06.689429 > 28 bytes data, server => client 07:35:06.689440 '226 File transfer complete\r\n' 07:35:06.729579 < 6 bytes data, client => server 07:35:06.729632 'QUIT\r\n' 07:35:06.730005 Received DATA (on stdin) 07:35:06.730019 > 18 bytes data, server => client 07:35:06.730029 '221 bye bye baby\r\n' 07:35:06.731455 ====> Client disconnect 07:35:06.731655 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.687857 Running IPv4 version 07:35:05.687912 Listening on port 43999 07:35:05.687940 Wrote pid 95520 to log/3/server/ftp_sockdata.pid 07:35:05.687957 Received PING (on stdin) 07:35:05.688029 Received PORT (on stdin) 07:35:05.688284 ====> Client connect 07:35:05.688881 Received DATA (on stdin) 07:35:05.688892 > 17 bytes data, server => client 07:35:05.688902 'WE ROOLZ: 81974\r\n' 07:35:05.688924 Received DISC (on stdin) 07:35:05.688935 ====> Client forcibly disconnected 07:35:05.689117 Received QUIT (on stdin) 07:35:05.689129 quits 07:35:05.689187 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc380 # the following two lines were created while testing curl machine 127.0.0.1 login frankenstein password wrongone machine 127.0.0.1 login mary password yram === End of file netrc380 === Start of file server.cmd Testnum 380 === End of file server.cmd === Start of file valgrind380 ==95875== ==95875== Process terminating with default action of signal 4 (SIGILL) ==95875== Illegal opcode at address 0x4003082 ==95875== at 0x4003082: UnknowCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind371 ../src/curl -q --output log/18/curl371.out --include --trace-ascii log/18/trace371 --trace-config all --trace-time http://127.0.0.1:45825/371 -o log/18/dump -o log/18/dump2 --no-progress-meter > log/18/stdout371 2> log/18/stderr371 nInlinedFun (string_fortified.h:59) ==95875== by 0x4003082: main (tool_main.c:234) === End of file valgrind380 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind373 ../src/curl -q --output log/23/curl373.out --include --trace-ascii log/23/trace373 --trace-config all --trace-time http://127.0.0.1:45701/chunked-transfer-encoding/373 > log/23/stdout373 2> log/23/stderr373 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind369 ../src/curl -q --output log/6/curl369.out --include --trace-ascii log/6/trace369 --trace-config all --trace-time http://127.0.0.1:35775/369 --etag-save log/6/nowhere/etag369 --next http://127.0.0.1:35775/369 --include --output log/6/curl369.out > log/6/stdout369 2> log/6/stderr369 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind378 ../src/curl -q --output log/13/curl378.out --include --trace-ascii log/13/trace378 --trace-config all --trace-time -T log/13/378 -d input http://never-accessed > log/13/stdout378 2> log/13/stderr378 test 0371...[using more -o than URLs in the command line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind371 ../src/curl -q --output log/18/curl371.out --include --trace-ascii log/18/trace371 --trace-config all --trace-time http://127.0.0.1:45825/371 -o log/18/dump -o log/18/dump2 --no-progress-meter > log/18/stdout371 2> log/18/stderr371 371: stderr FAILED: --- log/18/check-expected 2025-07-18 07:35:06.383778304 +0000 +++ log/18/check-generated 2025-07-18 07:35:06.383778304 +0000 @@ -1 +0,0 @@ -Warning: Got more output options than URLs[CR][LF] == Contents of files in the log/18/ dir after test 371 === Start of file check-expected Warning: Got more output options than URLs[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind371 ../src/curl -q --output log/18/curl371.out --include --trace-ascii log/18/trace371 --trace-config all --trace-time http://127.0.0.1:45825/371 -o log/18/dump -o log/18/dump2 --no-progress-meter > log/18/stdout371 2> log/18/stderr371 === End of file commands.log === Start of file http_server.log 07:35:05.653332 ====> Client connect 07:35:05.653365 accept_connection 3 returned 4 07:35:05.653380 accept_connection 3 returned 0 07:35:05.653393 Read 93 bytes 07:35:05.653403 Process 93 bytes request 07:35:05.653416 Got request: GET /verifiedserver HTTP/1.1 07:35:05.653425 Are-we-friendly question received 07:35:05.653452 Wrote request (93 bytes) input to log/18/server.input 07:35:05.653467 Identifying ourselves as friends 07:35:05.653519 Response sent (56 bytes) and written to log/18/server.response 07:35:05.653529 special request received, no persistency 07:35:05.653537 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 371 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind371 ==95316== ==95316== Process terminating with default action of signal 4 (SIGILL) ==95316== Illegal opcode at address 0x4003082 ==95316== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95316== by 0x4003082: main (tool_main.c:234) === End of file valgrind371 test 0369...[--etag-save with bad path then working transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind369 ../src/curl -q --output log/6/curl369.out --include --trace-ascii log/6/trace369 --trace-config all --trace-time http://127.0.0.1:35775/369 --etag-save log/6/nowhere/etag369 --next http://127.0.0.1:35775/369 --include --output log/6/curl369.out > log/6/stdout369 2> log/6/stderr369 369: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 369 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind369 ../src/curl -q --output log/6/curl369.out --include --trace-ascii log/6/trace369 --trace-config all --trace-time http://127.0.0.1:35775/369 --etag-save log/6/nowhere/etag369 --next http://127.0.0.1:35775/369 --include --output log/6/curl369.out > log/6/stdout369 2> log/6/stderr369 === End of file commands.log === Start of file http_server.log 07:35:05.630105 ====> Client connect 07:35:05.630137 accept_connection 3 returned 4 07:35:05.630153 accept_connection 3 returned 0 07:35:05.630166 Read 93 bytes 07:35:05.630175 Process 93 bytes request 07:35:05.630185 Got request: GET /verifiedserver HTTP/1.1 07:35:05.630194 Are-we-friendly question received 07:35:05.630217 Wrote request (93 bytes) input to log/6/server.input 07:35:05.630232 Identifying ourselves as friends 07:35:05.630289 Response sent (56 bytes) and written to log/6/server.response 07:35:05.630298 special request received, no persistency 07:35:05.630307 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 369 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind369 ==95186== ==95186== Process terminating with default action of signal 4 (SIGILL) ==95186== Illegal opcode at address 0x4003082 ==95186== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95186== by 0x4003082: main (tool_main.c:234) === End of file valgrind369 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind372 ../src/curl -q --output log/10/curl372.out --include --trace-ascii log/10/trace372 --trace-config all --trace-time --raw http://127.0.0.1:34851/binary-zero-in-data-section/372 > log/10/stdout372 2> log/10/stderr372 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind368 ../src/curl -q --output log/20/curl368.out --include --trace-ascii log/20/trace368 --trace-config all --trace-time http://127.0.0.1:37169/368 -r 4 > log/20/stdout368 2> log/20/stderr368 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind376 ../src/curl -q --include --trace-ascii log/7/trace376 --trace-config all --trace-time http://127.0.0.1:39077/376 -o log/7/save-376 --remove-on-error > log/7/stdout376 2> log/7/stderr376 * starts no server test 0378...[Reject using -T and -d at once] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind378 ../src/curl -q --output log/13/curl378.out --include --trace-ascii log/13/trace378 --trace-config all --trace-time -T log/13/378 -d input http://never-accessed > log/13/stdout378 2> log/13/stderr378 378: stderr FAILED: --- log/13/check-expected 2025-07-18 07:35:06.393778304 +0000 +++ log/13/check-generated 2025-07-18 07:35:06.393778304 +0000 @@ -1,2 +0,0 @@ -Warning: You can only select one HTTP request method! You asked for both PUT [CR][LF] -Warning: (-T, --upload-file) and POST (-d, --data).[CR][LF] == Contents of files in the log/13/ dir after test 378 === Start of file check-expected Warning: You can only select one HTTP request method! You asked for both PUT [CR][LF] Warning: (-T, --upload-file) and POST (-d, --data).[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind378 ../src/curl -q --output log/13/curl378.out --include --trace-ascii log/13/trace378 --trace-config all --trace-time -T log/13/378 -d input http://never-accessed > log/13/stdout378 2> log/13/stderr378 === End of file commands.log === Start of file server.cmd Testnum 378 === End of file server.cmd === Start of file valgrind378 ==95337== ==95337== Process terminating with default action of signal 4 (SIGILL) ==95337== Illegal opcode at address 0x4003082 ==95337== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95337== by 0x4003082: main (tool_main.c:234) === End of file valgrind378 test 0373...[Chunked transfer encoding - Multiple valid chunks with binary zeros.] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind373 ../src/curl -q --output log/23/curl373.out --include --trace-ascii log/23/trace373 --trace-config all --trace-time http://127.0.0.1:45701/chunked-transfer-encoding/373 > log/23/stdout373 2> log/23/stderr373 373: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 373 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind373 ../src/curl -q --output log/23/curl373.out --include --trace-ascii log/23/trace373 --trace-config all --trace-time http://127.0.0.1:45701/chunked-transfer-encoding/373 > log/23/stdout373 2> log/23/stderr373 === End of file commands.log === Start of file http_server.log 07:35:05.659009 ====> Client connect 07:35:05.659042 accept_connection 3 returned 4 07:35:05.659058 accept_connection 3 returned 0 07:35:05.659071 Read 93 bytes 07:35:05.659080 Process 93 bytes request 07:35:05.659093 Got request: GET /verifiedserver HTTP/1.1 07:35:05.659102 Are-we-friendly question received 07:35:05.659126 Wrote request (93 bytes) input to log/23/server.input 07:35:05.659142 Identifying ourselves as friends 07:35:05.659193 Response sent (56 bytes) and written to log/23/server.response 07:35:05.659203 special request received, no persistency 07:35:05.659211 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 373 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind373 ==95379== ==95379== Process terminating with default action of signal 4 (SIGILL) ==95379== Illegal opcode at address 0x4003082 ==95379== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95379== by 0x4003082: main (tool_main.c:234) === End of file valgrind373 test 0376...[--remove-on-error] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind376 ../src/curl -q --include --trace-ascii log/7/trace376 --trace-config all --trace-time http://127.0.0.1:39077/376 -o log/7/save-376 --remove-on-error > log/7/stdout376 2> log/7/stderr376 376: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 376 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind376 ../src/curl -q --include --trace-ascii log/7/trace376 --trace-config all --trace-time http://127.0.0.1:39077/376 -o log/7/save-376 --remove-on-error > log/7/stdout376 2> log/7/stderr376 === End of file commands.log === Start of file http_server.log 07:35:05.668745 ====> Client connect 07:35:05.668775 accept_connection 3 returned 4 07:35:05.668791 accept_connection 3 returned 0 07:35:05.668804 Read 93 bytes 07:35:05.668813 Process 93 bytes request 07:35:05.668824 Got request: GET /verifiedserver HTTP/1.1 07:35:05.668833 Are-we-friendly question received 07:35:05.668856 Wrote request (93 bytes) input to log/7/server.input 07:35:05.668871 Identifying ourselves as friends 07:35:05.668923 Response sent (56 bytes) and written to log/7/server.response 07:35:05.668933 special request received, no persistency 07:35:05.668942 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 376 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind376 ==95457== ==95457== Process terminating with default action of signal 4 (SIGILL) ==95457== Illegal opcode at address 0x4003082 ==95457== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95457== by 0x4003082: main (tool_main.c:234) === End of file valgrind376 test 0372...[Binary zero in data element.] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind372 ../src/curl -q --output log/10/curl372.out --include --trace-ascii log/10/trace372 --trace-config all --trace-time --raw http://127.0.0.1:34851/binary-zero-in-data-section/372 > log/10/stdout372 2> log/10/stderr372 372: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 372 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=logCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind381 ../src/curl -q --output log/11/curl381.out --include --trace-ascii log/11/trace381 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc381 ftp://mary:drfrank@127.0.0.1:43393/ > log/11/stdout381 2> log/11/stderr381 /10/valgrind372 ../src/curl -q --output log/10/curl372.out --include --trace-ascii log/10/trace372 --trace-config all --trace-time --raw http://127.0.0.1:34851/binary-zero-in-data-section/372 > log/10/stdout372 2> log/10/stderr372 === End of file commands.log === Start of file http_server.log 07:35:05.659010 ====> Client connect 07:35:05.659047 accept_connection 3 returned 4 07:35:05.659064 accept_connection 3 returned 0 07:35:05.659077 Read 93 bytes 07:35:05.659087 Process 93 bytes request 07:35:05.659098 Got request: GET /verifiedserver HTTP/1.1 07:35:05.659108 Are-we-friendly question received 07:35:05.659135 Wrote request (93 bytes) input to log/10/server.input 07:35:05.659152 Identifying ourselves as friends 07:35:05.659209 Response sent (56 bytes) and written to log/10/server.response 07:35:05.659221 special request received, no persistency 07:35:05.659231 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 372 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind372 ==95351== ==95351== Process terminating with default action of signal 4 (SIGILL) ==95351== Illegal opcode at address 0x4003082 ==95351== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95351== by 0x4003082: main (tool_main.c:234) === End of file valgrind372 test 0368...[Append dash if -r range specified without one] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind368 ../src/curl -q --output log/20/curl368.out --include --trace-ascii log/20/trace368 --trace-config all --trace-time http://127.0.0.1:37169/368 -r 4 > log/20/stdout368 2> log/20/stderr368 368: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 368 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind368 ../src/curl -q --output log/20/curl368.out --include --trace-ascii log/20/trace368 --trace-config all --trace-time http://127.0.0.1:37169/368 -r 4 > log/20/stdout368 2> log/20/stderr368 === End of file commands.log === Start of file http_server.log 07:35:05.627965 ====> Client connect 07:35:05.627998 accept_connection 3 returned 4 07:35:05.628011 accept_connection 3 returned 0 07:35:05.628024 Read 93 bytes 07:35:05.628032 Process 93 bytes request 07:35:05.628042 Got request: GET /verifiedserver HTTP/1.1 07:35:05.628049 Are-we-friendly question received 07:35:05.628069 Wrote request (93 bytes) input to log/20/server.input 07:35:05.628081 Identifying ourselves as friends 07:35:05.628139 Response sent (56 bytes) and written to log/20/server.response 07:35:05.628147 special request received, no persistency 07:35:05.628154 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 368 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind368 ==95164== ==95164== Process terminating with default action of signal 4 (SIGILL) ==95164== Illegal opcode at address 0x4003082 ==95164== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95164== by 0x4003082: main (tool_main.c:234) === End of file valgrind368 test 0381...[netrc-optional lets URL creds override netrc] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind381 ../src/curl -q --output log/11/curl381.out --include --trace-ascii log/11/trace381 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc381 ftp://mary:drfrank@127.0.0.1:43393/ > log/11/stdout381 2> log/11/stderr381 381: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 381 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind381 ../src/curl -q --output log/11/curl381.out --include --trace-ascii log/11/trace381 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc381 ftp://mary:drfrank@127.0.0.1:43393/ > log/11/stdout381 2> log/11/stderr381 === End of file commands.log === Start of file ftp_server.log 07:35:05.843525 ====> Client connect 07:35:05.843657 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:05.843856 < "USER anonymous" 07:35:05.843890 > "331 We are happy you popped in![CR][LF]" 07:35:05.844048 < "PASS ftp@example.com" 07:35:05.844077 > "230 Welcome you silly person[CR][LF]" 07:35:05.844226 < "PWD" 07:35:05.844251 > "257 "/" is current directory[CR][LF]" 07:35:05.844399 < "EPSV" 07:35:05.844421 ====> Passive DATA channel requested by client 07:35:05.844432 DATA sockfilt for passive data channel starting... 07:35:05.845845 DATA sockfilt for passive data channel started (pid 95553) 07:35:05.845938 DATA sockfilt for passive data channel listens on port 46759 07:35:05.845973 > "229 Entering Passive Mode (|||46759|)[LF]" 07:35:05.845989 Client has been notified that DATA conn will be accepted on port 46759 07:35:05.846187 Client connects to port 46759 07:35:05.846215 ====> Client established passive DATA connection on port 46759 07:35:05.846273 < "TYPE I" 07:35:05.846298 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:05.846450 < "SIZE verifiedserver" 07:35:05.846484 > "213 17[CR][LF]" 07:35:05.846974 < "RETR verifiedserver" 07:35:05.847011 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:05.847086 =====> Closing passive DATA connection... 07:35:05.847103 Server disconnects passive DATA connection 07:35:05.847918 Server disconnected passive DATA connection 07:35:05.847960 DATA sockfilt for passive data channel quits (pid 95553) 07:35:05.848174 DATA sockfilt for passive data channel quit (pid 95553) 07:35:05.848195 =====> Closed passive DATA connection 07:35:05.848228 > "226 File transfer complete[CR][LF]" 07:35:05.890628 < "QUIT" 07:35:05.890695 > "221 bye bye baby[CR][LF]" 07:35:05.890858 MAIN sockfilt said DISC 07:35:05.890911 ====> Client disconnected 07:35:05.890976 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.689420 ====> Client connect 07:35:05.689652 Received DATA (on stdin) 07:35:05.689664 > 160 bytes data, server => client 07:35:05.689673 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.689681 ' \r\n220- / __| | CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind385 ../src/curl -q --output log/22/curl385.out --include --trace-ascii log/22/trace385 --trace-config all --trace-time --json '{ "drink": "coffe",' --json ' "crunch": "cookie" }' http://127.0.0.1:46761/385 -H "Content-Type: drinks/hot" > log/22/stdout385 2> log/22/stderr385 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind386 ../src/curl -q --output log/14/curl386.out --include --trace-ascii log/14/trace386 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:37963/386 --next http://127.0.0.1:37963/3860002 > log/14/stdout386 2> log/14/stderr386 | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.689688 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.689738 < 16 bytes data, client => server 07:35:05.689747 'USER anonymous\r\n' 07:35:05.689882 Received DATA (on stdin) 07:35:05.689894 > 33 bytes data, server => client 07:35:05.689904 '331 We are happy you popped in!\r\n' 07:35:05.689951 < 22 bytes data, client => server 07:35:05.689963 'PASS ftp@example.com\r\n' 07:35:05.690067 Received DATA (on stdin) 07:35:05.690079 > 30 bytes data, server => client 07:35:05.690089 '230 Welcome you silly person\r\n' 07:35:05.690137 < 5 bytes data, client => server 07:35:05.690150 'PWD\r\n' 07:35:05.690238 Received DATA (on stdin) 07:35:05.690249 > 30 bytes data, server => client 07:35:05.690259 '257 "/" is current directory\r\n' 07:35:05.690308 < 6 bytes data, client => server 07:35:05.690319 'EPSV\r\n' 07:35:05.691980 Received DATA (on stdin) 07:35:05.691992 > 38 bytes data, server => client 07:35:05.692001 '229 Entering Passive Mode (|||46759|)\n' 07:35:05.692127 < 8 bytes data, client => server 07:35:05.692138 'TYPE I\r\n' 07:35:05.692289 Received DATA (on stdin) 07:35:05.692300 > 33 bytes data, server => client 07:35:05.692310 '200 I modify TYPE as you wanted\r\n' 07:35:05.692358 < 21 bytes data, client => server 07:35:05.692370 'SIZE verifiedserver\r\n' 07:35:05.692474 Received DATA (on stdin) 07:35:05.692485 > 8 bytes data, server => client 07:35:05.692495 '213 17\r\n' 07:35:05.692541 < 21 bytes data, client => server 07:35:05.692554 'RETR verifiedserver\r\n' 07:35:05.692984 Received DATA (on stdin) 07:35:05.692998 > 29 bytes data, server => client 07:35:05.693007 '150 Binary junk (17 bytes).\r\n' 07:35:05.694214 Received DATA (on stdin) 07:35:05.694237 > 28 bytes data, server => client 07:35:05.694249 '226 File transfer complete\r\n' 07:35:05.736416 < 6 bytes data, client => server 07:35:05.736441 'QUIT\r\n' 07:35:05.736690 Received DATA (on stdin) 07:35:05.736701 > 18 bytes data, server => client 07:35:05.736711 '221 bye bye baby\r\n' 07:35:05.736778 ====> Client disconnect 07:35:05.736966 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:05.691684 Running IPv4 version 07:35:05.691732 Listening on port 46759 07:35:05.691763 Wrote pid 95553 to log/11/server/ftp_sockdata.pid 07:35:05.691779 Received PING (on stdin) 07:35:05.691858 Received PORT (on stdin) 07:35:05.692101 ====> Client connect 07:35:05.693697 Received DATA (on stdin) 07:35:05.693722 > 17 bytes data, server => client 07:35:05.693735 'WE ROOLZ: 85489\r\n' 07:35:05.693771 Received DISC (on stdin) 07:35:05.693788 ====> Client forcibly disconnected 07:35:05.693958 Received QUIT (on stdin) 07:35:05.693967 quits 07:35:05.694014 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc381 # the following two lines were created while testing curl machine 127.0.0.1 login frankenstein password wrongone machine 127.0.0.1 login mary password yram === End of file netrc381 === Start of file server.cmd Testnum 381 === End of file server.cmd === Start of file valgrind381 ==95882== ==95882== Process terminating with default action of signal 4 (SIGILL) ==95882== Illegal opcode at address 0x4003082 ==95882== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==95882== by 0x4003082: main (tool_main.c:234) === End of file valgrind381 test 0385...[HTTP with --json x 2] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind385 ../src/curl -q --output log/22/curl385.out --include --trace-ascii log/22/trace385 --trace-config all --trace-time --json '{ "drink": "coffe",' --json ' "crunch": "cookie" }' http://127.0.0.1:46761/385 -H "Content-Type: drinks/hot" > log/22/stdout385 2> log/22/stderr385 385: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 385 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind385 ../src/curl -q --output log/22/curl385.out --include --trace-ascii log/22/trace385 --trace-config all --trace-time --json '{ "drink": "coffe",' --json ' "crunch": "cookie" }' http://127.0.0.1:46761/385 -H "Content-Type: drinks/hot" > log/22/stdout385 2> log/22/stderr385 === End of file commands.log === Start of file http_server.log 07:35:05.828165 ====> Client connect 07:35:05.828200 accept_connection 3 returned 4 07:35:05.828216 accept_connection 3 returned 0 07:35:05.828232 Read 93 bytes 07:35:05.828242 Process 93 bytes request 07:35:05.828255 Got request: GET /verifiedserver HTTP/1.1 07:35:05.828264 Are-we-friendly question received 07:35:05.828288 Wrote request (93 bytes) input to log/22/server.input 07:35:05.828304 Identifying ourselves as friends 07:35:05.828359 Response sent (56 bytes) and written to log/22/server.response 07:35:05.828369 special request received, no persistency 07:35:05.828378 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 385 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind385 ==96022== ==96022== Process terminating with default action of signal 4 (SIGILL) ==96022== Illegal opcode at address 0x4003082 ==96022== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96022== by 0x4003082: main (tool_main.c:234) === End of file valgrind385 test 0386...[HTTP with --json + --next] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind386 ../src/curl -q --output log/14/curl386.out --include --trace-ascii log/14/trace386 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:37963/386 --next http://127.0.0.1:37963/3860002 > log/14/stdout386 2> log/14/stderr386 386: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 386 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind386 ../src/curl -q --output log/14/curl386.out --include --trace-ascii log/14/trace386 --trace-config all --trace-time --json '{ "drink": "coffe" }' http://127.0.0.1:37963/386 --next http://127.0.0.1:37963/3860002 > log/14/stdout386 2> log/14/stderr386 === End of file commands.log === Start of file http_server.log 07:35:05.828847 ====> Client connect 07:35:05.828927 accept_connection 3 returned 4 07:35:05.828943 accept_connection 3 returned 0 07:35:05.828956 Read 93 bytes 07:35:05.828965 Process 93 bytes request 07:35:05.828976 Got request: GET /verifiedserver HTTP/1.1 07:35:05.828985 Are-we-friendly question received 07:35:05.829011 Wrote request (93 bytes) input to log/14/server.input 07:35:05.829027 Identifying ourselves as friends 07:35:05.829088 Response sent (56 bytes) and written to log/14/server.response 07:35:05.829097 special request received, no persistency 07:35:05.829106 ====> Client disconnect 0 === End of file http_server.log === StartCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind387 ../src/curl -q --output log/15/curl387.out --include --trace-ascii log/15/trace387 --trace-config all --trace-time http://127.0.0.1:36993/387 -sS --tr-encoding > log/15/stdout387 2> log/15/stderr387 of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 386 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind386 ==96024== ==96024== Process terminating with default action of signal 4 (SIGILL) ==96024== Illegal opcode at address 0x4003082 ==96024== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96024== by 0x4003082: main (tool_main.c:234) === End of file valgrind386 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind389 ../src/curl -q --output log/5/curl389.out --include --trace-ascii log/5/trace389 --trace-config all --trace-time -4 http://curlmachine.localhost:46675/389 > log/5/stdout389 2> log/5/stderr389 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind388 ../src/curl -q --include --trace-ascii log/8/trace388 --trace-config all --trace-time http://127.0.0.1:45261/3880001 -u testuser:testpass --digest http://127.0.0.1:45261/3880002 > log/8/stdout388 2> log/8/stderr388 test 0387...[Response with overly long compression chain] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind387 ../src/curl -q --output log/15/curl387.out --include --trace-ascii log/15/trace387 --trace-config all --trace-time http://127.0.0.1:36993/387 -sS --tr-encoding > log/15/stdout387 2> log/15/stderr387 387: stderr FAILED: --- log/15/check-expected 2025-07-18 07:35:06.560444975 +0000 +++ log/15/check-generated 2025-07-18 07:35:06.560444975 +0000 @@ -1 +0,0 @@ -curl: (61) Reject response due to more than 5 content encodings[CR][LF] == Contents of files in the log/15/ dir after test 387 === Start of file check-expected curl: (61) Reject response due to more than 5 content encodings[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind387 ../src/curl -q --output log/15/curl387.out --include --trace-ascii log/15/trace387 --trace-config all --trace-time http://127.0.0.1:36993/387 -sS --tr-encoding > log/15/stdout387 2> log/15/stderr387 === End of file commands.log === Start of file http_server.log 07:35:05.873069 ====> Client connect 07:35:05.873107 accept_connection 3 returned 4 07:35:05.873124 accept_connection 3 returned 0 07:35:05.873139 Read 93 bytes 07:35:05.873149 Process 93 bytes request 07:35:05.873161 Got request: GET /verifiedserver HTTP/1.1 07:35:05.873171 Are-we-friendly question received 07:35:05.873198 Wrote request (93 bytes) input to log/15/server.input 07:35:05.873214 Identifying ourselves as friends 07:35:05.873275 Response sent (56 bytes) and written to log/15/server.response 07:35:05.873285 special request received, no persistency 07:35:05.873294 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 387 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind387 ==96139== ==96139== Process terminating with default action of signal 4 (SIGILL) ==96139== Illegal opcode at address 0x4003082 ==96139== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96139== by 0x4003082: main (tool_main.c:234) === End of file valgrind387 test 0389...[*.localhost is a local host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind389 ../src/curl -q --output log/5/curl389.out --include --trace-ascii log/5/trace389 --trace-config all --trace-time -4 http://curlmachine.localhost:46675/389 > log/5/stdout389 2> log/5/stderr389 389: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 389 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind389 ../src/curl -q --output log/5/curl389.out --include --trace-ascii log/5/trace389 --trace-config all --trace-time -4 http://curlmachine.localhost:46675/389 > log/5/stdout389 2> log/5/stderr389 === End of file commands.log === Start of file http_server.log 07:35:05.924820 ====> Client connect 07:35:05.924854 accept_connection 3 returned 4 07:35:05.924870 accept_connection 3 returned 0 07:35:05.924884 Read 93 bytes 07:35:05.924894 Process 93 bytes request 07:35:05.924906 Got request: GET /verifiedserver HTTP/1.1 07:35:05.924915 Are-we-friendly question received 07:35:05.924940 Wrote request (93 bytes) input to log/5/server.input 07:35:05.924956 Identifying ourselves as friends 07:35:05.925010 Response sent (56 bytes) and written to log/5/server.response 07:35:05.925020 special request received, no persistency 07:35:05.925029 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 389 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind389 ==96237== ==96237== Process terminating with default action of signal 4 (SIGILL) ==96237== Illegal opcode at address 0x4003082 ==96237== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96237== by 0x4003082: main (tool_main.c:234) === End of file valgrind389 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind391 ../src/curl -q --output log/12/curl391.out --include --trace-ascii log/12/trace391 --trace-config all --trace-time http://127.0.0.1:37285/../../391 --path-as-is -L > log/12/stdout391 2> log/12/stderr391 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind390 ../src/curl -q --include --trace-ascii log/17/trace390 --trace-config all --trace-time http://127.0.0.1:39089/390 file://localhost/startdir/src/build-curl/tests/log/17/test390.txt ftp://127.0.0.1:39713/3900002 --parallel -o log/17/390.a -o log/17/390.b -o log/17/390.c > log/17/stdout390 2> log/17/stderr390 test 0388...[HTTP with Digest and multiple qop values with leading space] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind388 ../src/curl -q --include --trace-ascii log/8/trace388 --trace-config all --trace-time http://127.0.0.1:45261/3880001 -u testuser:testpass --digest http://127.0.0.1:45261/3880002 > log/8/stdout388 2> log/8/stderr388 388: stdout FAILED: --- log/8/check-expected 2025-07-18 07:35:06.613778310 +0000 +++ log/8/check-generated 2025-07-18 07:35:06.613778310 +0000 @@ -1,30 +0,0 @@ -HTTP/1.1 401 Authorization Required swsclose[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 23[CR][LF] -[CR][LF] -This IS the real page![LF] -HTTP/1.1 401 Authorization Required swsclose[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 401 Authorization re-negotiation please swsbounce[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 26[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 30[CR][LF] -[CR][LF] -This IS the second real page![LF] == Contents of files in the log/8/ dir after test 388 === Start of file check-expected HTTP/1.1 401 Authorization Required swsclose[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 23[CR][LF] [CR][LF] This IS the real page![LF] HTTP/1.1 401 Authorization Required swsclose[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", nonce="1053604145"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 401 Authorization re-negotiation please swsbounce[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 26[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Server: Apache/1.3.27 (Darwin) PHP/4.1.2[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 30[CR][LF] [CR][LF] This IS the second real page![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind388 ../src/curl -q --include --trace-ascii log/8/trace388 --trace-config all --trace-time http://127.0.0.1:45261/3880001 -u testuser:testpass --digest http://127.0.0.1:45261/3880002 > log/8/stdout388 2> log/8/stderr388 === End of file commands.log === Start of file http_server.log 07:35:05.918714 ====> Client connect 07:35:05.918770 accept_connection 3 returned 4 07:35:05.918787 accept_connection 3 returned 0 07:35:05.918801 Read 93 bytes 07:35:05.918811 Process 93 bytes request 07:35:05.918824 Got request: GET /verifiedserver HTTP/1.1 07:35:05.918834 Are-we-friendly question received 07:35:05.918858 Wrote request (93 bytes) input to log/8/server.input 07:35:05.918874 Identifying ourselves as friends 07:35:05.918928 Response sent (56 bytes) and written to log/8/server.response 07:35:05.918938 special request received, no persistency 07:35:05.918947 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 388 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind388 ==96246== ==96246== Process terminating with default action of signal 4 (SIGILL) ==96246== Illegal opcode at address 0x4003082 ==96246== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96246== by 0x4003082: main (tool_main.c:234) === End of file valgrind388 test 0391...[--path-as-is with redirect, keeping dotdots] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind391 ../src/curl -q --output log/12/curl391.out --include --trace-ascii log/12/trace391 --trace-config all --trace-time http://127.0.0.1:37285/../../391 --path-as-is -L > log/12/stdout391 2> log/12/stderr391 391: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 391 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind391 ../src/curl -q --output log/12/curl391.out --include --trace-ascii log/12/trace391 --trace-config all --trace-time http://127.0.0.1:37285/../../391 --path-as-is -L > log/12/stdout391 2> log/12/stderr391 === End of file commands.log === Start of file http_server.log 07:35:05.959258 ====> Client connect 07:35:05.959293 accept_connection 3 returned 4 07:35:05.959319 accept_connection 3 returned 0 07:35:05.959333 Read 93 bytes 07:35:05.959343 Process 93 bytes request 07:35:05.959355 Got request: GET /verifiedserver HTTP/1.1 07:35:05.959364 Are-we-friendly question received 07:35:05.959400 Wrote request (93 bytes) input to log/12/server.input 07:35:05.959417 Identifying ourselves as friends 07:35:05.959470 Response sent (56 bytes) and written to log/12/server.response 07:35:05.959480 special request received, no persistency 07:35:05.959488 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 391 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind391 ==96355== ==96355== Process terminating with default action of signal 4 (SIGILL) ==96355== Illegal opcode at address 0x4003082 ==96355== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96355== by 0x4003082: main (tool_main.c:234) === End of file valgrind391 test 0390...[curl HTTP, FILE and FTP in parallel] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind390 ../src/curl -q --include --trace-ascii log/17/trace390 --trace-config all --trace-time http://127.0.0.1:39089/390 file://localhost/startdir/src/build-curl/tests/log/17/test390.txt ftp://127.0.0.1:39713/3900002 --parallel -o log/17/390.a -o log/17/390.b -o log/17/390.c > log/17/stdout390 2> log/17/stderr390 curl returned 132, when expecting 0 390: exit FAILED == Contents of files in the log/17/ dir after test 390 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind390 ../src/curl -q --include --trace-ascii log/17/trace390 --trace-config all --trace-time http://127.0.0.1:39089/390 file://localhost/startdir/src/build-curl/tests/log/17/test390.txt ftp://127.0.0.1:39713/3900002 --parallel -o log/17/390.a -o log/17/390.b -o log/17/390.c > log/17/stdout390 2> log/17/stderr390 === End of file commands.log === Start of file ftp_server.log 07:35:06.109480 ====> Client connect 07:35:06.109670 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:06.109883 < "USER anonymous" 07:35:06.109914 > "331 We are happy you popped in![CR][LF]" 07:35:06.110337 < "PASS ftp@example.com" 07:35:06.110363 > "230 Welcome you silly person[CR][LF]" 07:35:06.110497 < "PWD" 07:35:06.110523 > "257 "/" is current directory[CR][LF]" 07:35:06.110659 < "EPSV" 07:35:06.110681 ====> Passive DATA channel requested by client 07:35:06.110692 DATA sockfilt for passive data channel starting... 07:35:06.112203 DATA sockfilt for passive data channel started (pid 96307) 07:35:06.112299 DATA sockfilt for passive data channel listens on port 40369 07:35:06.112337 > "229 Entering Passive Mode (|||40369|)[LF]" 07:35:06.112352 Client has been notified that DATA conn will be accepted on port 40369 07:35:06.112663 Client connects to port 40369 07:35:06.112691 ====> Client established passive DATA connection on port 40369 07:35:06.112751 < "TYPE I" 07:35:06.112774 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:06.112870 < "SIZE verifiedserver" 07:35:06.112899 > "213 17[CR][LF]" 07:35:06.113037 < "RETR verifiedserver" 07:35:06.113065 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:06.113133 =====> Closing passive DATA connection... 07:35:06.113147 Server disconnects passive DATA connection 07:35:06.113291 Server disconnected passive DATA connection 07:35:06.113313 DATA sockfilt for passive data channel quits (pid 96307) 07:35:06.113680 DATA sockfilt for passive data channel quit (pid 96307) 07:35:06.113703 =====> Closed passive DATA connection 07:35:06.113727 > "226 File transfer complete[CR][LF]" 07:35:06.156698 < "QUIT" 07:35:06.156760 > "221 bye bye baby[CR][LF]" 07:35:06.157425 MAIN sockfilt said DISC 07:35:06.157478 ====> Client disconnected 07:35:06.157558 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.955010 ====> Client connect 07:35:05.955637 Received DATA (on stdin) 07:35:05.955662 > 160 bytes data, server => client 07:35:05.955675 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:05.955686 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:05.955696 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:05.955771 < 16 bytes data, client => server 07:35:05.955782 'USER anonymous\r\n' 07:35:05.955906 Received DATA (on stdin) 07:35:05.955920 > 33 bytes data, server => client 07:35:05.955931 '331 We are happy you popped in!\r\n' 07:35:05.956233 < 22 bytes data, client => server 07:35:05.956251 'PASS ftp@example.com\r\n' 07:35:05.956353 Received DATA (on stdin) 07:35:05.956363 > 30 bytes data, server => client 07:35:05.956374 '230 Welcome you silly person\r\n' 07:35:05.956415 < 5 bytes data, client => server 07:35:05.956425 'PWD\r\n' 07:35:05.956510 Received DATA (on stdin) 07:35:05.956520 > 30 bytes data, server => client 07:35:05.956531 '257 "/" is current directory\r\n' 07:35:05.956577 < 6 bytes data, client => server 07:35:05.956587 'EPSV\r\n' 07:35:05.958343 Received DATA (on stdin) 07:35:05.958355 > 38 bytes data, server => client 07:35:05.958366 '229 Entering Passive Mode (|||40369|)\n' 07:35:05.958598 < 8 bytes data, client => server 07:35:05.958609 'TYPE I\r\n' 07:35:05.958746 Received DATA (on stdin) 07:35:05.958756 > 33 bytes data, server => client 07:35:05.958767 '200 I modify TYPE as you wanted\r\n' 07:35:05.958811 < 21 bytes data, client => server 07:35:05.958822 'SIZE verifiedserver\r\n' 07:35:05.958889 Received DATA (on stdin) 07:35:05.958901 > 8 bytes data, server => client 07:35:05.958912 '213 17\r\n' 07:35:05.958955 < 21 bytes data, client => server 07:35:05.958966 'RETR verifiedserver\r\n' 07:35:05.959134 Received DATA (on stdin) 07:35:05.959145 > 29 bytes data, server => client 07:35:05.959156 '150 Binary junk (17 bytes).\r\n' 07:35:05.959717 Received DATA (on stdin) 07:35:05.959729 > 28 bytes data, server => client 07:35:05.959740 '226 File transfer complete\r\n' 07:35:06.002493 < 6 bytes data, client => server 07:35:06.002525 'QUIT\r\n' 07:35:06.002754 Received DATA (on stdin) 07:35:06.002765 > 18 bytes data, server => client 07:35:06.002775 '221 bye bye baby\r\n' 07:35:06.003338 ====> Client disconnect 07:35:06.003548 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:06.958042 Running IPv4 version 07:35:06.958089 Listening on port 40369 07:35:06.958123 Wrote pid 96307 to log/17/server/ftp_sockdata.pid 07:35:06.958140 Received PING (on stdin) 07:35:06.958214 Received PORT (on stdin) 07:35:06.958600 ====> Client connect 07:35:06.959178 Received DATA (on stdin) 07:35:06.959190 > 17 bytes data, server => client 07:35:06.959201 'WE ROOLZ: 79834\r\n' 07:35:06.959222 Received DISC (on stdin) 07:35:06.959233 ====> Client forcibly disconnected 07:35:06.959315 Received QUIT (on stdin) 07:35:06.959326 quits 07:35:06.959388 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:05.932804 ====> Client connect 07:35:05.932837 accept_connection 3 returned 4 07:35:05.932853 accept_connection 3 returned 0 07:35:05.932867 Read 93 bytes 07:35:05.932877 Process 93 bytes request 07:35:05.932890 Got request: GET /verifiedserver HTTP/1.1 07:35:05.932899 Are-we-friendly question received 07:35:05.932928 Wrote request (93 bytes) input to log/17/server.input 07:35:05.932943 Identifying ourselves as friends 07:35:05.932994 Response sent (56 bytes) and written to log/17/server.response 07:35:05.933003 special request received, no persistency 07:35:05.933013 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 390 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file test390.txt hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind348 ../src/curl -q --output log/19/curl348.out --include --trace-ascii log/19/trace348 --trace-config all --trace-time ftp://127.0.0.1:40681/348 -T log/19/test348.txt > log/19/stdout348 2> log/19/stderr348 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind392 ../src/curl -q --output log/16/curl392.out --include --trace-ascii log/16/trace392 --trace-config all --trace-time -4 http://localhost:46739/392 -b none http://localhost:46739/392 > log/16/stdout392 2> log/16/stderr392 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind415 ../src/curl -q --output log/13/curl415.out --include --trace-ascii log/13/trace415 --trace-config all --trace-time http://127.0.0.1:33627/415 > log/13/stdout415 2> log/13/stderr415 ofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile!hellofile === End of file test390.txt === Start of file valgrind390 ==96413== ==96413== Process terminating with default action of signal 4 (SIGILL) ==96413== Illegal opcode at address 0x4003082 ==96413== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96413== by 0x4003082: main (tool_main.c:234) === End of file valgrind390 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/19/server/ftp_server.pid" --logfile "log/19/ftp_server.log" --logdir "log/19" --portfile "log/19/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40681 (log/19/server/ftp_server.port) RUN: FTP server is PID 93871 port 40681 * pid ftp => 93871 93871 test 0348...[FTP upload file with 552 disk full response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind348 ../src/curl -q --output log/19/curl348.out --include --trace-ascii log/19/trace348 --trace-config all --trace-time ftp://127.0.0.1:40681/348 -T log/19/test348.txt > log/19/stdout348 2> log/19/stderr348 348: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 348 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind348 ../src/curl -q --output log/19/curl348.out --include --trace-ascii log/19/trace348 --trace-config all --trace-time ftp://127.0.0.1:40681/348 -T log/19/test348.txt > log/19/stdout348 2> log/19/stderr348 === End of file commands.log === Start of file ftp_server.log 07:35:05.251102 FTP server listens on port IPv4/40681 07:35:05.251176 logged pid 93871 in log/19/server/ftp_server.pid 07:35:05.251197 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:05.096840 Running IPv4 version 07:35:05.096905 Listening on port 40681 07:35:05.096946 Wrote pid 94157 to log/19/server/ftp_sockctrl.pid 07:35:05.096981 Wrote port 40681 to log/19/server/ftp_server.port 07:35:05.097000 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd STOR 552 disk full Testnum 348 === End of file server.cmd === Start of file test348.txt data to see that FTP works so does it? === End of file test348.txt === Start of file valgrind348 ==96469== ==96469== Process terminating with default action of signal 4 (SIGILL) ==96469== Illegal opcode at address 0x4003082 ==96469== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96469== by 0x4003082: main (tool_main.c:234) === End of file valgrind348 setenv TZ = GMT test 0392...[HTTP secure cookies over localhost] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind392 ../src/curl -q --output log/16/curl392.out --include --trace-ascii log/16/trace392 --trace-config all --trace-time -4 http://localhost:46739/392 -b none http://localhost:46739/392 > log/16/stdout392 2> log/16/stderr392 392: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 392 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind392 ../src/curl -q --output log/16/curl392.out --include --trace-ascii log/16/trace392 --trace-config all --trace-time -4 http://localhost:46739/392 -b none http://localhost:46739/392 > log/16/stdout392 2> log/16/stderr392 === End of file commands.log === Start of file http_server.log 07:35:06.093722 ====> Client connect 07:35:06.093755 accept_connection 3 returned 4 07:35:06.093771 accept_connection 3 returned 0 07:35:06.093785 Read 93 bytes 07:35:06.093795 Process 93 bytes request 07:35:06.093806 Got request: GET /verifiedserver HTTP/1.1 07:35:06.093815 Are-we-friendly question received 07:35:06.093838 Wrote request (93 bytes) input to log/16/server.input 07:35:06.093852 Identifying ourselves as friends 07:35:06.093909 Response sent (56 bytes) and written to log/16/server.response 07:35:06.093918 special request received, no persistency 07:35:06.093927 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 392 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind392 ==96519== ==96519== Process terminating with default action of signal 4 (SIGILL) ==96519== Illegal opcode at address 0x4003082 ==96519== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96519== by 0x4003082: main (tool_main.c:234) === End of file valgrind392 test 0415...[HTTP response with control code then negative Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind415 ../src/curl -q --output log/13/curl415.out --include --trace-ascii log/13/trace415 --trace-config all --trace-time http://127.0.0.1:33627/415 > log/13/stdout415 2> log/13/stderr415 415: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 415 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind415 ../src/curl -q --output log/13/curl415.out --include --trace-ascii log/13/trace415 --trace-config all --trace-time http://127.0.0.1:33627/415 > log/13/stdout415 2> log/13/stderr415 === End of file cCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind418 ../src/curl -q --output log/11/curl418.out --include --trace-ascii log/11/trace418 --trace-config all --trace-time http://127.0.0.1:41173/418 -sS --tr-encoding > log/11/stdout418 2> log/11/stderr418 ommands.log === Start of file http_server.log 07:35:06.280362 ====> Client connect 07:35:06.280392 accept_connection 3 returned 4 07:35:06.280408 accept_connection 3 returned 0 07:35:06.280422 Read 93 bytes 07:35:06.280431 Process 93 bytes request 07:35:06.280444 Got request: GET /verifiedserver HTTP/1.1 07:35:06.280454 Are-we-friendly question received 07:35:06.280476 Wrote request (93 bytes) input to log/13/server.input 07:35:06.280492 Identifying ourselves as friends 07:35:06.280543 Response sent (56 bytes) and written to log/13/server.response 07:35:06.280553 special request received, no persistency 07:35:06.280562 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 415 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind415 ==97101== ==97101== Process terminating with default action of signal 4 (SIGILL) ==97101== Illegal opcode at address 0x4003082 ==97101== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97101== by 0x4003082: main (tool_main.c:234) === End of file valgrind415 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind405 ../src/curl -q --output log/7/curl405.out --include --trace-ascii log/7/trace405 --trace-config all --trace-time -m 5 --insecure ftps://127.0.0.1:40197/path/to/file/405 > log/7/stdout405 2> log/7/stderr405 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind402 ../src/curl -q --output log/23/curl402.out --include --trace-ascii log/23/trace402 --trace-config all --trace-time --insecure --ftp-ssl-reqd ftp://127.0.0.1:36145/402 > log/23/stdout402 2> log/23/stderr402 test 0418...[Response with multiple Transfer-Encoding headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind418 ../src/curl -q --output log/11/curl418.out --include --trace-ascii log/11/trace418 --trace-config all --trace-time http://127.0.0.1:41173/418 -sS --tr-encoding > log/11/stdout418 2> log/11/stderr418 418: stderr FAILED: --- log/11/check-expected 2025-07-18 07:35:06.943778317 +0000 +++ log/11/check-generated 2025-07-18 07:35:06.943778317 +0000 @@ -1 +0,0 @@ -curl: (61) Reject response due to more than 5 content encodings[CR][LF] == Contents of files in the log/11/ dir after test 418 === Start of file check-expected curl: (61) Reject response due to more than 5 content encodings[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind418 ../src/curl -q --output log/11/curl418.out --include --trace-ascii log/11/trace418 --trace-config all --trace-time http://127.0.0.1:41173/418 -sS --tr-encoding > log/11/stdout418 2> log/11/stderr418 === End of file commands.log === Start of file http_server.log 07:35:06.308456 ====> Client connect 07:35:06.308488 accept_connection 3 returned 4 07:35:06.308504 accept_connection 3 returned 0 07:35:06.308515 Read 93 bytes 07:35:06.308524 Process 93 bytes request 07:35:06.308535 Got request: GET /verifiedserver HTTP/1.1 07:35:06.308542 Are-we-friendly question received 07:35:06.308562 Wrote request (93 bytes) input to log/11/server.input 07:35:06.308575 Identifying ourselves as friends 07:35:06.308620 Response sent (56 bytes) and written to log/11/server.response 07:35:06.308628 special request received, no persistency 07:35:06.308635 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 418 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind418 ==97238== ==97238== Process terminating with default action of signal 4 (SIGILL) ==97238== Illegal opcode at address 0x4003082 ==97238== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97238== by 0x4003082: main (tool_main.c:234) === End of file valgrind418 test 0405...[FTPS operation to FTP port] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind405 ../src/curl -q --output log/7/curl405.out --include --trace-ascii log/7/trace405 --trace-config all --trace-time -m 5 --insecure ftps://127.0.0.1:40197/path/to/file/405 > log/7/stdout405 2> log/7/stderr405 curl returned 132, when expecting 35,28 405: exit FAILED == Contents of files in the log/7/ dir after test 405 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind405 ../src/curl -q --output log/7/curl405.out --include --trace-ascii log/7/trace405 --trace-config all --trace-time -m 5 --insecure ftps://127.0.0.1:40197/path/to/file/405 > log/7/stdout405 2> log/7/stderr405 === End of file commands.log === Start of file ftp_server.log 07:35:06.435551 ====> Client connect 07:35:06.435708 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:06.435995 < "USER anonymous" 07:35:06.436033 > "331 We are happy you popped in![CR][LF]" 07:35:06.436202 < "PASS ftp@example.com" 07:35:06.436228 > "230 Welcome you silly person[CR][LF]" 07:35:06.436378 < "PWD" 07:35:06.436408 > "257 "/" is current directory[CR][LF]" 07:35:06.436554 < "EPSV" 07:35:06.436577 ====> Passive DATA channel requested by client 07:35:06.436589 DATA sockfilt for passive data channel starting... 07:35:06.438685 DATA sockfilt for passive data channel started (pid 97049) 07:35:06.438797 DATA sockfilt for passive data channel listens on port 39911 07:35:06.438839 > "229 Entering Passive Mode (|||39911|)[LF]" 07:35:06.438858 Client has been notified that DATA conn will be accepted on port 39911 07:35:06.439085 Client connects to port 39911 07:35:06.439113 ====> Client established passive DATA connection on port 39911 07:35:06.439177 < "TYPE I" 07:35:06.439204 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:06.439365 < "SIZE verifiedserver" 07:35:06.439401 > "213 17[CR][LF]" 07:35:06.439628 < "RETR verifiedserver" 07:35:06.439668 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:06.439740 =====> Closing passive DATA connection... 07:35:06.439757 Server disconnects passive DATA connection 07:35:06.439968 Server disconnected passive DATA connection 07:35:06.440010 DATA sockfilt for passive data channel quits (pid 97049) 07:35:06.440720 DATA sockfilt for passive data channel quit (pid 97049) 07:35:06.440751 =====> Closed passive DATA connection 07:35:06.440780 > "226 File transfer complete[CR][LF]" 07:35:06.480747 < "QUIT" 07:35:06.480795 > "221 bye bye baby[CR][LF]" 07:35:06.481225 MAIN sockfilt said DISC 07:35:06.481252 ====> Client disconnected 07:35:06.481313 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:06.281434 ====> Client connect 07:35:06.281710 Received DATA (on stdin) 07:35:06.281727 > 160 bytes data, server => client 07:35:06.281739 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:06.281750 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:06.281760 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:06.281840 < 16 bytes data, client => server 07:35:06.281855 'USER anonymous\r\n' 07:35:06.282028 Received DATA (on stdin) 07:35:06.282041 > 33 bytes data, server => client 07:35:06.282053 '331 We are happy you popped in!\r\n' 07:35:06.282103 < 22 bytes data, client => server 07:35:06.282116 'PASS ftp@example.com\r\n' 07:35:06.282218 Received DATA (on stdin) 07:35:06.282230 > 30 bytes data, server => client 07:35:06.282240 '230 Welcome you silly person\r\n' 07:35:06.282286 < 5 bytes data, client => server 07:35:06.282298 'PWD\r\n' 07:35:06.282396 Received DATA (on stdin) 07:35:06.282407 > 30 bytes data, server => client 07:35:06.282417 '257 "/" is current directory\r\n' 07:35:06.282466 < 6 bytes data, client => server 07:35:06.282477 'EPSV\r\n' 07:35:06.284855 Received DATA (on stdin) 07:35:06.284870 > 38 bytes data, server => client 07:35:06.284881 '229 Entering Passive Mode (|||39911|)\n' 07:35:06.284990 < 8 bytes data, client => server 07:35:06.285007 'TYPE I\r\n' 07:35:06.285196 Received DATA (on stdin) 07:35:06.285209 > 33 bytes data, server => client 07:35:06.285220 '200 I modify TYPE as you wanted\r\n' 07:35:06.285269 < 21 bytes data, client => server 07:35:06.285283 'SIZE verifiedserver\r\n' 07:35:06.285391 Received DATA (on stdin) 07:35:06.285403 > 8 bytes data, server => client 07:35:06.285414 '213 17\r\n' 07:35:06.285462 < 21 bytes data, client => server 07:35:06.285475 'RETR verifiedserver\r\n' 07:35:06.285751 Received DATA (on stdin) 07:35:06.285765 > 29 bytes data, server => client 07:35:06.285777 '150 Binary junk (17 bytes).\r\n' 07:35:06.286772 Received DATA (on stdin) 07:35:06.286786 > 28 bytes data, server => client 07:35:06.286796 '2CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind419 ../src/curl -q --output log/20/curl419.out --include --trace-ascii log/20/trace419 --trace-config all --trace-time http://127.0.0.1:37169/419 -D loggg/save-here/fails > log/20/stdout419 2> log/20/stderr419 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind416 ../src/curl -q --output log/10/curl416.out --include --trace-ascii log/10/trace416 --trace-config all --trace-time --ignore-content-length ftp://127.0.0.1:39731/416 > log/10/stdout416 2> log/10/stderr416 26 File transfer complete\r\n' 07:35:06.326585 < 6 bytes data, client => server 07:35:06.326609 'QUIT\r\n' 07:35:06.326789 Received DATA (on stdin) 07:35:06.326801 > 18 bytes data, server => client 07:35:06.326815 '221 bye bye baby\r\n' 07:35:06.327163 ====> Client disconnect 07:35:06.327302 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:06.284504 Running IPv4 version 07:35:06.284564 Listening on port 39911 07:35:06.284600 Wrote pid 97049 to log/7/server/ftp_sockdata.pid 07:35:06.284620 Received PING (on stdin) 07:35:06.284704 Received PORT (on stdin) 07:35:06.285029 ====> Client connect 07:35:06.285729 Received DATA (on stdin) 07:35:06.285752 > 17 bytes data, server => client 07:35:06.285764 'WE ROOLZ: 81417\r\n' 07:35:06.285862 Received DISC (on stdin) 07:35:06.285880 ====> Client forcibly disconnected 07:35:06.286413 Received QUIT (on stdin) 07:35:06.286431 quits 07:35:06.286492 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 405 === End of file server.cmd === Start of file valgrind405 ==97276== ==97276== Process terminating with default action of signal 4 (SIGILL) ==97276== Illegal opcode at address 0x4003082 ==97276== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97276== by 0x4003082: main (tool_main.c:234) === End of file valgrind405 test 0402...[FTP SSL required on non-SSL server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind402 ../src/curl -q --output log/23/curl402.out --include --trace-ascii log/23/trace402 --trace-config all --trace-time --insecure --ftp-ssl-reqd ftp://127.0.0.1:36145/402 > log/23/stdout402 2> log/23/stderr402 402: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 402 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind402 ../src/curl -q --output log/23/curl402.out --include --trace-ascii log/23/trace402 --trace-config all --trace-time --insecure --ftp-ssl-reqd ftp://127.0.0.1:36145/402 > log/23/stdout402 2> log/23/stderr402 === End of file commands.log === Start of file ftp_server.log 07:35:06.432322 ====> Client connect 07:35:06.432476 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:06.432731 < "USER anonymous" 07:35:06.432763 > "331 We are happy you popped in![CR][LF]" 07:35:06.432903 < "PASS ftp@example.com" 07:35:06.432925 > "230 Welcome you silly person[CR][LF]" 07:35:06.433050 < "PWD" 07:35:06.433075 > "257 "/" is current directory[CR][LF]" 07:35:06.433204 < "EPSV" 07:35:06.433225 ====> Passive DATA channel requested by client 07:35:06.433236 DATA sockfilt for passive data channel starting... 07:35:06.434788 DATA sockfilt for passive data channel started (pid 97036) 07:35:06.434891 DATA sockfilt for passive data channel listens on port 35743 07:35:06.434923 > "229 Entering Passive Mode (|||35743|)[LF]" 07:35:06.434939 Client has been notified that DATA conn will be accepted on port 35743 07:35:06.435127 Client connects to port 35743 07:35:06.435152 ====> Client established passive DATA connection on port 35743 07:35:06.435213 < "TYPE I" 07:35:06.435238 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:06.435369 < "SIZE verifiedserver" 07:35:06.435400 > "213 17[CR][LF]" 07:35:06.435527 < "RETR verifiedserver" 07:35:06.435555 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:06.435621 =====> Closing passive DATA connection... 07:35:06.435635 Server disconnects passive DATA connection 07:35:06.435775 Server disconnected passive DATA connection 07:35:06.435797 DATA sockfilt for passive data channel quits (pid 97036) 07:35:06.436004 DATA sockfilt for passive data channel quit (pid 97036) 07:35:06.436024 =====> Closed passive DATA connection 07:35:06.436047 > "226 File transfer complete[CR][LF]" 07:35:06.477133 < "QUIT" 07:35:06.477189 > "221 bye bye baby[CR][LF]" 07:35:06.478261 MAIN sockfilt said DISC 07:35:06.478290 ====> Client disconnected 07:35:06.478364 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:06.278174 ====> Client connect 07:35:06.278476 Received DATA (on stdin) 07:35:06.278491 > 160 bytes data, server => client 07:35:06.278502 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:06.278513 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:06.278522 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:06.278593 < 16 bytes data, client => server 07:35:06.278604 'USER anonymous\r\n' 07:35:06.278753 Received DATA (on stdin) 07:35:06.278764 > 33 bytes data, server => client 07:35:06.278774 '331 We are happy you popped in!\r\n' 07:35:06.278817 < 22 bytes data, client => server 07:35:06.278827 'PASS ftp@example.com\r\n' 07:35:06.278912 Received DATA (on stdin) 07:35:06.278922 > 30 bytes data, server => client 07:35:06.278931 '230 Welcome you silly person\r\n' 07:35:06.278970 < 5 bytes data, client => server 07:35:06.278979 'PWD\r\n' 07:35:06.279061 Received DATA (on stdin) 07:35:06.279071 > 30 bytes data, server => client 07:35:06.279081 '257 "/" is current directory\r\n' 07:35:06.279126 < 6 bytes data, client => server 07:35:06.279135 'EPSV\r\n' 07:35:06.280930 Received DATA (on stdin) 07:35:06.280942 > 38 bytes data, server => client 07:35:06.280953 '229 Entering Passive Mode (|||35743|)\n' 07:35:06.281043 < 8 bytes data, client => server 07:35:06.281056 'TYPE I\r\n' 07:35:06.281226 Received DATA (on stdin) 07:35:06.281237 > 33 bytes data, server => client 07:35:06.281247 '200 I modify TYPE as you wanted\r\n' 07:35:06.281289 < 21 bytes data, client => server 07:35:06.281298 'SIZE verifiedserver\r\n' 07:35:06.281387 Received DATA (on stdin) 07:35:06.281397 > 8 bytes data, server => client 07:35:06.281406 '213 17\r\n' 07:35:06.281446 < 21 bytes data, client => server 07:35:06.281456 'RETR verifiedserver\r\n' 07:35:06.281554 Received DATA (on stdin) 07:35:06.281576 > 29 bytes data, server => client 07:35:06.281588 '150 Binary junk (17 bytes).\r\n' 07:35:06.282036 Received DATA (on stdin) 07:35:06.282049 > 28 bytes data, server => client 07:35:06.282060 '226 File transfer complete\r\n' 07:35:06.322961 < 6 bytes data, client => server 07:35:06.322987 'QUIT\r\n' 07:35:06.323182 Received DATA (on stdin) 07:35:06.323194 > 18 bytes data, server => client 07:35:06.323204 '221 bye bye baby\r\n' 07:35:06.324199 ====> Client disconnect 07:35:06.324357 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:06.280530 Running IPv4 version 07:35:06.280577 Listening on port 35743 07:35:06.280709 Wrote pid 97036 to log/23/server/ftp_sockdata.pid 07:35:06.280726 Received PING (on stdin) 07:35:06.280805 Received PORT (on stdin) 07:35:06.281074 ====> Client connect 07:35:06.281623 Received DATA (on stdin) 07:35:06.281634 > 17 bytes data, server => client 07:35:06.281644 'WE ROOLZ: 81897\r\n' 07:35:06.281669 Received DISC (on stdin) 07:35:06.281680 ====> Client forcibly disconnected 07:35:06.281792 Received QUIT (on stdin) 07:35:06.281802 quits 07:35:06.281857 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 402 === End of file server.cmd === Start of file valgrind402 ==97272== ==97272== Process terminating with default action of signal 4 (SIGILL) ==97272== Illegal opcode at address 0x4003082 ==97272== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97272== by 0x4003082: main (tool_main.c:234) === End of file valgrind402 test 0419...[--dump-header to file that cannot be created] ../libtool --mode=execute /usr/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind396 ../src/curl -q --output log/21/curl396.out --include --trace-ascii log/21/trace396 --trace-config all --trace-time http://127.0.0.1:41087/396 --compressed > log/21/stdout396 2> log/21/stderr396 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind394 ../src/curl -q --output log/9/curl394.out --include --trace-ascii log/9/trace394 --trace-config all --trace-time http://127.0.0.1:34999/394 > log/9/stdout394 2> log/9/stderr394 bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind419 ../src/curl -q --output log/20/curl419.out --include --trace-ascii log/20/trace419 --trace-config all --trace-time http://127.0.0.1:37169/419 -D loggg/save-here/fails > log/20/stdout419 2> log/20/stderr419 curl returned 132, when expecting 23 419: exit FAILED == Contents of files in the log/20/ dir after test 419 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind419 ../src/curl -q --output log/20/curl419.out --include --trace-ascii log/20/trace419 --trace-config all --trace-time http://127.0.0.1:37169/419 -D loggg/save-here/fails > log/20/stdout419 2> log/20/stderr419 === End of file commands.log === Start of file http_server.log 07:35:06.333220 ====> Client connect 07:35:06.333255 accept_connection 3 returned 4 07:35:06.333273 accept_connection 3 returned 0 07:35:06.333287 Read 93 bytes 07:35:06.333297 Process 93 bytes request 07:35:06.333310 Got request: GET /verifiedserver HTTP/1.1 07:35:06.333319 Are-we-friendly question received 07:35:06.333356 Wrote request (93 bytes) input to log/20/server.input 07:35:06.333373 Identifying ourselves as friends 07:35:06.333436 Response sent (56 bytes) and written to log/20/server.response 07:35:06.333448 special request received, no persistency 07:35:06.333458 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 419 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind419 ==97309== ==97309== Process terminating with default action of signal 4 (SIGILL) ==97309== Illegal opcode at address 0x4003082 ==97309== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97309== by 0x4003082: main (tool_main.c:234) === End of file valgrind419 test 0416...[FTP growing file support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind416 ../src/curl -q --output log/10/curl416.out --include --trace-ascii log/10/trace416 --trace-config all --trace-time --ignore-content-length ftp://127.0.0.1:39731/416 > log/10/stdout416 2> log/10/stderr416 416: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 416 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind416 ../src/curl -q --output log/10/curl416.out --include --trace-ascii log/10/trace416 --trace-config all --trace-time --ignore-content-length ftp://127.0.0.1:39731/416 > log/10/stdout416 2> log/10/stderr416 === End of file commands.log === Start of file ftp_server.log 07:35:06.437495 ====> Client connect 07:35:06.437633 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:06.437937 < "USER anonymous" 07:35:06.437977 > "331 We are happy you popped in![CR][LF]" 07:35:06.439244 < "PASS ftp@example.com" 07:35:06.439413 > "230 Welcome you silly person[CR][LF]" 07:35:06.439602 < "PWD" 07:35:06.439634 > "257 "/" is current directory[CR][LF]" 07:35:06.439819 < "EPSV" 07:35:06.439842 ====> Passive DATA channel requested by client 07:35:06.439854 DATA sockfilt for passive data channel starting... 07:35:06.442245 DATA sockfilt for passive data channel started (pid 97066) 07:35:06.442373 DATA sockfilt for passive data channel listens on port 39727 07:35:06.442413 > "229 Entering Passive Mode (|||39727|)[LF]" 07:35:06.442430 Client has been notified that DATA conn will be accepted on port 39727 07:35:06.442664 Client connects to port 39727 07:35:06.442691 ====> Client established passive DATA connection on port 39727 07:35:06.442770 < "TYPE I" 07:35:06.442799 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:06.442944 < "SIZE verifiedserver" 07:35:06.442978 > "213 17[CR][LF]" 07:35:06.443121 < "RETR verifiedserver" 07:35:06.443161 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:06.443234 =====> Closing passive DATA connection... 07:35:06.443251 Server disconnects passive DATA connection 07:35:06.443324 Server disconnected passive DATA connection 07:35:06.443355 DATA sockfilt for passive data channel quits (pid 97066) 07:35:06.444301 DATA sockfilt for passive data channel quit (pid 97066) 07:35:06.444339 =====> Closed passive DATA connection 07:35:06.444376 > "226 File transfer complete[CR][LF]" 07:35:06.483727 < "QUIT" 07:35:06.483787 > "221 bye bye baby[CR][LF]" 07:35:06.483927 MAIN sockfilt said DISC 07:35:06.483968 ====> Client disconnected 07:35:06.484032 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:06.283382 ====> Client connect 07:35:06.283632 Received DATA (on stdin) 07:35:06.283646 > 160 bytes data, server => client 07:35:06.283659 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:06.283670 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:06.283680 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:06.283760 < 16 bytes data, client => server 07:35:06.283773 'USER anonymous\r\n' 07:35:06.284985 Received DATA (on stdin) 07:35:06.285013 > 33 bytes data, server => client 07:35:06.285025 '331 We are happy you popped in!\r\n' 07:35:06.285092 < 22 bytes data, client => server 07:35:06.285106 'PASS ftp@example.com\r\n' 07:35:06.285383 Received DATA (on stdin) 07:35:06.285409 > 30 bytes data, server => client 07:35:06.285422 '230 Welcome you silly person\r\n' 07:35:06.285469 < 5 bytes data, client => server 07:35:06.285482 'PWD\r\n' 07:35:06.285656 Received DATA (on stdin) 07:35:06.285669 > 30 bytes data, server => client 07:35:06.285679 '257 "/" is current directory\r\n' 07:35:06.285733 < 6 bytes data, client => server 07:35:06.285743 'EPSV\r\n' 07:35:06.288427 Received DATA (on stdin) 07:35:06.288442 > 38 bytes data, server => client 07:35:06.288454 '229 Entering Passive Mode (|||39727|)\n' 07:35:06.288604 < 8 bytes data, client => server 07:35:06.288615 'TYPE I\r\n' 07:35:06.288790 Received DATA (on stdin) 07:35:06.288801 > 33 bytes data, server => client 07:35:06.288811 '200 I modify TYPE as you wanted\r\n' 07:35:06.288856 < 21 bytes data, client => server 07:35:06.288867 'SIZE verifiedserver\r\n' 07:35:06.288966 Received DATA (on stdin) 07:35:06.288977 > 8 bytes data, server => client 07:35:06.288987 '213 17\r\n' 07:35:06.289030 < 21 bytes data, client => server 07:35:06.289042 'RETR verifiedserver\r\n' 07:35:06.289228 Received DATA (on stdin) 07:35:06.289240 > 29 bytes data, server => client 07:35:06.289250 '150 Binary junk (17 bytes).\r\n' 07:35:06.290376 Received DATA (on stdin) 07:35:06.290394 > 28 bytes data, server => client 07:35:06.290405 '226 File transfer complete\r\n' 07:35:06.329530 < 6 bytes data, client => server 07:35:06.329562 'QUIT\r\n' 07:35:06.329781 Received DATA (on stdin) 07:35:06.329792 > 18 bytes data, server => client 07:35:06.329803 '221 bye bye baby\r\n' 07:35:06.329852 ====> Client disconnect 07:35:06.330021 Received ACKD (on stdiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind393 ../src/curl -q --output log/1/curl393.out --include --trace-ascii log/1/trace393 --trace-config all --trace-time http://127.0.0.1:38941/393 --max-filesize 2000000 > log/1/stdout393 2> log/1/stderr393 n) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:06.288017 Running IPv4 version 07:35:06.288094 Listening on port 39727 07:35:06.288152 Wrote pid 97066 to log/10/server/ftp_sockdata.pid 07:35:06.288173 Received PING (on stdin) 07:35:06.288275 Received PORT (on stdin) 07:35:06.288576 ====> Client connect 07:35:06.289163 Received DATA (on stdin) 07:35:06.289180 > 17 bytes data, server => client 07:35:06.289190 'WE ROOLZ: 81708\r\n' 07:35:06.289246 Received DISC (on stdin) 07:35:06.289261 ====> Client forcibly disconnected 07:35:06.289811 Received QUIT (on stdin) 07:35:06.289836 quits 07:35:06.289900 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd RETRSIZE 7 Testnum 416 === End of file server.cmd === Start of file valgrind416 ==97298== ==97298== Process terminating with default action of signal 4 (SIGILL) ==97298== Illegal opcode at address 0x4003082 ==97298== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97298== by 0x4003082: main (tool_main.c:234) === End of file valgrind416 test 0394...[HTTP with rubbish in Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind394 ../src/curl -q --output log/9/curl394.out --include --trace-ascii log/9/trace394 --trace-config all --trace-time http://127.0.0.1:34999/394 > log/9/stdout394 2> log/9/stderr394 394: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 394 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind394 ../src/curl -q --output log/9/curl394.out --include --trace-ascii log/9/trace394 --trace-config all --trace-time http://127.0.0.1:34999/394 > log/9/stdout394 2> log/9/stderr394 === End of file commands.log === Start of file http_server.log 07:35:06.186691 ====> Client connect 07:35:06.186749 accept_connection 3 returned 4 07:35:06.186765 accept_connection 3 returned 0 07:35:06.186778 Read 93 bytes 07:35:06.186787 Process 93 bytes request 07:35:06.186798 Got request: GET /verifiedserver HTTP/1.1 07:35:06.186806 Are-we-friendly question received 07:35:06.186828 Wrote request (93 bytes) input to log/9/server.input 07:35:06.186843 Identifying ourselves as friends 07:35:06.186896 Response sent (56 bytes) and written to log/9/server.response 07:35:06.186906 special request received, no persistency 07:35:06.186914 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 394 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind394 ==96655== ==96655== Process terminating with default action of signal 4 (SIGILL) ==96655== Illegal opcode at address 0x4003082 ==96655== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96655== by 0x4003082: main (tool_main.c:234) === End of file valgrind394 test 0396...[HTTP GET zstd compressed content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind396 ../src/curl -q --output log/21/curl396.out --include --trace-ascii log/21/trace396 --trace-config all --trace-time http://127.0.0.1:41087/396 --compressed > log/21/stdout396 2> log/21/stderr396 396: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 396 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind396 ../src/curl -q --output log/21/curl396.out --include --trace-ascii log/21/trace396 --trace-config all --trace-time http://127.0.0.1:41087/396 --compressed > log/21/stdout396 2> log/21/stderr396 === End of file commands.log === Start of file http_server.log 07:35:06.206013 ====> Client connect 07:35:06.206045 accept_connection 3 returned 4 07:35:06.206061 accept_connection 3 returned 0 07:35:06.206074 Read 93 bytes 07:35:06.206084 Process 93 bytes request 07:35:06.206094 Got request: GET /verifiedserver HTTP/1.1 07:35:06.206103 Are-we-friendly question received 07:35:06.206129 Wrote request (93 bytes) input to log/21/server.input 07:35:06.206145 Identifying ourselves as friends 07:35:06.206204 Response sent (56 bytes) and written to log/21/server.response 07:35:06.206213 special request received, no persistency 07:35:06.206222 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 396 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind396 ==96789== ==96789== Process terminating with default action of signal 4 (SIGILL) ==96789== Illegal opcode at address 0x4003082 ==96789== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96789== by 0x4003082: main (tool_main.c:234) === End of file valgrind396 test 0393...[HTTP max-filesize and out-of-range Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind393 ../src/curl -q --output log/1/curl393.out --include --trace-ascii log/1/trace393 --trace-config all --trace-time http://127.0.0.1:38941/393 --max-filesize 2000000 > log/1/stdout393 2> log/1/stderr393 393: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 393 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind393 ../src/curl -q --output log/1/curl393.out --include --trace-ascii log/1/trace393 --trace-config all --trace-time http://127.0.0.1:38941/393 --max-filesize 2000000 > log/1/stdout393 2> log/1/stderr393 === End of file commands.log === Start of file http_server.log 07:35:06.179125 ====> Client connect 07:35:06.179157 accept_connection 3 returned 4 07:35:06.179173 accept_connection 3 returned 0 07:35:06.179186 Read 93 bytes 07:35:06.179240 Process 93 bytes request 07:35:06.179254 Got request: GET /verifiedserver HTTP/1.1 07:35:06.179263 Are-we-friendly question received 07:35:06.179287 Wrote request (93 bytes) input to log/1/server.input 07:35:06.179303 Identifying ourselves as friends 07:35:06.179385 Response sent (56 bytes) and written to log/1/server.response 07:35:06.179395CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind395 ../src/curl -q --output log/24/curl395.out --include --trace-ascii log/24/trace395 --trace-config all --trace-time http://127.0.0.1:38675/395 > log/24/stdout395 2> log/24/stderr395 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind397 ../src/curl -q --output log/2/curl397.out --include --trace-ascii log/2/trace397 --trace-config all --trace-time http://127.0.0.1:45457/397 --compressed > log/2/stdout397 2> log/2/stderr397 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind398 ../src/curl -q --output log/3/curl398.out --include --trace-ascii log/3/trace398 --trace-config all --trace-time http://127.0.0.1:42345/398 > log/3/stdout398 2> log/3/stderr398 special request received, no persistency 07:35:06.179403 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 393 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind393 ==96625== ==96625== Process terminating with default action of signal 4 (SIGILL) ==96625== Illegal opcode at address 0x4003082 ==96625== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96625== by 0x4003082: main (tool_main.c:234) === End of file valgrind393 test 0395...[HTTP and out-of-range Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind395 ../src/curl -q --output log/24/curl395.out --include --trace-ascii log/24/trace395 --trace-config all --trace-time http://127.0.0.1:38675/395 > log/24/stdout395 2> log/24/stderr395 395: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 395 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind395 ../src/curl -q --output log/24/curl395.out --include --trace-ascii log/24/trace395 --trace-config all --trace-time http://127.0.0.1:38675/395 > log/24/stdout395 2> log/24/stderr395 === End of file commands.log === Start of file http_server.log 07:35:06.204627 ====> Client connect 07:35:06.204662 accept_connection 3 returned 4 07:35:06.204679 accept_connection 3 returned 0 07:35:06.204693 Read 93 bytes 07:35:06.204703 Process 93 bytes request 07:35:06.204716 Got request: GET /verifiedserver HTTP/1.1 07:35:06.204725 Are-we-friendly question received 07:35:06.204748 Wrote request (93 bytes) input to log/24/server.input 07:35:06.204763 Identifying ourselves as friends 07:35:06.204821 Response sent (56 bytes) and written to log/24/server.response 07:35:06.204866 special request received, no persistency 07:35:06.204882 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 395 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind395 ==96704== ==96704== Process terminating with default action of signal 4 (SIGILL) ==96704== Illegal opcode at address 0x4003082 ==96704== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96704== by 0x4003082: main (tool_main.c:234) === End of file valgrind395 test 0397...[HTTP GET zstd compressed content of size more than CURL_MAX_WRITE_SIZE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind397 ../src/curl -q --output log/2/curl397.out --include --trace-ascii log/2/trace397 --trace-config all --trace-time http://127.0.0.1:45457/397 --compressed > log/2/stdout397 2> log/2/stderr397 397: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 397 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind397 ../src/curl -q --output log/2/curl397.out --include --trace-ascii log/2/trace397 --trace-config all --trace-time http://127.0.0.1:45457/397 --compressed > log/2/stdout397 2> log/2/stderr397 === End of file commands.log === Start of file http_server.log 07:35:06.227923 ====> Client connect 07:35:06.227954 accept_connection 3 returned 4 07:35:06.227968 accept_connection 3 returned 0 07:35:06.227981 Read 93 bytes 07:35:06.227989 Process 93 bytes request 07:35:06.228000 Got request: GET /verifiedserver HTTP/1.1 07:35:06.228008 Are-we-friendly question received 07:35:06.228029 Wrote request (93 bytes) input to log/2/server.input 07:35:06.228041 Identifying ourselves as friends 07:35:06.228092 Response sent (56 bytes) and written to log/2/server.response 07:35:06.228102 special request received, no persistency 07:35:06.228111 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 397 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind397 ==96878== ==96878== Process terminating with default action of signal 4 (SIGILL) ==96878== Illegal opcode at address 0x4003082 ==96878== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96878== by 0x4003082: main (tool_main.c:234) === End of file valgrind397 test 0398...[Reject HTTP/1.1 response with colon-less header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind398 ../src/curl -q --output log/3/curl398.out --include --trace-ascii log/3/trace398 --trace-config all --trace-time http://127.0.0.1:42345/398 > log/3/stdout398 2> log/3/stderr398 398: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 398 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind398 ../src/curl -q --output log/3/curl398.out --include --trace-ascii log/3/trace398 --trace-config all --trace-time http://127.0.0.1:42345/398 > log/3/stdout398 2> log/3/stderr398 === End of file commands.log === Start of file http_server.log 07:35:06.230555 ====> Client connect 07:35:06.230589 accept_connection 3 returned 4 07:35:06.230604 accept_connection 3 returned 0 07:35:06.230617 Read 93 bytes 07:35:06.230627 Process 93 bytes request 07:35:06.230639 Got request: GET /verifiedserver HTTP/1.1 07:35:06.230647 Are-we-friendly question received 07:35:06.230672 Wrote request (93 bytes) input to log/3/server.input 07:35:06.230688 Identifying ourselves as friends 07:35:06.230743 Response sent (56 bytes) and written to log/3/server.response 07:35:06.230754 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind411 ../src/curl -q --output log/6/curl411.out --include --trace-ascii log/6/trace411 --trace-config all --trace-time -K log/6/missing http://localhost > log/6/stdout411 2> log/6/stderr411 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind399 ../src/curl -q --output log/18/curl399.out --include --trace-ascii log/18/trace399 --trace-config all --trace-time -K log/18/input%TESTNUM > log/18/stdout399 2> log/18/stderr399 special request received, no persistency 07:35:06.230762 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 398 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind398 ==96839== ==96839== Process terminating with default action of signal 4 (SIGILL) ==96839== Illegal opcode at address 0x4003082 ==96839== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96839== by 0x4003082: main (tool_main.c:234) === End of file valgrind398 * starts no server test 0411...[-K with missing file causes error] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind411 ../src/curl -q --output log/6/curl411.out --include --trace-ascii log/6/trace411 --trace-config all --trace-time -K log/6/missing http://localhost > log/6/stdout411 2> log/6/stderr411 411: stderr FAILED: --- log/6/check-expected 2025-07-18 07:35:07.010444984 +0000 +++ log/6/check-generated 2025-07-18 07:35:07.010444984 +0000 @@ -1,3 +0,0 @@ -curl: cannot read config from 'log/6/missing'[CR][LF] -curl: option -K: error encountered when reading a file[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/6/ dir after test 411 === Start of file check-expected curl: cannot read config from 'log/6/missing'[CR][LF] curl: option -K: error encountered when reading a file[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind411 ../src/curl -q --output log/6/curl411.out --include --trace-ascii log/6/trace411 --trace-config all --trace-time -K log/6/missing http://localhost > log/6/stdout411 2> log/6/stderr411 === End of file commands.log === Start of file server.cmd Testnum 411 === End of file server.cmd === Start of file valgrind411 ==96963== ==96963== Process terminating with default action of signal 4 (SIGILL) ==96963== Illegal opcode at address 0x4003082 ==96963== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==96963== by 0x4003082: main (tool_main.c:234) === End of file valgrind411 test 0399...[65536 bytes long host name in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind399 ../src/curl -q --output log/18/curl399.out --include --trace-ascii log/18/trace399 --trace-config all --trace-time -K log/18/input%TESTNUM > log/18/stdout399 2> log/18/stderr399 curl returned 132, when expecting 3 399: exit FAILED == Contents of files in the log/18/ dir after test 399 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind399 ../src/curl -q --output log/18/curl399.out --include --trace-ascii log/18/trace399 --trace-config all --trace-time -K log/18/input%TESTNUM > log/18/stdout399 2> log/18/stderr399 === End of file commands.log === Start of file http_server.log 07:35:06.269169 ====> Client connect 07:35:06.269204 accept_connection 3 returned 4 07:35:06.269221 accept_connection 3 returned 0 07:35:06.269237 Read 93 bytes 07:35:06.269247 Process 93 bytes request 07:35:06.269261 Got request: GET /verifiedserver HTTP/1.1 07:35:06.269270 Are-we-friendly question received 07:35:06.269295 Wrote request (93 bytes) input to log/18/server.input 07:35:06.269318 Identifying ourselves as friends 07:35:06.269375 Response sent (56 bytes) and written to log/18/server.response 07:35:06.269385 special request received, no persistency 07:35:06.269394 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file input%TESTNUM url = http://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind422 ../src/curl -q --output log/15/curl422.out --include --trace-ascii log/15/trace422 --trace-config all --trace-time -O -I --next http://127.0.0.1:36993/422 > log/15/stdout422 2> log/15/stderr422 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind420 ../src/curl -q --output log/22/curl420.out --include --trace-ascii log/22/trace420 --trace-config all --trace-time http://127.0.0.1:46761/func_test/del_cookie -b log/22/cookie420 -c log/22/save420 > log/22/stdout420 2> log/22/stderr420 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/399 === End of file input%TESTNUM === Start of file server.cmd Testnum 399 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind399 ==97040== ==97040== Process terminating with default action of signal 4 (SIGILL) ==97040== Illegal opcode at address 0x4003082 ==97040== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97040== by 0x4003082: main (tool_main.c:234) === End of file valgrind399 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind421 ../src/curl -q --output log/14/curl421.out --include --trace-ascii log/14/trace421 --trace-config all --trace-time http://127.0.0.1:37963/421 -w '%{stderr}%{header_json}\n' -s > log/14/stdout421 2> log/14/stderr421 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind423 ../src/curl -q --trace-ascii log/5/trace423 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:46675/423?qqqq#ffff" "h55p://hello2000:1/423?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:46675/423?qqqq#ffff" -w '%{url.host}+%{url.path}+%{url.scheme}+%{url.user}+%{url.password}+%{url.port}+%{url.query}+%{url.fragment}\n' > log/5/stdout423 2> log/5/stderr423 * starts no server test 0422...[use --next with missing URL before it] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind422 ../src/curl -q --output log/15/curl422.out --include --trace-ascii log/15/trace422 --trace-config all --trace-time -O -I --next http://127.0.0.1:36993/422 > log/15/stdout422 2> log/15/stderr422 422: stderr FAILED: --- log/15/check-expected 2025-07-18 07:35:07.153778322 +0000 +++ log/15/check-generated 2025-07-18 07:35:07.153778322 +0000 @@ -1,3 +0,0 @@ -curl: missing URL before --next[CR][LF] -curl: option --next: is badly used here[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/15/ dir after test 422 === Start of file check-expected curl: missing URL before --next[CR][LF] curl: option --next: is badly used here[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind422 ../src/curl -q --output log/15/curl422.out --include --trace-ascii log/15/trace422 --trace-config all --trace-time -O -I --next http://127.0.0.1:36993/422 > log/15/stdout422 2> log/15/stderr422 === End of file commands.log === Start of file server.cmd Testnum 422 === End of file server.cmd === Start of file valgrind422 ==97540== ==97540== Process terminating with default action of signal 4 (SIGILL) ==97540== Illegal opcode at address 0x4003082 ==97540== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97540== by 0x4003082: main (tool_main.c:234) === End of file valgrind422 test 0420...[Setting cookies set with expired dates that were loaded from jar] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind420 ../src/curl -q --output log/22/curl420.out --include --trace-ascii log/22/trace420 --trace-config all --trace-time http://127.0.0.1:46761/func_test/del_cookie -b log/22/cookie420 -c log/22/save420 > log/22/stdout420 2> log/22/stderr420 420: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 420 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind420 ../src/curl -q --output log/22/curl420.out --include --trace-ascii log/22/trace420 --trace-config all --trace-time http://127.0.0.1:46761/func_test/del_cookie -b log/22/cookie420 -c log/22/save420 > log/22/stdout420 2> log/22/stderr420 === End of file commands.log === Start of file cookie420 127.0.0.1 FALSE /func_test FALSE 21709598616 mycookie6 991 #HttpOnly_127.0.0.1 FALSE /func_test FALSE 21709598616 mycookie5 990 #HttpOnly_127.0.0.1 FALSE /func_test FALSE 21709598616 mycookie4 950 #HttpOnly_127.0.0.1 FALSE /func_test FALSE 21709598616 mycookie3 900 #HttpOnly_127.0.0.1 FALSE /func_test/ FALSE 21709598616 mycookie2 5900 #HttpOnly_127.0.0.1 FALSE / FALSE 21709598616 mycookie1 4900 #HttpOnly_127.0.0.1 FALSE /func_test/ FALSE 0 mycookie 1200 === End of file cookie420 === Start of file http_server.log 07:35:06.416909 ====> Client connect 07:35:06.416942 accept_connection 3 returned 4 07:35:06.416957 accept_connection 3 returned 0 07:35:06.416971 Read 93 bytes 07:35:06.416981 Process 93 bytes request 07:35:06.416994 Got request: GET /verifiedserver HTTP/1.1 07:35:06.417003 Are-we-friendly question received 07:35:06.417027 Wrote request (93 bytes) input to log/22/server.input 07:35:06.417043 Identifying ourselves as friends 07:35:06.417095 Response sent (56 bytes) and written to log/22/server.response 07:35:06.417104 special request received, no persistency 07:35:06.417113 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 420 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind420 ==97546== ==97546== Process terminating with default action of signal 4 (SIGILL) ==97546== Illegal opcode at address 0x4003082 ==97546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97546== by 0x4003082: main (tool_main.c:234) === End of file valgrind420 test 0421...[HTTP GET multiple headers and %{header_json}] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind421 ../src/curl -q --output log/14/curl421.out --include --trace-ascii log/14/trace421 --trace-config all --trace-time http://127.0.0.1:37963/421 -w '%{stderr}%{header_json}\n' -s > log/14/stdout421 2> log/14/stderr421 421: stderr FAILED: --- log/14/check-expected 2025-07-18 07:35:07.177111656 +0000 +++ log/14/check-generated 2025-07-18 07:35:07.177111656 +0000 @@ -1,19 +0,0 @@ -{"server":["nginx"],[CR][LF] -"date":["Tue, 07 Mar 2023 15:14:41 GMT"],[CR][LF] -"content-type":["application/json"],[CR][LF] -"content-length":["6"],[CR][LF] -"vary":["Accept-Encoding","Accept-Encoding","Accept"],[CR][LF] -"access-control-allow-origin":["*"],[CR][LF] -"referrer-policy":["strict-origin-when-cross-origin","strict-origin-when-cross-origin"],[CR][LF] -"access-control-allow-methods":["GET, POST, PUT, DELETE, OPTIONS"],[CR][LF] -"access-control-max-age":["1728000"],[CR][LF] -"access-control-allow-headers":["Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS"],[CR][LF] -"access-control-expose-headers":[""],[CR][LF] -"etag":["W/\"2678f9ab2ba550d164e7cc014aefd31e\""],[CR][LF] -"cache-control":["max-age=0, private, must-revalidate"],[CR][LF] -"x-request-id":["375b343b3d2ecf9b442c0daf00fc4a9a"],[CR][LF] -"strict-transport-security":["max-age=31536000; includeSubDomains"],[CR][LF] -"x-content-type-options":["nosniff"],[CR][LF] -"x-xss-protection":["1; mode=block"],[CR][LF] -"feature-policy":["accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"][CR][LF] -}[CR][LF] == Contents of files in the log/14/ dir after test 421 === Start of file check-expected {"server":["nginx"],[CR][LF] "date":["Tue, 07 Mar 2023 15:14:41 GMT"],[CR][LF] "content-type":["application/json"],[CR][LF] "content-length":["6"],[CR][LF] "vary":["Accept-Encoding","Accept-Encoding","Accept"],[CR][LF] "access-control-allow-origin":["*"],[CR][LF] "referrer-policy":["strict-origin-when-cross-origin","strict-origin-when-cross-origin"],[CR][LF] "access-control-allow-methods":["GET, POST, PUT, DELETE, OPTIONS"],[CR][LF] "access-control-max-age":["1728000"],[CR][LF] "access-control-allow-headers":["Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS"],[CR][LF] "access-control-expose-headers":[""],[CR][LF] "etag":["W/\"2678f9ab2ba550d164e7cc014aefd31e\""],[CR][LF] "cache-control":["max-age=0, private, must-revalidate"],[CR][LF] "x-request-id":["375b343b3d2ecf9b442c0daf00fc4a9a"],[CR][LF] "strict-transport-security":["max-age=31536000; includeSubDomains"],[CR][LF] "x-content-type-options":["nosniff"],[CR][LF] "x-xss-protection":["1; mode=block"],[CR][LF] "feature-policy":["accelerometer 'none'; camera 'none'; geolocation 'none'; gyroscope 'none'; magnetometer 'none'; microphone 'none'; payment 'none'; usb 'none'"][CR][LF] }[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind421 ../src/curl -q --output log/14/curl421.out --include --trace-ascii log/14/trace421 --trace-config all --trace-time http://127.0.0.1:37963/421 -w '%{stderr}%{header_json}\n' -s > log/14/stdout421 2> log/14/stderr421 === End of file commands.log === Start of file http_server.log 07:35:06.436229 ====> Client connect 07:35:06.436265 accept_connection 3 returned 4 07:35:06.436339 accept_connection 3 returned 0 07:35:06.436356 Read 93 bytes 07:35:06.436366 Process 93 bytes request 07:35:06.436380 Got request: GET /verifiedserver HTTP/1.1 07:35:06.436389 Are-we-friendly question received 07:35:06.436415 Wrote request (93 bytes) input to log/14/server.input 07:35:06.436431 Identifying ourselves as friends 07:35:06.436488 Response sent (56 bytes) and written to log/14/server.response 07:35:06.436497 special request received, no persistency 07:35:06.436505 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 421 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind421 ==97604== ==97604== Process terminating with default action of signal 4 (SIGILL) ==97604== Illegal opcode at address 0x4003082 ==97604== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97604== by 0x4003082: main (tool_main.c:234) === End of file valgrind421 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind424 ../src/curl -q --trace-ascii log/8/trace424 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:45261/424?qqqq#ffff" "h55p://hello2000:1/424?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:45261/424?qqqq#ffff" -w '%{urle.host}+%{urle.path}+%{urle.scheme}+%{urle.user}+%{urle.password}+%{urle.port}+%{urle.query}+%{urle.fragment}\n' -x http://127.0.0.1:45261/ -L > log/8/stdout424 2> log/8/stderr424 test 0423...[-w with url.* variables] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind423 ../src/curl -q --trace-ascii log/5/trace423 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:46675/423?qqqq#ffff" "h55p://hello2000:1/423?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:46675/423?qqqq#ffff" -w '%{url.host}+%{url.path}+%{url.scheme}+%{url.user}+%{url.password}+%{url.port}+%{url.query}+%{url.fragment}\n' > log/5/stdout423 2> log/5/stderr423 423: stdout FAILED: --- log/5/check-expected 2025-07-18 07:35:07.183778323 +0000 +++ log/5/check-generated 2025-07-18 07:35:07.183778323 +0000 @@ -1,4 +0,0 @@ -127.0.0.1+/423+http+uuuu+pppp+46675+qqqq+ffff[LF] -hello2000+/423+h55p+++1+qqqq+ffff[LF] -+++++++[LF] -127.0.0.1+/423+http+u22u+p22p+46675+qqqq+ffff[LF] == Contents of files in the log/5/ dir after test 423 === Start of file check-expected 127.0.0.1+/423+http+uuuu+pppp+46675+qqqq+ffff[LF] hello2000+/423+h55p+++1+qqqq+ffff[LF] +++++++[LF] 127.0.0.1+/423+http+u22u+p22p+46675+qqqq+ffff[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind423 ../src/curl -q --trace-ascii log/5/trace423 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:46675/423?qqqq#ffff" "h55p://hello2000:1/423?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:46675/423?qqqq#ffff" -w '%{url.host}+%{url.path}+%{url.scheme}+%{url.user}+%{url.password}+%{url.port}+%{url.query}+%{url.fragment}\n' > log/5/stdout423 2> log/5/stderr423 === End of file commands.log === Start of file http_server.log 07:35:06.461646 ====> Client connect 07:35:06.461675 accept_connection 3 returned 4 07:35:06.461688 accept_connection 3 returned 0 07:35:06.461702 Read 93 bytes 07:35:06.461710 Process 93 bytes request 07:35:06.461723 Got request: GET /verifiedserver HTTP/1.1 07:35:06.461732 Are-we-friendly question received 07:35:06.461754 Wrote request (93 bytes) input to log/5/server.input 07:35:06.461769 Identifying ourselves as friends 07:35:06.461819 Response sent (56 bytes) and written to log/5/server.response 07:35:06.461828 special request received, no persistency 07:35:06.461837 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 423 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind423 ==97684== ==97684== Process terminating with default action of signal 4 (SIGILL) ==97684== Illegal opcode at address 0x4003082 ==97684== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97684== by 0x4003082: main (tool_main.c:234) === End of file valgrind423 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind425 ../src/curl -q --output log/12/curl425.out --include --trace-ascii log/12/trace425 --trace-config all --trace-time -T log/12/up425 http://127.0.0.1:37285/425/?fullpath > log/12/stdout425 2> log/12/stderr425 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind426 ../src/curl -q --output log/17/curl426.out --include --trace-ascii log/17/trace426 --trace-config all --trace-time http://127.0.0.1:39089/426 -d foobar -C 3 > log/17/stdout426 2> log/17/stderr426 test 0424...[-w with urle.* variables] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind424 ../src/curl -q --trace-ascii log/8/trace424 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:45261/424?qqqq#ffff" "h55p://hello2000:1/424?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:45261/424?qqqq#ffff" -w '%{urle.host}+%{urle.path}+%{urle.scheme}+%{urle.user}+%{urle.password}+%{urle.port}+%{urle.query}+%{urle.fragment}\n' -x http://127.0.0.1:45261/ -L > log/8/stdout424 2> log/8/stderr424 424: stdout FAILED: --- log/8/check-expected 2025-07-18 07:35:07.237111656 +0000 +++ log/8/check-generated 2025-07-18 07:35:07.237111656 +0000 @@ -1,4 +0,0 @@ -anotherhost.example+/4240002+http+++2023+moo.html+[LF] -hello2000+/424+h55p+++1+qqqq+ffff[LF] -+++++++[LF] -anotherhost.example+/4240002+http+++2023+moo.html+[LF] == Contents of files in the log/8/ dir after test 424 === Start of file check-expected anotherhost.example+/4240002+http+++2023+moo.html+[LF] hello2000+/424+h55p+++1+qqqq+ffff[LF] +++++++[LF] anotherhost.example+/4240002+http+++2023+moo.html+[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind424 ../src/curl -q --trace-ascii log/8/trace424 --trace-config all --trace-time "http://uuuu:pppp@127.0.0.1:45261/424?qqqq#ffff" "h55p://hello2000:1/424?qqqq#ffff" "local host" "http://u22u:p22p@127.0.0.1:45261/424?qqqq#ffff" -w '%{urle.host}+%{urle.path}+%{urle.scheme}+%{urle.user}+%{urle.password}+%{urle.port}+%{urle.query}+%{urle.fragment}\n' -x http://127.0.0.1:45261/ -L > log/8/stdout424 2> log/8/stderr424 === End of file commands.log === Start of file http_server.log 07:35:06.499623 ====> Client connect 07:35:06.499659 accept_connection 3 returned 4 07:35:06.499677 accept_connection 3 returned 0 07:35:06.499692 Read 93 bytes 07:35:06.499702 Process 93 bytes request 07:35:06.499715 Got request: GET /verifiedserver HTTP/1.1 07:35:06.499724 Are-we-friendly question received 07:35:06.499749 Wrote request (93 bytes) input to log/8/server.input 07:35:06.499766 Identifying ourselves as friends 07:35:06.499823 Response sent (56 bytes) and written to log/8/server.response 07:35:06.499834 special request received, no persistency 07:35:06.499843 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 424 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind424 ==97781== ==97781== Process terminating with default action of signal 4 (SIGILL) ==97781== Illegal opcode at address 0x4003082 ==97781== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97781== by 0x4003082: main (tool_main.c:234) === End of file valgrind424 test 0425...[HTTP PUT with path ending with slash + query] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind425 ../src/curl -q --output log/12/curl425.out --include --trace-ascii log/12/trace425 --trace-config all --trace-time -T log/12/up425 http://127.0.0.1:37285/425/?fullpath > log/12/stdout425 2> log/12/stderr425 425: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 425 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind425 ../src/curl -q --output log/12/curl425.out --include --trace-ascii log/12/trace425 --trace-config all --trace-time -T log/12/up425 http://127.0.0.1:37285/425/?fullpath > log/12/stdout425 2> log/12/stderr425 === End of file commands.log === Start of file http_server.log 07:35:06.518000 ====> Client connect 07:35:06.518040 accept_connection 3 returned 4 07:35:06.518056 accept_connection 3 returned 0 07:35:06.518070 Read 93 bytes 07:35:06.518080 Process 93 bytes request 07:35:06.518092 Got request: GET /verifiedserver HTTP/1.1 07:35:06.518101 Are-we-friendly question received 07:35:06.518124 Wrote request (93 bytes) input to log/12/server.input 07:35:06.518140 Identifying ourselves as friends 07:35:06.518188 Response sent (56 bytes) and written to log/12/server.response 07:35:06.518197 special request received, no persistency 07:35:06.518205 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 425 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file up425 content === End of file up425 === Start of file valgrind425 ==97814== ==97814== Process terminating with default action of signal 4 (SIGILL) ==97814== Illegal opcode at address 0x4003082 ==97814== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97814== by 0x4003082: main (tool_main.c:234) === End of file valgrind425 test 0426...[try --data with --continue-at] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind426 ../src/curl -q --output log/17/curl426.out --include --trace-ascii log/17/trace426 --trace-config all --trace-time http://127.0.0.1:39089/426 -d foobar -C 3 > log/17/stdout426 2> log/17/stderr426 curl returned 132, when expecting 2 426: exit FAILED == Contents of files in the log/17/ dir after test 426 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind426 ../src/curl -q --output log/17/curl426.out --include --trace-ascii log/17/trace426 --trace-config all --trace-time http://127.0.0.1:39089/426 -d foobar -C 3 > log/17/stdout426 2> log/17/stderr426 === End of file commands.log === Start of file http_server.log 07:35:06.587173 ====> Client connect 07:35:06.587208 accept_connection 3 returned 4 07:35:06.587224 accept_connection 3 returned 0 07:35:06.587238 Read 93 bytes 07:35:06.587247 Process 93 bytes request 07:35:06.587261 Got request: GET /verifiedserver HTTP/1.1 07:35:06.587270 Are-we-friendly question received 07:35:06.587296 Wrote request (93 bytes) input to log/17/server.input 07:35:06.587311 Identifying ourselves as friends 07:35:06.587360 Response sent (56 bytes) and written to log/17/server.response 07:35:06.587369 special request received, no persistency 07:35:06.587378 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * usinCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind427 ../src/curl -q --output log/19/curl427.out --include --trace-ascii log/19/trace427 --trace-config all --trace-time http://127.0.0.1:33487/427 -c log/19/cookies427 -L > log/19/stdout427 2> log/19/stderr427 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind428 ../src/curl -q --output log/16/curl428.out --include --trace-ascii log/16/trace428 --trace-config all --trace-time http://127.0.0.1:46739/428 -K log/16/cmd > log/16/stdout428 2> log/16/stderr428 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind435 ../src/curl -q --include --trace-ascii log/10/trace435 --trace-config all --trace-time http://127.0.0.1:34851/435 http://127.0.0.1:34851/435 -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n' > log/10/stdout435 2> log/10/stderr435 g HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 426 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind426 ==97919== ==97919== Process terminating with default action of signal 4 (SIGILL) ==97919== Illegal opcode at address 0x4003082 ==97919== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97919== by 0x4003082: main (tool_main.c:234) === End of file valgrind426 test 0427...[Keep Cookie: header within 8190 bytes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind427 ../src/curl -q --output log/19/curl427.out --include --trace-ascii log/19/trace427 --trace-config all --trace-time http://127.0.0.1:33487/427 -c log/19/cookies427 -L > log/19/stdout427 2> log/19/stderr427 427: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 427 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind427 ../src/curl -q --output log/19/curl427.out --include --trace-ascii log/19/trace427 --trace-config all --trace-time http://127.0.0.1:33487/427 -c log/19/cookies427 -L > log/19/stdout427 2> log/19/stderr427 === End of file commands.log === Start of file http_server.log 07:35:06.614905 ====> Client connect 07:35:06.614937 accept_connection 3 returned 4 07:35:06.614953 accept_connection 3 returned 0 07:35:06.614967 Read 93 bytes 07:35:06.614976 Process 93 bytes request 07:35:06.614988 Got request: GET /verifiedserver HTTP/1.1 07:35:06.614997 Are-we-friendly question received 07:35:06.615021 Wrote request (93 bytes) input to log/19/server.input 07:35:06.615036 Identifying ourselves as friends 07:35:06.615089 Response sent (56 bytes) and written to log/19/server.response 07:35:06.615098 special request received, no persistency 07:35:06.615107 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 427 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind427 ==97979== ==97979== Process terminating with default action of signal 4 (SIGILL) ==97979== Illegal opcode at address 0x4003082 ==97979== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==97979== by 0x4003082: main (tool_main.c:234) === End of file valgrind427 setenv FUNVALUE = contents setenv VALUE2 = curl setenv BLANK = test 0428...[Expand environment variables within config file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind428 ../src/curl -q --output log/16/curl428.out --include --trace-ascii log/16/trace428 --trace-config all --trace-time http://127.0.0.1:46739/428 -K log/16/cmd > log/16/stdout428 2> log/16/stderr428 428: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 428 === Start of file cmd --variable %FUNVALUE --variable %VALUE2 --variable %BLANK --variable %curl_NOT_SET=default --expand-data 1{{FUNVALUE}}2{{VALUE2}}3{{curl_NOT_SET}}4{{BLANK}}5\{{verbatim}}6{{not.good}}7{{}} === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind428 ../src/curl -q --output log/16/curl428.out --include --trace-ascii log/16/trace428 --trace-config all --trace-time http://127.0.0.1:46739/428 -K log/16/cmd > log/16/stdout428 2> log/16/stderr428 === End of file commands.log === Start of file http_server.log 07:35:06.639952 ====> Client connect 07:35:06.639985 accept_connection 3 returned 4 07:35:06.640000 accept_connection 3 returned 0 07:35:06.640014 Read 93 bytes 07:35:06.640023 Process 93 bytes request 07:35:06.640036 Got request: GET /verifiedserver HTTP/1.1 07:35:06.640046 Are-we-friendly question received 07:35:06.640069 Wrote request (93 bytes) input to log/16/server.input 07:35:06.640085 Identifying ourselves as friends 07:35:06.640135 Response sent (56 bytes) and written to log/16/server.response 07:35:06.640144 special request received, no persistency 07:35:06.640153 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 428 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind428 ==98038== ==98038== Process terminating with default action of signal 4 (SIGILL) ==98038== Illegal opcode at address 0x4003082 ==98038== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98038== by 0x4003082: main (tool_main.c:234) === End of file valgrind428 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind442 ../src/curl -q --output log/24/curl442.out --include --trace-ascii log/24/trace442 --trace-config all --trace-time http://attack.invalid:38675/a/b/442 -b log/24/cookie442 --resolve attack.invalid:38675:127.0.0.1 -L > log/24/stdout442 2> log/24/stderr442 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind443 ../src/curl -q --output log/2/curl443.out --include --trace-ascii log/2/trace443 --trace-config all --trace-time http://attack.invalid:45457/a/b/443 -b log/2/cookie443 --resolve attack.invalid:45457:127.0.0.1 -L > log/2/stdout443 2> log/2/stderr443 test 0435...[verify -w local/remote port+ip after connection reuse] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind435 ../src/curl -q --include --trace-ascii log/10/trace435 --trace-config all --trace-time http://127.0.0.1:34851/435 http://127.0.0.1:34851/435 -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n' > log/10/stdout435 2> log/10/stderr435 435: stdout FAILED: --- log/10/check-expected 2025-07-18 07:35:07.520444997 +0000 +++ log/10/check-generated 2025-07-18 07:35:07.520444997 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Content-Length: 0[CR][LF] -[CR][LF] -local port == [digits][LF] -local ip == 127.0.0.1[LF] -remote_ip == 127.0.0.1[LF] -remote_port == 34851[LF] -HTTP/1.1 200 OK[CR][LF] -Content-Length: 0[CR][LF] -[CR][LF] -local port == [digits][LF] -local ip == 127.0.0.1[LF] -remote_ip == 127.0.0.1[LF] -remote_port == 34851[LF] == Contents of files in the log/10/ dir after test 435 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Content-Length: 0[CR][LF] [CR][LF] local port == [digits][LF] local ip == 127.0.0.1[LF] remote_ip == 127.0.0.1[LF] remote_port == 34851[LF] HTTP/1.1 200 OK[CR][LF] Content-Length: 0[CR][LF] [CR][LF] local port == [digits][LF] local ip == 127.0.0.1[LF] remote_ip == 127.0.0.1[LF] remote_port == 34851[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind435 ../src/curl -q --include --trace-ascii log/10/trace435 --trace-config all --trace-time http://127.0.0.1:34851/435 http://127.0.0.1:34851/435 -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n' > log/10/stdout435 2> log/10/stderr435 === End of file commands.log === Start of file http_server.log 07:35:06.852516 ====> Client connect 07:35:06.852547 accept_connection 3 returned 4 07:35:06.852562 accept_connection 3 returned 0 07:35:06.852575 Read 93 bytes 07:35:06.852584 Process 93 bytes request 07:35:06.852595 Got request: GET /verifiedserver HTTP/1.1 07:35:06.852604 Are-we-friendly question received 07:35:06.852628 Wrote request (93 bytes) input to log/10/server.input 07:35:06.852655 Identifying ourselves as friends 07:35:06.852709 Response sent (56 bytes) and written to log/10/server.response 07:35:06.852719 special request received, no persistency 07:35:06.852728 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 435 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind435 ==98389== ==98389== Process terminating with default action of signal 4 (SIGILL) ==98389== Illegal opcode at address 0x4003082 ==98389== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98389== by 0x4003082: main (tool_main.c:234) === End of file valgrind435 test 0443...[Cookie header in request no longer than 8K] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind443 ../src/curl -q --output log/2/curl443.out --include --trace-ascii log/2/trace443 --trace-config all --trace-time http://attack.invalid:45457/a/b/443 -b log/2/cookie443 --resolve attack.invalid:45457:127.0.0.1 -L > log/2/stdout443 2> log/2/stderr443 443: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 443 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind443 ../src/curl -q --output log/2/curl443.out --include --trace-ascii log/2/trace443 --trace-config all --trace-time http://attack.invalid:45457/a/b/443 -b log/2/cookie443 --resolve attack.invalid:45457:127.0.0.1 -L > log/2/stdout443 2> log/2/stderr443 === End of file commands.log === Start of file cookie443 attack.invalid TRUE / FALSE 0 huge-1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-1 attack.invalid TRUE / FALSE 0 huge-2 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-2 attack.invalid TRUE / FALSE 0 huge-3 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3 attack.invalid TRUE / FALSE 0 huge-4 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4 attack.invalid TRUE / FALSE 0 huge-5 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-5 attack.invalid TRUE / FALSE 0 huge-6 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-6 attack.invalid TRUE / FALSE 0 huge-7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-7 attack.invalid TRUE / FALSE 0 huge-8 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-8 attack.invalid TRUE / FALSE 0 huge-9 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9 attack.invalid TRUE / FALSE 0 huge-10 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10 attack.invalid TRUE / FALSE 0 huge-11 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-11 attack.invalid TRUE / FALSE 0 huge-12 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-12 attack.invalid TRUE / FALSE 0 huge-13 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-13 attack.invalid TRUE / FALSE 0 huge-14 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-14 attack.invalid TRUE / FALSE 0 huge-15 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-15 attack.invalid TRUE / FALSE 0 huge-16 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-16 attack.invalid TRUE / FALSE 0 huge-17 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-17 attack.invalid TRUE / FALSE 0 huge-18 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-18 attack.invalid TRUE / FALSE 0 huge-19 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-19 attack.invalid TRUE / FALSE 0 huge-20 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-20 === End of file cookie443 === Start of file http_server.log 07:35:06.866783 ====> Client connect 07:35:06.866817 accept_connection 3 returned 4 07:35:06.866832 accept_connection 3 returned 0 07:35:06.866845 Read 93 bytes 07:35:06.866854 Process 93 bytes request 07:35:06.866867 Got request: GET /verifiedserver HTTP/1.1 07:35:06.866875 Are-we-friendly question received 07:35:06.866899 Wrote request (93 bytes) input to log/2/server.input 07:35:06.866913 Identifying ourselves as friends 07:35:06.866968 Response sent (56 bytes) and written to log/2/server.response 07:35:06.866977 special request received, no persistency 07:35:06.866985 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 443 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind443 ==98480== ==98480== Process terminating with default action of signal 4 (SIGILL) ==98480== Illegal opcode at address 0x4003082 ==98480== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98480== by 0x4003082: main (tool_main.c:234) === End of file valgrind443 test 0442...[Send capped huge number of matching cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind442 ../src/curl -q --output log/24/curl442.out --include --trace-ascii log/24/trace442 --trace-config all --trace-time http://attack.invalid:38675/a/b/442 -b log/24/cookie442 --resolve attack.invalid:38675:127.0.0.1 -L > log/24/stdout442 2> log/24/stderr442 442: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 442 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind442 ../src/curl -q --output log/24/curl442.out --include --trace-ascii log/24/trace442 --trace-config all --trace-time http://attack.invalid:38675/a/b/442 -b log/24/cookie442 --resolve attack.invalid:38675:127.0.0.1 -L > log/24/stdout442 2> log/24/stderr442 === End of file commands.log === Start of file cookie442 attack.invalid TRUE / FALSE 0 name1 could-be-large-1 attack.invalid TRUE / FALSE 0 name2 could-be-large-2 attack.invalid TRUE / FALSE 0 name3 could-be-large-3 attack.invalid TRUE / FALSE 0 name4 could-be-large-4 attack.invalid TRUE / FALSE 0 name5 could-be-large-5 attack.invalid TRUE / FALSE 0 name6 could-be-large-6 attack.invalid TRUE / FALSE 0 name7 could-be-large-7 attack.invalid TRUE / FALSE 0 name8 could-be-large-8 attack.invalid TRUE / FALSE 0 name9 could-be-large-9 attack.invalid TRUE / FALSE 0 name10 could-be-large-10 attack.invalid TRUE / FALSE 0 name11 could-be-large-11 attack.invalid TRUE / FALSE 0 name12 could-be-large-12 attack.invalid TRUE / FALSE 0 name13 could-be-large-13 attack.invalid TRUE / FALSE 0 name14 could-be-large-14 attack.invalid TRUE / FALSE 0 name15 could-be-large-15 attack.invalid TRUE / FALSE 0 name16 could-be-large-16 attack.invalid TRUE / FALSE 0 name17 could-be-large-17 attack.invalid TRUE / FALSE 0 name18 could-be-large-18 attack.invalid TRUE / FALSE 0 name19 could-be-large-19 attack.invalid TRUE / FALSE 0 name20 could-be-large-20 attack.invalid TRUE / FALSE 0 name21 could-be-large-21 attack.invalid TRUE / FALSE 0 name22 could-be-large-22 attack.invalid TRUE / FALSE 0 name23 could-be-large-23 attack.invalid TRUE / FALSE 0 name24 could-be-large-24 attack.invalid TRUE / FALSE 0 name25 could-be-large-25 attack.invalid TRUE / FALSE 0 name26 could-be-large-26 attack.invalid TRUE / FALSE 0 name27 could-be-large-27 attack.invalid TRUE / FALSE 0 name28 could-be-large-28 attack.invalid TRUE / FALSE 0 name29 could-be-large-29 attack.invalid TRUE / FALSE 0 name30 could-be-large-30 attack.invalid TRUE / FALSE 0 name31 could-be-large-31 attack.invalid TRUE / FALSE 0 name32 could-be-large-32 attack.invalid TRUE / FALSE 0 name33 could-be-large-33 attack.invalid TRUE / FALSE 0 name34 could-be-large-34 attack.invalid TRUE / FALSE 0 name35 could-be-large-35 attack.invalid TRUE / FALSE 0 name36 could-be-large-36 attack.invalid TRUE / FALSE 0 name37 could-be-large-37 attack.invalid TRUE / FALSE 0 name38 could-be-large-38 attack.invalid TRUE / FALSE 0 name39 could-be-large-39 attack.invalid TRUE / FALSE 0 name40 could-be-large-40 attack.invalid TRUE / FALSE 0 name41 could-be-large-41 attack.invalid TRUE / FALSE 0 name42 could-be-large-42 attack.invalid TRUE / FALSE 0 name43 could-be-large-43 attack.invalid TRUE / FALSE 0 name44 could-be-large-44 attack.invalid TRUE / FALSE 0 name45 could-be-large-45 attack.invalid TRUE / FALSE 0 name46 could-be-large-46 attack.invalid TRUE / FALSE 0 name47 could-be-large-47 attack.invalid TRUE / FALSE 0 name48 could-be-large-48 attack.invalid TRUE / FALSE 0 name49 could-be-large-49 attack.invalid TRUE / FALSE 0 name50 could-be-large-50 attack.invalid TRUE / FALSE 0 name51 could-be-large-51 attack.invalid TRUE / FALSE 0 name52 could-be-large-52 attack.invalid TRUE / FALSE 0 name53 could-be-large-53 attack.invalid TRUE / FALSE 0 name54 could-be-large-54 attack.invalid TRUE / FALSE 0 name55 could-be-large-55 attack.invalid TRUE / FALSE 0 name56 could-be-large-56 attack.invalid TRUE / FALSE 0 name57 could-be-large-57 attack.invalid TRUE / FALSE 0 name58 could-be-large-58 attack.invalid TRUE / FALSE 0 name59 could-be-large-59 attack.invalid TRUE / FALSE 0 name60 could-be-large-60 attack.invalid TRUE / FALSE 0 name61 could-be-large-61 attack.invalid TRUE / FALSE 0 name62 could-be-large-62 attack.invalid TRUE / FALSE 0 name63 could-be-large-63 attack.invalid TRUE / FALSE 0 name64 could-be-large-64 attack.invalid TRUE / FALSE 0 name65 could-be-large-65 attack.invalid TRUE / FALSE 0 name66 could-be-large-66 attack.invalid TRUE / FALSE 0 name67 could-be-large-67 attack.invalid TRUE / FALSE 0 name68 could-be-large-68 attack.invalid TRUE / FALSE 0 name69 could-be-large-69 attack.invalid TRUE / FALSE 0 name70 could-be-large-70 attack.invalid TRUE / FALSE 0 name71 could-be-large-71 attack.invalid TRUE / FALSE 0 name72 could-be-large-72 attack.invalid TRUE / FALSE 0 name73 could-be-large-73 attack.invalid TRUE / FALSE 0 name74 could-be-large-74 attack.invalid TRUE / FALSE 0 name75 could-be-large-75 attack.invalid TRUE / FALSE 0 name76 could-be-large-76 attack.invalid TRUE / FALSE 0 name77 could-be-large-77 attack.invalid TRUE / FALSE 0 name78 could-be-large-78 attack.invalid TRUE / FALSE 0 name79 could-be-large-79 attack.invalid TRUE / FALSE 0 name80 could-be-large-80 attack.invalid TRUE / FALSE 0 name81 could-be-large-81 attack.invalid TRUE / FALSE 0 name82 could-be-large-82 attack.invalid TRUE / FALSE 0 name83 could-be-large-83 attack.invalid TRUE / FALSE 0 name84 could-be-large-84 attack.invalid TRUE / FALSE 0 name85 could-be-large-85 attack.invalid TRUE / FALSE 0 name86 could-be-large-86 attack.invalid TRUE / FALSE 0 name87 could-be-large-87 attack.invalid TRUE / FALSE 0 name88 could-be-large-88 attack.invalid TRUE / FALSE 0 name89 could-be-large-89 attack.invalid TRUE / FALSE 0 name90 could-be-large-90 attack.invalid TRUE / FALSE 0 name91 could-be-large-91 attack.invalid TRUE / FALSE 0 name92 could-be-large-92 attack.invalid TRUE / FALSE 0 name93 could-be-large-93 attack.invalid TRUE / FALSE 0 name94 could-be-large-94 attack.invalid TRUE / FALSE 0 name95 could-be-large-95 attack.invalid TRUE / FALSE 0 name96 could-be-large-96 attack.invalid TRUE / FALSE 0 name97 could-be-large-97 attack.invalid TRUE / FALSE 0 name98 could-be-large-98 attack.invalid TRUE / FALSE 0 name99 could-be-large-99 attack.invalid TRUE / FALSE 0 name100 could-be-large-100 attack.invalid TRUE / FALSE 0 name101 could-be-large-101 attack.invalid TRUE / FALSE 0 name102 could-be-large-102 attack.invalid TRUE / FALSE 0 name103 could-be-large-103 attack.invalid TRUE / FALSE 0 name104 could-be-large-104 attack.invalid TRUE / FALSE 0 name105 could-be-larCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind444 ../src/curl -q --output log/3/curl444.out --include --trace-ascii log/3/trace444 --trace-config all --trace-time http://attack.invalid:42345/a/b/444 -c log/3/cookie444 --resolve attack.invalid:42345:127.0.0.1 > log/3/stdout444 2> log/3/stderr444 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind448 ../src/curl -q --output log/6/curl448.out --include --trace-ascii log/6/trace448 --trace-config all --trace-time http://127.0.0.1:35775/448 -K log/6/cmd > log/6/stdout448 2> log/6/stderr448 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind449 ../src/curl -q --output log/18/curl449.out --include --trace-ascii log/18/trace449 --trace-config all --trace-time http://127.0.0.1:45825/449 -K log/18/cmd > log/18/stdout449 2> log/18/stderr449 ge-105 attack.invalid TRUE / FALSE 0 name106 could-be-large-106 attack.invalid TRUE / FALSE 0 name107 could-be-large-107 attack.invalid TRUE / FALSE 0 name108 could-be-large-108 attack.invalid TRUE / FALSE 0 name109 could-be-large-109 attack.invalid TRUE / FALSE 0 name110 could-be-large-110 attack.invalid TRUE / FALSE 0 name111 could-be-large-111 attack.invalid TRUE / FALSE 0 name112 could-be-large-112 attack.invalid TRUE / FALSE 0 name113 could-be-large-113 attack.invalid TRUE / FALSE 0 name114 could-be-large-114 attack.invalid TRUE / FALSE 0 name115 could-be-large-115 attack.invalid TRUE / FALSE 0 name116 could-be-large-116 attack.invalid TRUE / FALSE 0 name117 could-be-large-117 attack.invalid TRUE / FALSE 0 name118 could-be-large-118 attack.invalid TRUE / FALSE 0 name119 could-be-large-119 attack.invalid TRUE / FALSE 0 name120 could-be-large-120 attack.invalid TRUE / FALSE 0 name121 could-be-large-121 attack.invalid TRUE / FALSE 0 name122 could-be-large-122 attack.invalid TRUE / FALSE 0 name123 could-be-large-123 attack.invalid TRUE / FALSE 0 name124 could-be-large-124 attack.invalid TRUE / FALSE 0 name125 could-be-large-125 attack.invalid TRUE / FALSE 0 name126 could-be-large-126 attack.invalid TRUE / FALSE 0 name127 could-be-large-127 attack.invalid TRUE / FALSE 0 name128 could-be-large-128 attack.invalid TRUE / FALSE 0 name129 could-be-large-129 attack.invalid TRUE / FALSE 0 name130 could-be-large-130 attack.invalid TRUE / FALSE 0 name131 could-be-large-131 attack.invalid TRUE / FALSE 0 name132 could-be-large-132 attack.invalid TRUE / FALSE 0 name133 could-be-large-133 attack.invalid TRUE / FALSE 0 name134 could-be-large-134 attack.invalid TRUE / FALSE 0 name135 could-be-large-135 attack.invalid TRUE / FALSE 0 name136 could-be-large-136 attack.invalid TRUE / FALSE 0 name137 could-be-large-137 attack.invalid TRUE / FALSE 0 name138 could-be-large-138 attack.invalid TRUE / FALSE 0 name139 could-be-large-139 attack.invalid TRUE / FALSE 0 name140 could-be-large-140 attack.invalid TRUE / FALSE 0 name141 could-be-large-141 attack.invalid TRUE / FALSE 0 name142 could-be-large-142 attack.invalid TRUE / FALSE 0 name143 could-be-large-143 attack.invalid TRUE / FALSE 0 name144 could-be-large-144 attack.invalid TRUE / FALSE 0 name145 could-be-large-145 attack.invalid TRUE / FALSE 0 name146 could-be-large-146 attack.invalid TRUE / FALSE 0 name147 could-be-large-147 attack.invalid TRUE / FALSE 0 name148 could-be-large-148 attack.invalid TRUE / FALSE 0 name149 could-be-large-149 attack.invalid TRUE / FALSE 0 name150 could-be-large-150 attack.invalid TRUE / FALSE 0 name151 could-be-large-151 === End of file cookie442 === Start of file http_server.log 07:35:06.858771 ====> Client connect 07:35:06.858799 accept_connection 3 returned 4 07:35:06.858815 accept_connection 3 returned 0 07:35:06.858828 Read 93 bytes 07:35:06.858837 Process 93 bytes request 07:35:06.858848 Got request: GET /verifiedserver HTTP/1.1 07:35:06.858856 Are-we-friendly question received 07:35:06.858878 Wrote request (93 bytes) input to log/24/server.input 07:35:06.858893 Identifying ourselves as friends 07:35:06.858942 Response sent (56 bytes) and written to log/24/server.response 07:35:06.858953 special request received, no persistency 07:35:06.858962 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 442 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind442 ==98579== ==98579== Process terminating with default action of signal 4 (SIGILL) ==98579== Illegal opcode at address 0x4003082 ==98579== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98579== by 0x4003082: main (tool_main.c:234) === End of file valgrind442 setenv FUNVALUE = contents setenv VALUE2 = curl setenv BLANK = test 0448...[Environment variables within config file, unbalanced braces] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind448 ../src/curl -q --output log/6/curl448.out --include --trace-ascii log/6/trace448 --trace-config all --trace-time http://127.0.0.1:35775/448 -K log/6/cmd > log/6/stdout448 2> log/6/stderr448 448: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 448 === Start of file cmd --variable %FUNVALUE --variable %VALUE2 --expand-data 1{{FUNVALUE}}2{{VALUE2}}3{{curl_NOT_SET}}4{{AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA}}5{{broken === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind448 ../src/curl -q --output log/6/curl448.out --include --trace-ascii log/6/trace448 --trace-config all --trace-time http://127.0.0.1:35775/448 -K log/6/cmd > log/6/stdout448 2> log/6/stderr448 === End of file commands.log === Start of file http_server.log 07:35:06.891173 ====> Client connect 07:35:06.891210 accept_connection 3 returned 4 07:35:06.891244 accept_connection 3 returned 0 07:35:06.891259 Read 93 bytes 07:35:06.891270 Process 93 bytes request 07:35:06.891285 Got request: GET /verifiedserver HTTP/1.1 07:35:06.891295 Are-we-friendly question received 07:35:06.891321 Wrote request (93 bytes) input to log/6/server.input 07:35:06.891340 Identifying ourselves as friends 07:35:06.891397 Response sent (56 bytes) and written to log/6/server.response 07:35:06.891408 special request received, no persistency 07:35:06.891417 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 448 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind448 ==98734== ==98734== Process terminating with default action of signal 4 (SIGILL) ==98734== Illegal opcode at address 0x4003082 ==98734== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98734== by 0x4003082: main (tool_main.c:234) === End of file valgrind448 test 0444...[Many Set-Cookie response headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind444 ../src/curl -q --output log/3/curl444.out --include --trace-ascii log/3/trace444 --trace-config all --trace-time http://attack.invalid:42345/a/b/444 -c log/3/cookie444 --resolve attack.invalid:42345:127.0.0.1 > log/3/stdout444 2> log/3/stderr444 444: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 444 === Start of file commands.log ../libtool --modCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind429 ../src/curl -q --output log/13/curl429.out --include --trace-ascii log/13/trace429 --trace-config all --trace-time http://127.0.0.1:33627/429 -K log/13/cmd > log/13/stdout429 2> log/13/stderr429 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind430 ../src/curl -q --output log/11/curl430.out --include --trace-ascii log/11/trace430 --trace-config all --trace-time -K log/11/config430-a -K log/11/config430-b -K log/11/config430-c > log/11/stdout430 2> log/11/stderr430 e=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind444 ../src/curl -q --output log/3/curl444.out --include --trace-ascii log/3/trace444 --trace-config all --trace-time http://attack.invalid:42345/a/b/444 -c log/3/cookie444 --resolve attack.invalid:42345:127.0.0.1 > log/3/stdout444 2> log/3/stderr444 === End of file commands.log === Start of file http_server.log 07:35:06.876252 ====> Client connect 07:35:06.876286 accept_connection 3 returned 4 07:35:06.876302 accept_connection 3 returned 0 07:35:06.876317 Read 93 bytes 07:35:06.876327 Process 93 bytes request 07:35:06.876340 Got request: GET /verifiedserver HTTP/1.1 07:35:06.876349 Are-we-friendly question received 07:35:06.876374 Wrote request (93 bytes) input to log/3/server.input 07:35:06.876389 Identifying ourselves as friends 07:35:06.876444 Response sent (56 bytes) and written to log/3/server.response 07:35:06.876454 special request received, no persistency 07:35:06.876462 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 444 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind444 ==98704== ==98704== Process terminating with default action of signal 4 (SIGILL) ==98704== Illegal opcode at address 0x4003082 ==98704== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98704== by 0x4003082: main (tool_main.c:234) === End of file valgrind444 setenv FUNVALUE = contents setenv VALUE2 = curl setenv BLANK = test 0449...[Environment variables in config file w/o [expand]] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind449 ../src/curl -q --output log/18/curl449.out --include --trace-ascii log/18/trace449 --trace-config all --trace-time http://127.0.0.1:45825/449 -K log/18/cmd > log/18/stdout449 2> log/18/stderr449 449: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 449 === Start of file cmd -d 1{{FUNVALUE}}2{{VALUE2}}3{{CURL_NOT_SET}}4{{BLANK}}5\{{verbatim}}6{{not.good}}7{{}} === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind449 ../src/curl -q --output log/18/curl449.out --include --trace-ascii log/18/trace449 --trace-config all --trace-time http://127.0.0.1:45825/449 -K log/18/cmd > log/18/stdout449 2> log/18/stderr449 === End of file commands.log === Start of file http_server.log 07:35:06.895378 ====> Client connect 07:35:06.895409 accept_connection 3 returned 4 07:35:06.895424 accept_connection 3 returned 0 07:35:06.895437 Read 93 bytes 07:35:06.895447 Process 93 bytes request 07:35:06.895460 Got request: GET /verifiedserver HTTP/1.1 07:35:06.895469 Are-we-friendly question received 07:35:06.895493 Wrote request (93 bytes) input to log/18/server.input 07:35:06.895508 Identifying ourselves as friends 07:35:06.895565 Response sent (56 bytes) and written to log/18/server.response 07:35:06.895575 special request received, no persistency 07:35:06.895584 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 449 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind449 ==98807== ==98807== Process terminating with default action of signal 4 (SIGILL) ==98807== Illegal opcode at address 0x4003082 ==98807== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98807== by 0x4003082: main (tool_main.c:234) === End of file valgrind449 setenv FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF = contents2023 test 0429...[Expand environment variable in config file - too long name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind429 ../src/curl -q --output log/13/curl429.out --include --trace-ascii log/13/trace429 --trace-config all --trace-time http://127.0.0.1:33627/429 -K log/13/cmd > log/13/stdout429 2> log/13/stderr429 429: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 429 === Start of file cmd --expand-data {{FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}} === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind429 ../src/curl -q --output log/13/curl429.out --include --trace-ascii log/13/trace429 --trace-config all --trace-time http://127.0.0.1:33627/429 -K log/13/cmd > log/13/stdout429 2> log/13/stderr429 === End of file commands.log === Start of file http_server.log 07:35:06.797570 ====> Client connect 07:35:06.797595 accept_connection 3 returned 4 07:35:06.797607 accept_connection 3 returned 0 07:35:06.797618 Read 93 bytes 07:35:06.797625 Process 93 bytes request 07:35:06.797636 Got request: GET /verifiedserver HTTP/1.1 07:35:06.797643 Are-we-friendly question received 07:35:06.797660 Wrote request (93 bytes) input to log/13/server.input 07:35:06.797672 Identifying ourselves as friends 07:35:06.797711 Response sent (56 bytes) and written to log/13/server.response 07:35:06.797718 special request received, no persistency 07:35:06.797725 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 429 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind429 ==98129== ==98129== Process terminating with default action of signal 4 (SIGILL) ==98129== Illegal opcode at address 0x4003082 ==98129== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98129== by 0x4003082: main (tool_main.c:234) === End of file valgrind429 test 0430...CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind436 ../src/curl --output log/21/curl436.out --include --trace-ascii log/21/trace436 --trace-config all --trace-time 127.0.0.1:41087/436 > log/21/stdout436 2> log/21/stderr436 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind434 ../src/curl -q --output log/20/curl434.out --include --trace-ascii log/20/trace434 --trace-config all --trace-time -K log/20/config434 > log/20/stdout434 2> log/20/stderr434 [Three -K uses with --next and --data in each] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind430 ../src/curl -q --output log/11/curl430.out --include --trace-ascii log/11/trace430 --trace-config all --trace-time -K log/11/config430-a -K log/11/config430-b -K log/11/config430-c > log/11/stdout430 2> log/11/stderr430 430: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 430 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind430 ../src/curl -q --output log/11/curl430.out --include --trace-ascii log/11/trace430 --trace-config all --trace-time -K log/11/config430-a -K log/11/config430-b -K log/11/config430-c > log/11/stdout430 2> log/11/stderr430 === End of file commands.log === Start of file config430-a --next url = 127.0.0.1:41173/4300001 header = "a: a" data = "a" === End of file config430-a === Start of file config430-b --next url = 127.0.0.1:41173/4300002 header = "b: b" data = "b" === End of file config430-b === Start of file config430-c --next url = 127.0.0.1:41173/4300003 header = "c: c" data = "c" === End of file config430-c === Start of file http_server.log 07:35:06.822690 ====> Client connect 07:35:06.822719 accept_connection 3 returned 4 07:35:06.822732 accept_connection 3 returned 0 07:35:06.822743 Read 93 bytes 07:35:06.822751 Process 93 bytes request 07:35:06.822762 Got request: GET /verifiedserver HTTP/1.1 07:35:06.822770 Are-we-friendly question received 07:35:06.822789 Wrote request (93 bytes) input to log/11/server.input 07:35:06.822801 Identifying ourselves as friends 07:35:06.822840 Response sent (56 bytes) and written to log/11/server.response 07:35:06.822848 special request received, no persistency 07:35:06.822855 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 430 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind430 ==98248== ==98248== Process terminating with default action of signal 4 (SIGILL) ==98248== Illegal opcode at address 0x4003082 ==98248== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98248== by 0x4003082: main (tool_main.c:234) === End of file valgrind430 setenv CURL_HOME = /startdir/src/build-curl/tests/log/21 setenv XDG_CONFIG_HOME = test 0436...[Find .curlrc in .config/curlrc via CURL_HOME] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind436 ../src/curl --output log/21/curl436.out --include --trace-ascii log/21/trace436 --trace-config all --trace-time 127.0.0.1:41087/436 > log/21/stdout436 2> log/21/stderr436 436: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 436 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind436 ../src/curl --output log/21/curl436.out --include --trace-ascii log/21/trace436 --trace-config all --trace-time 127.0.0.1:41087/436 > log/21/stdout436 2> log/21/stderr436 === End of file commands.log === Start of file http_server.log 07:35:06.855889 ====> Client connect 07:35:06.855923 accept_connection 3 returned 4 07:35:06.855940 accept_connection 3 returned 0 07:35:06.855954 Read 93 bytes 07:35:06.855964 Process 93 bytes request 07:35:06.855986 Got request: GET /verifiedserver HTTP/1.1 07:35:06.855995 Are-we-friendly question received 07:35:06.856026 Wrote request (93 bytes) input to log/21/server.input 07:35:06.856044 Identifying ourselves as friends 07:35:06.856103 Response sent (56 bytes) and written to log/21/server.response 07:35:06.856113 special request received, no persistency 07:35:06.856122 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 436 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind436 ==98399== ==98399== Process terminating with default action of signal 4 (SIGILL) ==98399== Illegal opcode at address 0x4003082 ==98399== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98399== by 0x4003082: main (tool_main.c:234) === End of file valgrind436 test 0434...[-K with a single line without newline] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind434 ../src/curl -q --output log/20/curl434.out --include --trace-ascii log/20/trace434 --trace-config all --trace-time -K log/20/config434 > log/20/stdout434 2> log/20/stderr434 434: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 434 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind434 ../src/curl -q --output log/20/curl434.out --include --trace-ascii log/20/trace434 --trace-config all --trace-time -K log/20/config434 > log/20/stdout434 2> log/20/stderr434 === End of file commands.log === Start of file config434 url = 127.0.0.1:37169/434 === End of file config434 === Start of file http_server.log 07:35:06.851334 ====> Client connect 07:35:06.851369 accept_connection 3 returned 4 07:35:06.851385 accept_connection 3 returned 0 07:35:06.851398 Read 93 bytes 07:35:06.851408 Process 93 bytes request 07:35:06.851419 Got request: GET /verifiedserver HTTP/1.1 07:35:06.851428 Are-we-friendly question received 07:35:06.851454 Wrote request (93 bytes) input to log/20/server.input 07:35:06.851472 Identifying ourselves as friends 07:35:06.851529 Response sent (56 bytes) and written to log/20/server.response 07:35:06.851539 special request received, no persistency 07:35:06.851548 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WECMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind440 ../src/curl -q --include --trace-ascii log/9/trace440 --trace-config all --trace-time -x http://127.0.0.1:34999 http://this.hsts.example./440 --hsts log/9/input440 -w '%{url_effective}\n' > log/9/stdout440 2> log/9/stderr440 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind432 ../src/curl -q --output log/23/curl432.out --include --trace-ascii log/23/trace432 --trace-config all --trace-time -K log/23/config432 > log/23/stdout432 2> log/23/stderr432 ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 434 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind434 ==98355== ==98355== Process terminating with default action of signal 4 (SIGILL) ==98355== Illegal opcode at address 0x4003082 ==98355== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98355== by 0x4003082: main (tool_main.c:234) === End of file valgrind434 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind441 ../src/curl -q --include --trace-ascii log/1/trace441 --trace-config all --trace-time -x http://127.0.0.1:38941 http://this.hsts.example/441 --hsts log/1/input441 -w '%{url_effective}\n' > log/1/stdout441 2> log/1/stderr441 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind431 ../src/curl -q --output log/7/curl431.out --include --trace-ascii log/7/trace431 --trace-config all --trace-time -K log/7/config431-a -K log/7/config431-b --next -d c 127.0.0.1:39077/4310003 -H "c: c" > log/7/stdout431 2> log/7/stderr431 test 0440...[HSTS with trailing-dot host name in URL but none in hsts file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind440 ../src/curl -q --include --trace-ascii log/9/trace440 --trace-config all --trace-time -x http://127.0.0.1:34999 http://this.hsts.example./440 --hsts log/9/input440 -w '%{url_effective}\n' > log/9/stdout440 2> log/9/stderr440 440: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:07.607111665 +0000 +++ log/9/check-generated 2025-07-18 07:35:07.607111665 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 403 not OK at all[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] -https://this.hsts.example./440[LF] == Contents of files in the log/9/ dir after test 440 === Start of file check-expected HTTP/1.1 403 not OK at all[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] https://this.hsts.example./440[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind440 ../src/curl -q --include --trace-ascii log/9/trace440 --trace-config all --trace-time -x http://127.0.0.1:34999 http://this.hsts.example./440 --hsts log/9/input440 -w '%{url_effective}\n' > log/9/stdout440 2> log/9/stderr440 === End of file commands.log === Start of file http_server.log 07:35:06.856465 ====> Client connect 07:35:06.856549 accept_connection 3 returned 4 07:35:06.856584 accept_connection 3 returned 0 07:35:06.856613 Read 93 bytes 07:35:06.856628 Process 93 bytes request 07:35:06.856640 Got request: GET /verifiedserver HTTP/1.1 07:35:06.856650 Are-we-friendly question received 07:35:06.856676 Wrote request (93 bytes) input to log/9/server.input 07:35:06.856693 Identifying ourselves as friends 07:35:06.856779 Response sent (56 bytes) and written to log/9/server.response 07:35:06.856792 special request received, no persistency 07:35:06.856801 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file input440 this.hsts.example "99991001 04:47:41" === End of file input440 === Start of file server.cmd Testnum 440 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind440 ==98398== ==98398== Process terminating with default action of signal 4 (SIGILL) ==98398== Illegal opcode at address 0x4003082 ==98398== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98398== by 0x4003082: main (tool_main.c:234) === End of file valgrind440 test 0441...[HSTS with no t-dot host name in URL but t-dot in file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind441 ../src/curl -q --include --trace-ascii log/1/trace441 --trace-config all --trace-time -x http://127.0.0.1:38941 http://this.hsts.example/441 --hsts log/1/input441 -w '%{url_effective}\n' > log/1/stdout441 2> log/1/stderr441 441: stdout FAILED: --- log/1/check-expected 2025-07-18 07:35:07.613778333 +0000 +++ log/1/check-generated 2025-07-18 07:35:07.613778333 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 403 not OK at all[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] -https://this.hsts.example/441[LF] == Contents of files in the log/1/ dir after test 441 === Start of file check-expected HTTP/1.1 403 not OK at all[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] https://this.hsts.example/441[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind441 ../src/curl -q --include --trace-ascii log/1/trace441 --trace-config all --trace-time -x http://127.0.0.1:38941 http://this.hsts.example/441 --hsts log/1/input441 -w '%{url_effective}\n' > log/1/stdout441 2> log/1/stderr441 === End of file commands.log === Start of file http_server.log 07:35:06.854392 ====> Client connect 07:35:06.854422 accept_connection 3 returned 4 07:35:06.854438 accept_connection 3 returned 0 07:35:06.854451 Read 93 bytes 07:35:06.854461 Process 93 bytes request 07:35:06.854473 Got request: GET /verifiedserver HTTP/1.1 07:35:06.854482 Are-we-friendly question received 07:35:06.854505 Wrote request (93 bytes) input to log/1/server.input 07:35:06.854522 Identifying ourselves as friends 07:35:06.854573 Response sent (56 bytes) and written to log/1/server.response 07:35:06.854582 special request received, no persistency 07:35:06.854591 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file input441 this.hsts.example. "99991001 04:47:41" === End of file input441 === Start of file server.cmd Testnum 441 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind441 ==98391== ==98391== Process terminating with default action of signal 4 (SIGILL) ==98391== Illegal opcode at address 0x4003082 ==98391== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98391== by 0x4003082: main (tool_main.c:234) === End of file valgrind441 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/4/server/http_ipv6_server.pid" --logfile "log/4/http_ipv6_server.log" --logdir "log/4" --portfile log/4/server/http_ipv6_server.port --config log/4/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 88544 port 35749 * pid http-ipv6 => 88544 88544 prechecked ./server/servers resolve --ipv6 ip6-localhost test 0241 SKIPPED: Resolving IPv6 'ip6-localhost' didn't work test 0431...[Two -K uses with --next and then one on cmdline] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind431 ../src/curl -q --output log/7/curl431.out --include --trace-ascii log/7/trace431 --trace-config all --trace-time -K log/7/config431-a -K log/7/config431-b --next -d c 127.0.0.1:39077/4310003 -H "c: c" > log/7/stdout431 2> log/7/stderr431 431: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 431 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind431 ../src/curl -q --output log/7/curl431.out --include --trace-ascii log/7/trace431 --trace-config all --trace-time -K log/7/config431-a -K log/7/config431-b --next -d c 127.0.0.1:39077/4310003 -H "c: c" > log/7/stdout431 2> log/7/stderr431 === End of file commands.log === Start of file config431-a --next url = 127.0.0.1:39077/4310001 header = "a: a" data = "a" === End of file config431-a === Start of file config431-b --next url = 127.0.0.1:39077/4310002 header = "b: b" data = "b" === End of file config431-b === Start of file http_server.log 07:35:06.850582 ====> Client connect 07:35:06.850698 accept_connection 3 returned 4 07:35:06.850752 accept_connection 3 returned 0 07:35:06.850766 Read 93 bytes 07:35:06.850776 Process 93 bytes request 07:35:06.850786 Got request: GET /verifiedserver HTTP/1.1 07:35:06.850795 Are-we-friendly question received 07:35:06.850823 Wrote request (93 bytes) input to log/7/server.input 07:35:06.850840 Identifying ourselves as friends 07:35:06.850920 Response sent (56 bytes) and written to log/7/server.response 07:35:06.850931 special request received, no persistency 07:35:06.850940 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 431 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind431 ==98395== ==98395== Process terminating with default action of signal 4 (SIGILL) ==98395== Illegal opcode at address 0x4003082 ==98395== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98395== by 0x4003082: main (tool_main.c:234) === End of file valgrind431 test 0432...[Use -K with --next and --config from within] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind432 ../src/curl -q --output log/23/curl432.out --include --trace-ascii log/23/trace432 --trace-config all --trace-time -K log/23/config432 > log/23/stdout432 2> log/23/stderr432 432: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 432 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind432 ../src/curl -q --output log/23/curl432.out --include --trace-ascii log/23/trace432 --trace-config all --trace-time -K log/23/config432 > log/23/stdout432 2> log/23/stderr432 === End of file commands.log === Start of file config432 --next url = 127.0.0.1:45701/43CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind450 ../src/curl -q --output log/15/curl450.out --include --trace-ascii log/15/trace450 --trace-config all --trace-time http://127.0.0.1:36993/450 --variable what@log/15/junk --expand-data "{{what:trim:url}}" > log/15/stdout450 2> log/15/stderr450 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind452 ../src/curl -q --output log/14/curl452.out --include --trace-ascii log/14/trace452 --trace-config all --trace-time http://127.0.0.1:37963/452 --variable what=hello --expand-data "--{{what:trim:super}}" > log/14/stdout452 2> log/14/stderr452 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind451 ../src/curl -q --output log/22/curl451.out --include --trace-ascii log/22/trace451 --trace-config all --trace-time http://127.0.0.1:46761/451 --variable what@log/22/junk --variable second=hello --variable second=again --expand-data "--{{what:trim:json}}22{{none}}--{{second}}{{what:trim:url}}" > log/22/stdout451 2> log/22/stderr451 20001 header = "a: a" data = "a" --next url = 127.0.0.1:45701/4320002 header = "b: b" data = "b" config = "log/23/config432-c" === End of file config432 === Start of file config432-c --next url = 127.0.0.1:45701/4320003 header = "c: c" data = "c" === End of file config432-c === Start of file http_server.log 07:35:06.848648 ====> Client connect 07:35:06.848680 accept_connection 3 returned 4 07:35:06.848697 accept_connection 3 returned 0 07:35:06.848712 Read 93 bytes 07:35:06.848722 Process 93 bytes request 07:35:06.848735 Got request: GET /verifiedserver HTTP/1.1 07:35:06.848744 Are-we-friendly question received 07:35:06.848768 Wrote request (93 bytes) input to log/23/server.input 07:35:06.848785 Identifying ourselves as friends 07:35:06.848841 Response sent (56 bytes) and written to log/23/server.response 07:35:06.848852 special request received, no persistency 07:35:06.848861 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 432 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind432 ==98415== ==98415== Process terminating with default action of signal 4 (SIGILL) ==98415== Illegal opcode at address 0x4003082 ==98415== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==98415== by 0x4003082: main (tool_main.c:234) === End of file valgrind432 test 0450...[Variable from file that is trimmed and URL encoded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind450 ../src/curl -q --output log/15/curl450.out --include --trace-ascii log/15/trace450 --trace-config all --trace-time http://127.0.0.1:36993/450 --variable what@log/15/junk --expand-data "{{what:trim:url}}" > log/15/stdout450 2> log/15/stderr450 450: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 450 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind450 ../src/curl -q --output log/15/curl450.out --include --trace-ascii log/15/trace450 --trace-config all --trace-time http://127.0.0.1:36993/450 --variable what@log/15/junk --expand-data "{{what:trim:url}}" > log/15/stdout450 2> log/15/stderr450 === End of file commands.log === Start of file http_server.log 07:35:07.032962 ====> Client connect 07:35:07.032995 accept_connection 3 returned 4 07:35:07.033011 accept_connection 3 returned 0 07:35:07.033025 Read 93 bytes 07:35:07.033034 Process 93 bytes request 07:35:07.033046 Got request: GET /verifiedserver HTTP/1.1 07:35:07.033055 Are-we-friendly question received 07:35:07.033080 Wrote request (93 bytes) input to log/15/server.input 07:35:07.033096 Identifying ourselves as friends 07:35:07.033147 Response sent (56 bytes) and written to log/15/server.response 07:35:07.033156 special request received, no persistency 07:35:07.033165 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file junk space with space === End of file junk === Start of file server.cmd Testnum 450 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind450 ==99113== ==99113== Process terminating with default action of signal 4 (SIGILL) ==99113== Illegal opcode at address 0x4003082 ==99113== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99113== by 0x4003082: main (tool_main.c:234) === End of file valgrind450 test 0452...[Variable using illegal function in expansion] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind452 ../src/curl -q --output log/14/curl452.out --include --trace-ascii log/14/trace452 --trace-config all --trace-time http://127.0.0.1:37963/452 --variable what=hello --expand-data "--{{what:trim:super}}" > log/14/stdout452 2> log/14/stderr452 curl returned 132, when expecting 2 452: exit FAILED == Contents of files in the log/14/ dir after test 452 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind452 ../src/curl -q --output log/14/curl452.out --include --trace-ascii log/14/trace452 --trace-config all --trace-time http://127.0.0.1:37963/452 --variable what=hello --expand-data "--{{what:trim:super}}" > log/14/stdout452 2> log/14/stderr452 === End of file commands.log === Start of file http_server.log 07:35:07.056749 ====> Client connect 07:35:07.056780 accept_connection 3 returned 4 07:35:07.056795 accept_connection 3 returned 0 07:35:07.056807 Read 93 bytes 07:35:07.056816 Process 93 bytes request 07:35:07.056829 Got request: GET /verifiedserver HTTP/1.1 07:35:07.056837 Are-we-friendly question received 07:35:07.056861 Wrote request (93 bytes) input to log/14/server.input 07:35:07.056876 Identifying ourselves as friends 07:35:07.056927 Response sent (56 bytes) and written to log/14/server.response 07:35:07.056936 special request received, no persistency 07:35:07.056944 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 452 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind452 ==99175== ==99175== Process terminating with default action of signal 4 (SIGILL) ==99175== Illegal opcode at address 0x4003082 ==99175== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99175== by 0x4003082: main (tool_main.c:234) === End of file valgrind452 test 0451...[Variable from file that is JSON and URL encoded (with null byte)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind451 ../src/curl -q --output log/22/curl451.out --include --trace-ascii log/22/trace451 --trace-config all --trace-time http://127.0.0.1:46761/451 --variable what@log/22/junk --variable second=hello --variable second=again --expand-data "--{{what:trim:json}}22{{none}}--{{second}}{CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind453 ../src/curl -q --output log/5/curl453.out --include --trace-ascii log/5/trace453 --trace-config all --trace-time http://127.0.0.1:46675/453 --variable what@log/5/junk --expand-data "{{what}}" > log/5/stdout453 2> log/5/stderr453 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind454 ../src/curl -q --output log/8/curl454.out --include --trace-ascii log/8/trace454 --trace-config all --trace-time http://127.0.0.1:45261/454 --variable what=hello --expand-data "--{{what:trim,url}}" > log/8/stdout454 2> log/8/stderr454 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind455 ../src/curl -q --output log/12/curl455.out --include --trace-ascii log/12/trace455 --trace-config all --trace-time --variable moby="Call me Ishmael" --variable what=d2hpdGUtd2hhbGU= --expand-url "http://127.0.0.1:37285/{{moby:b64}}/{{what:64dec}}/455" > log/12/stdout455 2> log/12/stderr455 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind456 ../src/curl -q --output log/17/curl456.out --include --trace-ascii log/17/trace456 --trace-config all --trace-time http://127.0.0.1:39089/456 --variable what@log/17/junk --expand-data "{{what}}" > log/17/stdout456 2> log/17/stderr456 {what:trim:url}}" > log/22/stdout451 2> log/22/stderr451 451: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 451 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind451 ../src/curl -q --output log/22/curl451.out --include --trace-ascii log/22/trace451 --trace-config all --trace-time http://127.0.0.1:46761/451 --variable what@log/22/junk --variable second=hello --variable second=again --expand-data "--{{what:trim:json}}22{{none}}--{{second}}{{what:trim:url}}" > log/22/stdout451 2> log/22/stderr451 === End of file commands.log === Start of file http_server.log 07:35:07.034592 ====> Client connect 07:35:07.034624 accept_connection 3 returned 4 07:35:07.034642 accept_connection 3 returned 0 07:35:07.034655 Read 93 bytes 07:35:07.034665 Process 93 bytes request 07:35:07.034676 Got request: GET /verifiedserver HTTP/1.1 07:35:07.034685 Are-we-friendly question received 07:35:07.034733 Wrote request (93 bytes) input to log/22/server.input 07:35:07.034750 Identifying ourselves as friends 07:35:07.034808 Response sent (56 bytes) and written to log/22/server.response 07:35:07.034819 special request received, no persistency 07:35:07.034828 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file junk  === End of file junk === Start of file server.cmd Testnum 451 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind451 ==99114== ==99114== Process terminating with default action of signal 4 (SIGILL) ==99114== Illegal opcode at address 0x4003082 ==99114== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99114== by 0x4003082: main (tool_main.c:234) === End of file valgrind451 test 0453...[Variable output containing null byte] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind453 ../src/curl -q --output log/5/curl453.out --include --trace-ascii log/5/trace453 --trace-config all --trace-time http://127.0.0.1:46675/453 --variable what@log/5/junk --expand-data "{{what}}" > log/5/stdout453 2> log/5/stderr453 curl returned 132, when expecting 2 453: exit FAILED == Contents of files in the log/5/ dir after test 453 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind453 ../src/curl -q --output log/5/curl453.out --include --trace-ascii log/5/trace453 --trace-config all --trace-time http://127.0.0.1:46675/453 --variable what@log/5/junk --expand-data "{{what}}" > log/5/stdout453 2> log/5/stderr453 === End of file commands.log === Start of file http_server.log 07:35:07.065557 ====> Client connect 07:35:07.065593 accept_connection 3 returned 4 07:35:07.065609 accept_connection 3 returned 0 07:35:07.065623 Read 93 bytes 07:35:07.065633 Process 93 bytes request 07:35:07.065646 Got request: GET /verifiedserver HTTP/1.1 07:35:07.065655 Are-we-friendly question received 07:35:07.065679 Wrote request (93 bytes) input to log/5/server.input 07:35:07.065695 Identifying ourselves as friends 07:35:07.065746 Response sent (56 bytes) and written to log/5/server.response 07:35:07.065756 special request received, no persistency 07:35:07.065765 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file junk  === End of file junk === Start of file server.cmd Testnum 453 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind453 ==99206== ==99206== Process terminating with default action of signal 4 (SIGILL) ==99206== Illegal opcode at address 0x4003082 ==99206== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99206== by 0x4003082: main (tool_main.c:234) === End of file valgrind453 test 0454...[Variable using illegal function separator] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind454 ../src/curl -q --output log/8/curl454.out --include --trace-ascii log/8/trace454 --trace-config all --trace-time http://127.0.0.1:45261/454 --variable what=hello --expand-data "--{{what:trim,url}}" > log/8/stdout454 2> log/8/stderr454 curl returned 132, when expecting 2 454: exit FAILED == Contents of files in the log/8/ dir after test 454 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind454 ../src/curl -q --output log/8/curl454.out --include --trace-ascii log/8/trace454 --trace-config all --trace-time http://127.0.0.1:45261/454 --variable what=hello --expand-data "--{{what:trim,url}}" > log/8/stdout454 2> log/8/stderr454 === End of file commands.log === Start of file http_server.log 07:35:07.121824 ====> Client connect 07:35:07.121867 accept_connection 3 returned 4 07:35:07.121885 accept_connection 3 returned 0 07:35:07.121901 Read 93 bytes 07:35:07.121911 Process 93 bytes request 07:35:07.121924 Got request: GET /verifiedserver HTTP/1.1 07:35:07.121933 Are-we-friendly question received 07:35:07.121957 Wrote request (93 bytes) input to log/8/server.input 07:35:07.121973 Identifying ourselves as friends 07:35:07.122036 Response sent (56 bytes) and written to log/8/server.response 07:35:07.122046 special request received, no persistency 07:35:07.122055 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 454 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind454 ==99379== ==99379== Process terminating with default action of signal 4 (SIGILL) ==99379== Illegal opcode at address 0x4003082 ==99379== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99379== by 0x4003082: main (tool_main.c:234) === End of file valgrind454 test 0455...[Variable using base64] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind457 ../src/curl -q --output log/19/curl457.out --include --trace-ascii log/19/trace457 --trace-config all --trace-time http://127.0.0.1:33487/457 --max-filesize 143 > log/19/stdout457 2> log/19/stderr457 check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind455 ../src/curl -q --output log/12/curl455.out --include --trace-ascii log/12/trace455 --trace-config all --trace-time --variable moby="Call me Ishmael" --variable what=d2hpdGUtd2hhbGU= --expand-url "http://127.0.0.1:37285/{{moby:b64}}/{{what:64dec}}/455" > log/12/stdout455 2> log/12/stderr455 455: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 455 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind455 ../src/curl -q --output log/12/curl455.out --include --trace-ascii log/12/trace455 --trace-config all --trace-time --variable moby="Call me Ishmael" --variable what=d2hpdGUtd2hhbGU= --expand-url "http://127.0.0.1:37285/{{moby:b64}}/{{what:64dec}}/455" > log/12/stdout455 2> log/12/stderr455 === End of file commands.log === Start of file http_server.log 07:35:07.122097 ====> Client connect 07:35:07.122137 accept_connection 3 returned 4 07:35:07.122154 accept_connection 3 returned 0 07:35:07.122170 Read 93 bytes 07:35:07.122181 Process 93 bytes request 07:35:07.122194 Got request: GET /verifiedserver HTTP/1.1 07:35:07.122204 Are-we-friendly question received 07:35:07.122232 Wrote request (93 bytes) input to log/12/server.input 07:35:07.122250 Identifying ourselves as friends 07:35:07.122309 Response sent (56 bytes) and written to log/12/server.response 07:35:07.122319 special request received, no persistency 07:35:07.122328 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 455 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind455 ==99380== ==99380== Process terminating with default action of signal 4 (SIGILL) ==99380== Illegal opcode at address 0x4003082 ==99380== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99380== by 0x4003082: main (tool_main.c:234) === End of file valgrind455 test 0456...[Variable output starting with null byte] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind456 ../src/curl -q --output log/17/curl456.out --include --trace-ascii log/17/trace456 --trace-config all --trace-time http://127.0.0.1:39089/456 --variable what@log/17/junk --expand-data "{{what}}" > log/17/stdout456 2> log/17/stderr456 curl returned 132, when expecting 2 456: exit FAILED == Contents of files in the log/17/ dir after test 456 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind456 ../src/curl -q --output log/17/curl456.out --include --trace-ascii log/17/trace456 --trace-config all --trace-time http://127.0.0.1:39089/456 --variable what@log/17/junk --expand-data "{{what}}" > log/17/stdout456 2> log/17/stderr456 === End of file commands.log === Start of file http_server.log 07:35:07.135908 ====> Client connect 07:35:07.135961 accept_connection 3 returned 4 07:35:07.136070 accept_connection 3 returned 0 07:35:07.136088 Read 93 bytes 07:35:07.136098 Process 93 bytes request 07:35:07.136112 Got request: GET /verifiedserver HTTP/1.1 07:35:07.136122 Are-we-friendly question received 07:35:07.136151 Wrote request (93 bytes) input to log/17/server.input 07:35:07.136167 Identifying ourselves as friends 07:35:07.136238 Response sent (56 bytes) and written to log/17/server.response 07:35:07.136248 special request received, no persistency 07:35:07.136258 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file junk hello === End of file junk === Start of file server.cmd Testnum 456 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind456 ==99412== ==99412== Process terminating with default action of signal 4 (SIGILL) ==99412== Illegal opcode at address 0x4003082 ==99412== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99412== by 0x4003082: main (tool_main.c:234) === End of file valgrind456 test 0457...[chunked Transfer-Encoding with --max-filesize] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind457 ../src/curl -q --output log/19/curl457.out --include --trace-ascii log/19/trace457 --trace-config all --trace-time http://127.0.0.1:33487/457 --max-filesize 143 > log/19/stdout457 2> log/19/stderr457 457: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 457 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind457 ../src/curl -q --output log/19/curl457.out --include --trace-ascii log/19/trace457 --trace-config all --trace-time http://127.0.0.1:33487/457 --max-filesize 143 > log/19/stdout457 2> log/19/stderr457 === End of file commands.log === Start of file http_server.log 07:35:07.165618 ====> Client connect 07:35:07.165675 accept_connection 3 returned 4 07:35:07.165692 accept_connection 3 returned 0 07:35:07.165707 Read 93 bytes 07:35:07.165717 Process 93 bytes request 07:35:07.165731 Got request: GET /verifiedserver HTTP/1.1 07:35:07.165741 Are-we-friendly question received 07:35:07.165765 Wrote request (93 bytes) input to log/19/server.input 07:35:07.165781 Identifying ourselves as friends 07:35:07.165835 Response sent (56 bytes) and written to log/19/server.response 07:35:07.165845 special request received, no persistency 07:35:07.165854 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 457 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind457 ==99528== ==99528== Process terminating with default action of signal 4 (SIGILL) ==99528== Illegal CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind458 ../src/curl -q --include --trace-ascii log/16/trace458 --trace-config all --trace-time http://127.0.0.1:46739/458 -K log/16/cmd > log/16/stdout458 2> log/16/stderr458 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind469 ../src/curl -q --output log/11/curl469.out --include --trace-ascii log/11/trace469 --trace-config all --trace-time -H “host: 127.0.0.1:41173/“ -s > log/11/stdout469 2> log/11/stderr469 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind471 ../src/curl -q --include --trace-ascii log/20/trace471 --trace-config all --trace-time "http://127.0.0.1:37169/{471,4710001}" -o "log/20/dumpit#1.dump" > log/20/stdout471 2> log/20/stderr471 opcode at address 0x4003082 ==99528== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99528== by 0x4003082: main (tool_main.c:234) === End of file valgrind457 setenv FUNVALUE = contents458 setenv VALUE2 = curl setenv BLANK = test 0458...[variable expand the file name with --expand-output] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind458 ../src/curl -q --include --trace-ascii log/16/trace458 --trace-config all --trace-time http://127.0.0.1:46739/458 -K log/16/cmd > log/16/stdout458 2> log/16/stderr458 458: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 458 === Start of file cmd --variable %FUNVALUE --expand-output log/16/{{FUNVALUE}} === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind458 ../src/curl -q --include --trace-ascii log/16/trace458 --trace-config all --trace-time http://127.0.0.1:46739/458 -K log/16/cmd > log/16/stdout458 2> log/16/stderr458 === End of file commands.log === Start of file http_server.log 07:35:07.203508 ====> Client connect 07:35:07.203542 accept_connection 3 returned 4 07:35:07.203558 accept_connection 3 returned 0 07:35:07.203571 Read 93 bytes 07:35:07.203581 Process 93 bytes request 07:35:07.203593 Got request: GET /verifiedserver HTTP/1.1 07:35:07.203602 Are-we-friendly question received 07:35:07.203625 Wrote request (93 bytes) input to log/16/server.input 07:35:07.203640 Identifying ourselves as friends 07:35:07.203695 Response sent (56 bytes) and written to log/16/server.response 07:35:07.203705 special request received, no persistency 07:35:07.203713 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 458 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind458 ==99605== ==99605== Process terminating with default action of signal 4 (SIGILL) ==99605== Illegal opcode at address 0x4003082 ==99605== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99605== by 0x4003082: main (tool_main.c:234) === End of file valgrind458 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind470 ../src/curl -q --output log/21/curl470.out --include --trace-ascii log/21/trace470 --trace-config all --trace-time 127.0.0.1:41087 --no-progress-meter -K "log/21/input470" > log/21/stdout470 2> log/21/stderr470 test 0469...[warn about Unicode quote character] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind469 ../src/curl -q --output log/11/curl469.out --include --trace-ascii log/11/trace469 --trace-config all --trace-time -H “host: 127.0.0.1:41173/“ -s > log/11/stdout469 2> log/11/stderr469 469: stderr FAILED: --- log/11/check-expected 2025-07-18 07:35:08.117111678 +0000 +++ log/11/check-generated 2025-07-18 07:35:08.117111678 +0000 @@ -1,2 +0,0 @@ -Warning: The argument '%e2%80%9chost:' starts with a Unicode quote where maybe an [LF] -Warning: ASCII " was intended?[LF] == Contents of files in the log/11/ dir after test 469 === Start of file check-expected Warning: The argument '%e2%80%9chost:' starts with a Unicode quote where maybe an [LF] Warning: ASCII " was intended?[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind469 ../src/curl -q --output log/11/curl469.out --include --trace-ascii log/11/trace469 --trace-config all --trace-time -H “host: 127.0.0.1:41173/“ -s > log/11/stdout469 2> log/11/stderr469 === End of file commands.log === Start of file http_server.log 07:35:07.464687 ====> Client connect 07:35:07.464724 accept_connection 3 returned 4 07:35:07.464741 accept_connection 3 returned 0 07:35:07.464762 Read 93 bytes 07:35:07.464772 Process 93 bytes request 07:35:07.464785 Got request: GET /verifiedserver HTTP/1.1 07:35:07.464794 Are-we-friendly question received 07:35:07.464823 Wrote request (93 bytes) input to log/11/server.input 07:35:07.464839 Identifying ourselves as friends 07:35:07.464912 Response sent (56 bytes) and written to log/11/server.response 07:35:07.464922 special request received, no persistency 07:35:07.464931 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 469 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind469 ==100124== ==100124== Process terminating with default action of signal 4 (SIGILL) ==100124== Illegal opcode at address 0x4003082 ==100124== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100124== by 0x4003082: main (tool_main.c:234) === End of file valgrind469 test 0471...[Reject HTTP/1.1 to HTTP/2 switch on the same connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind471 ../src/curl -q --include --trace-ascii log/20/trace471 --trace-config all --trace-time "http://127.0.0.1:37169/{471,4710001}" -o "log/20/dumpit#1.dump" > log/20/stdout471 2> log/20/stderr471 471: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 471 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind471 ../src/curl -q --include --trace-ascii log/20/trace471 --trace-config all --trace-time "http://127.0.0.1:37169/{471,4710001}" -o "log/20/dumpit#1.dump" > log/20/stdout471 2> log/20/stderr471 === End of file commands.log === Start of file http_server.log 07:35:07.475122 ====> Client connect 07:35:07.475156 accept_connection 3 returned 4 07:35:07.475172 accept_connection 3 returned 0 07:35:07.475185 Read 93 bytes 07:35:07.475194 Process 93 bytes request 07:35:07.475207 Got request: GET /verifiedserver HTTP/1.1 07:35:07.475216 Are-we-friendly question received 07:35:07.475241 Wrote request (93 bytes) input to log/20/server.input 07:35:07.475257 Identifying ourselves as friends 07:35:07.475317 Response sent (56 bytes) and written to log/20/server.response 07:35:07.475327 special request received, no persistency 07:35:07.475337 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 471 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind471 ==100189== ==100189== Process terminating with default action of signal 4 (SIGILL) ==100189== Illegal opcode at address 0x4003082 ==100189== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100189== by 0x4003082: main (tool_main.c:234) === End of file valgrind471 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind477 ../src/curl -q --output log/1/curl477.out --include --trace-ascii log/1/trace477 --trace-config all --trace-time http://127.0.0.1:38941/477 --max-filesize 5 -L > log/1/stdout477 2> log/1/stderr477 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind460 ../src/curl -q --output log/24/curl460.out --include --trace-ascii log/24/trace460 --trace-config all --trace-time --expand-url > log/24/stdout460 2> log/24/stderr460 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind463 ../src/curl -q --output log/3/curl463.out --include --trace-ascii log/3/trace463 --trace-config all --trace-time -d @log/3/input463 http://127.0.0.1:42345/463 > log/3/stdout463 2> log/3/stderr463 test 0470...[warn about Unicode quote character read from config file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind470 ../src/curl -q --output log/21/curl470.out --include --trace-ascii log/21/trace470 --trace-config all --trace-time 127.0.0.1:41087 --no-progress-meter -K "log/21/input470" > log/21/stdout470 2> log/21/stderr470 470: stderr FAILED: --- log/21/check-expected 2025-07-18 07:35:08.123778345 +0000 +++ log/21/check-generated 2025-07-18 07:35:08.123778345 +0000 @@ -1,2 +0,0 @@ -Warning: The argument '%e2%80%9chost:fake%e2%80%9d' starts with a Unicode quote where [CR][LF] -Warning: maybe an ASCII " was intended?[CR][LF] == Contents of files in the log/21/ dir after test 470 === Start of file check-expected Warning: The argument '%e2%80%9chost:fake%e2%80%9d' starts with a Unicode quote where [CR][LF] Warning: maybe an ASCII " was intended?[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind470 ../src/curl -q --output log/21/curl470.out --include --trace-ascii log/21/trace470 --trace-config all --trace-time 127.0.0.1:41087 --no-progress-meter -K "log/21/input470" > log/21/stdout470 2> log/21/stderr470 === End of file commands.log === Start of file http_server.log 07:35:07.476011 ====> Client connect 07:35:07.476045 accept_connection 3 returned 4 07:35:07.476061 accept_connection 3 returned 0 07:35:07.476074 Read 93 bytes 07:35:07.476083 Process 93 bytes request 07:35:07.476095 Got request: GET /verifiedserver HTTP/1.1 07:35:07.476104 Are-we-friendly question received 07:35:07.476129 Wrote request (93 bytes) input to log/21/server.input 07:35:07.476144 Identifying ourselves as friends 07:35:07.476197 Response sent (56 bytes) and written to log/21/server.response 07:35:07.476207 special request received, no persistency 07:35:07.476215 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file input470 -H “host:fake” === End of file input470 === Start of file server.cmd Testnum 470 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind470 ==100193== ==100193== Process terminating with default action of signal 4 (SIGILL) ==100193== Illegal opcode at address 0x4003082 ==100193== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100193== by 0x4003082: main (tool_main.c:234) === End of file valgrind470 test 0477...[HTTP GET with maximum filesize with a redirect sending data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind477 ../src/curl -q --output log/1/curl477.out --include --trace-ascii log/1/trace477 --trace-config all --trace-time http://127.0.0.1:38941/477 --max-filesize 5 -L > log/1/stdout477 2> log/1/stderr477 477: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 477 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind477 ../src/curl -q --output log/1/curl477.out --include --trace-ascii log/1/trace477 --trace-config all --trace-time http://127.0.0.1:38941/477 --max-filesize 5 -L > log/1/stdout477 2> log/1/stderr477 === End of file commands.log === Start of file http_server.log 07:35:07.501957 ====> Client connect 07:35:07.501988 accept_connection 3 returned 4 07:35:07.502004 accept_connection 3 returned 0 07:35:07.502018 Read 93 bytes 07:35:07.502027 Process 93 bytes request 07:35:07.502040 Got request: GET /verifiedserver HTTP/1.1 07:35:07.502050 Are-we-friendly question received 07:35:07.502073 Wrote request (93 bytes) input to log/1/server.input 07:35:07.502089 Identifying ourselves as friends 07:35:07.502140 Response sent (56 bytes) and written to log/1/server.response 07:35:07.502151 special request received, no persistency 07:35:07.502159 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 477 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind477 ==100324== ==100324== Process terminating with default action of signal 4 (SIGILL) ==100324== Illegal opcode at address 0x4003082 ==100324== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100324== by 0x4003082: main (tool_main.c:234) === End of file valgrind477 * starts no server test 0460...[try --expand without an argument] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind460 ../src/curl -q --output log/24/curl460.out --include --trace-ascii log/24/trace460 --trace-config all --trace-time --expand-url > log/24/stdout460 2> log/24/stderr460 curl returned 132, when expecting 2 460: exit FAILED == Contents of files in the log/24/ dir after test 460 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind460 ../src/curl -q --output log/24/curl460.out --include --trace-ascii log/24/trace460 --trace-config all --trace-time --expand-url > log/24/stdout460 2> log/24/stderr460 === End of file commands.log === Start of file server.cmd Testnum 460 === End of file server.cmd === Start of file valgrind460 ==99681== ==99681== Process terminating with default action of signal 4 (SIGILL) ==99681== Illegal opcode at address 0x4003082 ==99681== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99681== by 0x4003082: main (tool_main.c:234) === End of file valgrind460 test 0463...[HTTP with -d @file with file containing CR, LF and null byte] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind463 ../src/curl -q --output log/3/curl463.out --include --trace-ascii log/3/trace463 --trace-config all --trace-time -d @log/3/input463 http://127.0.0.1:42345/463 > log/3/stdout463 2> log/3/stderr463 463: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 463 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-filCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind462 ../src/curl -q --output log/6/curl462.out --include --trace-ascii log/6/trace462 --trace-config all --trace-time http://127.0.0.1:35775/462 -K log/6/cmd > log/6/stdout462 2> log/6/stderr462 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind468 ../src/curl -q --trace-ascii log/13/trace468 --trace-config all --trace-time http://127.0.0.1:33627/468 -K log/13/cmd468 -w "" > log/13/stdout468 2> log/13/stderr468 e=log/3/valgrind463 ../src/curl -q --output log/3/curl463.out --include --trace-ascii log/3/trace463 --trace-config all --trace-time -d @log/3/input463 http://127.0.0.1:42345/463 > log/3/stdout463 2> log/3/stderr463 === End of file commands.log === Start of file http_server.log 07:35:07.412498 ====> Client connect 07:35:07.412531 accept_connection 3 returned 4 07:35:07.412546 accept_connection 3 returned 0 07:35:07.412558 Read 93 bytes 07:35:07.412565 Process 93 bytes request 07:35:07.412585 Got request: GET /verifiedserver HTTP/1.1 07:35:07.412598 Are-we-friendly question received 07:35:07.412623 Wrote request (93 bytes) input to log/3/server.input 07:35:07.412685 Identifying ourselves as friends 07:35:07.412789 Response sent (56 bytes) and written to log/3/server.response 07:35:07.412801 special request received, no persistency 07:35:07.412812 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file input463 one two three fourfive === End of file input463 === Start of file server.cmd Testnum 463 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind463 ==99867== ==99867== Process terminating with default action of signal 4 (SIGILL) ==99867== Illegal opcode at address 0x4003082 ==99867== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99867== by 0x4003082: main (tool_main.c:234) === End of file valgrind463 * starts no server test 0462...[Missing environment variables in config file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind462 ../src/curl -q --output log/6/curl462.out --include --trace-ascii log/6/trace462 --trace-config all --trace-time http://127.0.0.1:35775/462 -K log/6/cmd > log/6/stdout462 2> log/6/stderr462 curl returned 132, when expecting 26 462: exit FAILED == Contents of files in the log/6/ dir after test 462 === Start of file cmd variable %MISSING expand-data {{MISSING}} === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind462 ../src/curl -q --output log/6/curl462.out --include --trace-ascii log/6/trace462 --trace-config all --trace-time http://127.0.0.1:35775/462 -K log/6/cmd > log/6/stdout462 2> log/6/stderr462 === End of file commands.log === Start of file server.cmd Testnum 462 === End of file server.cmd === Start of file valgrind462 ==99718== ==99718== Process terminating with default action of signal 4 (SIGILL) ==99718== Illegal opcode at address 0x4003082 ==99718== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99718== by 0x4003082: main (tool_main.c:234) === End of file valgrind462 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind467 ../src/curl -q --output log/18/curl467.out --include --trace-ascii log/18/trace467 --trace-config all --trace-time curl -v http://example.com > log/18/stdout467 2> log/18/stderr467 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind461 ../src/curl -q --output log/2/curl461.out --include --trace-ascii log/2/trace461 --trace-config all --trace-time http://127.0.0.1:45457/461 -H host: > log/2/stdout461 2> log/2/stderr461 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind459 ../src/curl -q --output log/10/curl459.out --include --trace-ascii log/10/trace459 --trace-config all --trace-time http://127.0.0.1:34851/459 --config log/10/config --silent > log/10/stdout459 2> log/10/stderr459 test 0468...[set -w in config, then reset -w to blank on cmdline] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind468 ../src/curl -q --trace-ascii log/13/trace468 --trace-config all --trace-time http://127.0.0.1:33627/468 -K log/13/cmd468 -w "" > log/13/stdout468 2> log/13/stderr468 468: stdout FAILED: --- log/13/check-expected 2025-07-18 07:35:08.177111678 +0000 +++ log/13/check-generated 2025-07-18 07:35:08.177111678 +0000 @@ -1 +0,0 @@ --foo-[LF] == Contents of files in the log/13/ dir after test 468 === Start of file check-expected -foo-[LF] === End of file check-expected === Start of file cmd468 -w "output\n" === End of file cmd468 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind468 ../src/curl -q --trace-ascii log/13/trace468 --trace-config all --trace-time http://127.0.0.1:33627/468 -K log/13/cmd468 -w "" > log/13/stdout468 2> log/13/stderr468 === End of file commands.log === Start of file http_server.log 07:35:07.429182 ====> Client connect 07:35:07.429212 accept_connection 3 returned 4 07:35:07.429226 accept_connection 3 returned 0 07:35:07.429239 Read 93 bytes 07:35:07.429246 Process 93 bytes request 07:35:07.429257 Got request: GET /verifiedserver HTTP/1.1 07:35:07.429265 Are-we-friendly question received 07:35:07.429283 Wrote request (93 bytes) input to log/13/server.input 07:35:07.429298 Identifying ourselves as friends 07:35:07.429570 Response sent (56 bytes) and written to log/13/server.response 07:35:07.429583 special request received, no persistency 07:35:07.429593 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 468 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind468 ==99981== ==99981== Process terminating with default action of signal 4 (SIGILL) ==99981== Illegal opcode at address 0x4003082 ==99981== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99981== by 0x4003082: main (tool_main.c:234) === End of file valgrind468 * starts no server test 0467...[use a bad short option letter that does not exist (after one does exist)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind467 ../src/curl -q --output log/18/curl467.out --include --trace-ascii log/18/trace467 --trace-config all --trace-time curl -v http://example.com > log/18/stdout467 2> log/18/stderr467 curl returned 132, when expecting 2 467: exit FAILED == Contents of files in the log/18/ dir after test 467 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind467 ../src/curl -q --output log/18/curl467.out --include --trace-ascii log/18/trace467 --trace-config all --trace-time curl -v http://example.com > log/18/stdout467 2> log/18/stderr467 === End of file commands.log === Start of file server.cmd Testnum 467 === End of file server.cmd === Start of file valgrind467 ==99724== ==99724== Process terminating with default action of signal 4 (SIGILL) ==99724== Illegal opcode at address 0x4003082 ==99724== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99724== by 0x4003082: main (tool_main.c:234) === End of file valgrind467 test 0461...[disable Host: when specified as lower case] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind461 ../src/curl -q --output log/2/curl461.out --include --trace-ascii log/2/trace461 --trace-config all --trace-time http://127.0.0.1:45457/461 -H host: > log/2/stdout461 2> log/2/stderr461 461: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 461 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind461 ../src/curl -q --output log/2/curl461.out --include --trace-ascii log/2/trace461 --trace-config all --trace-time http://127.0.0.1:45457/461 -H host: > log/2/stdout461 2> log/2/stderr461 === End of file commands.log === Start of file http_server.log 07:35:07.402518 ====> Client connect 07:35:07.402552 accept_connection 3 returned 4 07:35:07.402568 accept_connection 3 returned 0 07:35:07.402581 Read 93 bytes 07:35:07.402590 Process 93 bytes request 07:35:07.402601 Got request: GET /verifiedserver HTTP/1.1 07:35:07.402610 Are-we-friendly question received 07:35:07.402643 Wrote request (93 bytes) input to log/2/server.input 07:35:07.402657 Identifying ourselves as friends 07:35:07.402725 Response sent (56 bytes) and written to log/2/server.response 07:35:07.402736 special request received, no persistency 07:35:07.402745 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 461 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind461 ==99789== ==99789== Process terminating with default action of signal 4 (SIGILL) ==99789== Illegal opcode at address 0x4003082 ==99789== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99789== by 0x4003082: main (tool_main.c:234) === End of file valgrind461 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind473 ../src/curl -q --output log/9/curl473.out --include --trace-ascii log/9/trace473 --trace-config all --trace-time http://127.0.0.1:34999/473 --etag-save log/9/etag473 > log/9/stdout473 2> log/9/stderr473 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind478 ../src/curl -q --output log/23/curl478.out --include --trace-ascii log/23/trace478 --trace-config all --trace-time --netrc --netrc-file log/23/netrc478 -x http://127.0.0.1:45701/ http://debbie@github.com/ > log/23/stdout478 2> log/23/stderr478 test 0459...[config file with argument using whitespace missing quotes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind459 ../src/curl -q --output log/10/curl459.out --include --trace-ascii log/10/trace459 --trace-config all --trace-time http://127.0.0.1:34851/459 --config log/10/config --silent > log/10/stdout459 2> log/10/stderr459 459: stderr FAILED: --- log/10/check-expected 2025-07-18 07:35:08.197111678 +0000 +++ log/10/check-generated 2025-07-18 07:35:08.197111678 +0000 @@ -1,2 +0,0 @@ -Warning: log/10/config:1: warning: 'data' uses unquoted whitespace[CR][LF] -Warning: This may cause side-effects. Consider using double quotes?[CR][LF] == Contents of files in the log/10/ dir after test 459 === Start of file check-expected Warning: log/10/config:1: warning: 'data' uses unquoted whitespace[CR][LF] Warning: This may cause side-effects. Consider using double quotes?[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind459 ../src/curl -q --output log/10/curl459.out --include --trace-ascii log/10/trace459 --trace-config all --trace-time http://127.0.0.1:34851/459 --config log/10/config --silent > log/10/stdout459 2> log/10/stderr459 === End of file commands.log === Start of file config data = arg with space === End of file config === Start of file http_server.log 07:35:07.399671 ====> Client connect 07:35:07.399711 accept_connection 3 returned 4 07:35:07.399729 accept_connection 3 returned 0 07:35:07.399743 Read 93 bytes 07:35:07.399752 Process 93 bytes request 07:35:07.399764 Got request: GET /verifiedserver HTTP/1.1 07:35:07.399771 Are-we-friendly question received 07:35:07.399791 Wrote request (93 bytes) input to log/10/server.input 07:35:07.399832 Identifying ourselves as friends 07:35:07.399911 Response sent (56 bytes) and written to log/10/server.response 07:35:07.399920 special request received, no persistency 07:35:07.399930 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 459 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind459 ==99785== ==99785== Process terminating with default action of signal 4 (SIGILL) ==99785== Illegal opcode at address 0x4003082 ==99785== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==99785== by 0x4003082: main (tool_main.c:234) === End of file valgrind459 test 0473...[Check if --etag-save saved correct etag to a file on 301] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind473 ../src/curl -q --output log/9/curl473.out --include --trace-ascii log/9/trace473 --trace-config all --trace-time http://127.0.0.1:34999/473 --etag-save log/9/etag473 > log/9/stdout473 2> log/9/stderr473 473: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 473 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind473 ../src/curl -q --output log/9/curl473.out --include --trace-ascii log/9/trace473 --trace-config all --trace-time http://127.0.0.1:34999/473 --etag-save log/9/etag473 > log/9/stdout473 2> log/9/stderr473 === End of file commands.log === Start of file http_server.log 07:35:07.489007 ====> Client connect 07:35:07.489041 accept_connection 3 returned 4 07:35:07.489058 accept_connection 3 returned 0 07:35:07.489073 Read 93 bytes 07:35:07.489083 Process 93 bytes request 07:35:07.489095 Got request: GET /verifiedserver HTTP/1.1 07:35:07.489104 Are-we-friendly question received 07:35:07.489127 Wrote request (93 bytes) input to log/9/server.input 07:35:07.489142 Identifying ourselves as friends 07:35:07.489202 Response sent (56 bytes) and written to log/9/server.response 07:35:07.489212 special request received, no persistency 07:35:07.489221 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 473 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind473 ==100265== ==100265== Process terminating with default action of signal 4 (SIGILL) ==100265== Illegal opcode at address 0x4003082 ==100265== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100265== by 0x4003082: main (tool_main.c:234) === End of file valgrind473 test 0478...[.netrc with multiple accounts for same host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind478 ../src/curl -q --output log/23/curl478.out --include --trace-ascii log/23/trace478 --trace-config all --trace-time --netrc --netrc-file log/23/netrc478 -x http://127.0.0.1:45701/ http://debbie@github.com/ > log/23/stdout478 2> log/23/stderr478 478: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 478 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind478 ../src/curl -q --output log/23/curl478.out --include --trace-ascii log/23/trace478 --trace-config all --trace-time --netrc --netrc-file log/23/netrc478 -x http://127.0.0.1:45701/ http://debbie@github.com/ > log/23/stdout478 2> log/23/stderr478 === End of file commands.log === Start of file http_server.log 07:35:07.526861 ====> Client connect 07:35:07.526897 accept_connection 3 returned 4 07:35:07.526913 accept_connection 3 returned 0 07:35:07.526927 Read 93 bytes 07:35:07.526937 Process 93 bytes request 07:35:07.526950 Got request: GET /verifiedserver HTTP/1.1 07:35:07.526959 Are-we-friendly question received 07:35:07.526984 Wrote request (93 bytes) input to log/23/server.input 07:35:07.527001 Identifying ourselves as friends 07:35:07.527061 Response sent (56 bytes) and written to log/23/server.response 07:35:07.527072 special request received, no persistency 07:35:07.527082 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK log/4/stdout476 2> log/4/stderr476 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind475 ../src/curl -q --output log/7/curl475.out --include --trace-ascii log/7/trace475 --trace-config all --trace-time "ftp://127.0.0.1:40197/475;type=a" -T log/7/test475.txt > log/7/stdout475 2> log/7/stderr475 Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file netrc478 machine github.com password weird password firstone login daniel machine github.com machine github.com login debbie machine github.com password weird password "second\r" login debbie === End of file netrc478 === Start of file server.cmd Testnum 478 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind478 ==100435== ==100435== Process terminating with default action of signal 4 (SIGILL) ==100435== Illegal opcode at address 0x4003082 ==100435== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100435== by 0x4003082: main (tool_main.c:234) === End of file valgrind478 test 0476...[FTP PASV upload ASCII file already using CRLF] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind476 ../src/curl -q --output log/4/curl476.out --include --trace-ascii log/4/trace476 --trace-config all --trace-time "ftp://127.0.0.1:37869/476;type=a" -T log/4/test476.txt > log/4/stdout476 2> log/4/stderr476 476: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 476 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind476 ../src/curl -q --output log/4/curl476.out --include --trace-ascii log/4/trace476 --trace-config all --trace-time "ftp://127.0.0.1:37869/476;type=a" -T log/4/test476.txt > log/4/stdout476 2> log/4/stderr476 === End of file commands.log === Start of file ftp_server.log 07:35:07.656209 ====> Client connect 07:35:07.656360 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:07.656614 < "USER anonymous" 07:35:07.656644 > "331 We are happy you popped in![CR][LF]" 07:35:07.656801 < "PASS ftp@example.com" 07:35:07.656823 > "230 Welcome you silly person[CR][LF]" 07:35:07.656955 < "PWD" 07:35:07.656981 > "257 "/" is current directory[CR][LF]" 07:35:07.657115 < "EPSV" 07:35:07.657136 ====> Passive DATA channel requested by client 07:35:07.657148 DATA sockfilt for passive data channel starting... 07:35:07.659202 DATA sockfilt for passive data channel started (pid 100257) 07:35:07.659338 DATA sockfilt for passive data channel listens on port 44673 07:35:07.659389 > "229 Entering Passive Mode (|||44673|)[LF]" 07:35:07.659410 Client has been notified that DATA conn will be accepted on port 44673 07:35:07.659879 Client connects to port 44673 07:35:07.659906 ====> Client established passive DATA connection on port 44673 07:35:07.659985 < "TYPE I" 07:35:07.660538 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:07.660735 < "SIZE verifiedserver" 07:35:07.660769 > "213 17[CR][LF]" 07:35:07.660927 < "RETR verifiedserver" 07:35:07.660968 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:07.661048 =====> Closing passive DATA connection... 07:35:07.661065 Server disconnects passive DATA connection 07:35:07.661217 Server disconnected passive DATA connection 07:35:07.661244 DATA sockfilt for passive data channel quits (pid 100257) 07:35:07.661494 DATA sockfilt for passive data channel quit (pid 100257) 07:35:07.661518 =====> Closed passive DATA connection 07:35:07.661545 > "226 File transfer complete[CR][LF]" 07:35:07.705584 < "QUIT" 07:35:07.705660 > "221 bye bye baby[CR][LF]" 07:35:07.706728 MAIN sockfilt said DISC 07:35:07.706757 ====> Client disconnected 07:35:07.706833 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:07.502098 ====> Client connect 07:35:07.502359 Received DATA (on stdin) 07:35:07.502373 > 160 bytes data, server => client 07:35:07.502385 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:07.502396 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:07.502406 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:07.502468 < 16 bytes data, client => server 07:35:07.502479 'USER anonymous\r\n' 07:35:07.502643 Received DATA (on stdin) 07:35:07.502654 > 33 bytes data, server => client 07:35:07.502665 '331 We are happy you popped in!\r\n' 07:35:07.502710 < 22 bytes data, client => server 07:35:07.502720 'PASS ftp@example.com\r\n' 07:35:07.502810 Received DATA (on stdin) 07:35:07.502821 > 30 bytes data, server => client 07:35:07.502831 '230 Welcome you silly person\r\n' 07:35:07.502871 < 5 bytes data, client => server 07:35:07.502883 'PWD\r\n' 07:35:07.502968 Received DATA (on stdin) 07:35:07.502978 > 30 bytes data, server => client 07:35:07.502989 '257 "/" is current directory\r\n' 07:35:07.503036 < 6 bytes data, client => server 07:35:07.503046 'EPSV\r\n' 07:35:07.505409 Received DATA (on stdin) 07:35:07.505428 > 38 bytes data, server => client 07:35:07.505439 '229 Entering Passive Mode (|||44673|)\n' 07:35:07.505812 < 8 bytes data, client => server 07:35:07.505825 'TYPE I\r\n' 07:35:07.506540 Received DATA (on stdin) 07:35:07.506554 > 33 bytes data, server => client 07:35:07.506564 '200 I modify TYPE as you wanted\r\n' 07:35:07.506625 < 21 bytes data, client => server 07:35:07.506644 'SIZE verifiedserver\r\n' 07:35:07.506760 Received DATA (on stdin) 07:35:07.506772 > 8 bytes data, server => client 07:35:07.506782 '213 17\r\n' 07:35:07.506843 < 21 bytes data, client => server 07:35:07.506857 'RETR verifiedserver\r\n' 07:35:07.507057 Received DATA (on stdin) 07:35:07.507071 > 29 bytes data, server => client 07:35:07.507082 '150 Binary junk (17 bytes).\r\n' 07:35:07.507534 Received DATA (on stdin) 07:35:07.507549 > 28 bytes data, server => client 07:35:07.507560 '226 File transfer complete\r\n' 07:35:07.551343 < 6 bytes data, client => server 07:35:07.551377 'QUIT\r\n' 07:35:07.551654 Received DATA (on stdin) 07:35:07.551665 > 18 bytes data, server => client 07:35:07.551675 '221 bye bye baby\r\n' 07:35:07.552668 ====> Client disconnect 07:35:07.552790 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:07.504750 Running IPv4 version 07:35:07.504810 Listening on port 44673 07:35:07.504848 Wrote pid 100257 to log/4/server/ftp_sockdata.pid 07:35:07.505117 Received PING (on stdin) 07:35:07.505227 Received PORT (on stdin) 07:35:07.505781 ====> Client connect 07:35:07.506971 Received DATA (on stdin) 07:35:07.506990 > 17 bytes data, server => client 07:35:07.507002 'WE ROOLZ: 79844\r\n' 07:35:07.507055 Received DISC (on stdin) 07:35:07.507067 ====> Client forcibly disconnected 07:35:07.507233 Received QUIT (on stdin) 07:35:07.507243 quits 07:35:07.507300 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 476 === End of file server.cmd === Start of file test476.txt a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this === File too long: 349 lines omitted here a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this === End of file test476.txt === Start of file valgrind476 ==100529== ==100529== Process terminating with default action of signal 4 (SIGILL) ==100529== Illegal opcode at address 0x4003082 ==100529== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100529== by 0x4003082: main (tool_main.c:234) === End of file valgrind476 test 0475...[FTP PASV upload ASCII file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind475 ../src/curl -q --output log/7/curl475.out --include --trace-ascii log/7/trace475 --trace-config all --trace-time "ftp://127.0.0.1:40197/475;type=a" -T log/7/test475.txt > log/7/stdout475 2> log/7/stderr475 475: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 475 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind475 ../src/curl -q --output log/7/curl475.out --include --trace-ascii log/7/trace475 --trace-config all --trace-time "ftp://127.0.0.1:40197/475;type=a" -T log/7/test475.txt > log/7/stdout475 2> log/7/stderr475 === End of file commands.log === Start of file ftp_server.log 07:35:07.657251 ====> Client connect 07:35:07.657409 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:07.657670 < "USER anonymous" 07:35:07.657714 > "331 We are happy you popped in![CR][LF]" 07:35:07.657879 < "PASS ftp@example.com" 07:35:07.657903 > "230 Welcome you silly person[CR][LF]" 07:35:07.658053 < "PWD" 07:35:07.658083 > "257 "/" is current directory[CR][LF]" 07:35:07.658291 < "EPSV" 07:35:07.658331 ====> Passive DATA channel requested by client 07:35:07.658345 DATA sockfilt for passive data channel starting... 07:35:07.660347 DATA sockfilt for passive data channel started (pid 100261) 07:35:07.660452 DATA sockfilt for passive data channel listens on port 33451 07:35:07.660484 > "229 Entering Passive Mode (|||33451|)[LF]" 07:35:07.660502 Client has been notified that DATA conn will be accepted on port 33451 07:35:07.661628 Client connects to port 33451 07:35:07.661657 ====> Client established passive DATA connection on port 33451 07:35:07.661728 < "TYPE I" 07:35:07.661758 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:07.661917 < "SIZE verifiedserver" 07:35:07.661952 > "213 17[CR][LF]" 07:35:07.662104 < "RETR verifiedserver" 07:35:07.662138 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:07.662209 =====> Closing passive DATA connection... 07:35:07.662225 Server disconnects passive DATA connection 07:35:07.662451 Server disconnected passive DATA connection 07:35:07.662480 DATA sockfilt for passive data channel quits (pid 100261) 07:35:07.662773 DATA sockfilt for passive data channel quit (pid 100261) 07:35:07.662817 =====> Closed passive DATA connection 07:35:07.662855 > "226 File transfer complete[CR][LF]" 07:35:07.703739 < "QUIT" 07:35:07.703799 > "221 bye bye baby[CR][LF]" 07:35:07.703956 MAIN sockfilt said DISC 07:35:07.703981 ====> Client disconnected 07:35:07.704054 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:07.503130 ====> Client connect 07:35:07.503415 Received DATA (on stdin) 07:35:07.503430 > 160 bytes data, server => client 07:35:07.503442 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:07.503453 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:07.503463 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:07.503524 < 16 bytes data, client => server 07:35:07.503539 'USER anonymous\r\n' 07:35:07.503708 Received DATA (on stdin) 07:35:07.503721 > 33 bytes data, server => client 07:35:07.503732 '331 We are happy you popped in!\r\n' 07:35:07.503781 < 22 bytes data, client => server 07:35:07.503794 'PASS ftp@example.com\r\n' 07:35:07.503892 Received DATA (on stdin) 07:35:07.503904 > 30 bytes data, server => client 07:35:07.503915 '230 Welcome you silly person\r\n' 07:35:07.503960 < 5 bytes data, client => server 07:35:07.503972 'PWD\r\n' 07:35:07.504074 Received DATA (on stdin) 07:35:07.504085 > 30 bytes data, server => client 07:35:07.504096 '257 "/" is current directory\r\n' 07:35:07.504148 < 6 bytes data, client => server 07:35:07.504161 'EPSV\r\n' 07:35:07.507392 Received DATA (on stdin) 07:35:07.507412 > 38 bytes data, server => client 07:35:07.507424 '229 Entering Passive Mode (|||33451|)\n' 07:35:07.507532 < 8 bytes data, client => server 07:35:07.507549 'TYPE I\r\n' 07:35:07.507750 Received DATA (on stdin) 07:35:07.507763 > 33 bytes data, server => client 07:35:07.507774 '200 I modify TYPE as you wanted\r\n' 07:35:07.507822 < 21 bytes data, client => server 07:35:07.507836 'SIZE verifiedserver\r\n' 07:35:07.507942 Received DATA (on stdin) 07:35:07.507954 > 8 bytes data, server => client 07:35:07.507964 '213 17\r\n' 07:35:07.508012 < 21 bytes data, client => server 07:35:07.508025 'RETR verifiedserver\r\n' 07:35:07.508216 Received DATA (on stdin) 07:35:07.508229 > 29 bytes data, server => client 07:35:07.508240 '150 Binary junk (17 bytes).\r\n' 07:35:07.508860 Received DATA (on stdin) 07:35:07.508879 > 28 bytes data, server => client 07:35:07.508891 '226 File transfer complete\r\n' 07:35:07.549535 < 6 bytes data, client => server 07:35:07.549565 'QUIT\r\n' 07:35:07.549792 Received DATA (on stdin) 07:35:07.549803 > 18 bytes data, server => client 07:35:07.549812 '221 bye bye baby\r\n' 07:35:07.549906 ====> Client disconnect 07:35:07.550041 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:07.506167 Running IPv4 version 07:35:07.506228 Listening on port 33451 07:35:07.506265 Wrote pid 100261 to log/7/server/ftp_sockdata.pid 07:35:07.506284 Received PING (on stdin) 07:35:07.506363 Received PORT (on stdin) 07:35:07.507571 ====> Client connect 07:35:07.508270 Received DATA (on stdin) 07:35:07.508288 > 17 bytes data, server => client 07:35:07.508299 'WE ROOLZ: 81417\r\n' 07:35:07.508320 Received DISC (on stdin) 07:35:07.508332 ====> Client forcibly disconnected 07:35:07.508478 Received QUIT (on stdin) 07:35:07.508490 quits 07:35:07.508556 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 475 === End of file server.cmd === Start of file test475.txt a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this === File too long: 349 lines omitted here a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifyinCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind479 ../src/curl -q --output log/15/curl479.out --include --trace-ascii log/15/trace479 --trace-config all --trace-time --netrc --netrc-file log/15/netrc479 -L -x http://127.0.0.1:36993/ http://a.com/ > log/15/stdout479 2> log/15/stderr479 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind482 ../src/curl -q --trace-ascii log/5/trace482 --trace-config all --trace-time http://non-existing-host.haxx.se. --remove-on-error -C 1 -o "log/5/482" > log/5/stdout482 2> log/5/stderr482 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind484 ../src/curl -q --output log/12/curl484.out --include --trace-ascii log/12/trace484 --trace-config all --trace-time http://example.com/484 --etag-compare log/12/etag484 --etag-save log/12/etag484 --url http://example.net/fooo > log/12/stdout484 2> log/12/stderr484 g this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this a line of text used for verifying this === End of file test475.txt === Start of file valgrind475 ==100522== ==100522== Process terminating with default action of signal 4 (SIGILL) ==100522== Illegal opcode at address 0x4003082 ==100522== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100522== by 0x4003082: main (tool_main.c:234) === End of file valgrind475 test 0479...[.netrc with redirect and default without password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind479 ../src/curl -q --output log/15/curl479.out --include --trace-ascii log/15/trace479 --trace-config all --trace-time --netrc --netrc-file log/15/netrc479 -L -x http://127.0.0.1:36993/ http://a.com/ > log/15/stdout479 2> log/15/stderr479 479: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 479 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind479 ../src/curl -q --output log/15/curl479.out --include --trace-ascii log/15/trace479 --trace-config all --trace-time --netrc --netrc-file log/15/netrc479 -L -x http://127.0.0.1:36993/ http://a.com/ > log/15/stdout479 2> log/15/stderr479 === End of file commands.log === Start of file http_server.log 07:35:07.651962 ====> Client connect 07:35:07.651996 accept_connection 3 returned 4 07:35:07.652012 accept_connection 3 returned 0 07:35:07.652025 Read 93 bytes 07:35:07.652035 Process 93 bytes request 07:35:07.652047 Got request: GET /verifiedserver HTTP/1.1 07:35:07.652056 Are-we-friendly question received 07:35:07.652080 Wrote request (93 bytes) input to log/15/server.input 07:35:07.652096 Identifying ourselves as friends 07:35:07.652432 Response sent (56 bytes) and written to log/15/server.response 07:35:07.652445 special request received, no persistency 07:35:07.652454 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file netrc479 machine a.com login alice password alicespassword default login bob === End of file netrc479 === Start of file server.cmd Testnum 479 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind479 ==100691== ==100691== Process terminating with default action of signal 4 (SIGILL) ==100691== Illegal opcode at address 0x4003082 ==100691== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100691== by 0x4003082: main (tool_main.c:234) === End of file valgrind479 test 0482...[--remove-on-error with --continue-at] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind482 ../src/curl -q --trace-ascii log/5/trace482 --trace-config all --trace-time http://non-existing-host.haxx.se. --remove-on-error -C 1 -o "log/5/482" > log/5/stdout482 2> log/5/stderr482 482: stderr FAILED: --- log/5/check-expected 2025-07-18 07:35:08.387111684 +0000 +++ log/5/check-generated 2025-07-18 07:35:08.387111684 +0000 @@ -1,3 +0,0 @@ -curl: --continue-at is mutually exclusive with --remove-on-error[CR][LF] -curl: option -C: is badly used here[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/5/ dir after test 482 === Start of file check-expected curl: --continue-at is mutually exclusive with --remove-on-error[CR][LF] curl: option -C: is badly used here[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind482 ../src/curl -q --trace-ascii log/5/trace482 --trace-config all --trace-time http://non-existing-host.haxx.se. --remove-on-error -C 1 -o "log/5/482" > log/5/stdout482 2> log/5/stderr482 === End of file commands.log === Start of file http_server.log 07:35:07.663880 ====> Client connect 07:35:07.663914 accept_connection 3 returned 4 07:35:07.663929 accept_connection 3 returned 0 07:35:07.663942 Read 93 bytes 07:35:07.663951 Process 93 bytes request 07:35:07.663962 Got request: GET /verifiedserver HTTP/1.1 07:35:07.663971 Are-we-friendly question received 07:35:07.663995 Wrote request (93 bytes) input to log/5/server.input 07:35:07.664011 Identifying ourselves as friends 07:35:07.664064 Response sent (56 bytes) and written to log/5/server.response 07:35:07.664074 special request received, no persistency 07:35:07.664084 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 482 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind482 ==100685== ==100685== Process terminating with default action of signal 4 (SIGILL) ==100685== Illegal opcode at address 0x4003082 ==100685== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100685== by 0x4003082: main (tool_main.c:234) === End of file valgrind482 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind481 ../src/curl -q --trace-ascii log/22/trace481 --trace-config all --trace-time http://127.0.0.1:46761/481 --no-clobber -C 1 -o "log/22/481" > log/22/stdout481 2> log/22/stderr481 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind483 ../src/curl -q --output log/8/curl483.out --include --trace-ascii log/8/trace483 --trace-config all --trace-time http://127.0.0.1:45261/483 -c log/8/c483 > log/8/stdout483 2> log/8/stderr483 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind485 ../src/curl -q --output log/17/curl485.out --include --trace-ascii log/17/trace485 --trace-config all --trace-time http://example.com/485 http://example.net/fooo --etag-save log/17/etag485 > log/17/stdout485 2> log/17/stderr485 * starts no server test 0484...[Use --etag-compare and -save with more than one URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind484 ../src/curl -q --output log/12/curl484.out --include --trace-ascii log/12/trace484 --trace-config all --trace-time http://example.com/484 --etag-compare log/12/etag484 --etag-save log/12/etag484 --url http://example.net/fooo > log/12/stdout484 2> log/12/stderr484 484: stderr FAILED: --- log/12/check-expected 2025-07-18 07:35:08.393778351 +0000 +++ log/12/check-generated 2025-07-18 07:35:08.393778351 +0000 @@ -1,3 +0,0 @@ -curl: The etag options only work on a single URL[CR][LF] -curl: option --url: is badly used here[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/12/ dir after test 484 === Start of file check-expected curl: The etag options only work on a single URL[CR][LF] curl: option --url: is badly used here[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind484 ../src/curl -q --output log/12/curl484.out --include --trace-ascii log/12/trace484 --trace-config all --trace-time http://example.com/484 --etag-compare log/12/etag484 --etag-save log/12/etag484 --url http://example.net/fooo > log/12/stdout484 2> log/12/stderr484 === End of file commands.log === Start of file server.cmd Testnum 484 === End of file server.cmd === Start of file valgrind484 ==100774== ==100774== Process terminating with default action of signal 4 (SIGILL) ==100774== Illegal opcode at address 0x4003082 ==100774== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100774== by 0x4003082: main (tool_main.c:234) === End of file valgrind484 test 0483...[HTTP cookies with long expire dates] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind483 ../src/curl -q --output log/8/curl483.out --include --trace-ascii log/8/trace483 --trace-config all --trace-time http://127.0.0.1:45261/483 -c log/8/c483 > log/8/stdout483 2> log/8/stderr483 483: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 483 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind483 ../src/curl -q --output log/8/curl483.out --include --trace-ascii log/8/trace483 --trace-config all --trace-time http://127.0.0.1:45261/483 -c log/8/c483 > log/8/stdout483 2> log/8/stderr483 === End of file commands.log === Start of file http_server.log 07:35:07.695230 ====> Client connect 07:35:07.695263 accept_connection 3 returned 4 07:35:07.695279 accept_connection 3 returned 0 07:35:07.695293 Read 93 bytes 07:35:07.695303 Process 93 bytes request 07:35:07.695317 Got request: GET /verifiedserver HTTP/1.1 07:35:07.695327 Are-we-friendly question received 07:35:07.695351 Wrote request (93 bytes) input to log/8/server.input 07:35:07.695368 Identifying ourselves as friends 07:35:07.695418 Response sent (56 bytes) and written to log/8/server.response 07:35:07.695427 special request received, no persistency 07:35:07.695435 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 483 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind483 ==100840== ==100840== Process terminating with default action of signal 4 (SIGILL) ==100840== Illegal opcode at address 0x4003082 ==100840== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100840== by 0x4003082: main (tool_main.c:234) === End of file valgrind483 * starts no server test 0485...[Use --etag-compare and -save with more than one URL, URLs specified first] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind485 ../src/curl -q --output log/17/curl485.out --include --trace-ascii log/17/trace485 --trace-config all --trace-time http://example.com/485 http://example.net/fooo --etag-save log/17/etag485 > log/17/stdout485 2> log/17/stderr485 485: stderr FAILED: --- log/17/check-expected 2025-07-18 07:35:08.400445016 +0000 +++ log/17/check-generated 2025-07-18 07:35:08.400445016 +0000 @@ -1,3 +0,0 @@ -curl: The etag options only work on a single URL[CR][LF] -curl: option --etag-save: is badly used here[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/17/ dir after test 485 === Start of file check-expected curl: The etag options only work on a single URL[CR][LF] curl: option --etag-save: is badly used here[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind485 ../src/curl -q --output log/17/curl485.out --include --trace-ascii log/17/trace485 --trace-config all --trace-time http://example.com/485 http://example.net/fooo --etag-save log/17/etag485 > log/17/stdout485 2> log/17/stderr485 === End of file commands.log === Start of file server.cmd Testnum 485 === End of file server.cmd === Start of file valgrind485 ==100775== ==100775== Process terminating with default action of signal 4 (SIGILL) ==100775== Illegal opcode at address 0x4003082 ==100775== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100775== by 0x4003082: main (tool_main.c:234) === End of file valgrind485 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind486 ../src/curl -q --output log/19/curl486.out --include --trace-ascii log/19/trace486 --trace-config all --trace-time --netrc --netrc-file log/19/netrc486 -L -x http://127.0.0.1:33487/ http://a.com/ > log/19/stdout486 2> log/19/stderr486 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind487 ../src/curl -q --output log/16/curl487.out --include --trace-ascii log/16/trace487 --trace-config all --trace-time --variable what=not-base64-data --expand-url "http://127.0.0.1:46739/{{what:64dec}}/487" -g > log/16/stdout487 2> log/16/stderr487 test 0481...[--no-clobber with --continue-at] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind481 ../src/curl -q --trace-ascii log/22/trace481 --trace-config all --trace-time http://127.0.0.1:46761/481 --no-clobber -C 1 -o "log/22/481" > log/22/stdout481 2> log/22/stderr481 481: stderr FAILED: --- log/22/check-expected 2025-07-18 07:35:08.407111684 +0000 +++ log/22/check-generated 2025-07-18 07:35:08.407111684 +0000 @@ -1,3 +0,0 @@ -curl: --continue-at is mutually exclusive with --no-clobber[CR][LF] -curl: option -C: is badly used here[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/22/ dir after test 481 === Start of file 481 initial content === End of file 481 === Start of file check-expected curl: --continue-at is mutually exclusive with --no-clobber[CR][LF] curl: option -C: is badly used here[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind481 ../src/curl -q --trace-ascii log/22/trace481 --trace-config all --trace-time http://127.0.0.1:46761/481 --no-clobber -C 1 -o "log/22/481" > log/22/stdout481 2> log/22/stderr481 === End of file commands.log === Start of file http_server.log 07:35:07.661259 ====> Client connect 07:35:07.661292 accept_connection 3 returned 4 07:35:07.661307 accept_connection 3 returned 0 07:35:07.661321 Read 93 bytes 07:35:07.661331 Process 93 bytes request 07:35:07.661343 Got request: GET /verifiedserver HTTP/1.1 07:35:07.661352 Are-we-friendly question received 07:35:07.661378 Wrote request (93 bytes) input to log/22/server.input 07:35:07.661394 Identifying ourselves as friends 07:35:07.661447 Response sent (56 bytes) and written to log/22/server.response 07:35:07.661457 special request received, no persistency 07:35:07.661466 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 481 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind481 ==100682== ==100682== Process terminating with default action of signal 4 (SIGILL) ==100682== Illegal opcode at address 0x4003082 ==100682== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==100682== by 0x4003082: main (tool_main.c:234) === End of file valgrind481 test 0486...[.netrc with redirect and "default" with no password or login] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind486 ../src/curl -q --output log/19/curl486.out --include --trace-ascii log/19/trace486 --trace-config all --trace-time --netrc --netrc-file log/19/netrc486 -L -x http://127.0.0.1:33487/ http://a.com/ > log/19/stdout486 2> log/19/stderr486 486: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 486 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind486 ../src/curl -q --output log/19/curl486.out --include --trace-ascii log/19/trace486 --trace-config all --trace-time --netrc --netrc-file log/19/netrc486 -L -x http://127.0.0.1:33487/ http://a.com/ > log/19/stdout486 2> log/19/stderr486 === End of file commands.log === Start of file http_server.log 07:35:07.738892 ====> Client connect 07:35:07.738928 accept_connection 3 returned 4 07:35:07.738945 accept_connection 3 returned 0 07:35:07.738959 Read 93 bytes 07:35:07.738969 Process 93 bytes request 07:35:07.738982 Got request: GET /verifiedserver HTTP/1.1 07:35:07.738992 Are-we-friendly question received 07:35:07.739016 Wrote request (93 bytes) input to log/19/server.input 07:35:07.739032 Identifying ourselves as friends 07:35:07.739084 Response sent (56 bytes) and written to log/19/server.response 07:35:07.739094 special request received, no persistency 07:35:07.739103 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file netrc486 machine a.com login alice password alicespassword default === End of file netrc486 === Start of file server.cmd Testnum 486 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind486 ==101018== ==101018== Process terminating with default action of signal 4 (SIGILL) ==101018== Illegal opcode at address 0x4003082 ==101018== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101018== by 0x4003082: main (tool_main.c:234) === End of file valgrind486 test 0487...[Variable using 64dec with bad base64] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind487 ../src/curl -q --output log/16/curl487.out --include --trace-ascii log/16/trace487 --trace-config all --trace-time --variable what=not-base64-data --expand-url "http://127.0.0.1:46739/{{what:64dec}}/487" -g > log/16/stdout487 2> log/16/stderr487 487: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 487 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind487 ../src/curl -q --output log/16/curl487.out --include --trace-ascii log/16/trace487 --trace-config all --trace-time --variable what=not-base64-data --expand-url "http://127.0.0.1:46739/{{what:64dec}}/487" -g > log/16/stdout487 2> log/16/stderr487 === End of file commands.log === Start of file http_server.log 07:35:07.780118 ====> Client connect 07:35:07.780154 accept_connection 3 returned 4 07:35:07.780171 accept_connection 3 returned 0 07:35:07.780186 Read 93 bytes 07:35:07.780196 Process 93 bytes request 07:35:07.780209 Got request: GET /verifiedserver HTTP/1.1 07:35:07.780218 Are-we-friendly question received 07:35:07.780243 Wrote request (93 bytes) input to log/16/server.input 07:35:07.780259 Identifying ourselves as friends 07:35:07.780314 Response sent (56 bytes) and written to log/16/server.response 07:35:07.780324 special request received, no persistency 07:35:07.780333 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 12CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind499 ../src/curl -q --output log/9/curl499.out --include --trace-ascii log/9/trace499 --trace-config all --trace-time http://127.0.0.1:34999/499 -I > log/9/stdout499 2> log/9/stderr499 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind497 ../src/curl -q --output log/2/curl497.out --include --trace-ascii log/2/trace497 --trace-config all --trace-time http://127.0.0.1:45457/497 > log/2/stdout497 2> log/2/stderr497 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind494 ../src/curl -q --output log/6/curl494.out --include --trace-ascii log/6/trace494 --trace-config all --trace-time --netrc --netrc-file log/6/netrc494 ftp://127.0.0.1:36135/494 > log/6/stdout494 2> log/6/stderr494 7.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 487 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind487 ==101071== ==101071== Process terminating with default action of signal 4 (SIGILL) ==101071== Illegal opcode at address 0x4003082 ==101071== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101071== by 0x4003082: main (tool_main.c:234) === End of file valgrind487 test 0499...[HTTP HEAD to server still sending a body] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind499 ../src/curl -q --output log/9/curl499.out --include --trace-ascii log/9/trace499 --trace-config all --trace-time http://127.0.0.1:34999/499 -I > log/9/stdout499 2> log/9/stderr499 499: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 499 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind499 ../src/curl -q --output log/9/curl499.out --include --trace-ascii log/9/trace499 --trace-config all --trace-time http://127.0.0.1:34999/499 -I > log/9/stdout499 2> log/9/stderr499 === End of file commands.log === Start of file http_server.log 07:35:08.083041 ====> Client connect 07:35:08.083065 accept_connection 3 returned 4 07:35:08.083078 accept_connection 3 returned 0 07:35:08.083089 Read 93 bytes 07:35:08.083097 Process 93 bytes request 07:35:08.083106 Got request: GET /verifiedserver HTTP/1.1 07:35:08.083113 Are-we-friendly question received 07:35:08.083130 Wrote request (93 bytes) input to log/9/server.input 07:35:08.083142 Identifying ourselves as friends 07:35:08.083191 Response sent (56 bytes) and written to log/9/server.response 07:35:08.083200 special request received, no persistency 07:35:08.083208 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 499 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind499 ==101675== ==101675== Process terminating with default action of signal 4 (SIGILL) ==101675== Illegal opcode at address 0x4003082 ==101675== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101675== by 0x4003082: main (tool_main.c:234) === End of file valgrind499 test 0497...[Reject too large accumulated HTTP response headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind497 ../src/curl -q --output log/2/curl497.out --include --trace-ascii log/2/trace497 --trace-config all --trace-time http://127.0.0.1:45457/497 > log/2/stdout497 2> log/2/stderr497 497: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 497 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind497 ../src/curl -q --output log/2/curl497.out --include --trace-ascii log/2/trace497 --trace-config all --trace-time http://127.0.0.1:45457/497 > log/2/stdout497 2> log/2/stderr497 === End of file commands.log === Start of file http_server.log 07:35:08.066027 ====> Client connect 07:35:08.066080 accept_connection 3 returned 4 07:35:08.066096 accept_connection 3 returned 0 07:35:08.066199 Read 93 bytes 07:35:08.066214 Process 93 bytes request 07:35:08.066227 Got request: GET /verifiedserver HTTP/1.1 07:35:08.066236 Are-we-friendly question received 07:35:08.066265 Wrote request (93 bytes) input to log/2/server.input 07:35:08.066282 Identifying ourselves as friends 07:35:08.066344 Response sent (56 bytes) and written to log/2/server.response 07:35:08.066353 special request received, no persistency 07:35:08.066362 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 497 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind497 ==101674== ==101674== Process terminating with default action of signal 4 (SIGILL) ==101674== Illegal opcode at address 0x4003082 ==101674== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101674== by 0x4003082: main (tool_main.c:234) === End of file valgrind497 test 0494...[skip 'macdef' when parsing netrc] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind494 ../src/curl -q --output log/6/curl494.out --include --trace-ascii log/6/trace494 --trace-config all --trace-time --netrc --netrc-file log/6/netrc494 ftp://127.0.0.1:36135/494 > log/6/stdout494 2> log/6/stderr494 494: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 494 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind494 ../src/curl -q --output log/6/curl494.out --include --trace-ascii log/6/trace494 --trace-config all --trace-time --netrc --netrc-file log/6/netrc494 ftp://127.0.0.1:36135/494 > log/6/stdout494 2> log/6/stderr494 === End of file commands.log === Start of file ftp_server.log 07:35:08.204740 ====> Client connect 07:35:08.204889 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.205171 < "USER anonymous" 07:35:08.205210 > "331 We are happy you popped in![CR][LF]" 07:35:08.205447 < "PASS ftp@example.com" 07:35:08.205496 > "230 Welcome you silly person[CR][LF]" 07:35:08.205659 < "PWD" 07:35:08.205698 > "257 "/" is current directory[CR][LF]" 07:35:08.205881 < "EPSV" 07:35:08.205905 ====> Passive DATA channel requested by client 07:35:08.205918 DATA sockfilt for passive data channel starting... 07:35:08.208152 DATA sockfilt for passive data channel started (pid 101423) 07:35:08.208249 DATA sockfilt for passivCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind498 ../src/curl -q --output log/10/curl498.out --include --trace-ascii log/10/trace498 --trace-config all --trace-time http://127.0.0.1:34851/498 --max-redirs 400 --location > log/10/stdout498 2> log/10/stderr498 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind491 ../src/curl -q --output log/1/curl491.out --include --trace-ascii log/1/trace491 --trace-config all --trace-time http://127.0.0.1:38941/491 -T '{log/1/in491,log/1/bad491}' > log/1/stdout491 2> log/1/stderr491 e data channel listens on port 45683 07:35:08.208284 > "229 Entering Passive Mode (|||45683|)[LF]" 07:35:08.208299 Client has been notified that DATA conn will be accepted on port 45683 07:35:08.208525 Client connects to port 45683 07:35:08.208551 ====> Client established passive DATA connection on port 45683 07:35:08.208612 < "TYPE I" 07:35:08.208635 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.208769 < "SIZE verifiedserver" 07:35:08.208800 > "213 17[CR][LF]" 07:35:08.208927 < "RETR verifiedserver" 07:35:08.208958 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.209023 =====> Closing passive DATA connection... 07:35:08.209036 Server disconnects passive DATA connection 07:35:08.209236 Server disconnected passive DATA connection 07:35:08.209258 DATA sockfilt for passive data channel quits (pid 101423) 07:35:08.209516 DATA sockfilt for passive data channel quit (pid 101423) 07:35:08.209537 =====> Closed passive DATA connection 07:35:08.209560 > "226 File transfer complete[CR][LF]" 07:35:08.254120 < "QUIT" 07:35:08.254244 > "221 bye bye baby[CR][LF]" 07:35:08.254881 MAIN sockfilt said DISC 07:35:08.254917 ====> Client disconnected 07:35:08.255003 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.050636 ====> Client connect 07:35:08.050888 Received DATA (on stdin) 07:35:08.050902 > 160 bytes data, server => client 07:35:08.050913 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.050924 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.050933 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.051013 < 16 bytes data, client => server 07:35:08.051038 'USER anonymous\r\n' 07:35:08.051196 Received DATA (on stdin) 07:35:08.051216 > 33 bytes data, server => client 07:35:08.051228 '331 We are happy you popped in!\r\n' 07:35:08.051288 < 22 bytes data, client => server 07:35:08.051301 'PASS ftp@example.com\r\n' 07:35:08.051490 Received DATA (on stdin) 07:35:08.051505 > 30 bytes data, server => client 07:35:08.051516 '230 Welcome you silly person\r\n' 07:35:08.051564 < 5 bytes data, client => server 07:35:08.051574 'PWD\r\n' 07:35:08.051690 Received DATA (on stdin) 07:35:08.051706 > 30 bytes data, server => client 07:35:08.051717 '257 "/" is current directory\r\n' 07:35:08.051794 < 6 bytes data, client => server 07:35:08.051805 'EPSV\r\n' 07:35:08.054292 Received DATA (on stdin) 07:35:08.054306 > 38 bytes data, server => client 07:35:08.054318 '229 Entering Passive Mode (|||45683|)\n' 07:35:08.054463 < 8 bytes data, client => server 07:35:08.054474 'TYPE I\r\n' 07:35:08.054622 Received DATA (on stdin) 07:35:08.054633 > 33 bytes data, server => client 07:35:08.054643 '200 I modify TYPE as you wanted\r\n' 07:35:08.054686 < 21 bytes data, client => server 07:35:08.054697 'SIZE verifiedserver\r\n' 07:35:08.054787 Received DATA (on stdin) 07:35:08.054797 > 8 bytes data, server => client 07:35:08.054806 '213 17\r\n' 07:35:08.054846 < 21 bytes data, client => server 07:35:08.054856 'RETR verifiedserver\r\n' 07:35:08.055024 Received DATA (on stdin) 07:35:08.055035 > 29 bytes data, server => client 07:35:08.055045 '150 Binary junk (17 bytes).\r\n' 07:35:08.055548 Received DATA (on stdin) 07:35:08.055560 > 28 bytes data, server => client 07:35:08.055570 '226 File transfer complete\r\n' 07:35:08.099855 < 6 bytes data, client => server 07:35:08.099897 'QUIT\r\n' 07:35:08.100258 Received DATA (on stdin) 07:35:08.100272 > 18 bytes data, server => client 07:35:08.100283 '221 bye bye baby\r\n' 07:35:08.100666 ====> Client disconnect 07:35:08.100994 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.053300 Running IPv4 version 07:35:08.053353 Listening on port 45683 07:35:08.053386 Wrote pid 101423 to log/6/server/ftp_sockdata.pid 07:35:08.054084 Received PING (on stdin) 07:35:08.054166 Received PORT (on stdin) 07:35:08.054438 ====> Client connect 07:35:08.055067 Received DATA (on stdin) 07:35:08.055079 > 17 bytes data, server => client 07:35:08.055089 'WE ROOLZ: 79833\r\n' 07:35:08.055110 Received DISC (on stdin) 07:35:08.055121 ====> Client forcibly disconnected 07:35:08.055253 Received QUIT (on stdin) 07:35:08.055264 quits 07:35:08.055321 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc494 macdef testmacro bin cd default cd login put login.bin cd .. cd password put password.bin quit machine 127.0.0.1 login user1 password passwd1 === End of file netrc494 === Start of file server.cmd Testnum 494 === End of file server.cmd === Start of file valgrind494 ==101761== ==101761== Process terminating with default action of signal 4 (SIGILL) ==101761== Illegal opcode at address 0x4003082 ==101761== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101761== by 0x4003082: main (tool_main.c:234) === End of file valgrind494 test 0498...[Reject too large HTTP response headers on endless redirects] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind498 ../src/curl -q --output log/10/curl498.out --include --trace-ascii log/10/trace498 --trace-config all --trace-time http://127.0.0.1:34851/498 --max-redirs 400 --location > log/10/stdout498 2> log/10/stderr498 curl returned 132, when expecting 56 498: exit FAILED == Contents of files in the log/10/ dir after test 498 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind498 ../src/curl -q --output log/10/curl498.out --include --trace-ascii log/10/trace498 --trace-config all --trace-time http://127.0.0.1:34851/498 --max-redirs 400 --location > log/10/stdout498 2> log/10/stderr498 === End of file commands.log === Start of file http_server.log 07:35:08.080081 ====> Client connect 07:35:08.080115 accept_connection 3 returned 4 07:35:08.080131 accept_connection 3 returned 0 07:35:08.080145 Read 93 bytes 07:35:08.080155 Process 93 bytes request 07:35:08.080168 Got request: GET /verifiedserver HTTP/1.1 07:35:08.080177 Are-we-friendly question received 07:35:08.080207 Wrote request (93 bytes) input to log/10/server.input 07:35:08.080224 Identifying ourselves as friends 07:35:08.080270 Response sent (56 bytes) and written to log/10/server.response 07:35:08.080278 special request received, no persistency 07:35:08.080285 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 498 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind498 ==101776== ==101776== Process terminating with default action of signal 4 (SIGILL) ==101776== Illegal opcode at address 0x4003082 ==101776== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101776== by 0x4003082: main (tool_main.c:234) === End of file valgrind498 test 0491...[Two globbed HTTP PUTs, the second upload file is missing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind491 ../src/curl -q --output log/1/curl491.out --include --trace-ascii log/1/trace491 --trace-config all --trace-time http://127.0.0.1:38941/491 -T '{log/1/in491,log/1/bad491}' > log/1/stdout491 2> log/1/stderr491 491: protocol FAILCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind489 ../src/curl -q --output log/21/curl489.out --include --trace-ascii log/21/trace489 --trace-config all --trace-time --output-dir log/21 --url @log/21/urls > log/21/stdout489 2> log/21/stderr489 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind490 ../src/curl -q --output log/11/curl490.out --include --trace-ascii log/11/trace490 --trace-config all --trace-time http://127.0.0.1:41173/490 -T '{log/11/in490,log/11/in490}' > log/11/stdout490 2> log/11/stderr490 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind492 ../src/curl -q --output log/24/curl492.out --include --trace-ascii log/24/trace492 --trace-config all --trace-time 'http://127.0.0.1:38675/{one,two}/' -T '{log/24/first492,log/24/second492}' -H "Testno: 492" > log/24/stdout492 2> log/24/stderr492 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind488 ../src/curl -q --output log/20/curl488.out --include --trace-ascii log/20/trace488 --trace-config all --trace-time --output-dir log/20 --url @- log/20/stdout488 2> log/20/stderr488 ED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 491 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind491 ../src/curl -q --output log/1/curl491.out --include --trace-ascii log/1/trace491 --trace-config all --trace-time http://127.0.0.1:38941/491 -T '{log/1/in491,log/1/bad491}' > log/1/stdout491 2> log/1/stderr491 === End of file commands.log === Start of file http_server.log 07:35:08.022874 ====> Client connect 07:35:08.022916 accept_connection 3 returned 4 07:35:08.022933 accept_connection 3 returned 0 07:35:08.022948 Read 93 bytes 07:35:08.022959 Process 93 bytes request 07:35:08.022973 Got request: GET /verifiedserver HTTP/1.1 07:35:08.022982 Are-we-friendly question received 07:35:08.023007 Wrote request (93 bytes) input to log/1/server.input 07:35:08.023023 Identifying ourselves as friends 07:35:08.023096 Response sent (56 bytes) and written to log/1/server.response 07:35:08.023107 special request received, no persistency 07:35:08.023116 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file in491 surprise === End of file in491 === Start of file server.cmd Testnum 491 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind491 ==101340== ==101340== Process terminating with default action of signal 4 (SIGILL) ==101340== Illegal opcode at address 0x4003082 ==101340== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101340== by 0x4003082: main (tool_main.c:234) === End of file valgrind491 test 0489...[Download two URLs provided in a file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind489 ../src/curl -q --output log/21/curl489.out --include --trace-ascii log/21/trace489 --trace-config all --trace-time --output-dir log/21 --url @log/21/urls > log/21/stdout489 2> log/21/stderr489 489: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 489 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind489 ../src/curl -q --output log/21/curl489.out --include --trace-ascii log/21/trace489 --trace-config all --trace-time --output-dir log/21 --url @log/21/urls > log/21/stdout489 2> log/21/stderr489 === End of file commands.log === Start of file http_server.log 07:35:08.006653 ====> Client connect 07:35:08.006702 accept_connection 3 returned 4 07:35:08.006717 accept_connection 3 returned 0 07:35:08.006729 Read 93 bytes 07:35:08.006739 Process 93 bytes request 07:35:08.006749 Got request: GET /verifiedserver HTTP/1.1 07:35:08.006758 Are-we-friendly question received 07:35:08.006782 Wrote request (93 bytes) input to log/21/server.input 07:35:08.006798 Identifying ourselves as friends 07:35:08.006850 Response sent (56 bytes) and written to log/21/server.response 07:35:08.006859 special request received, no persistency 07:35:08.006868 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 489 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file urls http://127.0.0.1:41087/a http://127.0.0.1:41087/b === End of file urls === Start of file valgrind489 ==101230== ==101230== Process terminating with default action of signal 4 (SIGILL) ==101230== Illegal opcode at address 0x4003082 ==101230== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101230== by 0x4003082: main (tool_main.c:234) === End of file valgrind489 test 0490...[Two globbed HTTP PUTs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind490 ../src/curl -q --output log/11/curl490.out --include --trace-ascii log/11/trace490 --trace-config all --trace-time http://127.0.0.1:41173/490 -T '{log/11/in490,log/11/in490}' > log/11/stdout490 2> log/11/stderr490 490: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 490 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind490 ../src/curl -q --output log/11/curl490.out --include --trace-ascii log/11/trace490 --trace-config all --trace-time http://127.0.0.1:41173/490 -T '{log/11/in490,log/11/in490}' > log/11/stdout490 2> log/11/stderr490 === End of file commands.log === Start of file http_server.log 07:35:08.006184 ====> Client connect 07:35:08.006232 accept_connection 3 returned 4 07:35:08.006249 accept_connection 3 returned 0 07:35:08.006263 Read 93 bytes 07:35:08.006272 Process 93 bytes request 07:35:08.006283 Got request: GET /verifiedserver HTTP/1.1 07:35:08.006293 Are-we-friendly question received 07:35:08.006320 Wrote request (93 bytes) input to log/11/server.input 07:35:08.006335 Identifying ourselves as friends 07:35:08.006384 Response sent (56 bytes) and written to log/11/server.response 07:35:08.006393 special request received, no persistency 07:35:08.006401 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file in490 surprise === End of file in490 === Start of file server.cmd Testnum 490 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind490 ==101231== ==101231== Process terminating with default action of signal 4 (SIGILL) ==101231== Illegal opcode at address 0x4003082 ==101231== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101231== by 0x4003082: main (tool_main.c:234) === End of file valgrind490 test 0492...[Two globbed HTTP PUTs to two globbed URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind495 ../src/curl -q --output log/13/curl495.out --include --trace-ascii log/13/trace495 --trace-config all --trace-time http://foo%40bar:secret@127.0.0.1:33627/495 --netrc-optional > log/13/stdout495 2> log/13/stderr495 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind496 ../src/curl -q --output log/18/curl496.out --include --trace-ascii log/18/trace496 --trace-config all --trace-time 0 -Z -Tz > log/18/stdout496 2> log/18/stderr496 dir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind492 ../src/curl -q --output log/24/curl492.out --include --trace-ascii log/24/trace492 --trace-config all --trace-time 'http://127.0.0.1:38675/{one,two}/' -T '{log/24/first492,log/24/second492}' -H "Testno: 492" > log/24/stdout492 2> log/24/stderr492 492: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 492 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind492 ../src/curl -q --output log/24/curl492.out --include --trace-ascii log/24/trace492 --trace-config all --trace-time 'http://127.0.0.1:38675/{one,two}/' -T '{log/24/first492,log/24/second492}' -H "Testno: 492" > log/24/stdout492 2> log/24/stderr492 === End of file commands.log === Start of file first492 first 492 contents === End of file first492 === Start of file http_server.log 07:35:08.029841 ====> Client connect 07:35:08.029876 accept_connection 3 returned 4 07:35:08.029894 accept_connection 3 returned 0 07:35:08.029909 Read 93 bytes 07:35:08.029920 Process 93 bytes request 07:35:08.029934 Got request: GET /verifiedserver HTTP/1.1 07:35:08.029944 Are-we-friendly question received 07:35:08.029971 Wrote request (93 bytes) input to log/24/server.input 07:35:08.029989 Identifying ourselves as friends 07:35:08.030051 Response sent (56 bytes) and written to log/24/server.response 07:35:08.030063 special request received, no persistency 07:35:08.030074 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file second492 second 492 contents === End of file second492 === Start of file server.cmd Testnum 492 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind492 ==101366== ==101366== Process terminating with default action of signal 4 (SIGILL) ==101366== Illegal opcode at address 0x4003082 ==101366== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101366== by 0x4003082: main (tool_main.c:234) === End of file valgrind492 test 0488...[Download two URLs provided on stdin] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind488 ../src/curl -q --output log/20/curl488.out --include --trace-ascii log/20/trace488 --trace-config all --trace-time --output-dir log/20 --url @- log/20/stdout488 2> log/20/stderr488 488: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 488 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind488 ../src/curl -q --output log/20/curl488.out --include --trace-ascii log/20/trace488 --trace-config all --trace-time --output-dir log/20 --url @- log/20/stdout488 2> log/20/stderr488 === End of file commands.log === Start of file http_server.log 07:35:07.997211 ====> Client connect 07:35:07.997245 accept_connection 3 returned 4 07:35:07.997262 accept_connection 3 returned 0 07:35:07.997276 Read 93 bytes 07:35:07.997285 Process 93 bytes request 07:35:07.997298 Got request: GET /verifiedserver HTTP/1.1 07:35:07.997306 Are-we-friendly question received 07:35:07.997330 Wrote request (93 bytes) input to log/20/server.input 07:35:07.997345 Identifying ourselves as friends 07:35:07.997414 Response sent (56 bytes) and written to log/20/server.response 07:35:07.997424 special request received, no persistency 07:35:07.997432 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 488 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stdin-for-488 http://127.0.0.1:37169/a http://127.0.0.1:37169/b === End of file stdin-for-488 === Start of file valgrind488 ==101204== ==101204== Process terminating with default action of signal 4 (SIGILL) ==101204== Illegal opcode at address 0x4003082 ==101204== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101204== by 0x4003082: main (tool_main.c:234) === End of file valgrind488 test 0495...[user+password in URL with optional netrc] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind495 ../src/curl -q --output log/13/curl495.out --include --trace-ascii log/13/trace495 --trace-config all --trace-time http://foo%40bar:secret@127.0.0.1:33627/495 --netrc-optional > log/13/stdout495 2> log/13/stderr495 495: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 495 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind495 ../src/curl -q --output log/13/curl495.out --include --trace-ascii log/13/trace495 --trace-config all --trace-time http://foo%40bar:secret@127.0.0.1:33627/495 --netrc-optional > log/13/stdout495 2> log/13/stderr495 === End of file commands.log === Start of file http_server.log 07:35:08.060036 ====> Client connect 07:35:08.060063 accept_connection 3 returned 4 07:35:08.060076 accept_connection 3 returned 0 07:35:08.060087 Read 93 bytes 07:35:08.060095 Process 93 bytes request 07:35:08.060106 Got request: GET /verifiedserver HTTP/1.1 07:35:08.060113 Are-we-friendly question received 07:35:08.060131 Wrote request (93 bytes) input to log/13/server.input 07:35:08.060144 Identifying ourselves as friends 07:35:08.060188 Response sent (56 bytes) and written to log/13/server.response 07:35:08.060196 special request received, no persistency 07:35:08.060203 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 495 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file serverCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind493 ../src/curl -q --include --trace-ascii log/3/trace493 --trace-config all --trace-time -x http://127.0.0.1:42345 http://this.hsts.example/493 --hsts log/3/input493 -w '%{url_effective}\n' > log/3/stdout493 2> log/3/stderr493 .response === Start of file valgrind495 ==101555== ==101555== Process terminating with default action of signal 4 (SIGILL) ==101555== Illegal opcode at address 0x4003082 ==101555== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101555== by 0x4003082: main (tool_main.c:234) === End of file valgrind495 * starts no server test 0496...[parallel upload missing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind496 ../src/curl -q --output log/18/curl496.out --include --trace-ascii log/18/trace496 --trace-config all --trace-time 0 -Z -Tz > log/18/stdout496 2> log/18/stderr496 curl returned 132, when expecting 26 496: exit FAILED == Contents of files in the log/18/ dir after test 496 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind496 ../src/curl -q --output log/18/curl496.out --include --trace-ascii log/18/trace496 --trace-config all --trace-time 0 -Z -Tz > log/18/stdout496 2> log/18/stderr496 === End of file commands.log === Start of file server.cmd Testnum 496 === End of file server.cmd === Start of file valgrind496 ==101377== ==101377== Process terminating with default action of signal 4 (SIGILL) ==101377== Illegal opcode at address 0x4003082 ==101377== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101377== by 0x4003082: main (tool_main.c:234) === End of file valgrind496 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind480 ../src/curl -q --output log/14/curl480.out --include --trace-ascii log/14/trace480 --trace-config all --trace-time --netrc --netrc-file log/14/netrc480 pop3://127.0.0.1:37517/480 > log/14/stdout480 2> log/14/stderr480 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind517 ./libtest/libtests lib517 nothing > log/21/stdout517 2> log/21/stderr517 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind505 ./libtest/libtests lib505 ftp://127.0.0.1:42651/505 log/22/upload505 > log/22/stdout505 2> log/22/stderr505 test 0493...[HSTS and %{url_effective} after upgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind493 ../src/curl -q --include --trace-ascii log/3/trace493 --trace-config all --trace-time -x http://127.0.0.1:42345 http://this.hsts.example/493 --hsts log/3/input493 -w '%{url_effective}\n' > log/3/stdout493 2> log/3/stderr493 493: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:08.783778358 +0000 +++ log/3/check-generated 2025-07-18 07:35:08.783778358 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 403 not OK at all[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] -https://this.hsts.example/493[LF] == Contents of files in the log/3/ dir after test 493 === Start of file check-expected HTTP/1.1 403 not OK at all[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] https://this.hsts.example/493[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind493 ../src/curl -q --include --trace-ascii log/3/trace493 --trace-config all --trace-time -x http://127.0.0.1:42345 http://this.hsts.example/493 --hsts log/3/input493 -w '%{url_effective}\n' > log/3/stdout493 2> log/3/stderr493 === End of file commands.log === Start of file http_server.log 07:35:08.049940 ====> Client connect 07:35:08.049971 accept_connection 3 returned 4 07:35:08.049987 accept_connection 3 returned 0 07:35:08.050001 Read 93 bytes 07:35:08.050011 Process 93 bytes request 07:35:08.050025 Got request: GET /verifiedserver HTTP/1.1 07:35:08.050034 Are-we-friendly question received 07:35:08.050060 Wrote request (93 bytes) input to log/3/server.input 07:35:08.050075 Identifying ourselves as friends 07:35:08.050129 Response sent (56 bytes) and written to log/3/server.response 07:35:08.050138 special request received, no persistency 07:35:08.050147 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file input493 .hsts.example "99991001 04:47:41" === End of file input493 === Start of file server.cmd Testnum 493 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind493 ==101516== ==101516== Process terminating with default action of signal 4 (SIGILL) ==101516== Illegal opcode at address 0x4003082 ==101516== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==101516== by 0x4003082: main (tool_main.c:234) === End of file valgrind493 prechecked ./libtest/lib518 check test 0518 SKIPPED: precheck command error startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/14/server/pop3_server.pid" --logfile "log/14/pop3_server.log" --logdir "log/14" --portfile "log/14/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37517 (log/14/server/pop3_server.port) RUN: POP3 server is PID 100636 port 37517 * pid pop3 => 100636 100636 test 0480...[Reject .netrc with credentials using CRLF for POP3] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind480 ../src/curl -q --output log/14/curl480.out --include --trace-ascii log/14/trace480 --trace-config all --trace-time --netrc --netrc-file log/14/netrc480 pop3://127.0.0.1:37517/480 > log/14/stdout480 2> log/14/stderr480 curl returned 132, when expecting 26 480: exit FAILED == Contents of files in the log/14/ dir after test 480 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind480 ../src/curl -q --output log/14/curl480.out --include --trace-ascii log/14/trace480 --trace-config all --trace-time --netrc --netrc-file log/14/netrc480 pop3://127.0.0.1:37517/480 > log/14/stdout480 2> log/14/stderr480 === End of file commands.log === Start of file netrc480 machine 127.0.0.1 login alice password "password\r\ncommand" === End of file netrc480 === Start of file pop3_server.log 07:35:07.831236 POP3 server listens on port IPv4/37517 07:35:07.831320 logged pid 100636 in log/14/server/pop3_server.pid 07:35:07.831346 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:07.676903 Running IPv4 version 07:35:07.676961 Listening on port 37517 07:35:07.676998 Wrote pid 100687 to log/14/server/pop3_sockfilt.pid 07:35:07.677026 Wrote port 37517 to log/14/server/pop3_server.port 07:35:07.677145 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 480 === End of file server.cmd === Start of file valgrind480 ==102838== ==102838== Process terminating with default action of signal 4 (SIGILL) ==102838== Illegal opcode at address 0x4003082 ==102838== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==102838== by 0x4003082: main (tool_main.c:234) === End of file valgrind480 * starts no server test 0517...[curl_getdate() testing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind517 ./libtest/libtests lib517 nothing > log/21/stdout517 2> log/21/stderr517 -------e-v- OK (493 out of 1707, remaining: 00:53, took 1.687s, duration: 00:21) test 0505...[FTP upload with rename after transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind505 ./libtest/libtests lib505 ftp://127.0.0.1:42651/505 log/22/upload505 > log/22/stdout505 2> log/22/stderr505 505: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 505 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind505 ./libtest/libtests lib505 ftp://127.0.0.1:42651/505 log/22/upload505 > log/22/stdout505 2> log/22/stderr505 === End of file commands.log === Start of file ftp_server.log 07:35:08.440963 ====> Client connect 07:35:08.441127 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.441377 < "USER anonymous" 07:35:08.441411 > "331 We are happy you popped in![CR][LF]" 07:35:08.441570 < "PASS ftp@example.com" 07:35:08.441594 > "230 Welcome you silly person[CR][LF]" 07:35:08.441730 < "PWD" 07:35:08.441758 > "257 "/" is current directory[CR][LF]" 07:35:08.441947 < "EPSV" 07:35:08.441971 ====> Passive DATA channel requested by client 07:35:08.441984 DATA sockfilt for passive data channel starting... 07:35:08.443615 DATA sockfilt for passive data channel started (pid 102182) 07:35:08.443713 DATA sockfilt for passive data channel listens on port 42427 07:35:08.443755 > "229 Entering Passive Mode (|||42427|)[LF]" 07:35:08.443775 Client has been notified that DATA conn will be accepted on port 42427 07:35:08.444014 Client connects to port 42427 07:35:08.444042 ====> Client established passive DATA connection on port 42427 07:35:08.444110 < "TYPE I" 07:35:08.444137 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.444305 < "SIZE verifiedserver" 07:35:08.444344 > "213 17[CR][LF]" 07:35:08.444518 < "RETR verifiedserver" 07:35:08.444553 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.444629 =====> Closing passive DATA connection... 07:35:08.444647 Server disconnects passive DATA connection 07:35:08.444767 Server disconnected passive DATA connection 07:35:08.444791 DATA sockfilt for passive data channel quits (pid 102182) 07:35:08.445029 DATA sockfilt for passive data channel quit (pid 102182) 07:35:08.445056 =====> Closed passive DATA connection 07:35:08.445083 > "226 File transfer complete[CR][LF]" 07:35:08.493489 < "QUIT" 07:35:08.493536 > "221 bye bye baby[CR][LF]" 07:35:08.493791 MAIN sockfilt said DISC 07:35:08.493818 ====> Client disconnected 07:35:08.493888 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.286845 ====> Client connect 07:35:08.287129 Received DATA (on stdin) 07:35:08.287143 > 160 bytes data, server => client 07:35:08.287156 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.287167 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.287177 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.287244 < 16 bytes data, client => server 07:35:08.287260 'USER anonymous\r\n' 07:35:08.287404 Received DATA (on stdin) 07:35:08.287417 > 33 bytes data, server => client 07:35:08.287427 '331 We are happy you popped in!\r\n' 07:35:08.287477 < 22 bytes data, client => server 07:35:08.287489 'PASS ftp@example.com\r\n' 07:35:08.287582 Received DATA (on stdin) 07:35:08.287592 > 30 bytes data, server => client 07:35:08.287602 '230 Welcome you silly person\r\n' 07:35:08.287645 < 5 bytes data, client => server 07:35:08.287655 'PWD\r\n' 07:35:08.287746 Received DATA (on stdin) 07:35:08.287757 > 30 bytes data, server => client 07:35:08.287767 '257 "/" is current directory\r\n' 07:35:08.287873 < 6 bytes data, client => server 07:35:08.287896 'EPSV\r\n' 07:35:08.289774 Received DATA (on stdin) 07:35:08.289791 > 38 bytes data, server => client 07:35:08.289803 '229 Entering Passive Mode (|||42427|)\n' 07:35:08.289948 < 8 bytes data, client => server 07:35:08.289962 'TYPE I\r\n' 07:35:08.290129 Received DATA (on stdin) 07:35:08.290143 > 33 bytes data, server => client 07:35:08.290156 '200 I modify TYPE as you wanted\r\n' 07:35:08.290226 < 21 bytes data, client => server 07:35:08.290247 'SIZE verifiedserver\r\n' 07:35:08.290338 Received DATA (on stdin) 07:35:08.290353 > 8 bytes data, server => client 07:35:08.290363 '213 17\r\n' 07:35:08.290424 < 21 bytes data, client => server 07:35:08.290436 'RETR verifiedserver\r\n' 07:35:08.290647 Received DATA (on stdin) 07:35:08.290668 > 29 bytes data, server => client 07:35:08.290680 '150 Binary junk (17 bytes).\r\n' 07:35:08.291076 Received DATA (on stdin) 07:35:08.291092 > 28 bytes data, server => client 07:35:08.291103 '226 File transfer complete\r\n' 07:35:08.339328 < 6 bytes data, client => server 07:35:08.339353 'QUIT\r\n' 07:35:08.339529 Received DATA (on stdin) 07:35:08.339540 > 18 bytes data, server => client 07:35:08.339551 '221 bye bye baby\r\n' 07:35:08.339731 ====> Client disconnect 07:35:08.339877 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.289331 Running IPv4 version 07:35:08.289384 Listening on port 42427 07:35:08.289423 Wrote pid 102182 to log/22/server/ftp_sockdata.pid 07:35:08.289545 Received PING (on stdin) 07:35:08.289626 Received PORT (on stdin) 07:35:08.289917 ====> Client connect 07:35:08.290645 Received DATA (on stdin) 07:35:08.290658 > 17 bytes data, server => client 07:35:08.290669 'WE ROOLZ: 79849\r\n' 07:35:08.290695 Received DISC (on stdin) 07:35:08.290708 ====> Client forcibly disconnected 07:35:08.290788 Received QUIT (on stdin) 07:35:08.290799 quits 07:35:08.290856 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 505 === End of file server.cmd === Start of file stderr505 URL: ftp://127.0.0.1:42651/505 === End of file stderr505 === Start of file upload505 Contents of a file to verify ftp upload works? === End of file upload505 === Start of file valgrind505 ==102368== ==102368== Process terminating with default action of signal 4 (SIGILL) ==102368== Illegal opcode at address 0x51C2DB3 ==102368== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102368== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102368== by 0x51C2DB3: Curl_open (url.c:541) ==102368== by 0x513D46F: curl_easy_init (easy.c:372) ==102368== by 0x4006E58: test_lib505.lto_priv.0 (lib505.c:90) ==102368== by 0x4003443: main (first.c:167) ==102368== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== by 0x533CFA5: __tsearch (tsearch.c:337) ==102368== by 0x533CFA5: tsearch (tsearch.c:290) ==102368== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102368== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102368== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102368== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102368== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102368== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== ==102368== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== by 0x533CFA5: __tsearch (tsearch.c:337) ==102368== by 0x533CFA5: tsearch (tsearch.c:290) ==102368== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102368== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102368== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== ==102368== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102368== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102368== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102368== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102368== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102368== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== ==102368== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind516 ./libtest/libtests lib516 http://127.0.0.1:38941/516 > log/1/stdout516 2> log/1/stderr516 by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102368== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102368== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== ==102368== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==102368== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102368== by 0x51C2D03: Curl_open (url.c:520) ==102368== by 0x513D46F: curl_easy_init (easy.c:372) ==102368== by 0x4006E58: test_lib505.lto_priv.0 (lib505.c:90) ==102368== by 0x4003443: main (first.c:167) ==102368== ==102368== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== by 0x533CFA5: __tsearch (tsearch.c:337) ==102368== by 0x533CFA5: tsearch (tsearch.c:290) ==102368== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102368== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102368== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102368== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102368== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102368== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== ==102368== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==102368== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102368== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102368== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102368== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102368== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102368== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102368== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102368== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102368== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102368== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102368== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102368== by 0x525A142: setlocale (setlocale.c:337) ==102368== by 0x400336E: main (first.c:123) ==102368== === End of file valgrind505 test 0516...[make an HTTPPOST set to NULL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind516 ./libtest/libtests lib516 http://127.0.0.1:38941/516 > log/1/stdout516 2> log/1/stderr516 516: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 516 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind516 ./libtest/libtests lib516 http://127.0.0.1:38941/516 > log/1/stdout516 2> log/1/stderr516 === End of file commands.log === Start of file http_server.log 07:35:08.621729 ====> Client connect 07:35:08.621764 accept_connection 3 returned 4 07:35:08.621781 accept_connection 3 returned 0 07:35:08.621794 Read 93 bytes 07:35:08.621803 Process 93 bytes request 07:35:08.621813 Got request: GET /verifiedserver HTTP/1.1 07:35:08.621822 Are-we-friendly question received 07:35:08.621843 Wrote request (93 bytes) input to log/1/server.input 07:35:08.621858 Identifying ourselves as friends 07:35:08.621914 Response sent (56 bytes) and written to log/1/server.response 07:35:08.621923 special request received, no persistency 07:35:08.621931 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 516 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr516 URL: http://127.0.0.1:38941/516 === End of file stderr516 === Start of file valgrind516 ==102722== ==102722== Process terminating with default action of signal 4 (SIGILL) ==102722== Illegal opcode at address 0x51C2DB3 ==102722== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102722== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102722== by 0x51C2DB3: Curl_open (url.c:541) ==102722== by 0x513D46F: curl_easy_init (easy.c:372) ==102722== by 0x400584A: test_lib516.lto_priv.0 (lib516.c:38) ==102722== by 0x4003443: main (first.c:167) ==102722== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x533CFA5: __tsearch (tsearch.c:337) ==102722== by 0x533CFA5: tsearch (tsearch.c:290) ==102722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102722== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102722== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== ==102722== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x533CFA5: __tsearch (tsearch.c:337) ==102722== by 0x533CFA5: tsearch (tsearch.c:290) ==102722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102722== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102722== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== ==102722== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102722== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102722== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind527 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/527 > log/22/stdout527 2> log/22/stderr527 by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== ==102722== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102722== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102722== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== ==102722== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102722== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102722== by 0x51C2D03: Curl_open (url.c:520) ==102722== by 0x513D46F: curl_easy_init (easy.c:372) ==102722== by 0x400584A: test_lib516.lto_priv.0 (lib516.c:38) ==102722== by 0x4003443: main (first.c:167) ==102722== ==102722== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x533CFA5: __tsearch (tsearch.c:337) ==102722== by 0x533CFA5: tsearch (tsearch.c:290) ==102722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102722== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102722== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== ==102722== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102722== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102722== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102722== by 0x525A142: setlocale (setlocale.c:337) ==102722== by 0x400336E: main (first.c:123) ==102722== === End of file valgrind516 test 0527...[FTP RETR same file using different handles but same connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind527 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/527 > log/22/stdout527 2> log/22/stderr527 527: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 527 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind527 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/527 > log/22/stdout527 2> log/22/stderr527 === End of file commands.log === Start of file ftp_server.log 07:35:21.206232 ====> Client connect 07:35:21.206393 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:21.206683 < "USER anonymous" 07:35:21.206716 > "331 We are happy you popped in![CR][LF]" 07:35:21.206875 < "PASS ftp@example.com" 07:35:21.206900 > "230 Welcome you silly person[CR][LF]" 07:35:21.207032 < "PWD" 07:35:21.207059 > "257 "/" is current directory[CR][LF]" 07:35:21.207196 < "EPSV" 07:35:21.207217 ====> Passive DATA channel requested by client 07:35:21.207231 DATA sockfilt for passive data channel starting... 07:35:21.208330 DATA sockfilt for passive data channel started (pid 103602) 07:35:21.208390 DATA sockfilt for passive data channel listens on port 35621 07:35:21.208412 > "229 Entering Passive Mode (|||35621|)[LF]" 07:35:21.208423 Client has been notified that DATA conn will be accepted on port 35621 07:35:21.208549 Client connects to port 35621 07:35:21.208566 ====> Client established passive DATA connection on port 35621 07:35:21.208640 < "TYPE I" 07:35:21.208657 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:21.208750 < "SIZE verifiedserver" 07:35:21.208771 > "213 17[CR][LF]" 07:35:21.208857 < "RETR verifiedserver" 07:35:21.208876 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:21.208922 =====> Closing passive DATA connection... 07:35:21.208932 Server disconnects passive DATA connection 07:35:21.209073 Server disconnected passive DATA connection 07:35:21.209091 DATA sockfilt for passive data channel quits (pid 103602) 07:35:21.209227 DATA sockfilt for passive data channel quit (pid 103602) 07:35:21.209243 =====> Closed passive DATA connection 07:35:21.209258 > "226 File transfer complete[CR][LF]" 07:35:21.250400 < "QUIT" 07:35:21.250426 > "221 bye bye baby[CR][LF]" 07:35:21.250562 MAIN sockfilt said DISC 07:35:21.250600 ====> Client disconnected 07:35:21.250647 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:21.052120 ====> Client connect 07:35:21.052396 Received DATA (on stdin) 07:35:21.052415 > 160 bytes data, server => client 07:35:21.052427 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:21.052438 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:21.052448 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:21.052531 < 16 bytes data, client => server 07:35:21.052543 'USER anonymous\r\n' 07:35:21.052709 Received DATA (on stdin) 07:35:21.052721 > 33 bytes data, server => client 07:35:21.052732 '331 We are happy you popped in!\r\n' 07:35:21.052781 < 22 bytes data, client => server 07:35:21.052791 'PASS ftp@example.com\r\n' 07:35:21.052887 Received DATA (on stdin) 07:35:21.052897 > 30 bytes data, server => client 07:35:21.052908 '230 Welcome you silly person\r\n' 07:35:21.052949 < 5 bytes data, client => server 07:35:21.052958 'PWD\r\n' 07:35:21.053044 Received DATA (on stdin) 07:35:21.053055 > 30 bytes data, server => client 07:35:21.053065 '257 "/" is current directory\r\n' 07:35:21.053113 < 6 bytes data, client => server 07:35:21.053123 'EPSV\r\n' 07:35:21.054407 Received DATA (on stdin) 07:35:21.054417 > 38 bytes data, server => client 07:35:21.054424 '229 Entering Passive Mode (|||35621|)\n' 07:35:21.054556 < 8 bytes data, client => server 07:35:21.054564 'TYPE I\r\n' 07:35:21.054638 Received DATA (on stdin) 07:35:21.054646 > 33 bytes data, server => client 07:35:21.054653 '200 I modify TYPE as you wanted\r\n' 07:35:21.054683 < 21 bytes data, client => server 07:35:21.054690 'SIZE verifiedserver\r\n' 07:35:21.054751 Received DATA (on stdin) 07:35:21.054758 > 8 bytes data, server => client 07:35:21.054764 '213 17\r\n' 07:35:21.054791 < 21 bytes data, client => server 07:35:21.054798 'RETR verifiedserver\r\n' 07:35:21.054914 Received DATA (on stdin) 07:35:21.054922 > 29 bytes data, server => client 07:35:21.054929 '150 Binary junk (17 bytes).\r\n' 07:35:21.055240 Received DATA (on stdin) 07:35:21.055249 > 28 bytes data, server => client 07:35:21.055256 '226 File transfer complete\r\n' 07:35:21.096277 < 6 bytes data, client => server 07:35:21.096300 'QUIT\r\n' 07:35:21.096415 Received DATA (on stdin) 07:35:21.096426 > 18 bytes data, server => client 07:35:21.096436 '221 bye bye baby\r\n' 07:35:21.096494 ====> Client disconnect 07:35:21.096630 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:21.054128 Running IPv4 version 07:35:21.054167 Listening on port 35621 07:35:21.054191 Wrote pid 103602 to log/22/server/ftp_sockdata.pid 07:35:21.054275 Received PING (on stdin) 07:35:21.054323 Received PORT (on stdin) 07:35:21.054497 ====> Client connect 07:35:21.054944 Received DATA (on stdin) 07:35:21.054955 > 17 bytes data, server => client 07:35:21.054961 'WE ROOLZ: 79849\r\n' 07:35:21.054976 Received DISC (on stdin) 07:35:21.054983 ====> Client forcibly disconnected 07:35:21.055077 Received QUIT (on stdin) 07:35:21.055085 quits 07:35:21.055122 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 527 === End of file server.cmd === Start of file stderr527 URL: ftp://127.0.0.1:42651/path/527 === End of file stderr527 === Start of file valgrind527 ==103604== ==103604== Process terminating with default action of signal 4 (SIGILL) ==103604== Illegal opcode at address 0x51C2DB3 ==103604== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103604== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103604== by 0x51C2DB3: Curl_open (url.c:541) ==103604== by 0x513D46F: curl_easy_init (easy.c:372) ==103604== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103604== by 0x4003443: main (first.c:167) ==103604== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x533CFA5: __tsearch (tsearch.c:337) ==103604== by 0x533CFA5: tsearch (tsearch.c:290) ==103604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103604== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103604== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== ==103604== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x533CFA5: __tsearch (tsearch.c:337) ==103604== by 0x533CFA5: tsearch (tsearch.c:290) ==103604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103604== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103604== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== ==103604== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103604== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103604== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== ==103604== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103604== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103604== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== ==103604== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103604== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103604== by 0x51C2D03: Curl_open (url.c:520) ==103604== by 0x513D46F: curl_easy_init (easy.c:372) ==103604== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103604== by 0x4003443: main (first.c:167) ==103604== ==103604== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x533CFA5: __tsearch (tsearch.c:337) ==103604== by 0x533CFA5: tsearch (tsearch.c:290) ==103604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103604== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103604== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== ==103604== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103604== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103604== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103604== by 0x525A142: setlocale (setlocale.c:337) ==103604== by 0x400336E: main (first.c:123) ==103604== === End of filCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind528 ./libtest/libtests lib526 http://127.0.0.1:38941/path/528 > log/1/stdout528 2> log/1/stderr528 e valgrind527 test 0528...[HTTP GET same file using different handles but same connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind528 ./libtest/libtests lib526 http://127.0.0.1:38941/path/528 > log/1/stdout528 2> log/1/stderr528 528: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 528 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind528 ./libtest/libtests lib526 http://127.0.0.1:38941/path/528 > log/1/stdout528 2> log/1/stderr528 === End of file commands.log === Start of file http_server.log 07:35:21.557540 ====> Client connect 07:35:21.557562 accept_connection 3 returned 4 07:35:21.557572 accept_connection 3 returned 0 07:35:21.557581 Read 93 bytes 07:35:21.557587 Process 93 bytes request 07:35:21.557596 Got request: GET /verifiedserver HTTP/1.1 07:35:21.557601 Are-we-friendly question received 07:35:21.557616 Wrote request (93 bytes) input to log/1/server.input 07:35:21.557626 Identifying ourselves as friends 07:35:21.557660 Response sent (56 bytes) and written to log/1/server.response 07:35:21.557666 special request received, no persistency 07:35:21.557671 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 528 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr528 URL: http://127.0.0.1:38941/path/528 === End of file stderr528 === Start of file valgrind528 ==103669== ==103669== Process terminating with default action of signal 4 (SIGILL) ==103669== Illegal opcode at address 0x51C2DB3 ==103669== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103669== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103669== by 0x51C2DB3: Curl_open (url.c:541) ==103669== by 0x513D46F: curl_easy_init (easy.c:372) ==103669== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103669== by 0x4003443: main (first.c:167) ==103669== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x533CFA5: __tsearch (tsearch.c:337) ==103669== by 0x533CFA5: tsearch (tsearch.c:290) ==103669== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103669== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103669== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103669== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103669== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103669== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== ==103669== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x533CFA5: __tsearch (tsearch.c:337) ==103669== by 0x533CFA5: tsearch (tsearch.c:290) ==103669== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103669== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103669== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== ==103669== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103669== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103669== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103669== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103669== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103669== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== ==103669== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103669== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103669== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== ==103669== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103669== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103669== by 0x51C2D03: Curl_open (url.c:520) ==103669== by 0x513D46F: curl_easy_init (easy.c:372) ==103669== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103669== by 0x4003443: main (first.c:167) ==103669== ==103669== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x533CFA5: __tsearch (tsearch.c:337) ==103669== by 0x533CFA5: tsearch (tsearch.c:290) ==103669== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103669== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103669== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103669== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103669== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103669== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== ==103669== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103669== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103669== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103669== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103669== by 0x524F3F0: addCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind522 ./libtest/libtests lib521 http://127.0.0.1/522 45825 > log/18/stdout522 2> log/18/stderr522 _alias (gconv_conf.c:178) ==103669== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103669== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103669== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103669== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103669== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103669== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103669== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103669== by 0x525A142: setlocale (setlocale.c:337) ==103669== by 0x400336E: main (first.c:123) ==103669== === End of file valgrind528 test 0522...[HTTP GET with CURLOPT_PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind522 ./libtest/libtests lib521 http://127.0.0.1/522 45825 > log/18/stdout522 2> log/18/stderr522 522: stdout FAILED: --- log/18/check-expected 2025-07-18 07:35:22.543778680 +0000 +++ log/18/check-generated 2025-07-18 07:35:22.543778680 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/18/ dir after test 522 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind522 ./libtest/libtests lib521 http://127.0.0.1/522 45825 > log/18/stdout522 2> log/18/stderr522 === End of file commands.log === Start of file http_server.log 07:35:08.656399 ====> Client connect 07:35:08.656429 accept_connection 3 returned 4 07:35:08.656444 accept_connection 3 returned 0 07:35:08.656457 Read 93 bytes 07:35:08.656470 Process 93 bytes request 07:35:08.656483 Got request: GET /verifiedserver HTTP/1.1 07:35:08.656492 Are-we-friendly question received 07:35:08.656515 Wrote request (93 bytes) input to log/18/server.input 07:35:08.656529 Identifying ourselves as friends 07:35:08.656580 Response sent (56 bytes) and written to log/18/server.response 07:35:08.656589 special request received, no persistency 07:35:08.656599 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 522 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr522 URL: http://127.0.0.1/522 === End of file stderr522 === Start of file valgrind522 ==102993== ==102993== Process terminating with default action of signal 4 (SIGILL) ==102993== Illegal opcode at address 0x51C2DB3 ==102993== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102993== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102993== by 0x51C2DB3: Curl_open (url.c:541) ==102993== by 0x513D46F: curl_easy_init (easy.c:372) ==102993== by 0x400BC2A: test_lib521.lto_priv.0 (lib521.c:38) ==102993== by 0x4003443: main (first.c:167) ==102993== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x533CFA5: __tsearch (tsearch.c:337) ==102993== by 0x533CFA5: tsearch (tsearch.c:290) ==102993== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102993== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102993== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102993== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102993== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102993== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== ==102993== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x533CFA5: __tsearch (tsearch.c:337) ==102993== by 0x533CFA5: tsearch (tsearch.c:290) ==102993== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102993== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102993== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== ==102993== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102993== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102993== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102993== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102993== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102993== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== ==102993== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102993== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102993== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== ==102993== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102993== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102993== by 0x51C2D03: Curl_open (url.c:520) ==102993== by 0x513D46F: curl_easy_init (easy.c:372) ==102993== by 0x400BC2A: test_lib521.lto_priv.0 (lib521.c:38) ==102993== by 0x4003443: main (first.c:167) ==102993== ==102993== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x533CFA5: __tsearch (tsearch.c:337) ==102993== by 0x533CFA5: tsearch (tsearch.c:290) ==102993== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102993== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102993== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102993== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102993== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102993== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== ==102993== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102993== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102993== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102993== by 0x524F3F0: add_alias2 (CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind529 ./libtest/libtests lib525 ftp://127.0.0.1:42651/path/529 log/22/upload529 > log/22/stdout529 2> log/22/stderr529 gconv_conf.c:176) ==102993== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102993== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102993== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102993== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102993== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102993== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102993== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102993== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102993== by 0x525A142: setlocale (setlocale.c:337) ==102993== by 0x400336E: main (first.c:123) ==102993== === End of file valgrind522 test 0529...[FTP PORT upload using multi interface (weird cleanup function sequence)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind529 ./libtest/libtests lib525 ftp://127.0.0.1:42651/path/529 log/22/upload529 > log/22/stdout529 2> log/22/stderr529 529: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 529 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind529 ./libtest/libtests lib525 ftp://127.0.0.1:42651/path/529 log/22/upload529 > log/22/stdout529 2> log/22/stderr529 === End of file commands.log === Start of file ftp_server.log 07:35:21.912863 ====> Client connect 07:35:21.912966 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:21.913142 < "USER anonymous" 07:35:21.913165 > "331 We are happy you popped in![CR][LF]" 07:35:21.913282 < "PASS ftp@example.com" 07:35:21.913300 > "230 Welcome you silly person[CR][LF]" 07:35:21.913402 < "PWD" 07:35:21.913423 > "257 "/" is current directory[CR][LF]" 07:35:21.913519 < "EPSV" 07:35:21.913534 ====> Passive DATA channel requested by client 07:35:21.913542 DATA sockfilt for passive data channel starting... 07:35:21.914669 DATA sockfilt for passive data channel started (pid 103730) 07:35:21.914732 DATA sockfilt for passive data channel listens on port 37507 07:35:21.914753 > "229 Entering Passive Mode (|||37507|)[LF]" 07:35:21.914763 Client has been notified that DATA conn will be accepted on port 37507 07:35:21.914878 Client connects to port 37507 07:35:21.914895 ====> Client established passive DATA connection on port 37507 07:35:21.914963 < "TYPE I" 07:35:21.914979 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:21.915071 < "SIZE verifiedserver" 07:35:21.915092 > "213 17[CR][LF]" 07:35:21.915179 < "RETR verifiedserver" 07:35:21.915198 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:21.915245 =====> Closing passive DATA connection... 07:35:21.915255 Server disconnects passive DATA connection 07:35:21.915390 Server disconnected passive DATA connection 07:35:21.915408 DATA sockfilt for passive data channel quits (pid 103730) 07:35:21.915533 DATA sockfilt for passive data channel quit (pid 103730) 07:35:21.915547 =====> Closed passive DATA connection 07:35:21.915565 > "226 File transfer complete[CR][LF]" 07:35:21.956860 < "QUIT" 07:35:21.956888 > "221 bye bye baby[CR][LF]" 07:35:21.957477 MAIN sockfilt said DISC 07:35:21.957497 ====> Client disconnected 07:35:21.957546 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:21.758768 ====> Client connect 07:35:21.758954 Received DATA (on stdin) 07:35:21.758963 > 160 bytes data, server => client 07:35:21.758970 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:21.758977 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:21.758983 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:21.759033 < 16 bytes data, client => server 07:35:21.759041 'USER anonymous\r\n' 07:35:21.759146 Received DATA (on stdin) 07:35:21.759155 > 33 bytes data, server => client 07:35:21.759164 '331 We are happy you popped in!\r\n' 07:35:21.759210 < 22 bytes data, client => server 07:35:21.759218 'PASS ftp@example.com\r\n' 07:35:21.759281 Received DATA (on stdin) 07:35:21.759288 > 30 bytes data, server => client 07:35:21.759294 '230 Welcome you silly person\r\n' 07:35:21.759330 < 5 bytes data, client => server 07:35:21.759337 'PWD\r\n' 07:35:21.759403 Received DATA (on stdin) 07:35:21.759410 > 30 bytes data, server => client 07:35:21.759417 '257 "/" is current directory\r\n' 07:35:21.759449 < 6 bytes data, client => server 07:35:21.759456 'EPSV\r\n' 07:35:21.760746 Received DATA (on stdin) 07:35:21.760755 > 38 bytes data, server => client 07:35:21.760762 '229 Entering Passive Mode (|||37507|)\n' 07:35:21.760885 < 8 bytes data, client => server 07:35:21.760892 'TYPE I\r\n' 07:35:21.760960 Received DATA (on stdin) 07:35:21.760967 > 33 bytes data, server => client 07:35:21.760974 '200 I modify TYPE as you wanted\r\n' 07:35:21.761004 < 21 bytes data, client => server 07:35:21.761011 'SIZE verifiedserver\r\n' 07:35:21.761072 Received DATA (on stdin) 07:35:21.761079 > 8 bytes data, server => client 07:35:21.761085 '213 17\r\n' 07:35:21.761113 < 21 bytes data, client => server 07:35:21.761120 'RETR verifiedserver\r\n' 07:35:21.761236 Received DATA (on stdin) 07:35:21.761243 > 29 bytes data, server => client 07:35:21.761250 '150 Binary junk (17 bytes).\r\n' 07:35:21.761548 Received DATA (on stdin) 07:35:21.761557 > 28 bytes data, server => client 07:35:21.761564 '226 File transfer complete\r\n' 07:35:21.802722 < 6 bytes data, client => server 07:35:21.802741 'QUIT\r\n' 07:35:21.802871 Received DATA (on stdin) 07:35:21.802878 > 18 bytes data, server => client 07:35:21.802885 '221 bye bye baby\r\n' 07:35:21.803428 ====> Client disconnect 07:35:21.803526 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:21.760475 Running IPv4 version 07:35:21.760507 Listening on port 37507 07:35:21.760534 Wrote pid 103730 to log/22/server/ftp_sockdata.pid 07:35:21.760616 Received PING (on stdin) 07:35:21.760663 Received PORT (on stdin) 07:35:21.760827 ====> Client connect 07:35:21.761265 Received DATA (on stdin) 07:35:21.761273 > 17 bytes data, server => client 07:35:21.761280 'WE ROOLZ: 79849\r\n' 07:35:21.761295 Received DISC (on stdin) 07:35:21.761302 ====> Client forcibly disconnected 07:35:21.761393 Received QUIT (on stdin) 07:35:21.761401 quits 07:35:21.761436 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 529 === End of file server.cmd === Start of file stderr529 URL: ftp://127.0.0.1:42651/path/529 === End of file stderr529 === Start of file upload529 Moooooooooooo upload this === End of file upload529 === Start of file valgrind529 ==103732== ==103732== Process terminating with default action of signal 4 (SIGILL) ==103732== Illegal opcode at address 0x51C2DB3 ==103732== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103732== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103732== by 0x51C2DB3: Curl_open (url.c:541) ==103732== by 0x513D46F: curl_easy_init (easy.c:372) ==103732== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103732== by 0x4003443: main (first.c:167) ==103732== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x533CFA5: __tsearch (tsearch.c:337) ==103732== by 0x533CFA5: tsearch (tsearch.c:290) ==103732== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103732== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103732== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103732== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103732== by 0x524F555: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind508 ./libtest/libtests lib508 http://127.0.0.1:45261/508 > log/8/stdout508 2> log/8/stderr508 gconv_parseconfdir (gconv_parseconfdir.h:139) ==103732== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== ==103732== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x533CFA5: __tsearch (tsearch.c:337) ==103732== by 0x533CFA5: tsearch (tsearch.c:290) ==103732== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103732== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103732== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== ==103732== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103732== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103732== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103732== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103732== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103732== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== ==103732== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103732== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103732== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== ==103732== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==103732== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103732== by 0x51C2D03: Curl_open (url.c:520) ==103732== by 0x513D46F: curl_easy_init (easy.c:372) ==103732== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103732== by 0x4003443: main (first.c:167) ==103732== ==103732== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x533CFA5: __tsearch (tsearch.c:337) ==103732== by 0x533CFA5: tsearch (tsearch.c:290) ==103732== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103732== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103732== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103732== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103732== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103732== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== ==103732== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==103732== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103732== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103732== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103732== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103732== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103732== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103732== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103732== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103732== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103732== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103732== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103732== by 0x525A142: setlocale (setlocale.c:337) ==103732== by 0x400336E: main (first.c:123) ==103732== === End of file valgrind529 test 0508...[send HTTP POST using read callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind508 ./libtest/libtests lib508 http://127.0.0.1:45261/508 > log/8/stdout508 2> log/8/stderr508 508: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 508 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind508 ./libtest/libtests lib508 http://127.0.0.1:45261/508 > log/8/stdout508 2> log/8/stderr508 === End of file commands.log === Start of file http_server.log 07:35:08.287380 ====> Client connect 07:35:08.287411 accept_connection 3 returned 4 07:35:08.287429 accept_connection 3 returned 0 07:35:08.287443 Read 93 bytes 07:35:08.287453 Process 93 bytes request 07:35:08.287466 Got request: GET /verifiedserver HTTP/1.1 07:35:08.287476 Are-we-friendly question received 07:35:08.287502 Wrote request (93 bytes) input to log/8/server.input 07:35:08.287520 Identifying ourselves as friends 07:35:08.287580 Response sent (56 bytes) and written to log/8/server.response 07:35:08.287591 special request received, no persistency 07:35:08.287601 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 508 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file stderr508 URL: http://127.0.0.1:45261/508 === End of file stderr508 === Start of file valgrind508 ==102209== ==102209== Process terminating with default action of signal 4 (SIGILL) ==102209== Illegal opcode at address 0x51C2DB3 ==102209== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102209== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102209== by 0x51C2DB3: Curl_open (url.c:541) ==102209== by 0x513D46F: curl_easy_init (easy.c:372) ==102209== by 0x40051CA: test_lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind521 ./libtest/libtests lib521 ftp://127.0.0.1/521/ 40375 > log/13/stdout521 2> log/13/stderr521 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind530 ./libtest/libtests lib530 http://127.0.0.1:38941/file530 > log/1/stdout530 2> log/1/stderr530 ib508.lto_priv.0 (lib508.c:68) ==102209== by 0x4003443: main (first.c:167) ==102209== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x533CFA5: __tsearch (tsearch.c:337) ==102209== by 0x533CFA5: tsearch (tsearch.c:290) ==102209== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102209== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102209== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102209== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102209== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102209== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== ==102209== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x533CFA5: __tsearch (tsearch.c:337) ==102209== by 0x533CFA5: tsearch (tsearch.c:290) ==102209== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102209== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102209== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== ==102209== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102209== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102209== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102209== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102209== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102209== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== ==102209== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102209== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102209== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== ==102209== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102209== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102209== by 0x51C2D03: Curl_open (url.c:520) ==102209== by 0x513D46F: curl_easy_init (easy.c:372) ==102209== by 0x40051CA: test_lib508.lto_priv.0 (lib508.c:68) ==102209== by 0x4003443: main (first.c:167) ==102209== ==102209== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x533CFA5: __tsearch (tsearch.c:337) ==102209== by 0x533CFA5: tsearch (tsearch.c:290) ==102209== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102209== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102209== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102209== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102209== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102209== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== ==102209== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102209== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102209== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102209== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102209== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102209== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102209== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102209== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102209== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102209== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102209== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102209== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102209== by 0x525A142: setlocale (setlocale.c:337) ==102209== by 0x400336E: main (first.c:123) ==102209== === End of file valgrind508 test 0521...[FTP dir list PASV with CURLOPT_PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind521 ./libtest/libtests lib521 ftp://127.0.0.1/521/ 40375 > log/13/stdout521 2> log/13/stderr521 521: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 521 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind521 ./libtest/libtests lib521 ftp://127.0.0.1/521/ 40375 > log/13/stdout521 2> log/13/stderr521 === End of file commands.log === Start of file ftp_server.log 07:35:08.809162 ====> Client connect 07:35:08.809298 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.809553 < "USER anonymous" 07:35:08.809589 > "331 We are happy you popped in![CR][LF]" 07:35:08.809761 < "PASS ftp@example.com" 07:35:08.809786 > "230 Welcome you silly person[CR][LF]" 07:35:08.809919 < "PWD" 07:35:08.809942 > "257 "/" is current directory[CR][LF]" 07:35:08.810299 < "EPSV" 07:35:08.810325 ====> Passive DATA channel requested by client 07:35:08.810339 DATA sockfilt for passive data channel starting... 07:35:08.812101 DATA sockfilt for passive data channel started (pid 102927) 07:35:08.812201 DATA sockfilt for passive data channel listens on port 37475 07:35:08.812241 > "229 Entering Passive Mode (|||37475|)[LF]" 07:35:08.812259 Client has been notified that DATA conn will be accepted on port 37475 07:35:08.812493 Client connects to port 37475 07:35:08.812527 ====> Client established passive DATA connection on port 37475 07:35:08.812593 < "TYPE I" 07:35:08.812620 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.812769 < "SIZE verifiedserver" 07:35:08.812802 > "213 17[CR][LF]" 07:35:08.813015 < "RETR verifiedserver" 07:35:08.813068 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.813135 =====> Closing passive DATA connection... 07:35:08.813149 Server disconnects passive DATA connection 07:35:08.813299 Server disconnected passive DATA connection 07:35:08.813326 DATA sockfilt for passive data channel quits (pid 102927) 07:35:08.813560 DATA sockfilt for passive data channel quit (pid 102927) 07:35:08.813586 =====> Closed passive DATA connection 07:35:08.813613 > "226 File transfer complete[CR][LF]" 07:35:08.853645 < "QUIT" 07:35:08.853702 > "221 bye bye baby[CR][LF]" 07:35:08.854071 MAIN sockfilt said DISC 07:35:08.854126 ====> Client disconnected 07:35:08.854203 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.655069 ====> Client connect 07:35:08.655287 Received DATA (on stdin) 07:35:08.655301 > 160 bytes data, server => client 07:35:08.655313 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.655323 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.655333 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.655422 < 16 bytes data, client => server 07:35:08.655447 'USER anonymous\r\n' 07:35:08.655581 Received DATA (on stdin) 07:35:08.655596 > 33 bytes data, server => client 07:35:08.655607 '331 We are happy you popped in!\r\n' 07:35:08.655666 < 22 bytes data, client => server 07:35:08.655678 'PASS ftp@example.com\r\n' 07:35:08.655773 Received DATA (on stdin) 07:35:08.655784 > 30 bytes data, server => client 07:35:08.655794 '230 Welcome you silly person\r\n' 07:35:08.655836 < 5 bytes data, client => server 07:35:08.655845 'PWD\r\n' 07:35:08.655928 Received DATA (on stdin) 07:35:08.655939 > 30 bytes data, server => client 07:35:08.655949 '257 "/" is current directory\r\n' 07:35:08.656203 < 6 bytes data, client => server 07:35:08.656224 'EPSV\r\n' 07:35:08.658254 Received DATA (on stdin) 07:35:08.658269 > 38 bytes data, server => client 07:35:08.658280 '229 Entering Passive Mode (|||37475|)\n' 07:35:08.658428 < 8 bytes data, client => server 07:35:08.658439 'TYPE I\r\n' 07:35:08.658610 Received DATA (on stdin) 07:35:08.658622 > 33 bytes data, server => client 07:35:08.658633 '200 I modify TYPE as you wanted\r\n' 07:35:08.658683 < 21 bytes data, client => server 07:35:08.658694 'SIZE verifiedserver\r\n' 07:35:08.658779 Received DATA (on stdin) 07:35:08.658801 > 8 bytes data, server => client 07:35:08.658812 '213 17\r\n' 07:35:08.658870 < 21 bytes data, client => server 07:35:08.658883 'RETR verifiedserver\r\n' 07:35:08.659143 Received DATA (on stdin) 07:35:08.659158 > 29 bytes data, server => client 07:35:08.659169 '150 Binary junk (17 bytes).\r\n' 07:35:08.659603 Received DATA (on stdin) 07:35:08.659614 > 28 bytes data, server => client 07:35:08.659624 '226 File transfer complete\r\n' 07:35:08.699462 < 6 bytes data, client => server 07:35:08.699499 'QUIT\r\n' 07:35:08.699702 Received DATA (on stdin) 07:35:08.699720 > 18 bytes data, server => client 07:35:08.699731 '221 bye bye baby\r\n' 07:35:08.699994 ====> Client disconnect 07:35:08.700192 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.657866 Running IPv4 version 07:35:08.657912 Listening on port 37475 07:35:08.657949 Wrote pid 102927 to log/13/server/ftp_sockdata.pid 07:35:08.658028 Received PING (on stdin) 07:35:08.658113 Received PORT (on stdin) 07:35:08.658401 ====> Client connect 07:35:08.659069 Received DATA (on stdin) 07:35:08.659083 > 17 bytes data, server => client 07:35:08.659093 'WE ROOLZ: 87629\r\n' 07:35:08.659138 Received DISC (on stdin) 07:35:08.659151 ====> Client forcibly disconnected 07:35:08.659330 Received QUIT (on stdin) 07:35:08.659345 quits 07:35:08.659397 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 521 === End of file server.cmd === Start of file stderr521 URL: ftp://127.0.0.1/521/ === End of file stderr521 === Start of file valgrind521 ==103175== ==103175== Process terminating with default action of signal 4 (SIGILL) ==103175== Illegal opcode at address 0x51C2DB3 ==103175== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103175== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103175== by 0x51C2DB3: Curl_open (url.c:541) ==103175== by 0x513D46F: curl_easy_init (easy.c:372) ==103175== by 0x400BC2A: test_lib521.lto_priv.0 (lib521.c:38) ==103175== by 0x4003443: main (first.c:167) ==103175== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x533CFA5: __tsearch (tsearch.c:337) ==103175== by 0x533CFA5: tsearch (tsearch.c:290) ==103175== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103175== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103175== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103175== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103175== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103175== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== ==103175== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x533CFA5: __tsearch (tsearch.c:337) ==103175== by 0x533CFA5: tsearch (tsearch.c:290) ==103175== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103175== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103175== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== ==103175== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103175== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103175== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103175== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103175== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103175== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== ==103175== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103175== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103175== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== ==103175== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103175== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103175== by 0x51C2D03: Curl_open (url.c:520) ==103175== by 0x513D46F: curl_easy_init (easy.c:372) ==103175== by 0x400BC2A: test_lib521.lto_priv.0 (lib521.c:38) ==103175== by 0x4003443: main (first.c:167) ==103175== ==103175== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x533CFA5: __tsearch (tsearch.c:337) ==103175== by 0x533CFA5: tsearch (tsearch.c:290) ==103175== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103175== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103175== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103175== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103175== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103175== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== ==103175== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103175== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103175== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103175== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103175== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103175== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103175== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103175== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103175== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103175== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103175== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103175== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103175== by 0x525A142: setlocale (setlocale.c:337) ==103175== by 0x400336E: main (first.c:123) ==103175== === End of file valgrind521 test 0530...[multi_socket interface transfer with callbacks returning error] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind530 ./libtest/libtests lib530 http://127.0.0.1:38941/file530 > log/1/stdout530 2> log/1/stderr530 libtests returned 132, when expecting 0 530: exit FAILED == Contents of files in the log/1/ dir after test 530 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind530 ./libtest/libtests lib530 http://127.0.0.1:38941/file530 > log/1/stdout530 2> log/1/stderr530 === End of file commands.log === Start of file http_server.log 07:35:22.237979 ====> Client connect 07:35:22.238001 accept_connection 3 returned 4 07:35:22.238012 accept_connection 3 returned 0 07:35:22.238021 Read 93 bytes 07:35:22.238027 Process 93 bytes request 07:35:22.238036 Got request: GET /verifiedserver HTTP/1.1 07:35:22.238042 Are-we-friendly question received 07:35:22.238057 Wrote request (93 bytes) input to log/1/server.input 07:35:22.238067 Identifying ourselves as friends 07:35:22.238101 Response sent (56 bytes) and written to log/1/server.response 07:35:22.238107 special request received, no persistency 07:35:22.238113 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 530 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr530 URL: http://127.0.0.1:38941/file530 [T530-0-0] [0/0] start === End of file stderr530 === Start of file valgrind530 ==103804== ==103804== Process terminating with default action of signal 4 (SIGILL) ==103804== Illegal opcode at address 0x51C2DB3 ==103804== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103804== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103804== by 0x51C2DB3: Curl_open (url.c:541) ==103804== by 0x513D46F: curl_easy_init (easy.c:372) ==103804== by 0x400DA02: testone (lib530.c:303) ==103804== by 0x400E6F8: test_lib530.lto_priv.0 (lib530.c:401) ==103804== by 0x4003443: main (first.c:167) ==103804== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x533CFA5: __tsearch (tsearch.c:337) ==103804== by 0x533CFA5: tsearch (tsearch.c:290) ==103804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== ==103804== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x533CFA5: __tsearch (tsearch.c:337) ==103804== by 0x533CFA5: tsearch (tsearch.c:290) ==103804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== ==103804== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== ==103804== 1,018 bytes in 23 blocks are possibly lost in lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind531 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/531 log/18/upload531 > log/18/stdout531 2> log/18/stderr531 oss record 629 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== ==103804== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103804== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103804== by 0x51C2D03: Curl_open (url.c:520) ==103804== by 0x513D46F: curl_easy_init (easy.c:372) ==103804== by 0x400DA02: testone (lib530.c:303) ==103804== by 0x400E6F8: test_lib530.lto_priv.0 (lib530.c:401) ==103804== by 0x4003443: main (first.c:167) ==103804== ==103804== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x533CFA5: __tsearch (tsearch.c:337) ==103804== by 0x533CFA5: tsearch (tsearch.c:290) ==103804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== ==103804== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103804== by 0x525A142: setlocale (setlocale.c:337) ==103804== by 0x400336E: main (first.c:123) ==103804== === End of file valgrind530 test 0531...[FTP PORT upload using multi interface and get 425 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind531 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/531 log/18/upload531 > log/18/stdout531 2> log/18/stderr531 531: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 531 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind531 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/531 log/18/upload531 > log/18/stdout531 2> log/18/stderr531 === End of file commands.log === Start of file ftp_server.log 07:35:22.569775 ====> Client connect 07:35:22.569900 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:22.570151 < "USER anonymous" 07:35:22.570177 > "331 We are happy you popped in![CR][LF]" 07:35:22.570340 < "PASS ftp@example.com" 07:35:22.570376 > "230 Welcome you silly person[CR][LF]" 07:35:22.570515 < "PWD" 07:35:22.570552 > "257 "/" is current directory[CR][LF]" 07:35:22.570734 < "EPSV" 07:35:22.570757 ====> Passive DATA channel requested by client 07:35:22.570769 DATA sockfilt for passive data channel starting... 07:35:22.571948 DATA sockfilt for passive data channel started (pid 103883) 07:35:22.572038 DATA sockfilt for passive data channel listens on port 45041 07:35:22.572063 > "229 Entering Passive Mode (|||45041|)[LF]" 07:35:22.572074 Client has been notified that DATA conn will be accepted on port 45041 07:35:22.572221 Client connects to port 45041 07:35:22.572239 ====> Client established passive DATA connection on port 45041 07:35:22.572280 < "TYPE I" 07:35:22.572295 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:22.572390 < "SIZE verifiedserver" 07:35:22.572412 > "213 17[CR][LF]" 07:35:22.572500 < "RETR verifiedserver" 07:35:22.572521 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:22.572571 =====> Closing passive DATA connection... 07:35:22.572581 Server disconnects passive DATA connection 07:35:22.572651 Server disconnected passive DATA connection 07:35:22.572663 DATA sockfilt for passive data channel quits (pid 103883) 07:35:22.572810 DATA sockfilt for passive data channel quit (pid 103883) 07:35:22.572828 =====> Closed passive DATA connection 07:35:22.572846 > "226 File transfer complete[CR][LF]" 07:35:22.617049 < "QUIT" 07:35:22.617082 > "221 bye bye baby[CR][LF]" 07:35:22.617214 MAIN sockfilt said DISC 07:35:22.617243 ====> Client disconnected 07:35:22.617290 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:22.415643 ====> Client connect 07:35:22.415909 Received DATA (on stdin) 07:35:22.415925 > 160 bytes data, server => client 07:35:22.415950 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:22.415973 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:22.415981 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:22.416027 < 16 bytes data, client => server 07:35:22.416034 'USER anonymous\r\n' 07:35:22.416160 Received DATA (on stdin) 07:35:22.416168 > 33 bytes data, server => client 07:35:22.416176 '331 We are happy you popped in!\r\n' 07:35:22.416210 < 22 bytes data, client => server 07:35:22.416217 'PASS ftp@example.com\r\n' 07:35:22.416345 Received DATA (on stdin) 07:35:22.416353 > 30 bytes data, server => client 07:35:22.416360 '230 Welcome you silly person\r\n' 07:35:22.416389 < 5 bytes data, client => server 07:35:22.416397 'PWD\r\n' 07:35:22.416542 Received DATA (on stdin) 07:35:22.416555 > 30 bytes data, server => client 07:35:22.416566 '257 "/" is current directory\r\n' 07:35:22.416644 < 6 bytes data, client => server 07:35:22.416655 'EPSV\r\n' 07:35:22.418063 Received DATA (on stdin) 07:35:22.418073 > 38 bytes data, server => client 07:35:22.418080 '229 Entering Passive Mode (|||45041|)\n' 07:35:22.418168 < 8 bytes data, client => server 07:35:22.418175 'TYPE I\r\n' 07:35:22.418277 Received DATA (on stdin) 07:35:22.418285 > 33 bytes data, server => client 07:35:22.418291 '200 I modify TYPE as you wanted\r\n' 07:35:22.418321 < 21 bytes data, client => server 07:35:22.418328 'SIZE verifiedserver\r\n' 07:35:22.418392 Received DATA (on stdin) 07:35:22.418399 > 8 bytes data, server => client 07:35:22.418406 '213 17\r\n' 07:35:22.418433 < 21 bytes data, client => server 07:35:22.418440 'RETR verifiedserver\r\n' 07:35:22.418557 Received DATA (on stdin) 07:35:22.418579 > 29 bytes data, server => client 07:35:22.418592 '150 Binary junk (17 bytes).\r\n' 07:35:22.418828 Received DATA (on stdinCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind532 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/532 > log/22/stdout532 2> log/22/stderr532 ) 07:35:22.418836 > 28 bytes data, server => client 07:35:22.418843 '226 File transfer complete\r\n' 07:35:22.462910 < 6 bytes data, client => server 07:35:22.462939 'QUIT\r\n' 07:35:22.463068 Received DATA (on stdin) 07:35:22.463077 > 18 bytes data, server => client 07:35:22.463084 '221 bye bye baby\r\n' 07:35:22.463150 ====> Client disconnect 07:35:22.463271 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:22.417806 Running IPv4 version 07:35:22.417848 Listening on port 45041 07:35:22.417874 Wrote pid 103883 to log/18/server/ftp_sockdata.pid 07:35:22.417887 Received PING (on stdin) 07:35:22.417964 Received PORT (on stdin) 07:35:22.418150 ====> Client connect 07:35:22.418563 Received DATA (on stdin) 07:35:22.418571 > 17 bytes data, server => client 07:35:22.418578 'WE ROOLZ: 82311\r\n' 07:35:22.418594 Received DISC (on stdin) 07:35:22.418601 ====> Client forcibly disconnected 07:35:22.418647 Received QUIT (on stdin) 07:35:22.418653 quits 07:35:22.418691 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY STOR 425 Permission Denied. File Exists. Testnum 531 === End of file server.cmd === Start of file stderr531 URL: ftp://127.0.0.1:33107/path/531 === End of file stderr531 === Start of file upload531 Moooooooooooo don't upload this === End of file upload531 === Start of file valgrind531 ==103886== ==103886== Process terminating with default action of signal 4 (SIGILL) ==103886== Illegal opcode at address 0x51C2DB3 ==103886== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103886== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103886== by 0x51C2DB3: Curl_open (url.c:541) ==103886== by 0x513D46F: curl_easy_init (easy.c:372) ==103886== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103886== by 0x4003443: main (first.c:167) ==103886== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x533CFA5: __tsearch (tsearch.c:337) ==103886== by 0x533CFA5: tsearch (tsearch.c:290) ==103886== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103886== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103886== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103886== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103886== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103886== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== ==103886== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x533CFA5: __tsearch (tsearch.c:337) ==103886== by 0x533CFA5: tsearch (tsearch.c:290) ==103886== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103886== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103886== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== ==103886== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103886== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103886== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103886== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103886== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103886== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== ==103886== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103886== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103886== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== ==103886== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==103886== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103886== by 0x51C2D03: Curl_open (url.c:520) ==103886== by 0x513D46F: curl_easy_init (easy.c:372) ==103886== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103886== by 0x4003443: main (first.c:167) ==103886== ==103886== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x533CFA5: __tsearch (tsearch.c:337) ==103886== by 0x533CFA5: tsearch (tsearch.c:290) ==103886== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103886== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103886== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103886== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103886== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103886== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== ==103886== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==103886== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103886== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103886== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103886== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103886== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103886== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103886== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103886== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103886== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103886== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103886== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103886== by 0x525A142: setlocale (setlocale.c:337) ==103886== by 0x400336E: main (first.c:123) ==103886== === End of file valgrind531 test 0532...[FTP RETR same file using reset handles between each transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind532 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/532 > log/22/stdout532 2> log/22/stderr532 532: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 532 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind532 ./libtest/libtests lib526 ftp://127.0.0.1:42651/path/532 > log/22/stdout532 2> log/22/stderr532 === End of file commands.log === Start of file ftp_server.log 07:35:22.574904 ====> Client connect 07:35:22.575002 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:22.575252 < "USER anonymous" 07:35:22.575288 > "331 We are happy you popped in![CR][LF]" 07:35:22.575441 < "PASS ftp@example.com" 07:35:22.575463 > "230 Welcome you silly person[CR][LF]" 07:35:22.575606 < "PWD" 07:35:22.575633 > "257 "/" is current directory[CR][LF]" 07:35:22.575768 < "EPSV" 07:35:22.575789 ====> Passive DATA channel requested by client 07:35:22.575801 DATA sockfilt for passive data channel starting... 07:35:22.576853 DATA sockfilt for passive data channel started (pid 103884) 07:35:22.576921 DATA sockfilt for passive data channel listens on port 33357 07:35:22.576942 > "229 Entering Passive Mode (|||33357|)[LF]" 07:35:22.576953 Client has been notified that DATA conn will be accepted on port 33357 07:35:22.577100 Client connects to port 33357 07:35:22.577119 ====> Client established passive DATA connection on port 33357 07:35:22.577162 < "TYPE I" 07:35:22.577179 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:22.577272 < "SIZE verifiedserver" 07:35:22.577294 > "213 17[CR][LF]" 07:35:22.577380 < "RETR verifiedserver" 07:35:22.577400 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:22.577444 =====> Closing passive DATA connection... 07:35:22.577454 Server disconnects passive DATA connection 07:35:22.577588 Server disconnected passive DATA connection 07:35:22.577605 DATA sockfilt for passive data channel quits (pid 103884) 07:35:22.577733 DATA sockfilt for passive data channel quit (pid 103884) 07:35:22.577748 =====> Closed passive DATA connection 07:35:22.577764 > "226 File transfer complete[CR][LF]" 07:35:22.623502 < "QUIT" 07:35:22.623528 > "221 bye bye baby[CR][LF]" 07:35:22.624102 MAIN sockfilt said DISC 07:35:22.624119 ====> Client disconnected 07:35:22.624163 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:22.420804 ====> Client connect 07:35:22.420990 Received DATA (on stdin) 07:35:22.421014 > 160 bytes data, server => client 07:35:22.421026 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:22.421037 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:22.421046 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:22.421112 < 16 bytes data, client => server 07:35:22.421123 'USER anonymous\r\n' 07:35:22.421288 Received DATA (on stdin) 07:35:22.421309 > 33 bytes data, server => client 07:35:22.421320 '331 We are happy you popped in!\r\n' 07:35:22.421374 < 22 bytes data, client => server 07:35:22.421385 'PASS ftp@example.com\r\n' 07:35:22.421450 Received DATA (on stdin) 07:35:22.421462 > 30 bytes data, server => client 07:35:22.421472 '230 Welcome you silly person\r\n' 07:35:22.421520 < 5 bytes data, client => server 07:35:22.421530 'PWD\r\n' 07:35:22.421619 Received DATA (on stdin) 07:35:22.421629 > 30 bytes data, server => client 07:35:22.421639 '257 "/" is current directory\r\n' 07:35:22.421686 < 6 bytes data, client => server 07:35:22.421696 'EPSV\r\n' 07:35:22.422936 Received DATA (on stdin) 07:35:22.422944 > 38 bytes data, server => client 07:35:22.422951 '229 Entering Passive Mode (|||33357|)\n' 07:35:22.423046 < 8 bytes data, client => server 07:35:22.423055 'TYPE I\r\n' 07:35:22.423160 Received DATA (on stdin) 07:35:22.423167 > 33 bytes data, server => client 07:35:22.423174 '200 I modify TYPE as you wanted\r\n' 07:35:22.423204 < 21 bytes data, client => server 07:35:22.423211 'SIZE verifiedserver\r\n' 07:35:22.423274 Received DATA (on stdin) 07:35:22.423281 > 8 bytes data, server => client 07:35:22.423287 '213 17\r\n' 07:35:22.423314 < 21 bytes data, client => server 07:35:22.423321 'RETR verifiedserver\r\n' 07:35:22.423435 Received DATA (on stdin) 07:35:22.423442 > 29 bytes data, server => client 07:35:22.423449 '150 Binary junk (17 bytes).\r\n' 07:35:22.423745 Received DATA (on stdin) 07:35:22.423754 > 28 bytes data, server => client 07:35:22.423761 '226 File transfer complete\r\n' 07:35:22.469381 < 6 bytes data, client => server 07:35:22.469395 'QUIT\r\n' 07:35:22.469512 Received DATA (on stdin) 07:35:22.469519 > 18 bytes data, server => client 07:35:22.469526 '221 bye bye baby\r\n' 07:35:22.470052 ====> Client disconnect 07:35:22.470143 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:22.422718 Running IPv4 version 07:35:22.422755 Listening on port 33357 07:35:22.422779 Wrote pid 103884 to log/22/server/ftp_sockdata.pid 07:35:22.422791 Received PING (on stdin) 07:35:22.422850 Received PORT (on stdin) 07:35:22.423024 ====> Client connect 07:35:22.423464 Received DATA (on stdin) 07:35:22.423472 > 17 bytes data, server => client 07:35:22.423479 'WE ROOLZ: 79849\r\n' 07:35:22.423493 Received DISC (on stdin) 07:35:22.423500 ====> Client forcibly disconnected 07:35:22.423592 Received QUIT (on stdin) 07:35:22.423600 quits 07:35:22.423634 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 532 === End of file server.cmd === Start of file stderr532 URL: ftp://127.0.0.1:42651/path/532 === End of file stderr532 === Start of file valgrind532 ==103899== ==103899== Process terminating with default action of signal 4 (SIGILL) ==103899== Illegal opcode at address 0x51C2DB3 ==103899== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103899== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103899== by 0x51C2DB3: Curl_open (url.c:541) ==103899== by 0x513D46F: curl_easy_init (easy.c:372) ==103899== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103899== by 0x4003443: main (first.c:167) ==103899== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x533CFA5: __tsearch (tsearch.c:337) ==103899== by 0x533CFA5: tsearch (tsearch.c:290) ==103899== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103899== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103899== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103899== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103899== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103899== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== ==103899== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x533CFA5: __tsearch (tsearch.c:337) ==103899== by 0x533CFA5: tsearch (tsearch.c:290) ==103899== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103899== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103899== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind533 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/533 ftp://127.0.0.1:44159/path/533 > log/8/stdout533 2> log/8/stderr533 __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== ==103899== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103899== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103899== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103899== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103899== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103899== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== ==103899== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103899== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103899== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== ==103899== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103899== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103899== by 0x51C2D03: Curl_open (url.c:520) ==103899== by 0x513D46F: curl_easy_init (easy.c:372) ==103899== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103899== by 0x4003443: main (first.c:167) ==103899== ==103899== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x533CFA5: __tsearch (tsearch.c:337) ==103899== by 0x533CFA5: tsearch (tsearch.c:290) ==103899== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103899== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103899== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103899== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103899== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103899== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== ==103899== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103899== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103899== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103899== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103899== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103899== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103899== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103899== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103899== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103899== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103899== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103899== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103899== by 0x525A142: setlocale (setlocale.c:337) ==103899== by 0x400336E: main (first.c:123) ==103899== === End of file valgrind532 prechecked ./libtest/lib537 check test 0537 SKIPPED: precheck command error test 0533...[FTP RETR a non-existing file twice using the multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind533 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/533 ftp://127.0.0.1:44159/path/533 > log/8/stdout533 2> log/8/stderr533 533: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 533 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind533 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/533 ftp://127.0.0.1:44159/path/533 > log/8/stdout533 2> log/8/stderr533 === End of file commands.log === Start of file ftp_server.log 07:35:22.700331 ====> Client connect 07:35:22.700565 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:22.700834 < "USER anonymous" 07:35:22.700861 > "331 We are happy you popped in![CR][LF]" 07:35:22.700998 < "PASS ftp@example.com" 07:35:22.701029 > "230 Welcome you silly person[CR][LF]" 07:35:22.701147 < "PWD" 07:35:22.701165 > "257 "/" is current directory[CR][LF]" 07:35:22.701323 < "EPSV" 07:35:22.701352 ====> Passive DATA channel requested by client 07:35:22.701361 DATA sockfilt for passive data channel starting... 07:35:22.702412 DATA sockfilt for passive data channel started (pid 103997) 07:35:22.702482 DATA sockfilt for passive data channel listens on port 45271 07:35:22.702512 > "229 Entering Passive Mode (|||45271|)[LF]" 07:35:22.702522 Client has been notified that DATA conn will be accepted on port 45271 07:35:22.702709 Client connects to port 45271 07:35:22.702736 ====> Client established passive DATA connection on port 45271 07:35:22.702788 < "TYPE I" 07:35:22.702810 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:22.702907 < "SIZE verifiedserver" 07:35:22.702928 > "213 17[CR][LF]" 07:35:22.703016 < "RETR verifiedserver" 07:35:22.703036 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:22.703087 =====> Closing passive DATA connection... 07:35:22.703098 Server disconnects passive DATA connection 07:35:22.703193 Server disconnected passive DATA connection 07:35:22.703229 DATA sockfilt for passive data channel quits (pid 103997) 07:35:22.703429 DATA sockfilt for passive data channel quit (pid 103997) 07:35:22.703444 =====> Closed passive DATA connection 07:35:22.703471 > "226 File transfer complete[CR][LF]" 07:35:22.743543 < "QUIT" 07:35:22.743581 > "221 bye bye baby[CR][LF]" 07:35:22.743766 MAIN sockfilt said DISC 07:35:22.743818 ====> Client disconnected 07:35:22.743875 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:23.546216 ====> Client connect 07:35:23.546563 Received DATA (on stdin) 07:35:23.546578 > 160 bytes data, server => client 07:35:23.546589 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:23.546600 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:23.546609 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:23.546674 < 16 bytes data, client => server 07:35:23.546685 'USER anonymous\r\n' 07:35:23.546845 Received DATA (on stdin) 07:35:23.546855 > 33 bytes data, server => client 07:35:23.546862 '331 We are happy you popped in!\r\n' 07:35:23.546899 < 22 bytes data, client => server 07:35:23.546907 'PASS ftp@example.com\r\n' 07:35:23.547014 Received DATA (on stdin) 07:35:23.547023 > 30 bytes data, server => client 07:35:23.547030 '230 Welcome you silly person\r\n' 07:35:23.547073 < 5 bytes data, client => server 07:35:23.547081 'PWD\r\n' 07:35:23.547146 Received DATA (on stdin) 07:35:23.547153 > 30 bytes data, server => client 07:35:23.547160 '257 "/" is current directory\r\n' 07:35:23.547197 < 6 bytes data, client => server 07:35:23.547204 'EPSV\r\n' 07:35:23.548510 Received DATA (on stdin) 07:35:23.548522 > 38 bytes data, server => client 07:35:23.548530 '229 Entering Passive Mode (|||45271|)\n' 07:35:23.548647 < 8 bytes data, client => server 07:35:23.548658 'TYPE I\r\n' 07:35:23.548792 Received DATA (on stdin) 07:35:23.548799 > 33 bytes data, server => client 07:35:23.548806 '200 I modify TYPE as you wanted\r\n' 07:35:23.548838 < 21 bytes data, client => server 07:35:23.548845 'SIZE verifiedserver\r\n' 07:35:23.548908 Received DATA (on stdin) 07:35:23.548915 > 8 bytes data, server => client 07:35:23.548921 '213 17\r\n' 07:35:23.548950 < 21 bytes data, client => server 07:35:23.548956 'RETR verifiedserver\r\n' 07:35:23.549079 Received DATA (on stdin) 07:35:23.549087 > 29 bytes data, server => client 07:35:23.549093 '150 Binary junk (17 bytes).\r\n' 07:35:23.549463 Received DATA (on stdin) 07:35:23.549477 > 28 bytes data, server => client 07:35:23.549488 '226 File transfer complete\r\n' 07:35:23.589394 < 6 bytes data, client => server 07:35:23.589418 'QUIT\r\n' 07:35:23.589570 Received DATA (on stdin) 07:35:23.589582 > 18 bytes data, server => client 07:35:23.589592 '221 bye bye baby\r\n' 07:35:23.589640 ====> Client disconnect 07:35:23.590068 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:22.548272 Running IPv4 version 07:35:22.548312 Listening on port 45271 07:35:22.548343 Wrote pid 103997 to log/8/server/ftp_sockdata.pid 07:35:22.548356 Received PING (on stdin) 07:35:22.548410 Received PORT (on stdin) 07:35:22.548619 ====> Client connect 07:35:22.549109 Received DATA (on stdin) 07:35:22.549117 > 17 bytes data, server => client 07:35:22.549125 'WE ROOLZ: 81995\r\n' 07:35:22.549142 Received DISC (on stdin) 07:35:22.549149 ====> Client forcibly disconnected 07:35:22.549224 Received QUIT (on stdin) 07:35:22.549233 quits 07:35:22.549280 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 550 the file doesn't exist REPLY SIZE 500 Can't check for file existence Testnum 533 === End of file server.cmd === Start of file stderr533 URL: ftp://127.0.0.1:44159/path/533 === End of file stderr533 === Start of file valgrind533 ==104002== ==104002== Process terminating with default action of signal 4 (SIGILL) ==104002== Illegal opcode at address 0x51C2DB3 ==104002== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104002== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104002== by 0x51C2DB3: Curl_open (url.c:541) ==104002== by 0x513D46F: curl_easy_init (easy.c:372) ==104002== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104002== by 0x4003443: main (first.c:167) ==104002== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x533CFA5: __tsearch (tsearch.c:337) ==104002== by 0x533CFA5: tsearch (tsearch.c:290) ==104002== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104002== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104002== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104002== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104002== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104002== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== ==104002== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x533CFA5: __tsearch (tsearch.c:337) ==104002== by 0x533CFA5: tsearch (tsearch.c:290) ==104002== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104002== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104002== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== ==104002== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104002== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104002== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104002== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104002== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104002== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== ==104002== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104002== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104002== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== ==104002== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104002== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104002== by 0x51C2D03: Curl_open (url.c:520) ==104002== by 0x513D46F: curl_easy_init (easy.c:372) ==104002== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104002== by 0x4003443: main (first.c:167) ==104002== ==104002== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x533CFA5: __tsearch (tsearch.c:337) ==104002== by 0x533CFA5: tsearch (tsearch.c:290) ==104002== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104002== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104002== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104002== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104002== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104002== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== ==104002== 18,800 bytes iCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind502 ./libtest/libtests lib502 file:///startdir/src/build-curl/tests/log/7/test502.txt > log/7/stdout502 2> log/7/stderr502 n 486 blocks are possibly lost in loss record 653 of 655 ==104002== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104002== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104002== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104002== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104002== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104002== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104002== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104002== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104002== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104002== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104002== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104002== by 0x525A142: setlocale (setlocale.c:337) ==104002== by 0x400336E: main (first.c:123) ==104002== === End of file valgrind533 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind535 ./libtest/libtests lib533 http://127.0.0.1:38941/535 http://127.0.0.1:38941/5350001 > log/1/stdout535 2> log/1/stderr535 test 0502...[simple multi file:// get] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind502 ./libtest/libtests lib502 file:///startdir/src/build-curl/tests/log/7/test502.txt > log/7/stdout502 2> log/7/stderr502 502: data FAILED: --- log/7/check-expected 2025-07-18 07:35:23.700445373 +0000 +++ log/7/check-generated 2025-07-18 07:35:23.700445373 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar swsclose[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/7/ dir after test 502 === Start of file check-expected foo[LF] bar swsclose[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind502 ./libtest/libtests lib502 file:///startdir/src/build-curl/tests/log/7/test502.txt > log/7/stdout502 2> log/7/stderr502 === End of file commands.log === Start of file server.cmd Testnum 502 === End of file server.cmd === Start of file stderr502 URL: file:///startdir/src/build-curl/tests/log/7/test502.txt === End of file stderr502 === Start of file test502.txt foo bar swsclose bar foo moo === End of file test502.txt === Start of file valgrind502 ==101947== ==101947== Process terminating with default action of signal 4 (SIGILL) ==101947== Illegal opcode at address 0x51C2DB3 ==101947== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==101947== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==101947== by 0x51C2DB3: Curl_open (url.c:541) ==101947== by 0x513D46F: curl_easy_init (easy.c:372) ==101947== by 0x4057DF5: test_lib502.part.0.lto_priv.0 (lib502.c:43) ==101947== by 0x4003443: main (first.c:167) ==101947== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x533CFA5: __tsearch (tsearch.c:337) ==101947== by 0x533CFA5: tsearch (tsearch.c:290) ==101947== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101947== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101947== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101947== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101947== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101947== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== ==101947== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x533CFA5: __tsearch (tsearch.c:337) ==101947== by 0x533CFA5: tsearch (tsearch.c:290) ==101947== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101947== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==101947== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== ==101947== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101947== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101947== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101947== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101947== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101947== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== ==101947== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101947== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==101947== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== ==101947== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==101947== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==101947== by 0x51C2D03: Curl_open (url.c:520) ==101947== by 0x513D46F: curl_easy_init (easy.c:372) ==101947== by 0x4057DF5: test_lib502.part.0.lto_priv.0 (lib502.c:43) ==101947== by 0x4003443: main (first.c:167) ==101947== ==101947== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x533CFA5: __tsearch (tsearch.c:337) ==101947== by 0x533CFA5: tsearch (tsearch.c:290) ==101947== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101947== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101947== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101947== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101947== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101947== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== ==101947== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==101947== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101947== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101947== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101947== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101947== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101947== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101947== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101947== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101947== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101947== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101947== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101947== by 0x525A142: setlocale (setlocale.c:337) ==101947== by 0x400336E: main (first.c:123) ==101947== === End of file valgrind502 test 0535...[HTTP GET multi two files with FAILONERROR] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind535 ./libtest/libtests lib533 http://127.0.0.1:38941/535 http://127.0.0.1:38941/5350001 > log/1/stdout535 2> log/1/stderr535 535: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 535 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind535 ./libtest/libtests lib533 http://127.0.0.1:38941/535 http://127.0.0.1:38941/5350001 > log/1/stdout535 2> log/1/stderr535 === End of file commands.log === Start of file http_server.log 07:35:22.914526 ====> Client connect 07:35:22.914554 accept_connection 3 returned 4 07:35:22.914581 accept_connection 3 returned 0 07:35:22.914601 Read 93 bytes 07:35:22.914609 Process 93 bytes request 07:35:22.914620 Got request: GET /verifiedserver HTTP/1.1 07:35:22.914626 Are-we-friendly question received 07:35:22.914662 Wrote request (93 bytes) input to log/1/server.input 07:35:22.914676 Identifying ourselves as friends 07:35:22.914715 Response sent (56 bytes) and written to log/1/server.response 07:35:22.914722 special request received, no persistency 07:35:22.914728 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 535 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr535 URL: http://127.0.0.1:38941/535 === End of file stderr535 === Start of file valgrind535 ==104088== ==104088== Process terminating with default action of signal 4 (SIGILL) ==104088== Illegal opcode at address 0x51C2DB3 ==104088== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104088== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104088== by 0x51C2DB3: Curl_open (url.c:541) ==104088== by 0x513D46F: curl_easy_init (easy.c:372) ==104088== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104088== by 0x4003443: main (first.c:167) ==104088== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x533CFA5: __tsearch (tsearch.c:337) ==104088== by 0x533CFA5: tsearch (tsearch.c:290) ==104088== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104088== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104088== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104088== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104088== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104088== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104088== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== ==104088== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x533CFA5: __tsearch (tsearch.c:337) ==104088== by 0x533CFA5: tsearch (tsearch.c:290) ==104088== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104088== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104088== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104088== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== ==104088== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104088== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104088== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104088== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104088== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104088== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104088== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== ==104088== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104088== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104088== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104088== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== ==104088== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104088== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104088== by 0x51C2D03: Curl_open (url.c:520) ==104088== by 0x513D46F: curl_easy_init (easy.c:372) ==104088== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104088== by 0x4003443: main (first.c:167) ==104088== ==104088== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x533CFA5: __tsearch (tsearch.c:337) ==104088== by 0x533CFA5: tsearch (tsearch.c:290) ==104088== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104088== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104088== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104088== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104088== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104088== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104088== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== ==104088== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104088== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104088== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104088== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104088== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104088== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104088== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104088== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104088CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind534 ./libtest/libtests lib533 ftp://non-existing-host.haxx.se/path/534 ftp://127.0.0.1:40375/path/534 > log/13/stdout534 2> log/13/stderr534 == by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104088== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104088== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104088== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104088== by 0x525A142: setlocale (setlocale.c:337) ==104088== by 0x400336E: main (first.c:123) ==104088== === End of file valgrind535 test 0534...[FTP RETR twice using multi: non-existing host and non-existing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind534 ./libtest/libtests lib533 ftp://non-existing-host.haxx.se/path/534 ftp://127.0.0.1:40375/path/534 > log/13/stdout534 2> log/13/stderr534 534: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 534 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind534 ./libtest/libtests lib533 ftp://non-existing-host.haxx.se/path/534 ftp://127.0.0.1:40375/path/534 > log/13/stdout534 2> log/13/stderr534 === End of file commands.log === Start of file ftp_server.log 07:35:23.068254 ====> Client connect 07:35:23.068390 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:23.068593 < "USER anonymous" 07:35:23.068621 > "331 We are happy you popped in![CR][LF]" 07:35:23.068811 < "PASS ftp@example.com" 07:35:23.068847 > "230 Welcome you silly person[CR][LF]" 07:35:23.068955 < "PWD" 07:35:23.068973 > "257 "/" is current directory[CR][LF]" 07:35:23.069086 < "EPSV" 07:35:23.069102 ====> Passive DATA channel requested by client 07:35:23.069111 DATA sockfilt for passive data channel starting... 07:35:23.070250 DATA sockfilt for passive data channel started (pid 104086) 07:35:23.070322 DATA sockfilt for passive data channel listens on port 40043 07:35:23.070347 > "229 Entering Passive Mode (|||40043|)[LF]" 07:35:23.070359 Client has been notified that DATA conn will be accepted on port 40043 07:35:23.070512 Client connects to port 40043 07:35:23.070533 ====> Client established passive DATA connection on port 40043 07:35:23.070577 < "TYPE I" 07:35:23.070596 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:23.070707 < "SIZE verifiedserver" 07:35:23.070731 > "213 17[CR][LF]" 07:35:23.070823 < "RETR verifiedserver" 07:35:23.070845 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:23.070893 =====> Closing passive DATA connection... 07:35:23.070903 Server disconnects passive DATA connection 07:35:23.070996 Server disconnected passive DATA connection 07:35:23.071021 DATA sockfilt for passive data channel quits (pid 104086) 07:35:23.071150 DATA sockfilt for passive data channel quit (pid 104086) 07:35:23.071160 =====> Closed passive DATA connection 07:35:23.071175 > "226 File transfer complete[CR][LF]" 07:35:23.116870 < "QUIT" 07:35:23.116916 > "221 bye bye baby[CR][LF]" 07:35:23.117274 MAIN sockfilt said DISC 07:35:23.117295 ====> Client disconnected 07:35:23.117353 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:22.914145 ====> Client connect 07:35:22.914357 Received DATA (on stdin) 07:35:22.914375 > 160 bytes data, server => client 07:35:22.914384 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:22.914391 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:22.914397 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:22.914448 < 16 bytes data, client => server 07:35:22.914456 'USER anonymous\r\n' 07:35:22.914605 Received DATA (on stdin) 07:35:22.914614 > 33 bytes data, server => client 07:35:22.914621 '331 We are happy you popped in!\r\n' 07:35:22.914683 < 22 bytes data, client => server 07:35:22.914700 'PASS ftp@example.com\r\n' 07:35:22.914832 Received DATA (on stdin) 07:35:22.914841 > 30 bytes data, server => client 07:35:22.914848 '230 Welcome you silly person\r\n' 07:35:22.914884 < 5 bytes data, client => server 07:35:22.914891 'PWD\r\n' 07:35:22.914954 Received DATA (on stdin) 07:35:22.914961 > 30 bytes data, server => client 07:35:22.914968 '257 "/" is current directory\r\n' 07:35:22.915015 < 6 bytes data, client => server 07:35:22.915022 'EPSV\r\n' 07:35:22.916342 Received DATA (on stdin) 07:35:22.916352 > 38 bytes data, server => client 07:35:22.916359 '229 Entering Passive Mode (|||40043|)\n' 07:35:22.916441 < 8 bytes data, client => server 07:35:22.916448 'TYPE I\r\n' 07:35:22.916578 Received DATA (on stdin) 07:35:22.916587 > 33 bytes data, server => client 07:35:22.916594 '200 I modify TYPE as you wanted\r\n' 07:35:22.916635 < 21 bytes data, client => server 07:35:22.916643 'SIZE verifiedserver\r\n' 07:35:22.916711 Received DATA (on stdin) 07:35:22.916719 > 8 bytes data, server => client 07:35:22.916725 '213 17\r\n' 07:35:22.916755 < 21 bytes data, client => server 07:35:22.916762 'RETR verifiedserver\r\n' 07:35:22.916885 Received DATA (on stdin) 07:35:22.916893 > 29 bytes data, server => client 07:35:22.916900 '150 Binary junk (17 bytes).\r\n' 07:35:22.917158 Received DATA (on stdin) 07:35:22.917173 > 28 bytes data, server => client 07:35:22.917181 '226 File transfer complete\r\n' 07:35:22.962736 < 6 bytes data, client => server 07:35:22.962758 'QUIT\r\n' 07:35:22.962902 Received DATA (on stdin) 07:35:22.962911 > 18 bytes data, server => client 07:35:22.962918 '221 bye bye baby\r\n' 07:35:22.963219 ====> Client disconnect 07:35:22.963335 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:23.916115 Running IPv4 version 07:35:23.916153 Listening on port 40043 07:35:23.916180 Wrote pid 104086 to log/13/server/ftp_sockdata.pid 07:35:23.916193 Received PING (on stdin) 07:35:23.916250 Received PORT (on stdin) 07:35:23.916443 ====> Client connect 07:35:23.916915 Received DATA (on stdin) 07:35:23.916924 > 17 bytes data, server => client 07:35:23.916931 'WE ROOLZ: 87629\r\n' 07:35:23.916948 Received DISC (on stdin) 07:35:23.916955 ====> Client forcibly disconnected 07:35:23.917009 Received QUIT (on stdin) 07:35:23.917017 quits 07:35:23.917054 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 550 the file doesn't exist REPLY SIZE 500 Can't check for file existence Testnum 534 === End of file server.cmd === Start of file stderr534 URL: ftp://non-existing-host.haxx.se/path/534 === End of file stderr534 === Start of file valgrind534 ==104138== ==104138== Process terminating with default action of signal 4 (SIGILL) ==104138== Illegal opcode at address 0x51C2DB3 ==104138== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104138== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104138== by 0x51C2DB3: Curl_open (url.c:541) ==104138== by 0x513D46F: curl_easy_init (easy.c:372) ==104138== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104138== by 0x4003443: main (first.c:167) ==104138== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x533CFA5: __tsearch (tsearch.c:337) ==104138== by 0x533CFA5: tsearch (tsearch.c:290) ==104138== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104138== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104138== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104138== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104138== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104138== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind536 ./libtest/libtests lib536 http://127.0.0.1:45825 goingdirect.com:45825 goingdirect.com:45825:127.0.0.1 > log/18/stdout536 2> log/18/stderr536 34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== ==104138== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x533CFA5: __tsearch (tsearch.c:337) ==104138== by 0x533CFA5: tsearch (tsearch.c:290) ==104138== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104138== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104138== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== ==104138== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104138== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104138== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104138== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104138== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104138== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== ==104138== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104138== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104138== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== ==104138== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104138== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104138== by 0x51C2D03: Curl_open (url.c:520) ==104138== by 0x513D46F: curl_easy_init (easy.c:372) ==104138== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104138== by 0x4003443: main (first.c:167) ==104138== ==104138== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x533CFA5: __tsearch (tsearch.c:337) ==104138== by 0x533CFA5: tsearch (tsearch.c:290) ==104138== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104138== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104138== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104138== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104138== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104138== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== ==104138== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104138== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104138== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104138== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104138== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104138== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104138== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104138== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104138== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104138== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104138== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104138== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104138== by 0x525A142: setlocale (setlocale.c:337) ==104138== by 0x400336E: main (first.c:123) ==104138== === End of file valgrind534 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind538 ./libtest/libtests lib504 ftp://127.0.0.1:42651/538 > log/22/stdout538 2> log/22/stderr538 test 0536...[CURLINFO_USED_PROXY] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind536 ./libtest/libtests lib536 http://127.0.0.1:45825 goingdirect.com:45825 goingdirect.com:45825:127.0.0.1 > log/18/stdout536 2> log/18/stderr536 536: stdout FAILED: --- log/18/check-expected 2025-07-18 07:35:23.973778712 +0000 +++ log/18/check-generated 2025-07-18 07:35:23.973778712 +0000 @@ -1,4 +0,0 @@ -hello[CR][LF] -This used the proxy[CR][LF] -hello[CR][LF] -This DID NOT use the proxy[CR][LF] == Contents of files in the log/18/ dir after test 536 === Start of file check-expected hello[CR][LF] This used the proxy[CR][LF] hello[CR][LF] This DID NOT use the proxy[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind536 ./libtest/libtests lib536 http://127.0.0.1:45825 goingdirect.com:45825 goingdirect.com:45825:127.0.0.1 > log/18/stdout536 2> log/18/stderr536 === End of file commands.log === Start of file http_server.log 07:35:23.154175 ====> Client connect 07:35:23.154202 accept_connection 3 returned 4 07:35:23.154214 accept_connection 3 returned 0 07:35:23.154223 Read 93 bytes 07:35:23.154230 Process 93 bytes request 07:35:23.154240 Got request: GET /verifiedserver HTTP/1.1 07:35:23.154246 Are-we-friendly question received 07:35:23.154262 Wrote request (93 bytes) input to log/18/server.input 07:35:23.154273 Identifying ourselves as friends 07:35:23.154309 Response sent (56 bytes) and written to log/18/server.response 07:35:23.154315 special request received, no persistency 07:35:23.154321 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 536 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr536 URL: http://127.0.0.1:45825 === End of file stderr536 === Start of file valgrind536 ==104220== ==104220== Process terminating with default action of signal 4 (SIGILL) ==104220== Illegal opcode at address 0x51C2DB3 ==104220== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104220== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104220== by 0x51C2DB3: Curl_open (url.c:541) ==104220== by 0x513D46F: curl_easy_init (easy.c:372) ==104220== by 0x4006BB9: test_lib536.lto_priv.0 (lib536.c:51) ==104220== by 0x4003443: main (first.c:167) ==104220== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x533CFA5: __tsearch (tsearch.c:337) ==104220== by 0x533CFA5: tsearch (tsearch.c:290) ==104220== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104220== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104220== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104220== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104220== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104220== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== ==104220== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x533CFA5: __tsearch (tsearch.c:337) ==104220== by 0x533CFA5: tsearch (tsearch.c:290) ==104220== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104220== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104220== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== ==104220== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104220== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104220== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104220== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104220== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104220== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== ==104220== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104220== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104220== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== ==104220== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104220== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104220== by 0x51C2D03: Curl_open (url.c:520) ==104220== by 0x513D46F: curl_easy_init (easy.c:372) ==104220== by 0x4006BB9: test_lib536.lto_priv.0 (lib536.c:51) ==104220== by 0x4003443: main (first.c:167) ==104220== ==104220== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x533CFA5: __tsearch (tsearch.c:337) ==104220== by 0x533CFA5: tsearch (tsearch.c:290) ==104220== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104220== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104220== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104220== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104220== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104220== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== ==104220== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104220== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104220== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104220== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104220== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104220== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104220== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104220== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104220== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104220== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104220== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104220== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104220== by 0x525A142: setlocale (setlocale.c:337) ==104220== by 0x400336E: main (first.c:123) ==104220== === End of file valgrind536 test 0538...[FTP multi-interface download, failed login: PASS not valid] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind538 ./libtest/libtests lib504 ftp://127.0.0.1:42651/538 > log/22/stdout538 2> log/22/stderr538 538: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 538 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind538 ./libtest/libtests lib504 ftp://127.0.0.1:42651/538 > log/22/stdout538 2> log/22/stderr538 === End of file commands.log === Start of file ftp_server.log 07:35:23.333595 ====> Client connect 07:35:23.333701 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:23.333871 < "USER anonymous" 07:35:23.333894 > "331 We are happy you popped in![CR][LF]" 07:35:23.333995 < "PASS ftp@example.com" 07:35:23.334011 > "230 Welcome you silly person[CR][LF]" 07:35:23.334100 < "PWD" 07:35:23.334118 > "257 "/" is current directory[CR][LF]" 07:35:23.334209 < "EPSV" 07:35:23.334223 ====> Passive DATA channel requested by client 07:35:23.334294 DATA sockfilt for passive data channel starting... 07:35:23.335589 DATA sockfilt for passive data channel started (pid 104264) 07:35:23.335664 DATA sockfilt for passive data channel listens on port 40163 07:35:23.335688 > "229 Entering Passive Mode (|||40163|)[LF]" 07:35:23.335700 Client has been notified that DATA conn will be accepted on port 40163 07:35:23.335874 Client connects to port 40163 07:35:23.335901 ====> Client established passive DATA connection on port 40163 07:35:23.335968 < "TYPE I" 07:35:23.335994 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:23.336158 < "SIZE verifiedserver" 07:35:23.336186 > "213 17[CR][LF]" 07:35:23.336351 < "RETR verifiedserver" 07:35:23.336376 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:23.336431 =====> Closing passive DATA connection... 07:35:23.336441 Server disconnects passive DATA connection 07:35:23.336515 Server disconnected passive DATA connection 07:35:23.336529 DATA sockfilt for passive data channel quits (pid 104264) 07:35:23.336804 DATA sockfilt for passive data channel quit (pid 104264) 07:35:23.336832 =====> Closed passive DATA connection 07:35:23.336859 > "226 File transfer complete[CR][LF]" 07:35:23.376882 < "QUIT" 07:35:23.376927 > "221 bye bye baby[CR][LF]" 07:35:23.377093 MAIN sockfilt said DISC 07:35:23.377123 ====> Client disconnected 07:35:23.377189 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:23.179501 ====> Client connect 07:35:23.179690 Received DATA (on stdin) 07:35:23.179699 > 160 bytes data, server => client 07:35:23.179707 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:23.179714 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:23.179720 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:23.179765 < 16 bytes data, client => server 07:35:23.179772 'USER anonymous\r\n' 07:35:23.179876 Received DATA (on stdin) 07:35:23.179884 > 33 bytes data, server => client 07:35:23.179891 '331 We are happy you popped in!\r\n' 07:35:23.179923 < 22 bytes data, client => server 07:35:23.179930 'PASS ftp@example.com\r\n' 07:35:23.179991 Received DATA (on stdin) 07:35:23.179998 > 30 bytes data, server => client 07:35:23.180005 '230 Welcome you silly person\r\n' 07:35:23.180033 < 5 bytes data, client => server 07:35:23.180040 'PWD\r\n' 07:35:23.180097 Received DATA (on stdin) 07:35:23.180104 > 30 bytes data, server => client 07:35:23.180111 '257 "/" is current directory\r\n' 07:35:23.180143 < 6 bytes data, client => server 07:35:23.180150 'EPSV\r\n' 07:35:23.181683 Received DATA (on stdin) 07:35:23.181692 > 38 bytes data, server => client 07:35:23.181699 '229 Entering Passive Mode (|||40163|)\n' 07:35:23.181781 < 8 bytes data, client => server 07:35:23.181791 'TYPE I\r\n' 07:35:23.182010 Received DATA (on stdin) 07:35:23.182023 > 33 bytes data, server => client 07:35:23.182030 '200 I modify TYPE as you wanted\r\n' 07:35:23.182083 < 21 bytes data, client => server 07:35:23.182091 'SIZE verifiedserver\r\n' 07:35:23.182170 Received DATA (on stdin) 07:35:23.182179 > 8 bytes data, server => client 07:35:23.182186 '213 17\r\n' 07:35:23.182224 < 21 bytes data, client => server 07:35:23.182232 'RETR verifiedserver\r\n' 07:35:23.182411 Received DATA (on stdin) 07:35:23.182437 > 29 bytes data, server => client 07:35:23.182458 '150 Binary junk (17 bytes).\r\n' 07:35:23.182851 Received DATA (on stdin) 07:35:23.182869 > 28 bytes data, server => client 07:35:23.182880 '226 File transfer complete\r\n' 07:35:23.222732 < 6 bytes data, client => server 07:35:23.222748 'QUIT\r\n' 07:35:23.222922 Received DATA (on stdin) 07:35:23.222940 > 18 bytes data, server => client 07:35:23.222950 '221 bye bye baby\r\n' 07:35:23.223027 ====> Client disconnect 07:35:23.223152 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:23.181452 Running IPv4 version 07:35:23.181488 Listening on port 40163 07:35:23.181513 Wrote pid 104264 to log/22/server/ftp_sockdata.pid 07:35:23.181527 Received PING (on stdin) 07:35:23.181591 Received PORT (on stdin) 07:35:23.181790 ====> Client connect 07:35:23.182366 Received DATA (on stdin) 07:35:23.182377 > 17 bytes data, server => client 07:35:23.182384 'WE ROOLZ: 79849\r\n' 07:35:23.182454 Received DISC (on stdin) 07:35:23.182462 ====> Client forcibly disconnected 07:35:23.182515 Received QUIT (on stdin) 07:35:23.182521 quits 07:35:23.182590 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 314 bluah you f00l Testnum 538 === End of file server.cmd === Start of file stderr538 URL: ftp://127.0.0.1:42651/538 === End of file stderr538 === Start of file valgrind538 ==104301== ==104301== Process terminating with default action of signal 4 (SIGILL) ==104301== Illegal opcode at address 0x51C2DB3 ==104301== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104301== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104301== by 0x51C2DB3: Curl_open (url.c:541) ==104301== by 0x513D46F: curl_easy_init (easy.c:372) ==104301== by 0x4056BF5: test_lib504.part.0.lto_priv.0 (lib504.c:47) ==104301== by 0x4003443: main (first.c:167) ==104301== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x533CFA5: __tsearch (tsearch.c:337) ==104301== by 0x533CFA5: tsearch (tsearch.c:290) ==104301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==1043CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind515 ./libtest/libtests lib515 http://127.0.0.1:34851/515 > log/10/stdout515 2> log/10/stderr515 01== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104301== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104301== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== ==104301== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x533CFA5: __tsearch (tsearch.c:337) ==104301== by 0x533CFA5: tsearch (tsearch.c:290) ==104301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104301== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104301== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== ==104301== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104301== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104301== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== ==104301== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104301== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104301== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== ==104301== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104301== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104301== by 0x51C2D03: Curl_open (url.c:520) ==104301== by 0x513D46F: curl_easy_init (easy.c:372) ==104301== by 0x4056BF5: test_lib504.part.0.lto_priv.0 (lib504.c:47) ==104301== by 0x4003443: main (first.c:167) ==104301== ==104301== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x533CFA5: __tsearch (tsearch.c:337) ==104301== by 0x533CFA5: tsearch (tsearch.c:290) ==104301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104301== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104301== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== ==104301== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104301== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104301== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104301== by 0x525A142: setlocale (setlocale.c:337) ==104301== by 0x400336E: main (first.c:123) ==104301== === End of file valgrind538 test 0515...[make a POSTFIELDS set to NULL with POSTFIELDSIZE set to zero] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind515 ./libtest/libtests lib515 http://127.0.0.1:34851/515 > log/10/stdout515 2> log/10/stderr515 515: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 515 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind515 ./libtest/libtests lib515 http://127.0.0.1:34851/515 > log/10/stdout515 2> log/10/stderr515 === End of file commands.log === Start of file http_server.log 07:35:08.621139 ====> Client connect 07:35:08.621178 accept_connection 3 returned 4 07:35:08.621194 accept_connection 3 returned 0 07:35:08.621208 Read 93 bytes 07:35:08.621218 Process 93 bytes request 07:35:08.621231 Got request: GET /verifiedserver HTTP/1.1 07:35:08.621240 Are-we-friendly question received 07:35:08.621265 Wrote request (93 bytes) input to log/10/server.input 07:35:08.621280 Identifying ourselves as friends 07:35:08.621335 Response sent (56 bytes) and written to log/10/server.response 07:35:08.621344 special request received, no persistency 07:35:08.621352 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 515 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr515 URL: http://127.0.0.1:34851/515 === End of file stderr515 === Start of file valgrind515 ==102719== ==102719== Process terminating with default action of signal 4 (SIGILL) ==102719== Illegal opcode at address 0x51C2DB3 ==102719== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind539 ./libtest/libtests lib539 ftp://127.0.0.1:44159/path/to/the/file/539 ftp://127.0.0.1:44159/path/to/the/file/5390001 > log/8/stdout539 2> log/8/stderr539 02719== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102719== by 0x51C2DB3: Curl_open (url.c:541) ==102719== by 0x513D46F: curl_easy_init (easy.c:372) ==102719== by 0x400572A: test_lib515.lto_priv.0 (lib515.c:38) ==102719== by 0x4003443: main (first.c:167) ==102719== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x533CFA5: __tsearch (tsearch.c:337) ==102719== by 0x533CFA5: tsearch (tsearch.c:290) ==102719== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102719== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102719== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102719== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102719== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102719== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== ==102719== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x533CFA5: __tsearch (tsearch.c:337) ==102719== by 0x533CFA5: tsearch (tsearch.c:290) ==102719== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102719== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102719== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== ==102719== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102719== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102719== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102719== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102719== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102719== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== ==102719== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102719== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102719== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== ==102719== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102719== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102719== by 0x51C2D03: Curl_open (url.c:520) ==102719== by 0x513D46F: curl_easy_init (easy.c:372) ==102719== by 0x400572A: test_lib515.lto_priv.0 (lib515.c:38) ==102719== by 0x4003443: main (first.c:167) ==102719== ==102719== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x533CFA5: __tsearch (tsearch.c:337) ==102719== by 0x533CFA5: tsearch (tsearch.c:290) ==102719== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102719== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102719== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102719== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102719== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102719== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== ==102719== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102719== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102719== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102719== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102719== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102719== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102719== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102719== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102719== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102719== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102719== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102719== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102719== by 0x525A142: setlocale (setlocale.c:337) ==102719== by 0x400336E: main (first.c:123) ==102719== === End of file valgrind515 test 0539...[Two FTP fetches using different CURLOPT_FTP_FILEMETHOD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind539 ./libtest/libtests lib539 ftp://127.0.0.1:44159/path/to/the/file/539 ftp://127.0.0.1:44159/path/to/the/file/5390001 > log/8/stdout539 2> log/8/stderr539 539: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 539 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind539 ./libtest/libtests lib539 ftp://127.0.0.1:44159/path/to/the/file/539 ftp://127.0.0.1:44159/path/to/the/file/5390001 > log/8/stdout539 2> log/8/stderr539 === End of file commands.log === Start of file ftp_server.log 07:35:23.361761 ====> Client connect 07:35:23.361886 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:23.362070 < "USER anonymous" 07:35:23.362093 > "331 We are happy you popped in![CR][LF]" 07:35:23.362193 < "PASS ftp@example.com" 07:35:23.362209 > "230 Welcome you silly person[CR][LF]" 07:35:23.362298 < "PWD" 07:35:23.362316 > "257 "/" is current directory[CR][LF]" 07:35:23.362413 < "EPSV" 07:35:23.362428 ====> Passive DATA channel requested by client 07:35:23.362436 DATA sockfilt for passive data channel starting... 07:35:23.363577 DATA sockfilt for passive data channel started (pid 104298) 07:35:23.363648 DATA sockfilt for passive data channel listens on port 41893 07:35:23.363673 > "229 Entering Passive Mode (|||41893|)[LF]" 07:35:23.363685 Client has been notified that DATA conn will be accepted on port 41893 07:35:23.363821 Client connects to port 41893 07:35:23.363839 ====> Client established passive DATA connection on port 41893 07:35:23.363880 < "TYPE I" 07:35:23.363897 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:23.363988 < "SIZE verifiedserver" 07:35:23.364007 > "213 17[CR][LF]" 07:35:23.364092 < "RETR verifiedserver" 07:35:23.364112 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:23.364158 =====> Closing passive DATA connection... 07:35:23.364168 Server disconnects passive DATA connection 07:35:23.364306 Server disconnected passive DATA connection 07:35:23.364323 DATA sockfilt for passive data channel quits (pid 104298) 07:35:23.364467 DATA sockfilt for passive data channel quit (pid 104298) 07:35:23.364482 =====> Closed passive DATA connection 07:35:23.364498 > "226 File transfer complete[CR][LF]" 07:35:23.410281 < "QUIT" 07:35:23.410323 > "221 bye bye baby[CR][LF]" 07:35:23.410886 MAIN sockfilt said DISC 07:35:23.410904 ====> Client disconnected 07:35:23.410951 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:24.207645 ====> Client connect 07:35:24.207877 Received DATA (on stdin) 07:35:24.207887 > 160 bytes data, server => client 07:35:24.207895 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:24.207902 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:24.207909 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:24.207956 < 16 bytes data, client => server 07:35:24.207964 'USER anonymous\r\n' 07:35:24.208075 Received DATA (on stdin) 07:35:24.208083 > 33 bytes data, server => client 07:35:24.208090 '331 We are happy you popped in!\r\n' 07:35:24.208121 < 22 bytes data, client => server 07:35:24.208128 'PASS ftp@example.com\r\n' 07:35:24.208189 Received DATA (on stdin) 07:35:24.208196 > 30 bytes data, server => client 07:35:24.208203 '230 Welcome you silly person\r\n' 07:35:24.208231 < 5 bytes data, client => server 07:35:24.208237 'PWD\r\n' 07:35:24.208296 Received DATA (on stdin) 07:35:24.208303 > 30 bytes data, server => client 07:35:24.208314 '257 "/" is current directory\r\n' 07:35:24.208347 < 6 bytes data, client => server 07:35:24.208353 'EPSV\r\n' 07:35:24.209669 Received DATA (on stdin) 07:35:24.209678 > 38 bytes data, server => client 07:35:24.209685 '229 Entering Passive Mode (|||41893|)\n' 07:35:24.209769 < 8 bytes data, client => server 07:35:24.209777 'TYPE I\r\n' 07:35:24.209878 Received DATA (on stdin) 07:35:24.209885 > 33 bytes data, server => client 07:35:24.209892 '200 I modify TYPE as you wanted\r\n' 07:35:24.209921 < 21 bytes data, client => server 07:35:24.209928 'SIZE verifiedserver\r\n' 07:35:24.209987 Received DATA (on stdin) 07:35:24.209993 > 8 bytes data, server => client 07:35:24.210000 '213 17\r\n' 07:35:24.210027 < 21 bytes data, client => server 07:35:24.210034 'RETR verifiedserver\r\n' 07:35:24.210148 Received DATA (on stdin) 07:35:24.210155 > 29 bytes data, server => client 07:35:24.210162 '150 Binary junk (17 bytes).\r\n' 07:35:24.210479 Received DATA (on stdin) 07:35:24.210488 > 28 bytes data, server => client 07:35:24.210495 '226 File transfer complete\r\n' 07:35:24.256147 < 6 bytes data, client => server 07:35:24.256175 'QUIT\r\n' 07:35:24.256313 Received DATA (on stdin) 07:35:24.256325 > 18 bytes data, server => client 07:35:24.256335 '221 bye bye baby\r\n' 07:35:24.256835 ====> Client disconnect 07:35:24.256932 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:23.209442 Running IPv4 version 07:35:23.209478 Listening on port 41893 07:35:23.209503 Wrote pid 104298 to log/8/server/ftp_sockdata.pid 07:35:23.209515 Received PING (on stdin) 07:35:23.209577 Received PORT (on stdin) 07:35:23.209752 ====> Client connect 07:35:23.210177 Received DATA (on stdin) 07:35:23.210187 > 17 bytes data, server => client 07:35:23.210194 'WE ROOLZ: 81995\r\n' 07:35:23.210208 Received DISC (on stdin) 07:35:23.210215 ====> Client forcibly disconnected 07:35:23.210309 Received QUIT (on stdin) 07:35:23.210317 quits 07:35:23.210353 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 539 === End of file server.cmd === Start of file stderr539 URL: ftp://127.0.0.1:44159/path/to/the/file/539 === End of file stderr539 === Start of file valgrind539 ==104349== ==104349== Process terminating with default action of signal 4 (SIGILL) ==104349== Illegal opcode at address 0x51C2DB3 ==104349== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104349== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104349== by 0x51C2DB3: Curl_open (url.c:541) ==104349== by 0x513D46F: curl_easy_init (easy.c:372) ==104349== by 0x400748A: test_lib539.lto_priv.0 (lib539.c:40) ==104349== by 0x4003443: main (first.c:167) ==104349== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x533CFA5: __tsearch (tsearch.c:337) ==104349== by 0x533CFA5: tsearch (tsearch.c:290) ==104349== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104349== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104349== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104349== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104349== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104349== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104349== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== ==104349== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x533CFA5: __tsearch (tsearch.c:337) ==104349== by 0x533CFA5: tsearch (tsearch.c:290) ==104349== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104349== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104349== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104349== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== ==104349== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104349== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104349== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104349== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104349== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104349== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104349== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== ==104349== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104349== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104349== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104349== by 0x52BFCCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind540 ./libtest/libtests lib540 http://test.remote.example.com/path/540 http://127.0.0.1:39077 silly:person custom.set.host.name > log/7/stdout540 2> log/7/stderr540 B3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== ==104349== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104349== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104349== by 0x51C2D03: Curl_open (url.c:520) ==104349== by 0x513D46F: curl_easy_init (easy.c:372) ==104349== by 0x400748A: test_lib539.lto_priv.0 (lib539.c:40) ==104349== by 0x4003443: main (first.c:167) ==104349== ==104349== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x533CFA5: __tsearch (tsearch.c:337) ==104349== by 0x533CFA5: tsearch (tsearch.c:290) ==104349== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104349== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104349== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104349== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104349== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104349== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104349== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== ==104349== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104349== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104349== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104349== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104349== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104349== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104349== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104349== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104349== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104349== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104349== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104349== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104349== by 0x525A142: setlocale (setlocale.c:337) ==104349== by 0x400336E: main (first.c:123) ==104349== === End of file valgrind539 test 0540...[HTTP proxy auth Digest multi API re-using connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind540 ./libtest/libtests lib540 http://test.remote.example.com/path/540 http://127.0.0.1:39077 silly:person custom.set.host.name > log/7/stdout540 2> log/7/stderr540 540: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 540 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind540 ./libtest/libtests lib540 http://test.remote.example.com/path/540 http://127.0.0.1:39077 silly:person custom.set.host.name > log/7/stdout540 2> log/7/stderr540 === End of file commands.log === Start of file http_server.log 07:35:23.571145 ====> Client connect 07:35:23.571167 accept_connection 3 returned 4 07:35:23.571178 accept_connection 3 returned 0 07:35:23.571188 Read 93 bytes 07:35:23.571195 Process 93 bytes request 07:35:23.571204 Got request: GET /verifiedserver HTTP/1.1 07:35:23.571210 Are-we-friendly question received 07:35:23.571227 Wrote request (93 bytes) input to log/7/server.input 07:35:23.571238 Identifying ourselves as friends 07:35:23.571274 Response sent (56 bytes) and written to log/7/server.response 07:35:23.571281 special request received, no persistency 07:35:23.571287 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 540 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr540 URL: http://test.remote.example.com/path/540 === End of file stderr540 === Start of file valgrind540 ==104456== ==104456== Process terminating with default action of signal 4 (SIGILL) ==104456== Illegal opcode at address 0x518AA97 ==104456== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==104456== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==104456== by 0x518AA97: Curl_multi_handle (multi.c:236) ==104456== by 0x400F466: test_lib540.lto_priv.0 (lib540.c:218) ==104456== by 0x4003443: main (first.c:167) ==104456== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x533CFA5: __tsearch (tsearch.c:337) ==104456== by 0x533CFA5: tsearch (tsearch.c:290) ==104456== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104456== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104456== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104456== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104456== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104456== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== ==104456== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x533CFA5: __tsearch (tsearch.c:337) ==104456== by 0x533CFA5: tsearch (tsearch.c:290) ==104456== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104456== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104456== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== ==104456== 648 bytes in 1 blocks are possibly lost in loss record 616 of 657 ==104456== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104456== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==104456== by 0x400F466: test_lib540.lto_priv.0 (lib540.c:218) ==104456== by 0x4003443: main (first.c:167) ==104456== ==104456== 681 bytes in 17 blocks are possibly lost in loss record 617 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind541 ./libtest/libtests lib541 ftp://127.0.0.1:34427/541 log/1/upload541 > log/1/stdout541 2> log/1/stderr541 ==104456== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104456== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104456== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104456== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104456== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== ==104456== 1,018 bytes in 23 blocks are possibly lost in loss record 632 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104456== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104456== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== ==104456== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x533CFA5: __tsearch (tsearch.c:337) ==104456== by 0x533CFA5: tsearch (tsearch.c:290) ==104456== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104456== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104456== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104456== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104456== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104456== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== ==104456== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==104456== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104456== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104456== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104456== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104456== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104456== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104456== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104456== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104456== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104456== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104456== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104456== by 0x525A142: setlocale (setlocale.c:337) ==104456== by 0x400336E: main (first.c:123) ==104456== === End of file valgrind540 test 0541...[FTP upload and upload same file again without rewind] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind541 ./libtest/libtests lib541 ftp://127.0.0.1:34427/541 log/1/upload541 > log/1/stdout541 2> log/1/stderr541 541: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 541 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind541 ./libtest/libtests lib541 ftp://127.0.0.1:34427/541 log/1/upload541 > log/1/stdout541 2> log/1/stderr541 === End of file commands.log === Start of file ftp_server.log 07:35:23.725283 ====> Client connect 07:35:23.725394 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:23.725570 < "USER anonymous" 07:35:23.725594 > "331 We are happy you popped in![CR][LF]" 07:35:23.725697 < "PASS ftp@example.com" 07:35:23.725712 > "230 Welcome you silly person[CR][LF]" 07:35:23.725822 < "PWD" 07:35:23.725841 > "257 "/" is current directory[CR][LF]" 07:35:23.725938 < "EPSV" 07:35:23.725955 ====> Passive DATA channel requested by client 07:35:23.725963 DATA sockfilt for passive data channel starting... 07:35:23.727448 DATA sockfilt for passive data channel started (pid 104450) 07:35:23.727524 DATA sockfilt for passive data channel listens on port 42681 07:35:23.727549 > "229 Entering Passive Mode (|||42681|)[LF]" 07:35:23.727562 Client has been notified that DATA conn will be accepted on port 42681 07:35:23.727714 Client connects to port 42681 07:35:23.727734 ====> Client established passive DATA connection on port 42681 07:35:23.727781 < "TYPE I" 07:35:23.727797 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:23.727892 < "SIZE verifiedserver" 07:35:23.727914 > "213 17[CR][LF]" 07:35:23.728014 < "RETR verifiedserver" 07:35:23.728034 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:23.728087 =====> Closing passive DATA connection... 07:35:23.728096 Server disconnects passive DATA connection 07:35:23.728233 Server disconnected passive DATA connection 07:35:23.728251 DATA sockfilt for passive data channel quits (pid 104450) 07:35:23.728421 DATA sockfilt for passive data channel quit (pid 104450) 07:35:23.728436 =====> Closed passive DATA connection 07:35:23.728453 > "226 File transfer complete[CR][LF]" 07:35:23.770273 < "QUIT" 07:35:23.770314 > "221 bye bye baby[CR][LF]" 07:35:23.770415 MAIN sockfilt said DISC 07:35:23.770435 ====> Client disconnected 07:35:23.770495 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:23.571177 ====> Client connect 07:35:23.571384 Received DATA (on stdin) 07:35:23.571394 > 160 bytes data, server => client 07:35:23.571402 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:23.571410 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:23.571416 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:23.571459 < 16 bytes data, client => server 07:35:23.571467 'USER anonymous\r\n' 07:35:23.571576 Received DATA (on stdin) 07:35:23.571584 > 33 bytes data, server => client 07:35:23.571591 '331 We are happy you popped in!\r\n' 07:35:23.571623 < 22 bytes data, client => server 07:35:23.571630 'PASS ftp@example.com\r\n' 07:35:23.571693 Received DATA (on stdin) 07:35:23.571700 > 30 bytes data, server => client 07:35:23.571707 '230 Welcome you silly person\r\n' 07:35:23.571736 < 5 bytes data, client => server 07:35:23.571742 'PWD\r\n' 07:35:23.571822 Received DATA (on stdin) 07:35:23.571829 > 30 bytes data, server => client 07:35:23.571836 '257 "/" is current directory\r\n' 07:35:23.571870 < 6 bytes data, client => server 07:35:23.571877 'EPSV\r\n' 07:35:23.573546 Received DATA (on stdin) 07:35:23.573555 > 38 bytes data, server => client 07:35:23.573563 '229 Entering Passive Mode (|||42681|)\n' 07:35:23.573661 < 8 bytes data, client => server 07:35:23.573669 'TYPE I\r\n' 07:35:23.573778 Received DATA (on stdin) 07:35:23.573785 > 33 bytes data, server => client 07:35:23.573792 '200 I modify TYPE as you wanted\r\n' 07:35:23.573823 < 21 bytes data, client => server 07:35:23.573830 'SIZE verifiedserver\r\n' 07:35:23.573894 Received DATA (on stdin) 07:35:23.573901 > 8 bytes data, server => client 07:35:23.573910 '213 17\r\n' 07:35:23.573946 < 21 bytes data, client => server 07:35:23.573953 'RETR verifiedserver\r\n' 07:35:23.574078 Received DATA (on stdin) 07:35:23.574085 > 29 bytes data, server => client 07:35:23.574092 '150 Binary junk (17 bytes).\r\n' 07:35:23.574435 Received DATA (on stdin) 07:35:23.574444 > 28 bytes data, server => client 07:35:23.574451 '226 File transfer complete\r\n' 07:35:23.616121 < 6 bytes data, client => server 07:35:23.616149 'QUIT\r\n' 07:35:23.616303 Received DATA (on stdin) 07:35:23.616316 > 18 bytes data, server => client 07:35:23.616323 '221 bye bye baby\r\n' 07:35:23.616364 ====> Client disconnect 07:35:23.616478 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:23.573305 Running IPv4 version 07:35:23.573347 Listening on port 42681 07:35:23.573373 Wrote pid 104450 to log/1/server/ftp_sockdata.pid 07:35:23.573386 Received PING (on stdin) 07:35:23.573450 Received PORT (on stdin) 07:35:23.573642 ====> Client connect 07:35:23.574108 Received DATA (on stdin) 07:35:23.574116 > 17 bytes data, server => client 07:35:23.574123 'WE ROOLZ: 80151\r\n' 07:35:23.574138 Received DISC (on stdin) 07:35:23.574145 ====> Client forcibly disconnected 07:35:23.574238 Received QUIT (on stdin) 07:35:23.574246 quits 07:35:23.574281 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 541 === End of file server.cmd === Start of file stderr541 URL: ftp://127.0.0.1:34427/541 === End of file stderr541 === Start of file upload541 Contents of a file to verify ftp upload works? === End of file upload541 === Start of file valgrind541 ==104508== ==104508== Process terminating with default action of signal 4 (SIGILL) ==104508== Illegal opcode at address 0x51C2DB3 ==104508== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104508== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104508== by 0x51C2DB3: Curl_open (url.c:541) ==104508== by 0x513D46F: curl_easy_init (easy.c:372) ==104508== by 0x4007216: test_lib541.lto_priv.0 (lib541.c:81) ==104508== by 0x4003443: main (first.c:167) ==104508== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x533CFA5: __tsearch (tsearch.c:337) ==104508== by 0x533CFA5: tsearch (tsearch.c:290) ==104508== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104508== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104508== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104508== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104508== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104508== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== ==104508== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x533CFA5: __tsearch (tsearch.c:337) ==104508== by 0x533CFA5: tsearch (tsearch.c:290) ==104508== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104508== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104508== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== ==104508== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104508== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104508== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104508== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104508== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104508== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== ==104508== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104508== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104508== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== ==104508== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==104508== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104508== by 0x51C2D03: Curl_open (url.c:520) ==104508== by 0x513D46F: curl_easy_init (easy.c:372) ==104508== by 0x4007216: test_lib541.lto_priv.0 (lib541.c:81) ==104508== by 0x4003443: main (first.c:167) ==104508== ==104508== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x533CFA5: __tsearch (tsearch.c:337) ==104508== by 0x533CFA5: tsearch (tsearch.c:290) ==104508== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104508== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104508== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104508== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104508== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104508== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== ==104508== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==104508== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104508== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104508== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104508== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104508== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104508== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104508== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104508== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104508== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104508== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104508== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104508== by 0x525A142: setlocale (setlocale.c:337) ==104508== by 0x400336E: main (first.c:123) ==104508== === EndCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind542 ./libtest/libtests lib542 ftp://127.0.0.1:40375/542 > log/13/stdout542 2> log/13/stderr542 of file valgrind541 test 0542...[FTP a file with NOBODY yes and HEADER no] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind542 ./libtest/libtests lib542 ftp://127.0.0.1:40375/542 > log/13/stdout542 2> log/13/stderr542 542: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 542 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind542 ./libtest/libtests lib542 ftp://127.0.0.1:40375/542 > log/13/stdout542 2> log/13/stderr542 === End of file commands.log === Start of file ftp_server.log 07:35:23.733294 ====> Client connect 07:35:23.733410 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:23.733581 < "USER anonymous" 07:35:23.733603 > "331 We are happy you popped in![CR][LF]" 07:35:23.733703 < "PASS ftp@example.com" 07:35:23.733719 > "230 Welcome you silly person[CR][LF]" 07:35:23.733807 < "PWD" 07:35:23.733824 > "257 "/" is current directory[CR][LF]" 07:35:23.733913 < "EPSV" 07:35:23.733928 ====> Passive DATA channel requested by client 07:35:23.733936 DATA sockfilt for passive data channel starting... 07:35:23.735412 DATA sockfilt for passive data channel started (pid 104454) 07:35:23.735479 DATA sockfilt for passive data channel listens on port 46521 07:35:23.735502 > "229 Entering Passive Mode (|||46521|)[LF]" 07:35:23.735514 Client has been notified that DATA conn will be accepted on port 46521 07:35:23.735636 Client connects to port 46521 07:35:23.735654 ====> Client established passive DATA connection on port 46521 07:35:23.735721 < "TYPE I" 07:35:23.735739 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:23.735832 < "SIZE verifiedserver" 07:35:23.735855 > "213 17[CR][LF]" 07:35:23.735942 < "RETR verifiedserver" 07:35:23.735963 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:23.736012 =====> Closing passive DATA connection... 07:35:23.736022 Server disconnects passive DATA connection 07:35:23.736139 Server disconnected passive DATA connection 07:35:23.736153 DATA sockfilt for passive data channel quits (pid 104454) 07:35:23.736325 DATA sockfilt for passive data channel quit (pid 104454) 07:35:23.736340 =====> Closed passive DATA connection 07:35:23.736359 > "226 File transfer complete[CR][LF]" 07:35:23.776897 < "QUIT" 07:35:23.776934 > "221 bye bye baby[CR][LF]" 07:35:23.777054 MAIN sockfilt said DISC 07:35:23.777071 ====> Client disconnected 07:35:23.777130 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:23.577382 ====> Client connect 07:35:23.579399 Received DATA (on stdin) 07:35:23.579409 > 160 bytes data, server => client 07:35:23.579417 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:23.579424 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:23.579431 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:23.579474 < 16 bytes data, client => server 07:35:23.579482 'USER anonymous\r\n' 07:35:23.579586 Received DATA (on stdin) 07:35:23.579594 > 33 bytes data, server => client 07:35:23.579600 '331 We are happy you popped in!\r\n' 07:35:23.579631 < 22 bytes data, client => server 07:35:23.579638 'PASS ftp@example.com\r\n' 07:35:23.579699 Received DATA (on stdin) 07:35:23.579706 > 30 bytes data, server => client 07:35:23.579713 '230 Welcome you silly person\r\n' 07:35:23.579740 < 5 bytes data, client => server 07:35:23.579747 'PWD\r\n' 07:35:23.579803 Received DATA (on stdin) 07:35:23.579810 > 30 bytes data, server => client 07:35:23.579816 '257 "/" is current directory\r\n' 07:35:23.579847 < 6 bytes data, client => server 07:35:23.579854 'EPSV\r\n' 07:35:23.581499 Received DATA (on stdin) 07:35:23.581508 > 38 bytes data, server => client 07:35:23.581516 '229 Entering Passive Mode (|||46521|)\n' 07:35:23.581643 < 8 bytes data, client => server 07:35:23.581651 'TYPE I\r\n' 07:35:23.581719 Received DATA (on stdin) 07:35:23.581727 > 33 bytes data, server => client 07:35:23.581734 '200 I modify TYPE as you wanted\r\n' 07:35:23.581765 < 21 bytes data, client => server 07:35:23.581772 'SIZE verifiedserver\r\n' 07:35:23.581834 Received DATA (on stdin) 07:35:23.581842 > 8 bytes data, server => client 07:35:23.581848 '213 17\r\n' 07:35:23.581876 < 21 bytes data, client => server 07:35:23.581883 'RETR verifiedserver\r\n' 07:35:23.581960 Received DATA (on stdin) 07:35:23.581977 > 29 bytes data, server => client 07:35:23.581986 '150 Binary junk (17 bytes).\r\n' 07:35:23.582342 Received DATA (on stdin) 07:35:23.582353 > 28 bytes data, server => client 07:35:23.582360 '226 File transfer complete\r\n' 07:35:23.622745 < 6 bytes data, client => server 07:35:23.622764 'QUIT\r\n' 07:35:23.622917 Received DATA (on stdin) 07:35:23.622925 > 18 bytes data, server => client 07:35:23.622931 '221 bye bye baby\r\n' 07:35:23.623007 ====> Client disconnect 07:35:23.623110 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:23.581210 Running IPv4 version 07:35:23.581246 Listening on port 46521 07:35:23.581273 Wrote pid 104454 to log/13/server/ftp_sockdata.pid 07:35:23.581359 Received PING (on stdin) 07:35:23.581409 Received PORT (on stdin) 07:35:23.581583 ====> Client connect 07:35:23.581969 Received DATA (on stdin) 07:35:23.581990 > 17 bytes data, server => client 07:35:23.582001 'WE ROOLZ: 87629\r\n' 07:35:23.582032 Received DISC (on stdin) 07:35:23.582047 ====> Client forcibly disconnected 07:35:23.582141 Received QUIT (on stdin) 07:35:23.582150 quits 07:35:23.582188 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 542 === End of file server.cmd === Start of file stderr542 URL: ftp://127.0.0.1:40375/542 === End of file stderr542 === Start of file valgrind542 ==104523== ==104523== Process terminating with default action of signal 4 (SIGILL) ==104523== Illegal opcode at address 0x51C2DB3 ==104523== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104523== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104523== by 0x51C2DB3: Curl_open (url.c:541) ==104523== by 0x513D46F: curl_easy_init (easy.c:372) ==104523== by 0x4005DEA: test_lib542.lto_priv.0 (lib542.c:43) ==104523== by 0x4003443: main (first.c:167) ==104523== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x533CFA5: __tsearch (tsearch.c:337) ==104523== by 0x533CFA5: tsearch (tsearch.c:290) ==104523== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104523== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104523== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104523== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104523== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104523== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== ==104523== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x533CFA5: __tsearch (tsearch.c:337) ==104523== by 0x533CFA5: tsearch (tsearch.c:290) ==104523== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104523== by 0x524F74A: add_aliasCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind525 ./libtest/libtests lib525 ftp://127.0.0.1:41711/path/525 log/14/upload525 > log/14/stdout525 2> log/14/stderr525 2 (gconv_conf.c:105) ==104523== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== ==104523== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104523== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104523== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104523== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104523== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104523== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== ==104523== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104523== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104523== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== ==104523== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104523== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104523== by 0x51C2D03: Curl_open (url.c:520) ==104523== by 0x513D46F: curl_easy_init (easy.c:372) ==104523== by 0x4005DEA: test_lib542.lto_priv.0 (lib542.c:43) ==104523== by 0x4003443: main (first.c:167) ==104523== ==104523== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x533CFA5: __tsearch (tsearch.c:337) ==104523== by 0x533CFA5: tsearch (tsearch.c:290) ==104523== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104523== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104523== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104523== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104523== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104523== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== ==104523== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104523== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104523== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104523== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104523== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104523== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104523== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104523== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104523== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104523== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104523== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104523== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104523== by 0x525A142: setlocale (setlocale.c:337) ==104523== by 0x400336E: main (first.c:123) ==104523== === End of file valgrind542 test 0525...[FTP PORT upload using multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind525 ./libtest/libtests lib525 ftp://127.0.0.1:41711/path/525 log/14/upload525 > log/14/stdout525 2> log/14/stderr525 525: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 525 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind525 ./libtest/libtests lib525 ftp://127.0.0.1:41711/path/525 log/14/upload525 > log/14/stdout525 2> log/14/stderr525 === End of file commands.log === Start of file ftp_server.log 07:35:09.291132 ====> Client connect 07:35:09.291238 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:09.291428 < "USER anonymous" 07:35:09.291452 > "331 We are happy you popped in![CR][LF]" 07:35:09.291557 < "PASS ftp@example.com" 07:35:09.291574 > "230 Welcome you silly person[CR][LF]" 07:35:09.291666 < "PWD" 07:35:09.291685 > "257 "/" is current directory[CR][LF]" 07:35:09.291780 < "EPSV" 07:35:09.291795 ====> Passive DATA channel requested by client 07:35:09.291803 DATA sockfilt for passive data channel starting... 07:35:09.292879 DATA sockfilt for passive data channel started (pid 103399) 07:35:09.292949 DATA sockfilt for passive data channel listens on port 36551 07:35:09.292973 > "229 Entering Passive Mode (|||36551|)[LF]" 07:35:09.292986 Client has been notified that DATA conn will be accepted on port 36551 07:35:09.293124 Client connects to port 36551 07:35:09.293145 ====> Client established passive DATA connection on port 36551 07:35:09.293188 < "TYPE I" 07:35:09.293207 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:09.293318 < "SIZE verifiedserver" 07:35:09.293351 > "213 17[CR][LF]" 07:35:09.293475 < "RETR verifiedserver" 07:35:09.293499 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:09.293551 =====> Closing passive DATA connection... 07:35:09.293560 Server disconnects passive DATA connection 07:35:09.293704 Server disconnected passive DATA connection 07:35:09.293722 DATA sockfilt for passive data channel quits (pid 103399) 07:35:09.293852 DATA sockfilt for passive data channel quit (pid 103399) 07:35:09.293866 =====> Closed passive DATA connection 07:35:09.293882 > "226 File transfer complete[CR][LF]" 07:35:09.336849 < "QUIT" 07:35:09.336876 > "221 bye bye baby[CR][LF]" 07:35:09.336993 MAIN sockfilt said DISC 07:35:09.337011 ====> Client disconnected 07:35:09.337066 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:09.137028 ====> Client connect 07:35:09.137229 Received DATA (on stdin) 07:35:09.137241 > 160 bytes data, server => client 07:35:09.137249 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:09.137257 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:09.137263 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:09.137317 < 16 bytes data, client => server 07:35:09.137325 'USER anonymous\r\n' 07:35:09.137437 Received DATA (on stdin) 07:35:09.137445 > 33 bytes data, server => client 07:35:09.137452 '331 We are happy you popped in!\r\n' 07:35:09.137485 < 22 bytes data, client => server 07:35:09.137492 'PASS ftp@example.com\r\n' 07:35:09.137556 Received DATA (on stdin) 07:35:09.137564 > 30 bytes data, server => client 07:35:09.137571 '230 Welcome you silly person\r\n' 07:35:09.137599 < 5 bytes data, client => server 07:35:09.137606 'PWD\r\n' 07:35:09.137667 Received DATA (on stdin) 07:35:09.137674 > 30 bytes data, server => client 07:35:09.137681 '257 "/" is current directory\r\n' 07:35:09.137714 < 6 bytes data, client => server 07:35:09.137720 'EPSV\r\n' 07:35:09.138971 Received DATA (on stdin) 07:35:09.138981 > 38 bytes data, server => client 07:35:09.138988 '229 Entering Passive Mode (|||36551|)\n' 07:35:09.139061 < 8 bytes data, client => server 07:35:09.139068 'TYPE I\r\n' 07:35:09.139191 Received DATA (on stdin) 07:35:09.139200 > 33 bytes data, server => client 07:35:09.139207 '200 I modify TYPE as you wanted\r\n' 07:35:09.139248 < 21 bytes data, client => server 07:35:09.139255 'SIZE verifiedserver\r\n' 07:35:09.139333 Received DATA (on stdin) 07:35:09.139348 > 8 bytes data, server => client 07:35:09.139355 '213 17\r\n' 07:35:09.139404 < 21 bytes data, client => server 07:35:09.139412 'RETR verifiedserver\r\n' 07:35:09.139544 Received DATA (on stdin) 07:35:09.139552 > 29 bytes data, server => client 07:35:09.139559 '150 Binary junk (17 bytes).\r\n' 07:35:09.139865 Received DATA (on stdin) 07:35:09.139874 > 28 bytes data, server => client 07:35:09.139881 '226 File transfer complete\r\n' 07:35:09.182736 < 6 bytes data, client => server 07:35:09.182757 'QUIT\r\n' 07:35:09.182866 Received DATA (on stdin) 07:35:09.182877 > 18 bytes data, server => client 07:35:09.182887 '221 bye bye baby\r\n' 07:35:09.182944 ====> Client disconnect 07:35:09.183052 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:09.138744 Running IPv4 version 07:35:09.138787 Listening on port 36551 07:35:09.138811 Wrote pid 103399 to log/14/server/ftp_sockdata.pid 07:35:09.138823 Received PING (on stdin) 07:35:09.138880 Received PORT (on stdin) 07:35:09.139062 ====> Client connect 07:35:09.139576 Received DATA (on stdin) 07:35:09.139585 > 17 bytes data, server => client 07:35:09.139592 'WE ROOLZ: 79837\r\n' 07:35:09.139606 Received DISC (on stdin) 07:35:09.139614 ====> Client forcibly disconnected 07:35:09.139709 Received QUIT (on stdin) 07:35:09.139717 quits 07:35:09.139753 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 525 === End of file server.cmd === Start of file stderr525 URL: ftp://127.0.0.1:41711/path/525 === End of file stderr525 === Start of file upload525 Moooooooooooo upload this === End of file upload525 === Start of file valgrind525 ==103411== ==103411== Process terminating with default action of signal 4 (SIGILL) ==103411== Illegal opcode at address 0x51C2DB3 ==103411== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103411== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103411== by 0x51C2DB3: Curl_open (url.c:541) ==103411== by 0x513D46F: curl_easy_init (easy.c:372) ==103411== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103411== by 0x4003443: main (first.c:167) ==103411== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x533CFA5: __tsearch (tsearch.c:337) ==103411== by 0x533CFA5: tsearch (tsearch.c:290) ==103411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103411== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103411== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411== by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== ==103411== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x533CFA5: __tsearch (tsearch.c:337) ==103411== by 0x533CFA5: tsearch (tsearch.c:290) ==103411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103411== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103411== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411== by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== ==103411== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103411== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103411== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411== by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== ==103411== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103411== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103411== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411== by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== ==103411== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==103411== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103411== by 0x51C2D03: Curl_open (url.c:520) ==103411== by 0x513D46F: curl_easy_init (easy.c:372) ==103411== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==103411== by 0x4003443: main (first.c:167) ==103411== ==103411== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x533CFA5: __tsearch (tsearch.c:337) ==103411== by 0x533CFA5: tsearch (tsearch.c:290) ==103411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103411== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103411== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411==CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind543 ./libtest/libtests lib543 - > log/18/stdout543 2> log/18/stderr543 by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== ==103411== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==103411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103411== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103411== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103411== by 0x525A142: setlocale (setlocale.c:337) ==103411== by 0x400336E: main (first.c:123) ==103411== === End of file valgrind525 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind544 ./libtest/libtests lib544 http://127.0.0.1:46761/544 > log/22/stdout544 2> log/22/stderr544 * starts no server test 0543...[curl_easy_escape] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind543 ./libtest/libtests lib543 - > log/18/stdout543 2> log/18/stderr543 543: stdout FAILED: --- log/18/check-expected 2025-07-18 07:35:24.597112060 +0000 +++ log/18/check-generated 2025-07-18 07:35:24.597112060 +0000 @@ -1,3 +0,0 @@ -%9C%26K%3DI%04%A1%01%E0%D8%7C%20%B7%EFS%29%FA%1DW%E1[LF] -IN: '' OUT: ''[LF] -IN: ' 12' OUT: '%2012'[LF] == Contents of files in the log/18/ dir after test 543 === Start of file check-expected %9C%26K%3DI%04%A1%01%E0%D8%7C%20%B7%EFS%29%FA%1DW%E1[LF] IN: '' OUT: ''[LF] IN: ' 12' OUT: '%2012'[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind543 ./libtest/libtests lib543 - > log/18/stdout543 2> log/18/stderr543 === End of file commands.log === Start of file server.cmd Testnum 543 === End of file server.cmd === Start of file stderr543 URL: - === End of file stderr543 === Start of file valgrind543 ==104616== ==104616== Process terminating with default action of signal 4 (SIGILL) ==104616== Illegal opcode at address 0x51C2DB3 ==104616== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104616== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104616== by 0x51C2DB3: Curl_open (url.c:541) ==104616== by 0x513D46F: curl_easy_init (easy.c:372) ==104616== by 0x4008149: UnknownInlinedFun (lib543.c:42) ==104616== by 0x4008149: test_lib543.lto_priv.0 (lib543.c:30) ==104616== by 0x4003443: main (first.c:167) ==104616== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x533CFA5: __tsearch (tsearch.c:337) ==104616== by 0x533CFA5: tsearch (tsearch.c:290) ==104616== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104616== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104616== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104616== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104616== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104616== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== ==104616== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x533CFA5: __tsearch (tsearch.c:337) ==104616== by 0x533CFA5: tsearch (tsearch.c:290) ==104616== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104616== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104616== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== ==104616== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104616== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104616== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104616== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104616== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104616== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== ==104616== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104616== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104616== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== ==104616== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104616== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104616== by 0x51C2D03: Curl_open (url.c:520) ==104616== by 0x513D46F: curl_easy_init (easy.c:372) ==104616== by 0x4008149: UnknownInlinedFun (lib543.c:42) ==104616== by 0x4008149: test_lib543.lto_priv.0 (lib543.c:30) ==104616== by 0x4003443: main (first.c:167) ==104616== ==104616== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x533CFA5: __tsearch (tsearch.c:337) ==104616== by 0x533CFA5: tsearch (tsearch.c:290) ==104616== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104616== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104616== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104616== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104616== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104616== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== ==104616== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104616== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104616== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104616== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104616== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104616== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104616== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104616== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104616== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104616== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104616== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104616== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104616== by 0x525A142: setlocale (setlocale.c:337) ==104616== by 0x400336E: main (first.c:123) ==104616== === End of file valgrind543 test 0544...[HTTP POST text data using CURLOPT_COPYPOSTFIELDS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind544 ./libtest/libtests lib544 http://127.0.0.1:46761/544 > log/22/stdout544 2> log/22/stderr544 544: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 544 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind544 ./libtest/libtests lib544 http://127.0.0.1:46761/544 > log/22/stdout544 2> log/22/stderr544 === End of file commands.log === Start of file http_server.log 07:35:23.845470 ====> Client connect 07:35:23.845497 accept_connection 3 returned 4 07:35:23.845509 accept_connection 3 returned 0 07:35:23.845519 Read 93 bytes 07:35:23.845525 Process 93 bytes request 07:35:23.845535 Got request: GET /verifiedserver HTTP/1.1 07:35:23.845544 Are-we-friendly question received 07:35:23.845569 Wrote request (93 bytes) input to log/22/server.input 07:35:23.845585 Identifying ourselves as friends 07:35:23.845650 Response sent (56 bytes) and written to log/22/server.response 07:35:23.845660 special request received, no persistency 07:35:23.845669 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 544 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr544 URL: http://127.0.0.1:46761/544 === End of file stderr544 === Start of file valgrind544 ==104659== ==104659== Process terminating with default action of signal 4 (SIGILL) ==104659== Illegal opcode at address 0x51C2DB3 ==104659== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104659== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104659== by 0x51C2DB3: Curl_open (url.c:541) ==104659== by 0x513D46F: curl_easy_init (easy.c:372) ==104659== by 0x400F697: test_lib544.lto_priv.0 (lib544.c:48) ==104659== by 0x4003443: main (first.c:167) ==104659== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x533CFA5: __tsearch (tsearch.c:337) ==104659== by 0x533CFA5: tsearch (tsearch.c:290) ==104659== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104659== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104659== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104659== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104659== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104659== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== ==104659== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x533CFA5: __tsearch (tsearch.c:337) ==104659== by 0x533CFA5: tsearch (tsearch.c:290) ==104659== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104659== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104659== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== ==104659== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104659== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104659== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104659== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104659== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104659== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== ==104659== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104659== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104659== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== ==104659== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104659== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104659== by 0x51C2D03: Curl_open (url.c:520) ==104659== by 0x513D46F: curl_easy_init (easy.c:372) ==104659== by 0x400F697: test_lib544.lto_priv.0 (lib544.c:48) ==104659== by 0x4003443: main (first.c:167) ==104659== ==104659== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x533CFA5: __tsearch (tsearch.c:337) ==104659== by 0x533CFA5: tsearch (tsearch.c:290) ==104659== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104659== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104659== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104659== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104659== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104659== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== ==104659== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104659== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104659== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104659== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104659== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104659== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104659== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104659== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104659== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104659== by 0x52BFD28: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind545 ./libtest/libtests lib544 http://127.0.0.1:34851/545 > log/10/stdout545 2> log/10/stderr545 pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104659== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104659== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104659== by 0x525A142: setlocale (setlocale.c:337) ==104659== by 0x400336E: main (first.c:123) ==104659== === End of file valgrind544 test 0545...[HTTP POST binary with embedded zero and no trailing zero] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind545 ./libtest/libtests lib544 http://127.0.0.1:34851/545 > log/10/stdout545 2> log/10/stderr545 545: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 545 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind545 ./libtest/libtests lib544 http://127.0.0.1:34851/545 > log/10/stdout545 2> log/10/stderr545 === End of file commands.log === Start of file http_server.log 07:35:23.877805 ====> Client connect 07:35:23.877829 accept_connection 3 returned 4 07:35:23.877841 accept_connection 3 returned 0 07:35:23.877850 Read 93 bytes 07:35:23.877857 Process 93 bytes request 07:35:23.877865 Got request: GET /verifiedserver HTTP/1.1 07:35:23.877871 Are-we-friendly question received 07:35:23.877887 Wrote request (93 bytes) input to log/10/server.input 07:35:23.877899 Identifying ourselves as friends 07:35:23.877938 Response sent (56 bytes) and written to log/10/server.response 07:35:23.877945 special request received, no persistency 07:35:23.877951 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 545 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr545 URL: http://127.0.0.1:34851/545 === End of file stderr545 === Start of file valgrind545 ==104748== ==104748== Process terminating with default action of signal 4 (SIGILL) ==104748== Illegal opcode at address 0x51C2DB3 ==104748== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104748== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104748== by 0x51C2DB3: Curl_open (url.c:541) ==104748== by 0x513D46F: curl_easy_init (easy.c:372) ==104748== by 0x400F697: test_lib544.lto_priv.0 (lib544.c:48) ==104748== by 0x4003443: main (first.c:167) ==104748== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x533CFA5: __tsearch (tsearch.c:337) ==104748== by 0x533CFA5: tsearch (tsearch.c:290) ==104748== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104748== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104748== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104748== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104748== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104748== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== ==104748== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x533CFA5: __tsearch (tsearch.c:337) ==104748== by 0x533CFA5: tsearch (tsearch.c:290) ==104748== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104748== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104748== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== ==104748== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104748== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104748== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104748== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104748== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104748== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== ==104748== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104748== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104748== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== ==104748== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104748== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104748== by 0x51C2D03: Curl_open (url.c:520) ==104748== by 0x513D46F: curl_easy_init (easy.c:372) ==104748== by 0x400F697: test_lib544.lto_priv.0 (lib544.c:48) ==104748== by 0x4003443: main (first.c:167) ==104748== ==104748== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x533CFA5: __tsearch (tsearch.c:337) ==104748== by 0x533CFA5: tsearch (tsearch.c:290) ==104748== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104748== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104748== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104748== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104748== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104748== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== ==CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind546 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/546 ftp://127.0.0.1:44159/path/546 > log/8/stdout546 2> log/8/stderr546 104748== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104748== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104748== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104748== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104748== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104748== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104748== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104748== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104748== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104748== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104748== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104748== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104748== by 0x525A142: setlocale (setlocale.c:337) ==104748== by 0x400336E: main (first.c:123) ==104748== === End of file valgrind545 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind511 ./libtest/libtests lib511 ftp://127.0.0.1:40585/511 > log/16/stdout511 2> log/16/stderr511 test 0546...[FTP RETR a non-existing file then a found one using the multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind546 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/546 ftp://127.0.0.1:44159/path/546 > log/8/stdout546 2> log/8/stderr546 546: stdout FAILED: --- log/8/check-expected 2025-07-18 07:35:24.803778731 +0000 +++ log/8/check-generated 2025-07-18 07:35:24.803778731 +0000 @@ -1,6 +0,0 @@ -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] == Contents of files in the log/8/ dir after test 546 === Start of file check-expected data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind546 ./libtest/libtests lib533 ftp://127.0.0.1:44159/path/546 ftp://127.0.0.1:44159/path/546 > log/8/stdout546 2> log/8/stderr546 === End of file commands.log === Start of file ftp_server.log 07:35:24.039022 ====> Client connect 07:35:24.039128 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:24.039323 < "USER anonymous" 07:35:24.039350 > "331 We are happy you popped in![CR][LF]" 07:35:24.039455 < "PASS ftp@example.com" 07:35:24.039473 > "230 Welcome you silly person[CR][LF]" 07:35:24.039564 < "PWD" 07:35:24.039582 > "257 "/" is current directory[CR][LF]" 07:35:24.039681 < "EPSV" 07:35:24.039697 ====> Passive DATA channel requested by client 07:35:24.039705 DATA sockfilt for passive data channel starting... 07:35:24.041044 DATA sockfilt for passive data channel started (pid 104749) 07:35:24.041158 DATA sockfilt for passive data channel listens on port 40683 07:35:24.041190 > "229 Entering Passive Mode (|||40683|)[LF]" 07:35:24.041202 Client has been notified that DATA conn will be accepted on port 40683 07:35:24.041387 Client connects to port 40683 07:35:24.041409 ====> Client established passive DATA connection on port 40683 07:35:24.041466 < "TYPE I" 07:35:24.041489 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:24.041588 < "SIZE verifiedserver" 07:35:24.041613 > "213 17[CR][LF]" 07:35:24.041710 < "RETR verifiedserver" 07:35:24.041732 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:24.041782 =====> Closing passive DATA connection... 07:35:24.041792 Server disconnects passive DATA connection 07:35:24.041938 Server disconnected passive DATA connection 07:35:24.041957 DATA sockfilt for passive data channel quits (pid 104749) 07:35:24.042100 DATA sockfilt for passive data channel quit (pid 104749) 07:35:24.042129 =====> Closed passive DATA connection 07:35:24.042148 > "226 File transfer complete[CR][LF]" 07:35:24.083691 < "QUIT" 07:35:24.083739 > "221 bye bye baby[CR][LF]" 07:35:24.084674 MAIN sockfilt said DISC 07:35:24.084712 ====> Client disconnected 07:35:24.084769 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:24.884923 ====> Client connect 07:35:24.885117 Received DATA (on stdin) 07:35:24.885127 > 160 bytes data, server => client 07:35:24.885135 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:24.885142 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:24.885149 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:24.885209 < 16 bytes data, client => server 07:35:24.885218 'USER anonymous\r\n' 07:35:24.885334 Received DATA (on stdin) 07:35:24.885342 > 33 bytes data, server => client 07:35:24.885349 '331 We are happy you popped in!\r\n' 07:35:24.885382 < 22 bytes data, client => server 07:35:24.885389 'PASS ftp@example.com\r\n' 07:35:24.885453 Received DATA (on stdin) 07:35:24.885460 > 30 bytes data, server => client 07:35:24.885467 '230 Welcome you silly person\r\n' 07:35:24.885496 < 5 bytes data, client => server 07:35:24.885503 'PWD\r\n' 07:35:24.885562 Received DATA (on stdin) 07:35:24.885569 > 30 bytes data, server => client 07:35:24.885576 '257 "/" is current directory\r\n' 07:35:24.885610 < 6 bytes data, client => server 07:35:24.885617 'EPSV\r\n' 07:35:24.887193 Received DATA (on stdin) 07:35:24.887207 > 38 bytes data, server => client 07:35:24.887214 '229 Entering Passive Mode (|||40683|)\n' 07:35:24.887331 < 8 bytes data, client => server 07:35:24.887340 'TYPE I\r\n' 07:35:24.887471 Received DATA (on stdin) 07:35:24.887479 > 33 bytes data, server => client 07:35:24.887486 '200 I modify TYPE as you wanted\r\n' 07:35:24.887518 < 21 bytes data, client => server 07:35:24.887525 'SIZE verifiedserver\r\n' 07:35:24.887594 Received DATA (on stdin) 07:35:24.887602 > 8 bytes data, server => client 07:35:24.887612 '213 17\r\n' 07:35:24.887642 < 21 bytes data, client => server 07:35:24.887648 'RETR verifiedserver\r\n' 07:35:24.887832 Received DATA (on stdin) 07:35:24.887840 > 29 bytes data, server => client 07:35:24.887847 '150 Binary junk (17 bytes).\r\n' 07:35:24.888130 Received DATA (on stdin) 07:35:24.888139 > 28 bytes data, server => client 07:35:24.888146 '226 File transfer complete\r\n' 07:35:24.929487 < 6 bytes data, client => server 07:35:24.929507 'QUIT\r\n' 07:35:24.929725 Received DATA (on stdin) 07:35:24.929734 > 18 bytes data, server => client 07:35:24.929741 '221 bye bye baby\r\n' 07:35:24.929845 ====> Client disconnect 07:35:24.930752 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:24.886889 Running IPv4 version 07:35:24.886931 Listening on port 40683 07:35:24.886958 Wrote pid 104749 to log/8/server/ftp_sockdata.pid 07:35:24.886971 Received PING (on stdin) 07:35:24.887069 Received PORT (on stdin) 07:35:24.887311 ====> Client connect 07:35:24.887775 Received DATA (on stdin) 07:35:24.887783 > 17 bytes data, server => client 07:35:24.887790 'WE ROOLZ: 81995\r\n' 07:35:24.887808 Received DISC (on stdin) 07:35:24.887816 ====> Client forcibly disconnected 07:35:24.887943 Received QUIT (on stdin) 07:35:24.887951 quits 07:35:24.887991 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 550 the file doesn't exist COUNT RETR 1 REPLY SIZE 500 Can't check for file existence COUNT SIZE 1 Testnum 546 === End of file server.cmd === Start of file stderr546 URL: ftp://127.0.0.1:44159/path/546 === End of file stderr546 === Start of file valgrind546 ==104804== ==104804== Process terminating with default action of signal 4 (SIGILL) ==104804== Illegal opcode at address 0x51C2DB3 ==104804== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104804== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104804== by 0x51C2DB3: Curl_open (url.c:541) ==104804== by 0x513D46F: curl_easy_init (easy.c:372) ==104804== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104804== by 0x4003443: main (first.c:167) ==104804== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x533CFA5: __tsearch (tsearch.c:337) ==104804== by 0x533CFA5: tsearch (tsearch.c:290) ==104804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== ==104804== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x533CFA5: __tsearch (tsearch.c:337) ==104804== by 0x533CFA5: tsearch (tsearch.c:290) ==104804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== ==104804== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== ==104804== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== ==104804== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104804== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104804== by 0x51C2D03: Curl_open (url.c:520) ==104804== by 0x513D46F: curl_easy_init (easy.c:372) ==104804== by 0x4055B75: test_lib533.part.0.lto_priv.0 (lib533.c:42) ==104804== by 0x4003443: main (first.c:167) ==104804== ==104804== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x533CFA5: __tsearch (tsearch.c:337) ==104804== by 0x533CFA5: tsearch (tsearch.c:290) ==104804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== ==104804== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104804== by 0x525A142: setlocale (setlocale.c:337) ==104804== by 0x400336E: main (first.c:123) ==104804== === End of file valgrind546 test 0511...[FTP with FILETIME and NOBODY but missing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind511 ./libtest/libtests lib511 ftp://127.0.0.1:40585/511 > log/16/stdout511 2> log/16/stderr511 511: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 511 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind511 ./libtest/libtests lib511 ftp://127.0.0.1:40585/511 > log/16/stdout511 2> log/16/stderr511 === End of file commands.log === Start of file ftp_server.log 07:35:08.492011 ====> Client connect 07:35:08.492170 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.492425 < "USER anonymous" 07:35:08.492456 > "331 We are happy you popped in![CR][LF]" 07:35:08.492603 < "PASS ftp@example.com" 07:35:08.492627 > "230 Welcome you silly person[CR][LF]" 07:35:08.492757 < "PWD" 07:35:08.492784 > "257 "/" is current directory[CR][LF]" 07:35:08.493007 < "EPSV" 07:35:08.493031 ====> Passive DATA channel requested by client 07:35:08.493044 DATA sockfilt for passive data channel starting... 07:35:08.494708 DATA sockfilt for passive data channel started (pid 102362) 07:35:08.494803 DATA sockfilt for passive data channel listens on port 40569 07:35:08.494836 > "229 Entering Passive Mode (|||40569|)[LF]" 07:35:08.494851 Client has been notified that DATA conn will be accepted on port 40569 07:35:08.495074 Client connects to port 40569 07:35:08.495099 ====> Client established passive DATA connection on port 40569 07:35:08.495157 < "TYPE I" 07:35:08.495181 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.495318 < "SIZE verifiedserver" 07:35:08.495345 > "213 17[CR][LF]" 07:35:08.495473 < "RETR verifiedserver" 07:35:08.495501 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.495565 =====> Closing passive DATA connection... 07:35:08.495579 Server disconnects passive DATA connection 07:35:08.495773 Server disconnected passive DATA connection 07:35:08.495796 DATA sockfilt for passive data channel quits (pid 102362) 07:35:08.496001 DATA sockfilt for passive data channel quit (pid 102362) 07:35:08.496020 =====> Closed passive DATA connection 07:35:08.496045 > "226 File transfer complete[CR][LF]" 07:35:08.537236 < "QUIT" 07:35:08.537290 > "221 bye bye baby[CR][LF]" 07:35:08.537753 MAIN sockfilt said DISC 07:35:08.537809 ====> Client disconnected 07:35:08.537898 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.337881 ====> Client connect 07:35:08.338172 Received DATA (on stdin) 07:35:08.338186 > 160 bytes data, server => client 07:35:08.338198 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.338209 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.338219 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.338279 < 16 bytes data, client => server 07:35:08.338291 'USER anonymous\r\n' 07:35:08.338446 Received DATA (on stdin) 07:35:08.338457 > 33 bytes data, server => client 07:35:08.338468 '331 We are happy you popped in!\r\n' 07:35:08.338512 < 22 bytes data, client => server 07:35:08.338523 'PASS ftp@example.com\r\n' 07:35:08.338614 Received DATA (on stdin) 07:35:08.338625 > 30 bytes data, server => client 07:35:08.338635 '230 Welcome you silly person\r\n' 07:35:08.338675 < 5 bytes data, client => server 07:35:08.338685 'PWD\r\n' 07:35:08.338770 Received DATA (on stdin) 07:35:08.338781 > 30 bytes data, server => client 07:35:08.338791 '257 "/" is current directory\r\n' 07:35:08.338924 < 6 bytes data, client => server 07:35:08.338934 'EPSV\r\n' 07:35:08.340846 Received DATA (on stdin) 07:35:08.340858 > 38 bytes data, server => client 07:35:08.340869 '229 Entering Passive Mode (|||40569|)\n' 07:35:08.341013 < 8 bytes data, client => server 07:35:08.341024 'TYPE I\r\n' 07:35:08.341170 Received DATA (on stdin) 07:35:08.341180 > 33 bytes data, server => client 07:35:08.341191 '200 I modify TYPE as you wanted\r\n' 07:35:08.341233 < 21 bytes data, client => server 07:35:08.341244 'SIZE verifiedserver\r\n' 07:35:08.341332 Received DATA (on stdin) 07:35:08.341342 > 8 bytes data, server => client 07:35:08.341352 '213 17\r\n' 07:35:08.341392 < 21 bytes data, client => server 07:35:08.341402 'RETR verifiedserver\r\n' 07:35:08.341567 Received DATA (on stdin) 07:35:08.341578 > 29 bytes data, server => client 07:35:08.341588 '150 Binary junk (17 bytes).\r\n' 07:35:08.342033 Received DATA (on stdin) 07:35:08.342045 > 28 bytes data, server => client 07:35:08.342056 '226 File transfer complete\r\n' 07:35:08.382996 < 6 bytes data, client => server 07:35:08.383035 'QUIT\r\n' 07:35:08.383284 Received DATA (on stdin) 07:35:08.383296 > 18 bytes data, server => client 07:35:08.383306 '221 bye bye baby\r\n' 07:35:08.383667 ====> Client disconnect 07:35:08.383891 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.340538 Running IPv4 version 07:35:08.340590 Listening on port 40569 07:35:08.340626 Wrote pid 102362 to log/16/server/ftp_sockdata.pid 07:35:08.340643 Received PING (on stdin) 07:35:08.340720 Received PORT (on stdin) 07:35:08.340988 ====> Client connect 07:35:08.341610 Received DATA (on stdin) 07:35:08.341621 > 17 bytes data, server => client 07:35:08.341634 'WE ROOLZ: 79929\r\n' 07:35:08.341654 Received DISC (on stdin) 07:35:08.341665 ====> Client forcibly disconnected 07:35:08.341790 Received QUIT (on stdin) 07:35:08.341801 quits 07:35:08.341854 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY MDTM 550 bluah you f00l REPLY SIZE 550 bluah you f00l Testnum 511 === End of file server.cmd === Start of file stderr511 URL: ftp://127.0.0.1:40585/511 === End of file stderr511 === Start of file valgrind511 ==102460== ==102460== Process terminating with default action of signal 4 (SIGILL) ==102460== Illegal opcode at address 0x51C2DB3 ==102460== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102460== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102460== by 0x51C2DB3: Curl_open (url.c:541) ==102460== by 0x513D46F: curl_easy_init (easy.c:372) ==102460== by 0x400534A: test_lib511.lto_priv.0 (lib511.c:38) ==102460== by 0x4003443: main (first.c:167) ==102460== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x533CFA5: __tsearch (tsearch.c:337) ==102460== by 0x533CFA5: tsearch (tsearch.c:290) ==102460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== ==102460== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x533CFA5: __tsearch (tsearch.c:337) ==102460== by 0x533CFA5: tsearch (tsearch.c:290) ==102460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== ==102460== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== ==102460== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== ==102460== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102460== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102460== by 0x51C2D03: Curl_open (url.c:520) ==102460== by 0x513D46F: curl_easy_init (easy.c:372) ==102460== by 0x400534A: test_lib511.lto_priv.0 (lib511.c:38) ==102460== by 0x4003443: main (first.c:167) ==102460== ==102460== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x533CFA5: __tsearch (tsearch.c:337) ==102460== by 0x533CFA5: tsearch (tsearch.c:290) ==102460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102460== by 0x524F775: gconv_parseCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind512 ./libtest/libtests lib512 http://127.0.0.1:34999/512 > log/9/stdout512 2> log/9/stderr512 confdir (gconv_parseconfdir.h:170) ==102460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== ==102460== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102460== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102460== by 0x525A142: setlocale (setlocale.c:337) ==102460== by 0x400336E: main (first.c:123) ==102460== === End of file valgrind511 test 0512...[simple curl_easy_duplicate() test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind512 ./libtest/libtests lib512 http://127.0.0.1:34999/512 > log/9/stdout512 2> log/9/stderr512 512: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 512 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind512 ./libtest/libtests lib512 http://127.0.0.1:34999/512 > log/9/stdout512 2> log/9/stderr512 === End of file commands.log === Start of file http_server.log 07:35:08.586251 ====> Client connect 07:35:08.586284 accept_connection 3 returned 4 07:35:08.586302 accept_connection 3 returned 0 07:35:08.586567 Read 93 bytes 07:35:08.586582 Process 93 bytes request 07:35:08.586596 Got request: GET /verifiedserver HTTP/1.1 07:35:08.586607 Are-we-friendly question received 07:35:08.586633 Wrote request (93 bytes) input to log/9/server.input 07:35:08.586651 Identifying ourselves as friends 07:35:08.586735 Response sent (56 bytes) and written to log/9/server.response 07:35:08.586746 special request received, no persistency 07:35:08.586753 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 512 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr512 URL: http://127.0.0.1:34999/512 === End of file stderr512 === Start of file valgrind512 ==102566== ==102566== Process terminating with default action of signal 4 (SIGILL) ==102566== Illegal opcode at address 0x51C2DB3 ==102566== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102566== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102566== by 0x51C2DB3: Curl_open (url.c:541) ==102566== by 0x513D46F: curl_easy_init (easy.c:372) ==102566== by 0x4009635: test_lib512.lto_priv.0 (lib512.c:38) ==102566== by 0x4003443: main (first.c:167) ==102566== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x533CFA5: __tsearch (tsearch.c:337) ==102566== by 0x533CFA5: tsearch (tsearch.c:290) ==102566== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102566== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102566== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102566== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102566== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102566== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== ==102566== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x533CFA5: __tsearch (tsearch.c:337) ==102566== by 0x533CFA5: tsearch (tsearch.c:290) ==102566== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102566== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102566== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== ==102566== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102566== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102566== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102566== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102566== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102566== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== ==102566== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102566== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102566== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== ==102566== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102566== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102566== by 0x51C2D03: Curl_open (url.c:520) ==102566== by 0x513D46F: curl_easy_init (easy.c:372) ==102566== by 0x4009635: test_lib512.lto_priv.0 (lib512.c:38)CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind501 ./libtest/libtests lib501 http://127.0.0.1:47/501 > log/4/stdout501 2> log/4/stderr501 ==102566== by 0x4003443: main (first.c:167) ==102566== ==102566== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x533CFA5: __tsearch (tsearch.c:337) ==102566== by 0x533CFA5: tsearch (tsearch.c:290) ==102566== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102566== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102566== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102566== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102566== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102566== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== ==102566== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102566== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102566== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102566== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102566== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102566== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102566== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102566== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102566== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102566== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102566== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102566== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102566== by 0x525A142: setlocale (setlocale.c:337) ==102566== by 0x400336E: main (first.c:123) ==102566== === End of file valgrind512 * starts no server test 0501...[simple libcurl attempt operation without URL set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind501 ./libtest/libtests lib501 http://127.0.0.1:47/501 > log/4/stdout501 2> log/4/stderr501 libtests returned 132, when expecting 3 501: exit FAILED == Contents of files in the log/4/ dir after test 501 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind501 ./libtest/libtests lib501 http://127.0.0.1:47/501 > log/4/stdout501 2> log/4/stderr501 === End of file commands.log === Start of file server.cmd Testnum 501 === End of file server.cmd === Start of file stderr501 URL: http://127.0.0.1:47/501 === End of file stderr501 === Start of file valgrind501 ==101926== ==101926== Process terminating with default action of signal 4 (SIGILL) ==101926== Illegal opcode at address 0x51C2DB3 ==101926== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==101926== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==101926== by 0x51C2DB3: Curl_open (url.c:541) ==101926== by 0x513D46F: curl_easy_init (easy.c:372) ==101926== by 0x40050C1: test_lib501.lto_priv.0 (lib501.c:40) ==101926== by 0x4003443: main (first.c:167) ==101926== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x533CFA5: __tsearch (tsearch.c:337) ==101926== by 0x533CFA5: tsearch (tsearch.c:290) ==101926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101926== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101926== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== ==101926== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x533CFA5: __tsearch (tsearch.c:337) ==101926== by 0x533CFA5: tsearch (tsearch.c:290) ==101926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101926== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==101926== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== ==101926== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101926== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101926== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== ==101926== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101926== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==101926== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== ==101926== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==101926== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==101926== by 0x51C2D03: Curl_open (url.c:520) ==101926== by 0x513D46F: curl_easy_init (easy.c:372) ==101926== by 0x40050C1: test_lib501.lto_priv.0 (lib501.c:40) ==101926== by 0x4003443: main (first.c:167) ==101926== ==101926== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x533CFA5: __tsearch (tsearch.c:337) ==101926== by 0x533CFA5: tsearch (tsearch.c:290) ==101926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101926== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101926== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101926== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind549 ./libtest/libtests lib549 ftp://www.example.com/moo/549 http://127.0.0.1:33627 > log/13/stdout549 2> log/13/stderr549 by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== ==101926== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==101926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101926== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101926== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101926== by 0x525A142: setlocale (setlocale.c:337) ==101926== by 0x400336E: main (first.c:123) ==101926== === End of file valgrind501 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind547 ./libtest/libtests lib547 http://test.remote.example.com/path/547 http://127.0.0.1:39077 testuser:testpass > log/7/stdout547 2> log/7/stderr547 test 0549...[FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind549 ./libtest/libtests lib549 ftp://www.example.com/moo/549 http://127.0.0.1:33627 > log/13/stdout549 2> log/13/stderr549 549: stdout FAILED: --- log/13/check-expected 2025-07-18 07:35:25.143778740 +0000 +++ log/13/check-generated 2025-07-18 07:35:25.143778740 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/13/ dir after test 549 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind549 ./libtest/libtests lib549 ftp://www.example.com/moo/549 http://127.0.0.1:33627 > log/13/stdout549 2> log/13/stderr549 === End of file commands.log === Start of file http_server.log 07:35:24.279751 ====> Client connect 07:35:24.279771 accept_connection 3 returned 4 07:35:24.279782 accept_connection 3 returned 0 07:35:24.279792 Read 93 bytes 07:35:24.279799 Process 93 bytes request 07:35:24.279807 Got request: GET /verifiedserver HTTP/1.1 07:35:24.279813 Are-we-friendly question received 07:35:24.279829 Wrote request (93 bytes) input to log/13/server.input 07:35:24.279840 Identifying ourselves as friends 07:35:24.279875 Response sent (56 bytes) and written to log/13/server.response 07:35:24.279882 special request received, no persistency 07:35:24.279888 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 549 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr549 URL: ftp://www.example.com/moo/549 === End of file stderr549 === Start of file valgrind549 ==104917== ==104917== Process terminating with default action of signal 4 (SIGILL) ==104917== Illegal opcode at address 0x51C2DB3 ==104917== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104917== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104917== by 0x51C2DB3: Curl_open (url.c:541) ==104917== by 0x513D46F: curl_easy_init (easy.c:372) ==104917== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==104917== by 0x4003443: main (first.c:167) ==104917== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x533CFA5: __tsearch (tsearch.c:337) ==104917== by 0x533CFA5: tsearch (tsearch.c:290) ==104917== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104917== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104917== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104917== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104917== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104917== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== ==104917== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x533CFA5: __tsearch (tsearch.c:337) ==104917== by 0x533CFA5: tsearch (tsearch.c:290) ==104917== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104917== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104917== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== ==104917== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104917== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104917== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104917== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104917== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104917== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== ==104917== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104917== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104917== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== ==104917== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104917== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104917== by 0x51C2D03: Curl_open (url.c:520) ==104917== by 0x513D46F: curl_easy_init (easy.c:372) ==104917== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==104917== by 0x4003443: main (first.c:167) ==104917== ==104917== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x533CFA5: __tsearch (tsearch.c:337) ==104917== by 0x533CFA5: tsearch (tsearch.c:290) ==104917== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104917== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104917== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104917== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104917== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104917== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== ==104917== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104917== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104917== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104917== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104917== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104917== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104917== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104917== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104917== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104917== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104917== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104917== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104917== by 0x525A142: setlocale (setlocale.c:337) ==104917== by 0x400336E: main (first.c:123) ==104917== === End of file valgrind549 test 0547...[HTTP proxy auth NTLM with POST data from read callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind547 ./libtest/libtests lib547 http://test.remote.example.com/path/547 http://127.0.0.1:39077 testuser:testpass > log/7/stdout547 2> log/7/stderr547 547: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 547 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind547 ./libtest/libtests lib547 http://test.remote.example.com/path/547 http://127.0.0.1:39077 testuser:testpass > log/7/stdout547 2> log/7/stderr547 === End of file commands.log === Start of file http_server.log 07:35:24.272252 ====> Client connect 07:35:24.272277 accept_connection 3 returned 4 07:35:24.272288 accept_connection 3 returned 0 07:35:24.272298 Read 93 bytes 07:35:24.272305 Process 93 bytes request 07:35:24.272315 Got request: GET /verifiedserver HTTP/1.1 07:35:24.272322 Are-we-friendly question received 07:35:24.272340 Wrote request (93 bytes) input to log/7/server.input 07:35:24.272351 Identifying ourselves as friends 07:35:24.272392 Response sent (56 bytes) and written to log/7/server.response 07:35:24.272399 special request received, no persistency 07:35:24.272405 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 547 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr547 URL: http://test.remote.example.com/path/547 === End of file stderr547 === Start of file valgrind547 ==104907== ==104907== Process terminating with default action of signal 4 (SIGILL) ==104907== Illegal opcode at address 0x51C2DB3 ==104907== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104907== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104907== by 0x51C2DB3: Curl_open (url.c:541) ==104907== by 0x513D46F: curl_easy_init (easy.c:372) ==104907== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==104907== by 0x4003443: main (first.c:167) ==104907== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x533CFA5: __tsearch (tsearch.c:337) ==104907== by 0x533CFA5: tsearch (tsearch.c:290) ==104907== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104907== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104907== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104907== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104907== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104907== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== ==104907== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x533CFA5: __tsearch (tsearch.c:337) ==104907== by 0x533CFA5: tsearch (tsearch.c:290) ==104907== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104907== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104907== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== ==104907== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104907== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104907== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104907== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104907== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104907== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== ==104907== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104907== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104907== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== ==104907== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==104907== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104907== by 0x51C2D03: Curl_open (url.c:520) ==104907== by 0x513D46F: curl_easy_init (easy.c:372) ==104907== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==104907== by 0x4003443: main (first.c:167) ==104907== ==104907== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x533CFA5: __tsearch (tsearch.c:337) ==104907== by 0x533CFA5: tsearch (tsearch.c:290) ==104907== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104907== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104907== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104907== by 0x524F3F0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind548 ./libtest/libtests lib547 http://test.remote.example.com/path/548 http://127.0.0.1:38941 testuser:testpass > log/1/stdout548 2> log/1/stderr548 : read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104907== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104907== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== ==104907== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104907== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104907== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104907== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104907== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104907== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104907== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104907== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104907== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104907== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104907== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104907== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104907== by 0x525A142: setlocale (setlocale.c:337) ==104907== by 0x400336E: main (first.c:123) ==104907== === End of file valgrind547 test 0548...[HTTP proxy auth NTLM with POST data from CURLOPT_POSTFIELDS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind548 ./libtest/libtests lib547 http://test.remote.example.com/path/548 http://127.0.0.1:38941 testuser:testpass > log/1/stdout548 2> log/1/stderr548 548: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 548 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind548 ./libtest/libtests lib547 http://test.remote.example.com/path/548 http://127.0.0.1:38941 testuser:testpass > log/1/stdout548 2> log/1/stderr548 === End of file commands.log === Start of file http_server.log 07:35:24.278082 ====> Client connect 07:35:24.278103 accept_connection 3 returned 4 07:35:24.278115 accept_connection 3 returned 0 07:35:24.278125 Read 93 bytes 07:35:24.278132 Process 93 bytes request 07:35:24.278141 Got request: GET /verifiedserver HTTP/1.1 07:35:24.278148 Are-we-friendly question received 07:35:24.278171 Wrote request (93 bytes) input to log/1/server.input 07:35:24.278182 Identifying ourselves as friends 07:35:24.278218 Response sent (56 bytes) and written to log/1/server.response 07:35:24.278225 special request received, no persistency 07:35:24.278231 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 548 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr548 URL: http://test.remote.example.com/path/548 === End of file stderr548 === Start of file valgrind548 ==104922== ==104922== Process terminating with default action of signal 4 (SIGILL) ==104922== Illegal opcode at address 0x51C2DB3 ==104922== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==104922== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==104922== by 0x51C2DB3: Curl_open (url.c:541) ==104922== by 0x513D46F: curl_easy_init (easy.c:372) ==104922== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==104922== by 0x4003443: main (first.c:167) ==104922== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x533CFA5: __tsearch (tsearch.c:337) ==104922== by 0x533CFA5: tsearch (tsearch.c:290) ==104922== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104922== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104922== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104922== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104922== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104922== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== ==104922== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x533CFA5: __tsearch (tsearch.c:337) ==104922== by 0x533CFA5: tsearch (tsearch.c:290) ==104922== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104922== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104922== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== ==104922== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104922== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104922== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104922== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104922== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==104922== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== ==104922== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104922== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==104922== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== ==104922== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 6CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind550 ./libtest/libtests lib549 ftp://www.example.com/moo/550 http://127.0.0.1:37963 ascii > log/14/stdout550 2> log/14/stderr550 55 ==104922== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==104922== by 0x51C2D03: Curl_open (url.c:520) ==104922== by 0x513D46F: curl_easy_init (easy.c:372) ==104922== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==104922== by 0x4003443: main (first.c:167) ==104922== ==104922== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x533CFA5: __tsearch (tsearch.c:337) ==104922== by 0x533CFA5: tsearch (tsearch.c:290) ==104922== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==104922== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104922== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104922== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104922== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104922== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== ==104922== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==104922== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==104922== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==104922== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==104922== by 0x524F3F0: add_alias (gconv_conf.c:178) ==104922== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==104922== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==104922== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==104922== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==104922== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==104922== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==104922== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==104922== by 0x525A142: setlocale (setlocale.c:337) ==104922== by 0x400336E: main (first.c:123) ==104922== === End of file valgrind548 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind523 ./libtest/libtests lib523 http://www.example.com:999/523 http://127.0.0.1:42345 > log/3/stdout523 2> log/3/stderr523 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind551 ./libtest/libtests lib547 http://test.remote.example.com/path/551 http://127.0.0.1:45825 s1lly:pers0n > log/18/stdout551 2> log/18/stderr551 test 0550...[FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE and ASCII transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind550 ./libtest/libtests lib549 ftp://www.example.com/moo/550 http://127.0.0.1:37963 ascii > log/14/stdout550 2> log/14/stderr550 550: stdout FAILED: --- log/14/check-expected 2025-07-18 07:35:25.337112076 +0000 +++ log/14/check-generated 2025-07-18 07:35:25.337112076 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/14/ dir after test 550 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind550 ./libtest/libtests lib549 ftp://www.example.com/moo/550 http://127.0.0.1:37963 ascii > log/14/stdout550 2> log/14/stderr550 === End of file commands.log === Start of file http_server.log 07:35:24.454050 ====> Client connect 07:35:24.454075 accept_connection 3 returned 4 07:35:24.454087 accept_connection 3 returned 0 07:35:24.454097 Read 93 bytes 07:35:24.454104 Process 93 bytes request 07:35:24.454114 Got request: GET /verifiedserver HTTP/1.1 07:35:24.454121 Are-we-friendly question received 07:35:24.454146 Wrote request (93 bytes) input to log/14/server.input 07:35:24.454159 Identifying ourselves as friends 07:35:24.454198 Response sent (56 bytes) and written to log/14/server.response 07:35:24.454206 special request received, no persistency 07:35:24.454212 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 550 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr550 URL: ftp://www.example.com/moo/550 === End of file stderr550 === Start of file valgrind550 ==105087== ==105087== Process terminating with default action of signal 4 (SIGILL) ==105087== Illegal opcode at address 0x51C2DB3 ==105087== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105087== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105087== by 0x51C2DB3: Curl_open (url.c:541) ==105087== by 0x513D46F: curl_easy_init (easy.c:372) ==105087== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==105087== by 0x4003443: main (first.c:167) ==105087== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x533CFA5: __tsearch (tsearch.c:337) ==105087== by 0x533CFA5: tsearch (tsearch.c:290) ==105087== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105087== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105087== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105087== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105087== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105087== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== ==105087== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x533CFA5: __tsearch (tsearch.c:337) ==105087== by 0x533CFA5: tsearch (tsearch.c:290) ==105087== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105087== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105087== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== ==105087== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105087== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105087== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105087== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105087== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105087== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== ==105087== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105087== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105087== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== ==105087== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105087== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105087== by 0x51C2D03: Curl_open (url.c:520) ==105087== by 0x513D46F: curl_easy_init (easy.c:372) ==105087== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==105087== by 0x4003443: main (first.c:167) ==105087== ==105087== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x533CFA5: __tsearch (tsearch.c:337) ==105087== by 0x533CFA5: tsearch (tsearch.c:290) ==105087== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105087== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105087== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105087== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105087== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105087== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== ==105087== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105087== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105087== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105087== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105087== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105087== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105087== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105087== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105087== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105087== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105087== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105087== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105087== by 0x525A142: setlocale (setlocale.c:337) ==105087== by 0x400336E: main (first.c:123) ==105087== === End of file valgrind550 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind552 ./libtest/libtests lib552 http://test.remote.example.com/path/552 http://s1lly:pers0n@127.0.0.1:46761/ > log/22/stdout552 2> log/22/stderr552 test 0523...[HTTP GET with proxy and CURLOPT_PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind523 ./libtest/libtests lib523 http://www.example.com:999/523 http://127.0.0.1:42345 > log/3/stdout523 2> log/3/stderr523 523: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:25.343778744 +0000 +++ log/3/check-generated 2025-07-18 07:35:25.343778744 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/3/ dir after test 523 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind523 ./libtest/libtests lib523 http://www.example.com:999/523 http://127.0.0.1:42345 > log/3/stdout523 2> log/3/stderr523 === End of file commands.log === Start of file http_server.log 07:35:08.663731 ====> Client connect 07:35:08.663879 accept_connection 3 returned 4 07:35:08.663899 accept_connection 3 returned 0 07:35:08.663913 Read 93 bytes 07:35:08.663922 Process 93 bytes request 07:35:08.663934 Got request: GET /verifiedserver HTTP/1.1 07:35:08.663943 Are-we-friendly question received 07:35:08.663970 Wrote request (93 bytes) input to log/3/server.input 07:35:08.663988 Identifying ourselves as friends 07:35:08.664046 Response sent (56 bytes) and written to log/3/server.response 07:35:08.664058 special request received, no persistency 07:35:08.664066 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 523 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr523 URL: http://www.example.com:999/523 === End of file stderr523 === Start of file valgrind523 ==103047== ==103047== Process terminating with default action of signal 4 (SIGILL) ==103047== Illegal opcode at address 0x51C2DB3 ==103047== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103047== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103047== by 0x51C2DB3: Curl_open (url.c:541) ==103047== by 0x513D46F: curl_easy_init (easy.c:372) ==103047== by 0x4005BAA: test_lib523.lto_priv.0 (lib523.c:38) ==103047== by 0x4003443: main (first.c:167) ==103047== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x533CFA5: __tsearch (tsearch.c:337) ==103047== by 0x533CFA5: tsearch (tsearch.c:290) ==103047== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103047== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103047== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103047== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== ==103047== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x533CFA5: __tsearch (tsearch.c:337) ==103047== by 0x533CFA5: tsearch (tsearch.c:290) ==103047== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103047== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== ==103047== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103047== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103047== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103047== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103047== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== ==103047== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103047== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103047== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== ==103047== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103047== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103047== by 0x51C2D03: Curl_open (url.c:520) ==103047== by 0x513D46F: curl_easy_init (easy.c:372) ==103047== by 0x4005BAA: test_lib523.lto_priv.0 (lib523.c:38) ==103047== by 0x4003443: main (first.c:167) ==103047== ==103047== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x533CFA5: __tsearch (tsearch.c:337) ==103047== by 0x533CFA5: tsearch (tsearch.c:290) ==103047== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103047== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103047== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103047== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103047== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== ==103047== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103047== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103047== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103047== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103047== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103047== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103047== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103047== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103047== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103047== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103047== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103047== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103047== by 0x525A142: setlocale (setlocale.c:337) ==103047== by 0x400336E: main (first.c:123) ==103047== === End of file valgrind523 test 0551...[HTTP proxy auth Digest with POST data from read callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind551 ./libtest/libtests lib547 http://test.remote.example.com/path/551 http://127.0.0.1:45825 s1lly:pers0n > log/18/stdout551 2> log/18/stderr551 551: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 551 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind551 ./libtest/libtests lib547 http://test.remote.example.com/path/551 http://127.0.0.1:45825 s1lly:pers0n > log/18/stdout551 2> log/18/stderr551 === End of file commands.log === Start of file http_server.log 07:35:24.468903 ====> Client connect 07:35:24.468933 accept_connection 3 returned 4 07:35:24.468948 accept_connection 3 returned 0 07:35:24.468961 Read 93 bytes 07:35:24.468972 Process 93 bytes request 07:35:24.468982 Got request: GET /verifiedserver HTTP/1.1 07:35:24.468990 Are-we-friendly question received 07:35:24.469012 Wrote request (93 bytes) input to log/18/server.input 07:35:24.469026 Identifying ourselves as friends 07:35:24.469136 Response sent (56 bytes) and written to log/18/server.response 07:35:24.469147 special request received, no persistency 07:35:24.469157 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 551 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr551 URL: http://test.remote.example.com/path/551 === End of file stderr551 === Start of file valgrind551 ==105129== ==105129== Process terminating with default action of signal 4 (SIGILL) ==105129== Illegal opcode at address 0x51C2DB3 ==105129== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105129== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105129== by 0x51C2DB3: Curl_open (url.c:541) ==105129== by 0x513D46F: curl_easy_init (easy.c:372) ==105129== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==105129== by 0x4003443: main (first.c:167) ==105129== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x533CFA5: __tsearch (tsearch.c:337) ==105129== by 0x533CFA5: tsearch (tsearch.c:290) ==105129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105129== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105129== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== ==105129== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x533CFA5: __tsearch (tsearch.c:337) ==105129== by 0x533CFA5: tsearch (tsearch.c:290) ==105129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105129== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105129== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== ==105129== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105129== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105129== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== ==105129== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105129== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105129== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== ==105129== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105129== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105129== by 0x51C2D03: Curl_open (url.c:520) ==105129== by 0x513D46F: curl_easy_init (easy.c:372) ==105129== by 0x4005F1E: test_lib547.lto_priv.0 (lib547.c:77) ==105129== by 0x4003443: main (first.c:167) ==105129== ==105129== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x533CFA5: __tsearch (tsearch.c:337) ==105129== by 0x533CFA5: tsearch (tsearch.c:290) ==105129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105129== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105129== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== ==105129== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105129== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105129== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105129== by 0x525A142: setlocale (setlocale.c:337) ==105129== by 0x400336E: main (first.c:123) ==105129== === End of file valgrind551 test 0552...[HTTP proxy auth Digest with 70K POST data from read callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind552 ./libtest/libtests lib552 http://test.remote.example.com/path/552 http://s1lly:pers0n@127.0.0.1:46761/ > log/22/stdout552 2> log/22/stderr552 552: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 552 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind552 ./libtest/libtests lib552 http://test.remote.example.com/path/552 http://s1lly:pers0n@127.0.0.1:46761/ > log/22/stdout552 2> log/22/stderr552 === End of file commands.log === Start of file http_server.log 07:35:24.489759 ====> Client connect 07:35:24.489783 accept_connection 3 returned 4 07:35:24.489795 accept_connection 3 returned 0 07:35:24.489805 Read 93 bytes 07:35:24.489813 Process 93 bytes request 07:35:24.489823 Got request: GET /verifiedserver HTTP/1.1 07:35:24.489830 Are-we-friendly question received 07:35:24.489848 Wrote request (93 bytes) input to log/22/server.input 07:35:24.489859 Identifying ourselves as friends 07:35:24.489900 Response sent (56 bytes) and written to log/22/server.response 07:35:24.489907 special request received, no persistency 07:35:24.489913 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 552 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr552 URL: http://test.remote.example.com/path/552 === End of file stderr552 === Start of file valgrind552 ==105193== ==105193== Process terminating with default action of signal 4 (SIGILL) ==105193== Illegal opcode at address 0x51C2DB3 ==105193== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105193== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105193== by 0x51C2DB3: Curl_open (url.c:541) ==105193== by 0x513D46F: curl_easy_init (easy.c:372) ==105193== by 0x40062DD: test_lib552.lto_priv.0 (lib552.c:171) ==105193== by 0x4003443: main (first.c:167) ==105193== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x533CFA5: __tsearch (tsearch.c:337) ==105193== by 0x533CFA5: tsearch (tsearch.c:290) ==105193== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105193== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105193== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105193== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105193== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105193== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== ==105193== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x533CFA5: __tsearch (tsearch.c:337) ==105193== by 0x533CFA5: tsearch (tsearch.c:290) ==105193== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105193== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105193== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== ==105193== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105193== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105193== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105193== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105193== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105193== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== ==105193== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105193== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105193== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== ==105193== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105193== aCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind553 ./libtest/libtests lib553 http://127.0.0.1:34851/path/553 > log/10/stdout553 2> log/10/stderr553 t 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105193== by 0x51C2D03: Curl_open (url.c:520) ==105193== by 0x513D46F: curl_easy_init (easy.c:372) ==105193== by 0x40062DD: test_lib552.lto_priv.0 (lib552.c:171) ==105193== by 0x4003443: main (first.c:167) ==105193== ==105193== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x533CFA5: __tsearch (tsearch.c:337) ==105193== by 0x533CFA5: tsearch (tsearch.c:290) ==105193== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105193== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105193== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105193== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105193== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105193== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== ==105193== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105193== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105193== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105193== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105193== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105193== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105193== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105193== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105193== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105193== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105193== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105193== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105193== by 0x525A142: setlocale (setlocale.c:337) ==105193== by 0x400336E: main (first.c:123) ==105193== === End of file valgrind552 test 0553...[HTTP post with huge request headers and post data from callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind553 ./libtest/libtests lib553 http://127.0.0.1:34851/path/553 > log/10/stdout553 2> log/10/stderr553 553: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 553 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind553 ./libtest/libtests lib553 http://127.0.0.1:34851/path/553 > log/10/stdout553 2> log/10/stderr553 === End of file commands.log === Start of file http_server.log 07:35:24.515761 ====> Client connect 07:35:24.515802 accept_connection 3 returned 4 07:35:24.515815 accept_connection 3 returned 0 07:35:24.515826 Read 93 bytes 07:35:24.515833 Process 93 bytes request 07:35:24.515843 Got request: GET /verifiedserver HTTP/1.1 07:35:24.515849 Are-we-friendly question received 07:35:24.515868 Wrote request (93 bytes) input to log/10/server.input 07:35:24.515880 Identifying ourselves as friends 07:35:24.515921 Response sent (56 bytes) and written to log/10/server.response 07:35:24.515928 special request received, no persistency 07:35:24.515934 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 553 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr553 URL: http://127.0.0.1:34851/path/553 === End of file stderr553 === Start of file valgrind553 ==105260== ==105260== Process terminating with default action of signal 4 (SIGILL) ==105260== Illegal opcode at address 0x51C2DB3 ==105260== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105260== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105260== by 0x51C2DB3: Curl_open (url.c:541) ==105260== by 0x513D46F: curl_easy_init (easy.c:372) ==105260== by 0x400F831: test_lib553.lto_priv.0 (lib553.c:72) ==105260== by 0x4003443: main (first.c:167) ==105260== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by 0x533CFA5: __tsearch (tsearch.c:337) ==105260== by 0x533CFA5: tsearch (tsearch.c:290) ==105260== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105260== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105260== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105260== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105260== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105260== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== ==105260== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by 0x533CFA5: __tsearch (tsearch.c:337) ==105260== by 0x533CFA5: tsearch (tsearch.c:290) ==105260== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105260== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105260== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== ==105260== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105260== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105260== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105260== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105260== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105260== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== ==105260== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind557 ./libtest/libtests lib557 nothing > log/4/stdout557 2> log/4/stderr557 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105260== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105260== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== ==105260== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105260== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105260== by 0x51C2D03: Curl_open (url.c:520) ==105260== by 0x513D46F: curl_easy_init (easy.c:372) ==105260== by 0x400F831: test_lib553.lto_priv.0 (lib553.c:72) ==105260== by 0x4003443: main (first.c:167) ==105260== ==105260== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by 0x533CFA5: __tsearch (tsearch.c:337) ==105260== by 0x533CFA5: tsearch (tsearch.c:290) ==105260== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105260== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105260== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105260== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105260== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105260== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== ==105260== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105260== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105260== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105260== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105260== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105260== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105260== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105260== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105260== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105260== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105260== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105260== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105260== by 0x525A142: setlocale (setlocale.c:337) ==105260== by 0x400336E: main (first.c:123) ==105260== === End of file valgrind553 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind555 ./libtest/libtests lib555 http://test.remote.example.com/path/555 http://127.0.0.1:46739 testuser:testpass > log/16/stdout555 2> log/16/stderr555 * starts no server test 0557...[curl_mprintf() testing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind557 ./libtest/libtests lib557 nothing > log/4/stdout557 2> log/4/stderr557 557: stdout FAILED: --- log/4/check-expected 2025-07-18 07:35:25.490445415 +0000 +++ log/4/check-generated 2025-07-18 07:35:25.490445415 +0000 @@ -1,10 +0,0 @@ -All curl_mprintf() unsigned short tests OK![LF] -All curl_mprintf() signed short tests OK![LF] -All curl_mprintf() unsigned int tests OK![LF] -All curl_mprintf() signed int tests OK![LF] -All curl_mprintf() unsigned long tests OK![LF] -All curl_mprintf() signed long tests OK![LF] -All curl_mprintf() curl_off_t tests OK![LF] -All curl_mprintf() strings tests OK![LF] -All float strings tests OK![LF] -All curl_mprintf() octal & hexadecimal tests OK![LF] == Contents of files in the log/4/ dir after test 557 === Start of file check-expected All curl_mprintf() unsigned short tests OK![LF] All curl_mprintf() signed short tests OK![LF] All curl_mprintf() unsigned int tests OK![LF] All curl_mprintf() signed int tests OK![LF] All curl_mprintf() unsigned long tests OK![LF] All curl_mprintf() signed long tests OK![LF] All curl_mprintf() curl_off_t tests OK![LF] All curl_mprintf() strings tests OK![LF] All float strings tests OK![LF] All curl_mprintf() octal & hexadecimal tests OK![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind557 ./libtest/libtests lib557 nothing > log/4/stdout557 2> log/4/stderr557 === End of file commands.log === Start of file server.cmd Testnum 557 === End of file server.cmd === Start of file stderr557 URL: nothing === End of file stderr557 === Start of file valgrind557 ==105473== ==105473== Process terminating with default action of signal 4 (SIGILL) ==105473== Illegal opcode at address 0x400432A ==105473== at 0x400432A: UnknownInlinedFun (lib557.c:1113) ==105473== by 0x400432A: test_weird_arguments (lib557.c:1241) ==105473== by 0x4010301: test_lib557.lto_priv.0 (lib557.c:1556) ==105473== by 0x4003443: main (first.c:167) ==105473== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x533CFA5: __tsearch (tsearch.c:337) ==105473== by 0x533CFA5: tsearch (tsearch.c:290) ==105473== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105473== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105473== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105473== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105473== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105473== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== ==105473== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x533CFA5: __tsearch (tsearch.c:337) ==105473== by 0x533CFA5: tsearch (tsearch.c:290) ==105473== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105473== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105473== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== ==105473== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105473== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105473== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105473== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105473== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105473== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== ==105473== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105473== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105473== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== ==105473== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x533CFA5: __tsearch (tsearch.c:337) ==105473== by 0x533CFA5: tsearch (tsearch.c:290) ==105473== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105473== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105473== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105473== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105473== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105473== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== ==105473== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==105473== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105473== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105473== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105473== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105473== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105473== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105473== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105473== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105473== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105473== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105473== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105473== by 0x525A142: setlocale (setlocale.c:337) ==105473== by 0x400336E: main (first.c:123) ==105473== === End of file valgrind557 test 0555...[HTTP proxy auth NTLM with POST data from read callback multi-if] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind555 ./libtest/libtests lib555 http://test.remote.example.com/path/555 http://127.0.0.1:46739 testuser:testpass > log/16/stdout555 2> log/16/stderr555 555: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 555 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind555 ./libtest/libtests lib555 http://test.remote.example.com/path/555 http://127.0.0.1:46739 testuser:testpass > log/16/stdout555 2> log/16/stderr555 === End of file commands.log === Start of file http_server.log 07:35:24.676685 ====> Client connect 07:35:24.676708 accept_connection 3 returned 4 07:35:24.676720 accept_connection 3 returned 0 07:35:24.676730 Read 93 bytes 07:35:24.676737 Process 93 bytes request 07:35:24.676745 Got request: GET /verifiedserver HTTP/1.1 07:35:24.676752 Are-we-friendly question received 07:35:24.676769 Wrote request (93 bytes) input to log/16/server.input 07:35:24.676781 Identifying ourselves as friends 07:35:24.676818 Response sent (56 bytes) and written to log/16/server.response 07:35:24.676826 special request received, no persistency 07:35:24.676833 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 555 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr555 URL: http://test.remote.example.com/path/555 === End of file stderr555 === Start of file valgrind555 ==105357== ==105357== Process terminating with default action of signal 4 (SIGILL) ==105357== Illegal opcode at address 0x51C2DB3 ==105357== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105357== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105357== by 0x51C2DB3: Curl_open (url.c:541) ==105357== by 0x513D46F: curl_easy_init (easy.c:372) ==105357== by 0x401377F: test_lib555.lto_priv.0 (lib555.c:82) ==105357== by 0x4003443: main (first.c:167) ==105357== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x533CFA5: __tsearch (tsearch.c:337) ==105357== by 0x533CFA5: tsearch (tsearch.c:290) ==105357== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105357== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105357== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105357== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105357== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105357== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== ==105357== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x533CFA5: __tsearch (tsearch.c:337) ==105357== by 0x533CFA5: tsearch (tsearch.c:290) ==105357== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105357== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105357== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== ==105357== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105357== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105357== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105357== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105357== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105357== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== ==105357== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105357== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105357== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== ==105357== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105357== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105357== by 0x51C2D03: Curl_open (url.c:520) ==105357== by 0x513D46F: curl_easy_init (easy.c:372) ==105357== by 0x401377F: test_lib555.lto_priv.0 (lib555.c:82) ==105357== by 0x4003443: main (first.c:167) ==105357== ==105357== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x533CFA5: __tsearch (tsearch.c:337) ==105357== by 0x533CFA5: tsearch (tsearch.c:290) ==105357== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105357== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105357== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105357== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105357== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105357== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== ==105357== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105357== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105357== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105357== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105357== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105357== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105357== by 0xCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind554 ./libtest/libtests lib554 http://127.0.0.1:45261/554 > log/8/stdout554 2> log/8/stderr554 524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105357== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105357== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105357== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105357== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105357== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105357== by 0x525A142: setlocale (setlocale.c:337) ==105357== by 0x400336E: main (first.c:123) ==105357== === End of file valgrind555 test 0554...[HTTP multi-part formpost using read callback for the file part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind554 ./libtest/libtests lib554 http://127.0.0.1:45261/554 > log/8/stdout554 2> log/8/stderr554 554: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 554 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind554 ./libtest/libtests lib554 http://127.0.0.1:45261/554 > log/8/stdout554 2> log/8/stderr554 === End of file commands.log === Start of file http_server.log 07:35:24.676371 ====> Client connect 07:35:24.676429 accept_connection 3 returned 4 07:35:24.676447 accept_connection 3 returned 0 07:35:24.676458 Read 93 bytes 07:35:24.676466 Process 93 bytes request 07:35:24.676475 Got request: GET /verifiedserver HTTP/1.1 07:35:24.676482 Are-we-friendly question received 07:35:24.676508 Wrote request (93 bytes) input to log/8/server.input 07:35:24.676520 Identifying ourselves as friends 07:35:24.676565 Response sent (56 bytes) and written to log/8/server.response 07:35:24.676573 special request received, no persistency 07:35:24.676579 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 554 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file stderr554 URL: http://127.0.0.1:45261/554 === End of file stderr554 === Start of file valgrind554 ==105356== ==105356== Process terminating with default action of signal 4 (SIGILL) ==105356== Illegal opcode at address 0x51C2DB3 ==105356== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105356== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105356== by 0x51C2DB3: Curl_open (url.c:541) ==105356== by 0x513D46F: curl_easy_init (easy.c:372) ==105356== by 0x400FC08: t554_test_once (lib554.c:147) ==105356== by 0x400FE8B: test_lib554.lto_priv.0 (lib554.c:204) ==105356== by 0x4003443: main (first.c:167) ==105356== 408 bytes in 17 blocks are possibly lost in loss record 620 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x533CFA5: __tsearch (tsearch.c:337) ==105356== by 0x533CFA5: tsearch (tsearch.c:290) ==105356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== ==105356== 552 bytes in 23 blocks are possibly lost in loss record 624 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x533CFA5: __tsearch (tsearch.c:337) ==105356== by 0x533CFA5: tsearch (tsearch.c:290) ==105356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== ==105356== 681 bytes in 17 blocks are possibly lost in loss record 630 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== ==105356== 1,018 bytes in 23 blocks are possibly lost in loss record 645 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== ==105356== 5,480 bytes in 1 blocks are definitely lost in loss record 664 of 671 ==105356== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105356== by 0x51C2D03: Curl_open (url.c:520) ==105356== by 0x513D46F: curl_easy_init (easy.c:372) ==105356== by 0x400FC08: t554_test_once (lib554.c:147) ==105356== by 0x400FE8B: test_lib554.lto_priv.0 (lib554.c:204) ==105356== by 0x4003443: main (first.c:167) ==105356== ==105356== 11,664 bytes in 486 blocks are possibly lost in loss record 667 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x533CFA5: __tsearch (tsearch.c:337) ==105356== by 0x533CFA5: tsearch (tsearch.c:290) ==105356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthreCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind556 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout556 2> log/9/stderr556 ad_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== ==105356== 18,800 bytes in 486 blocks are possibly lost in loss record 669 of 671 ==105356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105356== by 0x525A142: setlocale (setlocale.c:337) ==105356== by 0x400336E: main (first.c:123) ==105356== === End of file valgrind554 test 0556...[send and recv HTTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind556 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout556 2> log/9/stderr556 556: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 556 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind556 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout556 2> log/9/stderr556 === End of file commands.log === Start of file http_server.log 07:35:24.853500 ====> Client connect 07:35:24.853523 accept_connection 3 returned 4 07:35:24.853535 accept_connection 3 returned 0 07:35:24.853544 Read 93 bytes 07:35:24.853552 Process 93 bytes request 07:35:24.853561 Got request: GET /verifiedserver HTTP/1.1 07:35:24.853568 Are-we-friendly question received 07:35:24.853586 Wrote request (93 bytes) input to log/9/server.input 07:35:24.853597 Identifying ourselves as friends 07:35:24.853634 Response sent (56 bytes) and written to log/9/server.response 07:35:24.853641 special request received, no persistency 07:35:24.853647 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 556 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr556 URL: http://127.0.0.1:34999 === End of file stderr556 === Start of file valgrind556 ==105501== ==105501== Process terminating with default action of signal 4 (SIGILL) ==105501== Illegal opcode at address 0x51C2DB3 ==105501== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105501== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105501== by 0x51C2DB3: Curl_open (url.c:541) ==105501== by 0x513D46F: curl_easy_init (easy.c:372) ==105501== by 0x400FF20: test_lib556.lto_priv.0 (lib556.c:39) ==105501== by 0x4003443: main (first.c:167) ==105501== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105501== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105501== by 0x533CFA5: __tsearch (tsearch.c:337) ==105501== by 0x533CFA5: tsearch (tsearch.c:290) ==105501== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105501== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105501== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105501== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105501== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105501== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== ==105501== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105501== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105501== by 0x533CFA5: __tsearch (tsearch.c:337) ==105501== by 0x533CFA5: tsearch (tsearch.c:290) ==105501== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105501== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105501== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== ==105501== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105501== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105501== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105501== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105501== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105501== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105501== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105501== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== ==105501== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105501== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105501== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105501== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105501== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== ==105501== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105501== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105501== by 0x51C2D03: Curl_open (url.c:520) ==105501== by 0x513D46F: curl_easy_init (easy.c:372) ==105501== by 0x400FF20: test_lib556.lto_priv.0 (lib556.c:39) ==105501== by 0x4003443: main (first.c:167) ==105501== ==105501== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105501== at 0x50F17A8: malloc (vg_replCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind559 ./libtest/libtests lib559 http://127.0.0.1:33627/559 > log/13/stdout559 2> log/13/stderr559 ace_malloc.c:446) ==105501== by 0x533CFA5: __tsearch (tsearch.c:337) ==105501== by 0x533CFA5: tsearch (tsearch.c:290) ==105501== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105501== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105501== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105501== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105501== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105501== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== ==105501== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105501== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105501== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105501== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105501== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105501== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105501== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105501== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105501== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105501== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105501== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105501== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105501== by 0x525A142: setlocale (setlocale.c:337) ==105501== by 0x400336E: main (first.c:123) ==105501== === End of file valgrind556 test 0559...[use tiny CURLOPT_BUFFERSIZE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind559 ./libtest/libtests lib559 http://127.0.0.1:33627/559 > log/13/stdout559 2> log/13/stderr559 559: data FAILED: --- log/13/check-expected 2025-07-18 07:35:25.850445422 +0000 +++ log/13/check-generated 2025-07-18 07:35:25.850445422 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[LF] -ETag: "21025-dc7-39462498"[LF] -Accept-Ranges: bytes[LF] -Content-Length: 2049[LF] -Connection: close[LF] -Content-Type: text/html[LF] -Silly-header: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[LF] -[LF] -ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[LF] == Contents of files in the log/13/ dir after test 559 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[LF] ETag: "21025-dc7-39462498"[LF] Accept-Ranges: bytes[LF] Content-Length: 2049[LF] Connection: close[LF] Content-Type: text/html[LF] Silly-header: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[LF] [LF] ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind559 ./libtest/libtests lib559 http://127.0.0.1:33627/559 > log/13/stdout559 2> log/13/stderr559 === End of file commands.log === Start of file http_server.log 07:35:25.019456 ====> Client connect 07:35:25.019507 accept_connection 3 returned 4 07:35:25.019526 accept_connection 3 returned 0 07:35:25.019537 Read 93 bytes 07:35:25.019545 Process 93 bytes request 07:35:25.019555 Got request: GET /verifiedserver HTTP/1.1 07:35:25.019562 Are-we-friendly question received 07:35:25.019591 Wrote request (93 bytes) input to log/13/server.input 07:35:25.019602 Identifying ourselves as friends 07:35:25.019647 Response sent (56 bytes) and written to log/13/server.response 07:35:25.019654 special request received, no persistency 07:35:25.019660 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 559 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr559 URL: http://127.0.0.1:33627/559 === End of file stderr559 === Start of file valgrind559 ==105627== ==105627== ProcesCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind561 ./libtest/libtests lib549 "ftp://www.example.com/moo/561;type=i" http://127.0.0.1:39077 ascii > log/7/stdout561 2> log/7/stderr561 s terminating with default action of signal 4 (SIGILL) ==105627== Illegal opcode at address 0x51C2DB3 ==105627== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105627== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105627== by 0x51C2DB3: Curl_open (url.c:541) ==105627== by 0x513D46F: curl_easy_init (easy.c:372) ==105627== by 0x401422A: test_lib559.lto_priv.0 (lib559.c:38) ==105627== by 0x4003443: main (first.c:167) ==105627== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x533CFA5: __tsearch (tsearch.c:337) ==105627== by 0x533CFA5: tsearch (tsearch.c:290) ==105627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105627== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105627== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== ==105627== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x533CFA5: __tsearch (tsearch.c:337) ==105627== by 0x533CFA5: tsearch (tsearch.c:290) ==105627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105627== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105627== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== ==105627== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105627== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105627== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== ==105627== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105627== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105627== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== ==105627== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105627== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105627== by 0x51C2D03: Curl_open (url.c:520) ==105627== by 0x513D46F: curl_easy_init (easy.c:372) ==105627== by 0x401422A: test_lib559.lto_priv.0 (lib559.c:38) ==105627== by 0x4003443: main (first.c:167) ==105627== ==105627== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x533CFA5: __tsearch (tsearch.c:337) ==105627== by 0x533CFA5: tsearch (tsearch.c:290) ==105627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105627== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105627== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== ==105627== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105627== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105627== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105627== by 0x525A142: setlocale (setlocale.c:337) ==105627== by 0x400336E: main (first.c:123) ==105627== === End of file valgrind559 test 0561...[FTP RETR with CURLOPT_PROXY_TRANSFER_MODE, ASCII transfer and type=i] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind561 ./libtest/libtests lib549 "ftp://www.example.com/moo/561;type=i" http://127.0.0.1:39077 ascii > log/7/stdout561 2> log/7/stderr561 561: stdout FAILED: --- log/7/check-expected 2025-07-18 07:35:25.857112089 +0000 +++ log/7/check-generated 2025-07-18 07:35:25.857112089 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/7/ dir after test 561 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind561 ./libtest/libtests lib549 "ftp://www.example.com/moo/561;type=i" http://127.0.0.1:39077 ascii > log/7/stdout561 2> log/7/stderr561 === End of file commands.log === Start of file http_server.log 07:35:25.019495 ====> Client connect 07:35:25.019528 accept_connection 3 returned 4 07:35:25.019546 accept_connection 3 returned 0 07:35:25.019559 Read 93 bytes 07:35:25.019568 Process 93 bytes request 07:35:25.019579 Got request: GET /verifiedserver HTTP/1.1 07:35:25.019588 Are-we-friendly question received 07:35:25.019614 Wrote request (93 bytes) input to log/7/server.input 07:35:25.019630 Identifying ourselves as friends 07:35:25.019690 Response sent (56 bytes) and written to log/7/server.response 07:35:25.019700 special request received, no persistency 07:35:25.019709 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 561 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr561 URL: ftp://www.example.com/moo/561;type=i === End of file stderr561 === Start of file valgrind561 ==105628== ==105628== Process terminating with default action of signal 4 (SIGILL) ==105628== Illegal opcode at address 0x51C2DB3 ==105628== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105628== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105628== by 0x51C2DB3: Curl_open (url.c:541) ==105628== by 0x513D46F: curl_easy_init (easy.c:372) ==105628== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==105628== by 0x4003443: main (first.c:167) ==105628== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105628== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105628== by 0x533CFA5: __tsearch (tsearch.c:337) ==105628== by 0x533CFA5: tsearch (tsearch.c:290) ==105628== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105628== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105628== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105628== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105628== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105628== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== ==105628== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105628== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105628== by 0x533CFA5: __tsearch (tsearch.c:337) ==105628== by 0x533CFA5: tsearch (tsearch.c:290) ==105628== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105628== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105628== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== ==105628== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105628== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105628== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105628== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105628== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105628== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105628== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105628== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== ==105628== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105628== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105628== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105628== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105628== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== ==105628== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105628== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105628== by 0x51C2D03: Curl_open (url.c:520) ==105628== by 0x513D46F: curl_easy_init (easy.c:372) ==105628== by 0x400618A: test_lib549.lto_priv.0 (lib549.c:43) ==105628== by 0x4003443: main (first.c:167) ==105628== ==105628== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105628== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105628== by 0x533CFA5: __tsearch (tsearch.c:337) ==105628== by 0x533CFA5: tsearch (tsearch.c:290) ==105628== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105628== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105628== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105628== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105628== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105628== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== ==105628== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105628== at 0x50F17A8: malloc (vg_CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind562 ./libtest/libtests lib562 'ftp://127.0.0.1:23456/562;type=A' 34427 > log/1/stdout562 2> log/1/stderr562 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind519 ./libtest/libtests lib519 http://127.0.0.1:38675/519 > log/24/stdout519 2> log/24/stderr519 replace_malloc.c:446) ==105628== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105628== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105628== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105628== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105628== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105628== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105628== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105628== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105628== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105628== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105628== by 0x525A142: setlocale (setlocale.c:337) ==105628== by 0x400336E: main (first.c:123) ==105628== === End of file valgrind561 test 0562...[FTP a type=A URL and CURLOPT_PORT set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind562 ./libtest/libtests lib562 'ftp://127.0.0.1:23456/562;type=A' 34427 > log/1/stdout562 2> log/1/stderr562 562: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 562 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind562 ./libtest/libtests lib562 'ftp://127.0.0.1:23456/562;type=A' 34427 > log/1/stdout562 2> log/1/stderr562 === End of file commands.log === Start of file ftp_server.log 07:35:25.178478 ====> Client connect 07:35:25.178605 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:25.178815 < "USER anonymous" 07:35:25.178841 > "331 We are happy you popped in![CR][LF]" 07:35:25.178956 < "PASS ftp@example.com" 07:35:25.178973 > "230 Welcome you silly person[CR][LF]" 07:35:25.179075 < "PWD" 07:35:25.179095 > "257 "/" is current directory[CR][LF]" 07:35:25.179200 < "EPSV" 07:35:25.179218 ====> Passive DATA channel requested by client 07:35:25.179227 DATA sockfilt for passive data channel starting... 07:35:25.180680 DATA sockfilt for passive data channel started (pid 105624) 07:35:25.180769 DATA sockfilt for passive data channel listens on port 46007 07:35:25.180799 > "229 Entering Passive Mode (|||46007|)[LF]" 07:35:25.180811 Client has been notified that DATA conn will be accepted on port 46007 07:35:25.181004 Client connects to port 46007 07:35:25.181028 ====> Client established passive DATA connection on port 46007 07:35:25.181113 < "TYPE I" 07:35:25.181136 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:25.181242 < "SIZE verifiedserver" 07:35:25.181263 > "213 17[CR][LF]" 07:35:25.181360 < "RETR verifiedserver" 07:35:25.181381 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:25.181431 =====> Closing passive DATA connection... 07:35:25.181442 Server disconnects passive DATA connection 07:35:25.181594 Server disconnected passive DATA connection 07:35:25.181615 DATA sockfilt for passive data channel quits (pid 105624) 07:35:25.181776 DATA sockfilt for passive data channel quit (pid 105624) 07:35:25.181806 =====> Closed passive DATA connection 07:35:25.181832 > "226 File transfer complete[CR][LF]" 07:35:25.223734 < "QUIT" 07:35:25.223788 > "221 bye bye baby[CR][LF]" 07:35:25.224363 MAIN sockfilt said DISC 07:35:25.224419 ====> Client disconnected 07:35:25.224493 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:25.024371 ====> Client connect 07:35:25.024598 Received DATA (on stdin) 07:35:25.024611 > 160 bytes data, server => client 07:35:25.024620 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:25.024628 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:25.024636 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:25.024695 < 16 bytes data, client => server 07:35:25.024704 'USER anonymous\r\n' 07:35:25.024826 Received DATA (on stdin) 07:35:25.024835 > 33 bytes data, server => client 07:35:25.024842 '331 We are happy you popped in!\r\n' 07:35:25.024879 < 22 bytes data, client => server 07:35:25.024887 'PASS ftp@example.com\r\n' 07:35:25.024955 Received DATA (on stdin) 07:35:25.024963 > 30 bytes data, server => client 07:35:25.024970 '230 Welcome you silly person\r\n' 07:35:25.025002 < 5 bytes data, client => server 07:35:25.025010 'PWD\r\n' 07:35:25.025076 Received DATA (on stdin) 07:35:25.025084 > 30 bytes data, server => client 07:35:25.025091 '257 "/" is current directory\r\n' 07:35:25.025129 < 6 bytes data, client => server 07:35:25.025136 'EPSV\r\n' 07:35:25.026823 Received DATA (on stdin) 07:35:25.026843 > 38 bytes data, server => client 07:35:25.026852 '229 Entering Passive Mode (|||46007|)\n' 07:35:25.027022 < 8 bytes data, client => server 07:35:25.027031 'TYPE I\r\n' 07:35:25.027118 Received DATA (on stdin) 07:35:25.027126 > 33 bytes data, server => client 07:35:25.027133 '200 I modify TYPE as you wanted\r\n' 07:35:25.027169 < 21 bytes data, client => server 07:35:25.027177 'SIZE verifiedserver\r\n' 07:35:25.027245 Received DATA (on stdin) 07:35:25.027252 > 8 bytes data, server => client 07:35:25.027259 '213 17\r\n' 07:35:25.027290 < 21 bytes data, client => server 07:35:25.027298 'RETR verifiedserver\r\n' 07:35:25.027424 Received DATA (on stdin) 07:35:25.027433 > 29 bytes data, server => client 07:35:25.027440 '150 Binary junk (17 bytes).\r\n' 07:35:25.027827 Received DATA (on stdin) 07:35:25.027841 > 28 bytes data, server => client 07:35:25.027851 '226 File transfer complete\r\n' 07:35:25.069513 < 6 bytes data, client => server 07:35:25.069550 'QUIT\r\n' 07:35:25.069781 Received DATA (on stdin) 07:35:25.069794 > 18 bytes data, server => client 07:35:25.069804 '221 bye bye baby\r\n' 07:35:25.070264 ====> Client disconnect 07:35:25.070482 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:25.026440 Running IPv4 version 07:35:25.026482 Listening on port 46007 07:35:25.026513 Wrote pid 105624 to log/1/server/ftp_sockdata.pid 07:35:25.026621 Received PING (on stdin) 07:35:25.026685 Received PORT (on stdin) 07:35:25.026948 ====> Client connect 07:35:25.027457 Received DATA (on stdin) 07:35:25.027466 > 17 bytes data, server => client 07:35:25.027474 'WE ROOLZ: 80151\r\n' 07:35:25.027489 Received DISC (on stdin) 07:35:25.027497 ====> Client forcibly disconnected 07:35:25.027604 Received QUIT (on stdin) 07:35:25.027613 quits 07:35:25.027654 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 562 === End of file server.cmd === Start of file stderr562 URL: ftp://127.0.0.1:23456/562;type=A === End of file stderr562 === Start of file valgrind562 ==105722== ==105722== Process terminating with default action of signal 4 (SIGILL) ==105722== Illegal opcode at address 0x51C2DB3 ==105722== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105722== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105722== by 0x51C2DB3: Curl_open (url.c:541) ==105722== by 0x513D46F: curl_easy_init (easy.c:372) ==105722== by 0x40155CA: test_lib562.lto_priv.0 (lib562.c:47) ==105722== by 0x4003443: main (first.c:167) ==105722== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x533CFA5: __tsearch (tsearch.c:337) ==105722== by 0x533CFA5: tsearch (tsearch.c:290) ==105722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105722== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105722== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== ==105722== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x533CFA5: __tsearch (tsearch.c:337) ==105722== by 0x533CFA5: tsearch (tsearch.c:290) ==105722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105722== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105722== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== ==105722== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105722== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105722== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== ==105722== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105722== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105722== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== ==105722== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105722== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105722== by 0x51C2D03: Curl_open (url.c:520) ==105722== by 0x513D46F: curl_easy_init (easy.c:372) ==105722== by 0x40155CA: test_lib562.lto_priv.0 (lib562.c:47) ==105722== by 0x4003443: main (first.c:167) ==105722== ==105722== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x533CFA5: __tsearch (tsearch.c:337) ==105722== by 0x533CFA5: tsearch (tsearch.c:290) ==105722== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105722== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105722== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== ==105722== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105722== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105722== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105722== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105722== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105722== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105722== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105722== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105722== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105722== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105722== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105722== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105722== by 0x525A142: setlocale (setlocale.c:337) ==105722== by 0x400336E: main (first.c:123) ==105722== === End of file valgrind562 test 0519...[GET same URL twice with different users] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind519 ./libtest/libtests lib519 http://127.0.0.1:38675/519 > log/24/stdout519 2> log/24/stderr519 519: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 519 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind519 ./libtest/libtests lib519 http://127.0.0.1:38675/519 > log/24/stdout519 2> log/24/stderr519 === End of file commands.log === Start of file http_server.log 07:35:08.649782 ====> Client connect 07:35:08.649811 accept_connection 3 returned 4 07:35:08.649826 accept_connection 3 returned 0 07:35:08.649840 Read 93 bytes 07:35:08.649850 Process 93 bytes request 07:35:08.649863 Got request: GET /verifiedserver HTTP/1.1 07:35:08.649872 Are-we-friendly question received 07:35:08.649896 Wrote request (93 bytes) input to log/24/server.input 07:35:08.649912 Identifying ourselves as friends 07:35:08.649957 Response sent (56 bytes) and written to log/24/server.response 07:35:08.649966 special request received, no persistency 07:35:08.649974 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 519 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr519 URL: http://127.0.0.1:38675/519 === End of file stderr519 === Start of file valgrind519 ==102970== ==102970== Process terminating with default action of signal 4 (SIGILL) ==102970== Illegal opcode at address 0x51C2DB3 ==102970== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102970== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102970== by 0x51C2DB3: Curl_open (url.c:541) ==102970== by 0x513D46F: curl_easy_init (easy.c:372) ==102970== by 0x400596A: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind566 ./libtest/libtests lib566 http://127.0.0.1:42345/566 log/3/ip566 > log/3/stdout566 2> log/3/stderr566 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind565 ./libtest/libtests lib510 http://127.0.0.1:46761/565 > log/22/stdout565 2> log/22/stderr565 test_lib519.lto_priv.0 (lib519.c:38) ==102970== by 0x4003443: main (first.c:167) ==102970== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x533CFA5: __tsearch (tsearch.c:337) ==102970== by 0x533CFA5: tsearch (tsearch.c:290) ==102970== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102970== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102970== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102970== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102970== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102970== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== ==102970== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x533CFA5: __tsearch (tsearch.c:337) ==102970== by 0x533CFA5: tsearch (tsearch.c:290) ==102970== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102970== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102970== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== ==102970== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102970== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102970== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102970== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102970== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102970== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== ==102970== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102970== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102970== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== ==102970== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102970== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102970== by 0x51C2D03: Curl_open (url.c:520) ==102970== by 0x513D46F: curl_easy_init (easy.c:372) ==102970== by 0x400596A: test_lib519.lto_priv.0 (lib519.c:38) ==102970== by 0x4003443: main (first.c:167) ==102970== ==102970== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x533CFA5: __tsearch (tsearch.c:337) ==102970== by 0x533CFA5: tsearch (tsearch.c:290) ==102970== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102970== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102970== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102970== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102970== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102970== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== ==102970== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102970== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102970== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102970== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102970== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102970== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102970== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102970== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102970== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102970== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102970== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102970== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102970== by 0x525A142: setlocale (setlocale.c:337) ==102970== by 0x400336E: main (first.c:123) ==102970== === End of file valgrind519 test 0566...[HTTP GET with CURLINFO_CONTENT_LENGTH_DOWNLOAD and 0 bytes transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind566 ./libtest/libtests lib566 http://127.0.0.1:42345/566 log/3/ip566 > log/3/stdout566 2> log/3/stderr566 566: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 566 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind566 ./libtest/libtests lib566 http://127.0.0.1:42345/566 log/3/ip566 > log/3/stdout566 2> log/3/stderr566 === End of file commands.log === Start of file http_server.log 07:35:25.221515 ====> Client connect 07:35:25.221546 accept_connection 3 returned 4 07:35:25.221561 accept_connection 3 returned 0 07:35:25.221574 Read 93 bytes 07:35:25.221584 Process 93 bytes request 07:35:25.221596 Got request: GET /verifiedserver HTTP/1.1 07:35:25.221605 Are-we-friendly question received 07:35:25.221634 Wrote request (93 bytes) input to log/3/server.input 07:35:25.221649 Identifying ourselves as friends 07:35:25.221700 Response sent (56 bytes) and written to log/3/server.response 07:35:25.221709 special request received, no persistency 07:35:25.221717 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 566 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr566 URL: http://127.0.0.1:42345/566 === End of file stderr566 === Start of file valgrind566 ==105859== ==105859== Process terminating with default action of signal 4 (SIGILL) ==105859== Illegal opcode at address 0x51C2DB3 ==105859== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105859== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105859== by 0x51C2DB3: Curl_open (url.c:541) ==105859== by 0x513D46F: curl_easy_init (easy.c:372) ==105859== by 0x4015AE2: test_lib566.lto_priv.0 (lib566.c:40) ==105859== by 0x4003443: main (first.c:167) ==105859== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x533CFA5: __tsearch (tsearch.c:337) ==105859== by 0x533CFA5: tsearch (tsearch.c:290) ==105859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105859== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105859== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== ==105859== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x533CFA5: __tsearch (tsearch.c:337) ==105859== by 0x533CFA5: tsearch (tsearch.c:290) ==105859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105859== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105859== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== ==105859== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105859== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105859== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== ==105859== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105859== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105859== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== ==105859== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105859== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105859== by 0x51C2D03: Curl_open (url.c:520) ==105859== by 0x513D46F: curl_easy_init (easy.c:372) ==105859== by 0x4015AE2: test_lib566.lto_priv.0 (lib566.c:40) ==105859== by 0x4003443: main (first.c:167) ==105859== ==105859== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x533CFA5: __tsearch (tsearch.c:337) ==105859== by 0x533CFA5: tsearch (tsearch.c:290) ==105859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105859== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105859== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== ==105859== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105859== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105859== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105859== by 0x525A142: setlocale (setlocale.c:337) ==105859== by 0x400336E: main (first.c:123) ==105859== === End of file valgrind566 test 0565...[send HTTP POST using read callback, chunked transfer-encoding and Digest] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind565 ./libtest/libtests lib510 http://127.0.0.1:46761/565 > log/22/stdout565 2> log/22/stderr565 565: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 565 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind565 ./libtest/libtests lib510 http://127.0.0.1:46761/565 > log/22/stdout565 2> log/22/stderr565 === End of file commands.log === Start of file http_server.log 07:35:25.219585 ====> Client connect 07:35:25.219610 accept_connection 3 returned 4 07:35:25.219622 accept_connection 3 returned 0 07:35:25.219632 Read 93 bytes 07:35:25.219639 Process 93 bytes request 07:35:25.219649 Got request: GET /verifiedserver HTTP/1.1 07:35:25.219656 Are-we-friendly question received 07:35:25.219674 Wrote request (93 bytes) input to log/22/server.input 07:35:25.219687 Identifying ourselves as friends 07:35:25.219726 Response sent (56 bytes) and written to log/22/server.respCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind563 ./libtest/libtests lib562 "ftp://127.0.0.1:23456/563;type=A" 41711 > log/14/stdout563 2> log/14/stderr563 onse 07:35:25.219733 special request received, no persistency 07:35:25.219739 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 565 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr565 URL: http://127.0.0.1:46761/565 === End of file stderr565 === Start of file valgrind565 ==105860== ==105860== Process terminating with default action of signal 4 (SIGILL) ==105860== Illegal opcode at address 0x51C2DB3 ==105860== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105860== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105860== by 0x51C2DB3: Curl_open (url.c:541) ==105860== by 0x513D46F: curl_easy_init (easy.c:372) ==105860== by 0x4006980: test_lib510.lto_priv.0 (lib510.c:76) ==105860== by 0x4003443: main (first.c:167) ==105860== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x533CFA5: __tsearch (tsearch.c:337) ==105860== by 0x533CFA5: tsearch (tsearch.c:290) ==105860== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105860== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105860== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105860== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105860== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105860== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== ==105860== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x533CFA5: __tsearch (tsearch.c:337) ==105860== by 0x533CFA5: tsearch (tsearch.c:290) ==105860== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105860== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105860== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== ==105860== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105860== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105860== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105860== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105860== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105860== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== ==105860== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105860== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105860== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== ==105860== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105860== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105860== by 0x51C2D03: Curl_open (url.c:520) ==105860== by 0x513D46F: curl_easy_init (easy.c:372) ==105860== by 0x4006980: test_lib510.lto_priv.0 (lib510.c:76) ==105860== by 0x4003443: main (first.c:167) ==105860== ==105860== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x533CFA5: __tsearch (tsearch.c:337) ==105860== by 0x533CFA5: tsearch (tsearch.c:290) ==105860== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105860== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105860== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105860== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105860== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105860== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== ==105860== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105860== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105860== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105860== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105860== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105860== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105860== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105860== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105860== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105860== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105860== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105860== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105860== by 0x525A142: setlocale (setlocale.c:337) ==105860== by 0x400336E: main (first.c:123) ==105860== === End of file valgrind565 setenv ftp_proxy = http://127.0.0.1:37963/ test 0563...[FTP type=A URL and CURLOPT_PORT set and proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind563 ./libtest/libtests lib562 "ftp://127.0.0.1:23456/563;type=A" 41711 > log/14/stdout563 2> log/14/stderr563 563: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 563 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind563 ./libtest/libtests lib562 "ftp://127.0.0.1:23456/563;type=A" 41711 > log/14/stdout563 2> log/14/stderr563 === End of file commands.log === Start of file ftp_server.log 07:35:25.382209 ====> Client connect 07:35:25.382323 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:25.382504 < "USER anonymous" 07:35:25.382529 > "331 We are happy you popped in![CR][LF]" 07:35:25.382634 < "PASS ftp@example.com" 07:35:25.382650 > "230 Welcome you silly person[CR][LF]" 07:35:25.382748 < "PWD" 07:35:25.382769 > "257 "/" is current directory[CR][LF]" 07:35:25.382872 < "EPSV" 07:35:25.382887 ====> Passive DATA channel requested by client 07:35:25.382897 DATA sockfilt for passive data channel starting... 07:35:25.384506 DATA sockfilt for passive data channel started (pid 105857) 07:35:25.384594 DATA sockfilt for passive data channel listens on port 44107 07:35:25.384623 > "229 Entering Passive Mode (|||44107|)[LF]" 07:35:25.384637 Client has been notified that DATA conn will be accepted on port 44107 07:35:25.384798 Client connects to port 44107 07:35:25.384818 ====> Client established passive DATA connection on port 44107 07:35:25.384901 < "TYPE I" 07:35:25.384923 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:25.385029 < "SIZE verifiedserver" 07:35:25.385053 > "213 17[CR][LF]" 07:35:25.385152 < "RETR verifiedserver" 07:35:25.385175 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:25.385228 =====> Closing passive DATA connection... 07:35:25.385238 Server disconnects passive DATA connection 07:35:25.385392 Server disconnected passive DATA connection 07:35:25.385411 DATA sockfilt for passive data channel quits (pid 105857) 07:35:25.385577 DATA sockfilt for passive data channel quit (pid 105857) 07:35:25.385593 =====> Closed passive DATA connection 07:35:25.385610 > "226 File transfer complete[CR][LF]" 07:35:25.430274 < "QUIT" 07:35:25.430316 > "221 bye bye baby[CR][LF]" 07:35:25.430434 MAIN sockfilt said DISC 07:35:25.430476 ====> Client disconnected 07:35:25.430529 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:25.228110 ====> Client connect 07:35:25.228314 Received DATA (on stdin) 07:35:25.228325 > 160 bytes data, server => client 07:35:25.228334 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:25.228342 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:25.228349 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:25.228395 < 16 bytes data, client => server 07:35:25.228404 'USER anonymous\r\n' 07:35:25.228512 Received DATA (on stdin) 07:35:25.228520 > 33 bytes data, server => client 07:35:25.228528 '331 We are happy you popped in!\r\n' 07:35:25.228561 < 22 bytes data, client => server 07:35:25.228569 'PASS ftp@example.com\r\n' 07:35:25.228631 Received DATA (on stdin) 07:35:25.228639 > 30 bytes data, server => client 07:35:25.228646 '230 Welcome you silly person\r\n' 07:35:25.228677 < 5 bytes data, client => server 07:35:25.228685 'PWD\r\n' 07:35:25.228750 Received DATA (on stdin) 07:35:25.228758 > 30 bytes data, server => client 07:35:25.228765 '257 "/" is current directory\r\n' 07:35:25.228801 < 6 bytes data, client => server 07:35:25.228808 'EPSV\r\n' 07:35:25.230627 Received DATA (on stdin) 07:35:25.230641 > 38 bytes data, server => client 07:35:25.230650 '229 Entering Passive Mode (|||44107|)\n' 07:35:25.230810 < 8 bytes data, client => server 07:35:25.230819 'TYPE I\r\n' 07:35:25.230906 Received DATA (on stdin) 07:35:25.230914 > 33 bytes data, server => client 07:35:25.230922 '200 I modify TYPE as you wanted\r\n' 07:35:25.230956 < 21 bytes data, client => server 07:35:25.230964 'SIZE verifiedserver\r\n' 07:35:25.231035 Received DATA (on stdin) 07:35:25.231043 > 8 bytes data, server => client 07:35:25.231050 '213 17\r\n' 07:35:25.231081 < 21 bytes data, client => server 07:35:25.231088 'RETR verifiedserver\r\n' 07:35:25.231221 Received DATA (on stdin) 07:35:25.231229 > 29 bytes data, server => client 07:35:25.231237 '150 Binary junk (17 bytes).\r\n' 07:35:25.231593 Received DATA (on stdin) 07:35:25.231603 > 28 bytes data, server => client 07:35:25.231611 '226 File transfer complete\r\n' 07:35:25.276111 < 6 bytes data, client => server 07:35:25.276131 'QUIT\r\n' 07:35:25.276301 Received DATA (on stdin) 07:35:25.276309 > 18 bytes data, server => client 07:35:25.276317 '221 bye bye baby\r\n' 07:35:25.276363 ====> Client disconnect 07:35:25.276513 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:25.230038 Running IPv4 version 07:35:25.230087 Listening on port 44107 07:35:25.230115 Wrote pid 105857 to log/14/server/ftp_sockdata.pid 07:35:25.230443 Received PING (on stdin) 07:35:25.230513 Received PORT (on stdin) 07:35:25.230744 ====> Client connect 07:35:25.231255 Received DATA (on stdin) 07:35:25.231264 > 17 bytes data, server => client 07:35:25.231272 'WE ROOLZ: 79837\r\n' 07:35:25.231288 Received DISC (on stdin) 07:35:25.231296 ====> Client forcibly disconnected 07:35:25.231399 Received QUIT (on stdin) 07:35:25.231408 quits 07:35:25.231446 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:25.211010 ====> Client connect 07:35:25.211036 accept_connection 3 returned 4 07:35:25.211048 accept_connection 3 returned 0 07:35:25.211060 Read 93 bytes 07:35:25.211069 Process 93 bytes request 07:35:25.211082 Got request: GET /verifiedserver HTTP/1.1 07:35:25.211091 Are-we-friendly question received 07:35:25.211116 Wrote request (93 bytes) input to log/14/server.input 07:35:25.211131 Identifying ourselves as friends 07:35:25.211198 Response sent (56 bytes) and written to log/14/server.response 07:35:25.211207 special request received, no persistency 07:35:25.211216 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 563 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr563 URL: ftp://127.0.0.1:23456/563;type=A === End of file stderr563 === Start of file valgrind563 ==105953== ==105953== Process terminating with default action of signal 4 (SIGILL) ==105953== Illegal opcode at address 0x51C2DB3 ==105953== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==105953== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==105953== by 0x51C2DB3: Curl_open (url.c:541) ==105953== by 0x513D46F: curl_easy_init (easy.c:372) ==105953== by 0x40155CA: test_lib562.lto_priv.0 (lib562.c:47) ==105953== by 0x4003443: main (first.c:167) ==105953== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x533CFA5: __tsearch (tsearch.c:337) ==105953== by 0x533CFA5: tsearch (tsearch.c:290) ==105953== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105953== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105953== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105953== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105953== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105953== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind573 ./libtest/libtests lib573 http://127.0.0.1:39077/573 > log/7/stdout573 2> log/7/stderr573 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== ==105953== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x533CFA5: __tsearch (tsearch.c:337) ==105953== by 0x533CFA5: tsearch (tsearch.c:290) ==105953== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105953== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105953== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== ==105953== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105953== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105953== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105953== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105953== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==105953== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== ==105953== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105953== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==105953== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== ==105953== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==105953== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==105953== by 0x51C2D03: Curl_open (url.c:520) ==105953== by 0x513D46F: curl_easy_init (easy.c:372) ==105953== by 0x40155CA: test_lib562.lto_priv.0 (lib562.c:47) ==105953== by 0x4003443: main (first.c:167) ==105953== ==105953== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x533CFA5: __tsearch (tsearch.c:337) ==105953== by 0x533CFA5: tsearch (tsearch.c:290) ==105953== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==105953== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105953== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105953== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105953== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105953== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== ==105953== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==105953== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==105953== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==105953== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==105953== by 0x524F3F0: add_alias (gconv_conf.c:178) ==105953== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==105953== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==105953== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==105953== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==105953== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==105953== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==105953== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==105953== by 0x525A142: setlocale (setlocale.c:337) ==105953== by 0x400336E: main (first.c:123) ==105953== === End of file valgrind563 test 0573...[verify connect time with multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind573 ./libtest/libtests lib573 http://127.0.0.1:39077/573 > log/7/stdout573 2> log/7/stderr573 573: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 573 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind573 ./libtest/libtests lib573 http://127.0.0.1:39077/573 > log/7/stdout573 2> log/7/stderr573 === End of file commands.log === Start of file http_server.log 07:35:25.729796 ====> Client connect 07:35:25.729829 accept_connection 3 returned 4 07:35:25.729847 accept_connection 3 returned 0 07:35:25.729861 Read 93 bytes 07:35:25.729871 Process 93 bytes request 07:35:25.729884 Got request: GET /verifiedserver HTTP/1.1 07:35:25.729894 Are-we-friendly question received 07:35:25.729919 Wrote request (93 bytes) input to log/7/server.input 07:35:25.729936 Identifying ourselves as friends 07:35:25.730004 Response sent (56 bytes) and written to log/7/server.response 07:35:25.730014 special request received, no persistency 07:35:25.730024 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 573 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr573 URL: http://127.0.0.1:39077/573 === End of file stderr573 === Start of file valgrind573 ==106080== ==106080== Process terminating with default action of signal 4 (SIGILL) ==106080== Illegal opcode at address 0x51C2DB3 ==106080== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106080== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106080== by 0x51C2DB3: Curl_open (url.c:541) ==106080== by 0x513D46F: curl_easy_init (easy.c:372) ==106080== by 0x40180F0: test_lib573.lto_priv.0 (lib573.c:51) ==106080== by 0x4003443: main (first.c:167) ==106080== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x533CFA5: __tsearch (tsearch.c:337) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind575 ./libtest/libtests lib575 ftp://127.0.0.1:38657/fully_simulated/UNIX/* > log/24/stdout575 2> log/24/stderr575 ==106080== by 0x533CFA5: tsearch (tsearch.c:290) ==106080== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106080== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106080== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106080== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106080== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106080== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== ==106080== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x533CFA5: __tsearch (tsearch.c:337) ==106080== by 0x533CFA5: tsearch (tsearch.c:290) ==106080== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106080== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106080== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== ==106080== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106080== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106080== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106080== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106080== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106080== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== ==106080== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106080== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106080== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== ==106080== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106080== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106080== by 0x51C2D03: Curl_open (url.c:520) ==106080== by 0x513D46F: curl_easy_init (easy.c:372) ==106080== by 0x40180F0: test_lib573.lto_priv.0 (lib573.c:51) ==106080== by 0x4003443: main (first.c:167) ==106080== ==106080== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x533CFA5: __tsearch (tsearch.c:337) ==106080== by 0x533CFA5: tsearch (tsearch.c:290) ==106080== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106080== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106080== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106080== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106080== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106080== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== ==106080== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106080== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106080== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106080== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106080== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106080== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106080== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106080== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106080== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106080== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106080== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106080== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106080== by 0x525A142: setlocale (setlocale.c:337) ==106080== by 0x400336E: main (first.c:123) ==106080== === End of file valgrind573 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind574 ./libtest/libtests lib574 ftp://127.0.0.1:34427/fully_simulated/UNIX/*.txt > log/1/stdout574 2> log/1/stderr574 test 0575...[FTP wildcard download - dup_handle and multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind575 ./libtest/libtests lib575 ftp://127.0.0.1:38657/fully_simulated/UNIX/* > log/24/stdout575 2> log/24/stderr575 575: stdout FAILED: --- log/24/check-expected 2025-07-18 07:35:26.553778773 +0000 +++ log/24/check-generated 2025-07-18 07:35:26.553778773 +0000 @@ -1,15 +0,0 @@ -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] == Contents of files in the log/24/ dir after test 575 === Start of file check-expected This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind575 ./libtest/libtests lib575 ftp://127.0.0.1:38657/fully_simulated/UNIX/* > log/24/stdout575 2> log/24/stderr575 === End of file commands.log === Start of file ftp_server.log 07:35:25.886477 ====> Client connect 07:35:25.886613 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:25.886968 < "USER anonymous" 07:35:25.886994 > "331 We are happy you popped in![CR][LF]" 07:35:25.887109 < "PASS ftp@example.com" 07:35:25.887125 > "230 Welcome you silly person[CR][LF]" 07:35:25.887237 < "PWD" 07:35:25.887257 > "257 "/" is current directory[CR][LF]" 07:35:25.887356 < "EPSV" 07:35:25.887373 ====> Passive DATA channel requested by client 07:35:25.887382 DATA sockfilt for passive data channel starting... 07:35:25.888472 DATA sockfilt for passive data channel started (pid 106078) 07:35:25.888570 DATA sockfilt for passive data channel listens on port 34179 07:35:25.888599 > "229 Entering Passive Mode (|||34179|)[LF]" 07:35:25.888612 Client has been notified that DATA conn will be accepted on port 34179 07:35:25.888773 Client connects to port 34179 07:35:25.888800 ====> Client established passive DATA connection on port 34179 07:35:25.888882 < "TYPE I" 07:35:25.888910 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:25.889038 < "SIZE verifiedserver" 07:35:25.889061 > "213 17[CR][LF]" 07:35:25.889154 < "RETR verifiedserver" 07:35:25.889176 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:25.889229 =====> Closing passive DATA connection... 07:35:25.889238 Server disconnects passive DATA connection 07:35:25.889345 Server disconnected passive DATA connection 07:35:25.889361 DATA sockfilt for passive data channel quits (pid 106078) 07:35:25.889545 DATA sockfilt for passive data channel quit (pid 106078) 07:35:25.889574 =====> Closed passive DATA connection 07:35:25.889601 > "226 File transfer complete[CR][LF]" 07:35:25.933593 < "QUIT" 07:35:25.933639 > "221 bye bye baby[CR][LF]" 07:35:25.934194 MAIN sockfilt said DISC 07:35:25.934223 ====> Client disconnected 07:35:25.934276 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:25.732374 ====> Client connect 07:35:25.732603 Received DATA (on stdin) 07:35:25.732614 > 160 bytes data, server => client 07:35:25.732622 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:25.732629 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:25.732773 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:25.732848 < 16 bytes data, client => server 07:35:25.732862 'USER anonymous\r\n' 07:35:25.732978 Received DATA (on stdin) 07:35:25.732988 > 33 bytes data, server => client 07:35:25.732996 '331 We are happy you popped in!\r\n' 07:35:25.733033 < 22 bytes data, client => server 07:35:25.733041 'PASS ftp@example.com\r\n' 07:35:25.733105 Received DATA (on stdin) 07:35:25.733113 > 30 bytes data, server => client 07:35:25.733120 '230 Welcome you silly person\r\n' 07:35:25.733166 < 5 bytes data, client => server 07:35:25.733173 'PWD\r\n' 07:35:25.733237 Received DATA (on stdin) 07:35:25.733244 > 30 bytes data, server => client 07:35:25.733251 '257 "/" is current directory\r\n' 07:35:25.733286 < 6 bytes data, client => server 07:35:25.733293 'EPSV\r\n' 07:35:25.734602 Received DATA (on stdin) 07:35:25.734614 > 38 bytes data, server => client 07:35:25.734621 '229 Entering Passive Mode (|||34179|)\n' 07:35:25.734703 < 8 bytes data, client => server 07:35:25.734717 'TYPE I\r\n' 07:35:25.734893 Received DATA (on stdin) 07:35:25.734901 > 33 bytes data, server => client 07:35:25.734908 '200 I modify TYPE as you wanted\r\n' 07:35:25.734966 < 21 bytes data, client => server 07:35:25.734973 'SIZE verifiedserver\r\n' 07:35:25.735041 Received DATA (on stdin) 07:35:25.735049 > 8 bytes data, server => client 07:35:25.735055 '213 17\r\n' 07:35:25.735086 < 21 bytes data, client => server 07:35:25.735093 'RETR verifiedserver\r\n' 07:35:25.735221 Received DATA (on stdin) 07:35:25.735228 > 29 bytes data, server => client 07:35:25.735235 '150 Binary junk (17 bytes).\r\n' 07:35:25.735585 Received DATA (on stdin) 07:35:25.735594 > 28 bytes data, server => client 07:35:25.735602 '226 File transfer complete\r\n' 07:35:25.779422 < 6 bytes data, client => server 07:35:25.779446 'QUIT\r\n' 07:35:25.779624 Received DATA (on stdin) 07:35:25.779632 > 18 bytes data, server => client 07:35:25.779639 '221 bye bye baby\r\n' 07:35:25.780135 ====> Client disconnect 07:35:25.780257 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:25.734286 Running IPv4 version 07:35:25.734348 Listening on port 34179 07:35:25.734386 Wrote pid 106078 to log/24/server/ftp_sockdata.pid 07:35:25.734401 Received PING (on stdin) 07:35:25.734484 Received PORT (on stdin) 07:35:25.734711 ====> Client connect 07:35:25.735253 Received DATA (on stdin) 07:35:25.735264 > 17 bytes data, server => client 07:35:25.735271 'WE ROOLZ: 81588\r\n' 07:35:25.735286 Received DISC (on stdin) 07:35:25.735294 ====> Client forcibly disconnected 07:35:25.735346 Received QUIT (on stdin) 07:35:25.735369 quits 07:35:25.735405 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 575 === End of file server.cmd === Start of file stderr575 URL: ftp://127.0.0.1:38657/fully_simulated/UNIX/* === End of file stderr575 === Start of file valgrind575 ==106129== ==106129== Process terminating with default action of signal 4 (SIGILL) ==106129== Illegal opcode at address 0x51C2DB3 ==106129== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106129== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106129== by 0x51C2DB3: Curl_open (url.c:541) ==106129== by 0x513D46F: curl_easy_init (easy.c:372) ==106129== by 0x4018999: test_lib575.lto_priv.0 (lib575.c:46) ==106129== by 0x4003443: main (first.c:167) ==106129== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x533CFA5: __tsearch (tsearch.c:337) ==106129== by 0x533CFA5: tsearch (tsearch.c:290) ==106129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106129== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106129== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== ==106129== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x533CFA5: __tsearch (tsearch.c:337) ==106129== by 0x533CFA5: tsearch (tsearch.c:290) ==106129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106129== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106129== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== ==106129== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106129== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106129== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== ==106129== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106129== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106129== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== ==106129== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106129== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106129== by 0x51C2D03: Curl_open (url.c:520) ==106129== by 0x513D46F: curl_easy_init (easy.c:372) ==106129== by 0x4018999: test_lib575.lto_priv.0 (lib575.c:46) ==106129== by 0x4003443: main (first.c:167) ==106129== ==106129== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x533CFA5: __tsearch (tsearch.c:337) ==106129== by 0x533CFA5: tsearch (tsearch.c:290) ==106129== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106129== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106129== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== ==106129== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106129== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106129== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106129== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106129== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106129== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106129== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106129== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106129== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106129== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106129== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106129== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106129== by 0x525A142: setlocale (setlocale.c:337) ==106129== by 0x400336E: main (first.c:123) ==106129== === End of file valgrind575 test 0574...[FTP wildcard download - changed fnmatch, 2x perform (Unix LIST response)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind574 ./libtest/libtests lib574 ftp://127.0.0.1:34427/fully_simulated/UNIX/*.txt > log/1/stdout574 2> log/1/stderr574 574: stdout FAILED: --- log/1/check-expected 2025-07-18 07:35:26.563778773 +0000 +++ log/1/check-generated 2025-07-18 07:35:26.563778773 +0000 @@ -1,10 +0,0 @@ -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] == Contents of files in the log/1/ dir after test 574 === Start of file check-expected This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind574 ./libtest/libtests lib574 ftp://127.0.0.1:34427/fully_simulated/UNIX/*.txt > log/1/stdout574 2> log/1/stderr574 === End of file commands.log === Start of file ftp_server.log 07:35:25.885324 ====> Client connect 07:35:25.885453 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:25.885669 < "USER anonymous" 07:35:25.885693 > "331 We are happy you popped in![CR][LF]" 07:35:25.885797 < "PASS ftp@example.com" 07:35:25.885813 > "230 Welcome you silly person[CR][LF]" 07:35:25.885903 < "PWD" 07:35:25.885921 > "257 "/" is current directory[CR][LF]" 07:35:25.886083 < "EPSV" 07:35:25.886116 ====> Passive DATA channel requested by client 07:35:25.886125 DATA sockfilt for passive data channel starting... 07:35:25.887216 DATA sockfilt for passive data channel started (pid 106077) 07:35:25.887290 DATA sockfilt for passive data channel listens on port 38557 07:35:25.887319 > "229 Entering Passive Mode (|||38557|)[LF]" 07:35:25.887330 Client has been notified that DATA conn will be accepted on port 38557 07:35:25.887463 Client connects to port 38557 07:35:25.887497 ====> Client established passive DATA connection on port 38557 07:35:25.887549 < "TYPE I" 07:35:25.887568 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:25.887677 < "SIZE verifiedserver" 07:35:25.887702 > "213 17[CR][LF]" 07:35:25.887810 < "RETR verifiedserver" 07:35:25.887843 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:25.887897 =====> Closing passive DATA connection... 07:35:25.887907 Server disconnects passive DATA connection 07:35:25.888001 Server disconnected passive DATA connection 07:35:25.888024 DATA sockfilt for passive data channel quits (pid 106077) 07:35:25.888260 DATA sockfilt for passive data channel quit (pid 106077) 07:35:25.888277 =====> Closed passive DATA connection 07:35:25.888296 > "226 File transfer complete[CR][LF]" 07:35:25.933594 < "QUIT" 07:35:25.933642 > "221 bye bye baby[CR][LF]" 07:35:25.933994 MAIN sockfilt said DISC 07:35:25.934019 ====> Client disconnected 07:35:25.934090 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:25.731235 ====> Client connect 07:35:25.731447 Received DATA (on stdin) 07:35:25.731463 > 160 bytes data, server => client 07:35:25.731471 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:25.731478 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:25.731485 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:25.731554 < 16 bytes data, client => server 07:35:25.731563 'USER anonymous\r\n' 07:35:25.731675 Received DATA (on stdin) 07:35:25.731684 > 33 bytes data, server => client 07:35:25.731691 '331 We are happy you popped in!\r\n' 07:35:25.731724 < 22 bytes data, client => server 07:35:25.731731 'PASS ftp@example.com\r\n' 07:35:25.731793 Received DATA (on stdin) 07:35:25.731800 > 30 bytes data, server => client 07:35:25.731807 '230 Welcome you silly person\r\n' 07:35:25.731835 < 5 bytes data, client => server 07:35:25.731842 'PWD\r\n' 07:35:25.731900 Received DATA (on stdin) 07:35:25.731907 > 30 bytes data, server => client 07:35:25.731914 '257 "/" is current directory\r\n' 07:35:25.731949 < 6 bytes data, client => server 07:35:25.731955 'EPSV\r\n' 07:35:25.733316 Received DATA (on stdin) 07:35:25.733328 > 38 bytes data, server => client 07:35:25.733336 '229 Entering Passive Mode (|||38557|)\n' 07:35:25.733429 < 8 bytes data, client => server 07:35:25.733437 'TYPE I\r\n' 07:35:25.733549 Received DATA (on stdin) 07:35:25.733557 > 33 bytes data, server => client 07:35:25.733564 '200 I modify TYPE as you wanted\r\n' 07:35:25.733605 < 21 bytes data, client => server 07:35:25.733612 'SIZE verifiedserver\r\n' 07:35:25.733683 Received DATA (on stdin) 07:35:25.733690 > 8 bytes data, server => client 07:35:25.733697 '213 17\r\n' 07:35:25.733728 < 21 bytes data, client => server 07:35:25.733735 'RETR verifiedserver\r\n' 07:35:25.733872 Received DATA (on stdin) 07:35:25.733887 > 29 bytes data, server => client 07:35:25.733895 '150 Binary junk (17 bytes).\r\n' 07:35:25.734278 Received DATA (on stdin) 07:35:25.734288 > 28 bytes data, server => client 07:35:25.734295 '226 File transfer complete\r\n' 07:35:25.779423 < 6 bytes data, client => server 07:35:25.779445 'QUIT\r\n' 07:35:25.779633 Received DATA (on stdin) 07:35:25.779645 > 18 bytes data, server => client 07:35:25.779655 '221 bye bye baby\r\n' 07:35:25.779935 ====> Client disconnect 07:35:25.780077 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:25.733082 Running IPv4 version 07:35:25.733118 Listening on port 38557 07:35:25.733145 Wrote pid 106077 to log/1/server/ftp_sockdata.pid 07:35:25.733158 Received PING (on stdin) 07:35:25.733216 Received PORT (on stdin) 07:35:25.733412 ====> Client connect 07:35:25.733895 Received DATA (on stdin) 07:35:25.733908 > 17 bytes data, server => client 07:35:25.733915 'WE ROOLZ: 80151\r\n' 07:35:25.733936 Received DISC (on stdin) 07:35:25.733944 ====> Client forcibly disconnected 07:35:25.734019 Received QUIT (on stdin) 07:35:25.734047 quits 07:35:25.734096 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 574 === End of file server.cmd === Start of file stderr574 URL: ftp://127.0.0.1:34427/fully_simulated/UNIX/*.txt === End of file stderr574 === Start of file valgrind574 ==106128== ==106128== Process terminating with default action of signal 4 (SIGILL) ==106128== Illegal opcode at address 0x51C2DB3 ==106128== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106128== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106128== by 0x51C2DB3: Curl_open (url.c:541) ==106128== by 0x513D46F: curl_easy_init (easy.c:372) ==106128== by 0x4014326: test_lib574.lto_priv.0 (lib574.c:47) ==106128== by 0x4003443: main (first.c:167) ==106128== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x533CFA5: __tsearch (tsearch.c:337) ==106128== by 0x533CFA5: tsearch (tsearch.c:290) ==106128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106128== by 0x524F3F0: add_alias2 (gconCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind507 ./libtest/libtests lib507 http://non-existing-host.haxx.se/ > log/17/stdout507 2> log/17/stderr507 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind509 ./libtest/libtests lib509 nothing > log/5/stdout509 2> log/5/stderr509 v_conf.c:176) ==106128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== ==106128== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x533CFA5: __tsearch (tsearch.c:337) ==106128== by 0x533CFA5: tsearch (tsearch.c:290) ==106128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== ==106128== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== ==106128== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== ==106128== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106128== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106128== by 0x51C2D03: Curl_open (url.c:520) ==106128== by 0x513D46F: curl_easy_init (easy.c:372) ==106128== by 0x4014326: test_lib574.lto_priv.0 (lib574.c:47) ==106128== by 0x4003443: main (first.c:167) ==106128== ==106128== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x533CFA5: __tsearch (tsearch.c:337) ==106128== by 0x533CFA5: tsearch (tsearch.c:290) ==106128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== ==106128== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106128== by 0x525A142: setlocale (setlocale.c:337) ==106128== by 0x400336E: main (first.c:123) ==106128== === End of file valgrind574 test 0507...[multi interface get with non-existing host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind507 ./libtest/libtests lib507 http://non-existing-host.haxx.se/ > log/17/stdout507 2> log/17/stderr507 libtests returned 132, when expecting 6 507: exit FAILED == Contents of files in the log/17/ dir after test 507 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind507 ./libtest/libtests lib507 http://non-existing-host.haxx.se/ > log/17/stdout507 2> log/17/stderr507 === End of file commands.log === Start of file http_server.log 07:35:08.289808 ====> Client connect 07:35:08.289838 accept_connection 3 returned 4 07:35:08.289854 accept_connection 3 returned 0 07:35:08.289866 Read 93 bytes 07:35:08.289876 Process 93 bytes request 07:35:08.289887 Got request: GET /verifiedserver HTTP/1.1 07:35:08.289896 Are-we-friendly question received 07:35:08.289922 Wrote request (93 bytes) input to log/17/server.input 07:35:08.289937 Identifying ourselves as friends 07:35:08.289999 Response sent (56 bytes) and written to log/17/server.response 07:35:08.290008 special request received, no persistency 07:35:08.290017 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 507 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr507 URL: http://non-existing-host.haxx.se/ === End of file stderr507 === Start of file valgrind507 ==102212== ==102212== Process terminating with default action of signal 4 (SIGILL) ==102212== Illegal opcode at address 0x518AA97 ==102212== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==102212== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==102212== by 0x518AA97: Curl_multi_handle (multi.c:236) ==102212== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==102212== by 0x4003443: main (first.c:167) ==102212== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x533CFA5: __tsearch (tsearch.c:337) ==102212== by 0x533CFA5: tsearch (tsearch.c:290) ==102212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102212== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102212== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== ==102212== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x533CFA5: __tsearch (tsearch.c:337) ==102212== by 0x533CFA5: tsearch (tsearch.c:290) ==102212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102212== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102212== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== ==102212== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==102212== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102212== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==102212== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==102212== by 0x4003443: main (first.c:167) ==102212== ==102212== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102212== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102212== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== ==102212== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102212== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102212== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== ==102212== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x533CFA5: __tsearch (tsearch.c:337) ==102212== by 0x533CFA5: tsearch (tsearch.c:290) ==102212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102212== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102212== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== ==102212== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102212== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102212== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102212== by 0x525A142: setlocale (setlocale.c:337) ==102212== by 0x400336E: main (first.c:123) ==102212== === End of file valgrind507 cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind578 ./libtest/libtests lib578 http://127.0.0.1:37963/578 log/14/ip578 > log/14/stdout578 2> log/14/stderr578 * starts no server test 0509...[initialization with memory callbacks and actual usage] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind509 ./libtest/libtests lib509 nothing > log/5/stdout509 2> log/5/stderr509 509: stdout FAILED: --- log/5/check-expected 2025-07-18 07:35:26.693778776 +0000 +++ log/5/check-generated 2025-07-18 07:35:26.693778776 +0000 @@ -1 +0,0 @@ -Callbacks were invoked![LF] == Contents of files in the log/5/ dir after test 509 === Start of file check-expected Callbacks were invoked![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind509 ./libtest/libtests lib509 nothing > log/5/stdout509 2> log/5/stderr509 === End of file commands.log === Start of file server.cmd Testnum 509 === End of file server.cmd === Start of file stderr509 URL: nothing === End of file stderr509 === Start of file valgrind509 ==102126== ==102126== Process terminating with default action of signal 4 (SIGILL) ==102126== Illegal opcode at address 0x51C2DB3 ==102126== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102126== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102126== by 0x51C2DB3: Curl_open (url.c:541) ==102126== by 0x513D46F: curl_easy_init (easy.c:372) ==102126== by 0x40082CA: test_lib509.lto_priv.0 (lib509.c:91) ==102126== by 0x4003443: main (first.c:167) ==102126== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x533CFA5: __tsearch (tsearch.c:337) ==102126== by 0x533CFA5: tsearch (tsearch.c:290) ==102126== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102126== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102126== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102126== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102126== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102126== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== ==102126== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x533CFA5: __tsearch (tsearch.c:337) ==102126== by 0x533CFA5: tsearch (tsearch.c:290) ==102126== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102126== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102126== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== ==102126== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102126== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102126== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102126== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102126== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102126== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== ==102126== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102126== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102126== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== ==102126== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102126== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102126== by 0x51C2D03: Curl_open (url.c:520) ==102126== by 0x513D46F: curl_easy_init (easy.c:372) ==102126== by 0x40082CA: test_lib509.lto_priv.0 (lib509.c:91) ==102126== by 0x4003443: main (first.c:167) ==102126== ==102126== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x533CFA5: __tsearch (tsearch.c:337) ==102126== by 0x533CFA5: tsearch (tsearch.c:290) ==102126== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102126== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102126== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102126== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102126== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102126== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== ==102126== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102126== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102126== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102126== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102126== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102126== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102126== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102126== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102126== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102126== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102126== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102126== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102126== by 0x525A142: setlocale (setlocale.c:337) ==102126== by 0x400336E: main (first.c:123) ==102126== === End of file valgrind509 test 0578...[HTTP POST lower than MAX_INITIAL_POST_SIZE with progress callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind578 ./libtest/libtests lib578 http://127.0.0.1:37963/578 log/14/ip578 > log/14/stdout578 2> log/14/stderr578 578: data FAILED: --- log/14/check-expected 2025-07-18 07:35:26.727112110 +0000 +++ log/14/check-generated 2025-07-18 07:35:26.727112110 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -ETag: "21025-dc7-39462498"[CR][LF] -Accept-Ranges: bytes[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] --foo-[LF] == Contents of files in the log/14/ dir after test 578 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] ETag: "21025-dc7-39462498"[CR][LF] Accept-Ranges: bytes[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind578 ./libtest/libtests lib578 http://127.0.0.1:37963/578 log/14/ip578 > log/14/stdout578 2> log/14/stderr578 === End of file commands.log === Start of file http_server.log 07:35:25.936334 ====> Client connect 07:35:25.936359 accept_connection 3 returned 4 07:35:25.936370 accept_connection 3 returned 0 07:35:25.936380 Read 93 bytes 07:35:25.936386 Process 93 bytes request 07:35:25.936396 Got request: GET /verifiedserver HTTP/1.1 07:35:25.936403 Are-we-friendly question received 07:35:25.936420 Wrote request (93 bytes) input to log/14/server.input 07:35:25.936432 Identifying ourselves as friends 07:35:25.936482 Response sent (56 bytes) and written to log/14/server.response 07:35:25.936489 special request received, no persistency 07:35:25.936495 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 578 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr578 URL: http://127.0.0.1:37963/578 === End of file stderr578 === Start of file valgrind578 ==106254== ==106254== Process terminating with default action of signal 4 (SIGILL) ==106254== Illegal opcode at address 0x51C2DB3 ==106254== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106254== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106254== by 0x51C2DB3: Curl_open (url.c:541) ==106254== by 0x513D46F: curl_easy_init (easy.c:372) ==106254== by 0x40145CA: test_lib578.lto_priv.0 (lib578.c:63) ==106254== by 0x4003443: main (first.c:167) ==106254== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x533CFA5: __tsearch (tsearch.c:337) ==106254== by 0x533CFA5: tsearch (tsearch.c:290) ==106254== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106254== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106254== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106254== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106254== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106254== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== ==106254== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x533CFA5: __tsearch (tsearch.c:337) ==106254== by 0x533CFA5: tsearch (tsearch.c:290) ==106254== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106254== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106254== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== ==106254== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106254== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106254== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106254== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106254== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106254== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== ==106254== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106254== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106254== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== ==106254== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106254== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106254== by 0x51C2D03: Curl_open (url.c:520) ==106254== by 0x513D46F: curl_easy_init (easy.c:372) ==106254== by 0x40145CA: test_lib578.lto_priv.0 (lib578.c:63) ==106254== by 0x4003443: main (first.c:167) ==106254== ==106254== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x533CFA5: __tsearch (tsearch.c:337) ==106254== by 0x533CFA5: tsearch (tsearch.c:290) ==106254== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106254== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106254== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106254== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106254== by 0x524F7CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind576 ./libtest/libtests lib576 ftp://127.0.0.1:34613/fully_simulated/UNIX/* > log/3/stdout576 2> log/3/stderr576 75: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106254== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== ==106254== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106254== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106254== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106254== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106254== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106254== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106254== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106254== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106254== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106254== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106254== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106254== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106254== by 0x525A142: setlocale (setlocale.c:337) ==106254== by 0x400336E: main (first.c:123) ==106254== === End of file valgrind578 test 0576...[FTP wildcard - skip/parser_correctness/CURLOPT_FNMATCH_FUNCTION (Unix)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind576 ./libtest/libtests lib576 ftp://127.0.0.1:34613/fully_simulated/UNIX/* > log/3/stdout576 2> log/3/stderr576 576: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:26.813778779 +0000 +++ log/3/check-generated 2025-07-18 07:35:26.813778779 +0000 @@ -1,152 +0,0 @@ -=============================================================[LF] -Remains: 14[LF] -Filename: .[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 20480B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 27 5:12[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 13[LF] -Filename: ..[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 20480B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 23 3:12[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 12[LF] -Filename: chmod1[LF] -Permissions: r--r--r-- (parsed => 444)[LF] -Size: 38B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Jan 11 10:00[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 444[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 11[LF] -Filename: chmod2[LF] -Permissions: rw-rw-rw- (parsed => 666)[LF] -Size: 38B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Feb 1 8:00[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 666[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 10[LF] -Filename: chmod3[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 38B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Feb 1 8:00[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 777[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 9[LF] -Filename: chmod4[LF] -Permissions: --S--S--t (parsed => 7001)[LF] -Size: 4096B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: May 4 4:31[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 8[LF] -Filename: chmod5[LF] -Permissions: --s--s--T (parsed => 7110)[LF] -Size: 4096B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: May 4 4:31[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 7[LF] -Filename: empty_file.dat[LF] -Permissions: rw-r--r-- (parsed => 644)[LF] -Size: 0B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 27 11:01[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 6[LF] -Filename: file.txt[LF] -Permissions: rw-r--r-- (parsed => 644)[LF] -Size: 35B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 27 11:01[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This is content of file "file.txt"[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 5[LF] -Filename: link[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 0B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Jan 6 4:42[LF] -Filetype: symlink[LF] -Target: file.txt[LF] -=============================================================[LF] -Remains: 4[LF] -Filename: link_absolute[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 0B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Jan 6 4:45[LF] -Filetype: symlink[LF] -Target: /data/ftp/file.txt[LF] -=============================================================[LF] -Remains: 3[LF] -Filename: .NeXT[LF] -Permissions: rwxrwxrwx (parsed => 777)[LF] -Size: 4096B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Jan 23 2:05[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 2[LF] -Filename: someothertext.txt[LF] -Permissions: rw-r--r-- (parsed => 644)[LF] -Size: 47B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 27 11:01[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -# THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 1[LF] -Filename: weirddir.txt[LF] -Permissions: rwxr-xrwx (parsed => 757)[LF] -Size: 4096B[LF] -User: ftp-default[LF] -Group: ftp-default[LF] -Time: Apr 23 3:12[LF] -Filetype: directory[LF] -=============================================================[LF] == Contents of files in the log/3/ dir after test 576 === Start of file check-expected =============================================================[LF] Remains: 14[LF] Filename: .[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 20480B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 27 5:12[LF] Filetype: directory[LF] =============================================================[LF] Remains: 13[LF] Filename: ..[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 20480B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 23 3:12[LF] Filetype: directory[LF] =============================================================[LF] Remains: 12[LF] Filename: chmod1[LF] Permissions: r--r--r-- (parsed => 444)[LF] Size: 38B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Jan 11 10:00[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 444[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 11[LF] Filename: chmod2[LF] Permissions: rw-rw-rw- (parsed => 666)[LF] Size: 38B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Feb 1 8:00[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 666[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 10[LF] Filename: chmod3[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 38B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Feb 1 8:00[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 777[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 9[LF] Filename: chmod4[LF] Permissions: --S--S--t (parsed => 7001)[LF] Size: 4096B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: May 4 4:31[LF] Filetype: directory[LF] =============================================================[LF] Remains: 8[LF] Filename: chmod5[LF] Permissions: --s--s--T (parsed => 7110)[LF] Size: 4096B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: May 4 4:31[LF] Filetype: directory[LF] =============================================================[LF] Remains: 7[LF] Filename: empty_file.dat[LF] Permissions: rw-r--r-- (parsed => 644)[LF] Size: 0B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 27 11:01[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 6[LF] Filename: file.txt[LF] Permissions: rw-r--r-- (parsed => 644)[LF] Size: 35B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 27 11:01[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This is content of file "file.txt"[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 5[LF] Filename: link[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 0B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Jan 6 4:42[LF] Filetype: symlink[LF] Target: file.txt[LF] =============================================================[LF] Remains: 4[LF] Filename: link_absolute[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 0B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Jan 6 4:45[LF] Filetype: symlink[LF] Target: /data/ftp/file.txt[LF] =============================================================[LF] Remains: 3[LF] Filename: .NeXT[LF] Permissions: rwxrwxrwx (parsed => 777)[LF] Size: 4096B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Jan 23 2:05[LF] Filetype: directory[LF] =============================================================[LF] Remains: 2[LF] Filename: someothertext.txt[LF] Permissions: rw-r--r-- (parsed => 644)[LF] Size: 47B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 27 11:01[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] # THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 1[LF] Filename: weirddir.txt[LF] Permissions: rwxr-xrwx (parsed => 757)[LF] Size: 4096B[LF] User: ftp-default[LF] Group: ftp-default[LF] Time: Apr 23 3:12[LF] Filetype: directory[LF] =============================================================[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind576 ./libtest/libtests lib576 ftp://127.0.0.1:34613/fully_simulated/UNIX/* > log/3/stdout576 2> log/3/stderr576 === End of file commands.log === Start of file ftp_server.log 07:35:26.087490 ====> Client connect 07:35:26.087601 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:26.087894 < "USER anonymous" 07:35:26.087933 > "331 We are happy you popped in![CR][LF]" 07:35:26.088043 < "PASS ftp@example.com" 07:35:26.088061 > "230 Welcome you silly person[CR][LF]" 07:35:26.088162 < "PWD" 07:35:26.088180 > "257 "/" is current directory[CR][LF]" 07:35:26.088294 < "EPSV" 07:35:26.088311 ====> Passive DATA channel requested by client 07:35:26.088320 DATA sockfilt for passive data channel starting... 07:35:26.089304 DATA sockfilt for passive data channel started (pid 106252) 07:35:26.089377 DATA sockfilt for passive data channel listens on port 42837 07:35:26.089402 > "229 Entering Passive Mode (|||42837|)[LF]" 07:35:26.089412 Client has been notified that DATA conn will be accepted on port 42837 07:35:26.089575 Client connects to port 42837 07:35:26.089597 ====> Client established passive DATA connection on port 42837 07:35:26.089638 < "TYPE I" 07:35:26.089654 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:26.089755 < "SIZE verifiedserver" 07:35:26.089781 > "213 17[CR][LF]" 07:35:26.089883 < "RETR verifiedserver" 07:35:26.089903 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:26.089953 =====> Closing passive DATA connection... 07:35:26.089964 Server disconnects passive DATA connection 07:35:26.090070 Server disconnected passive DATA connection 07:35:26.090093 DATA sockfilt for passive data channel quits (pid 106252) 07:35:26.090336 DATA sockfilt for passive data channel quit (pid 106252) 07:35:26.090356 =====> Closed passive DATA connection 07:35:26.090373 > "226 File transfer complete[CR][LF]" 07:35:26.133713 < "QUIT" 07:35:26.133751 > "221 bye bye baby[CR][LF]" 07:35:26.134026 MAIN sockfilt said DISC 07:35:26.134067 ====> Client disconnected 07:35:26.134121 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:26.933387 ====> Client connect 07:35:26.933577 Received DATA (on stdin) 07:35:26.933606 > 160 bytes data, server => client 07:35:26.933619 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:26.933627 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:26.933647 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:26.933730 < 16 bytes data, client => server 07:35:26.933742 'USER anonymous\r\n' 07:35:26.933918 Received DATA (on stdin) 07:35:26.933927 > 33 bytes data, server => client 07:35:26.933934 '331 We are happy you popped in!\r\n' 07:35:26.933968 < 22 bytes data, client => server 07:35:26.933976 'PASS ftp@example.com\r\n' 07:35:26.934042 Received DATA (on stdin) 07:35:26.934050 > 30 bytes data, server => client 07:35:26.934057 '230 Welcome you silly person\r\n' 07:35:26.934089 < 5 bytes data, client => server 07:35:26.934097 'PWD\r\n' 07:35:26.934156 Received DATA (on stdin) 07:35:26.934171 > 30 bytes data, server => client 07:35:26.934179 '257 "/" is current directory\r\n' 07:35:26.934216 < 6 bytes data, client => server 07:35:26.934223 'EPSV\r\n' 07:35:26.935396 Received DATA (on stdin) 07:35:26.935405 > 38 bytes data, server => client 07:35:26.935413 '229 Entering Passive Mode (|||42837|)\n' 07:35:26.935520 < 8 bytes data, client => server 07:35:26.935528 'TYPE I\r\n' 07:35:26.935636 Received DATA (on stdin) 07:35:26.935644 > 33 bytes data, server => client 07:35:26.935651 '200 I modify TYPE as you wanted\r\n' 07:35:26.935683 < 21 bytes data, client => server 07:35:26.935690 'SIZE verifiedserver\r\n' 07:35:26.935766 Received DATA (on stdin) 07:35:26.935774 > 8 bytes data, server => client 07:35:26.935781 '213 17\r\n' 07:35:26.935812 < 21 bytes data, client => server 07:35:26.935819 'RETR verifiedserver\r\n' 07:35:26.935904 Received DATA (on stdin) 07:35:26.935918 > 29 bytes data, server => client 07:35:26.935926 '150 Binary junk (17 bytes).\r\n' 07:35:26.936356 Received DATA (on stdin) 07:35:26.936365 > 28 bytes data, server => client 07:35:26.936395 '226 File transfer complete\r\n' 07CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind520 ./libtest/libtests lib520 ftp://127.0.0.1:45671/520 > log/20/stdout520 2> log/20/stderr520 :35:26.979536 < 6 bytes data, client => server 07:35:26.979564 'QUIT\r\n' 07:35:26.979735 Received DATA (on stdin) 07:35:26.979743 > 18 bytes data, server => client 07:35:26.979750 '221 bye bye baby\r\n' 07:35:26.979953 ====> Client disconnect 07:35:26.980104 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:26.935175 Running IPv4 version 07:35:26.935210 Listening on port 42837 07:35:26.935234 Wrote pid 106252 to log/3/server/ftp_sockdata.pid 07:35:26.935247 Received PING (on stdin) 07:35:26.935305 Received PORT (on stdin) 07:35:26.935498 ====> Client connect 07:35:26.935945 Received DATA (on stdin) 07:35:26.935954 > 17 bytes data, server => client 07:35:26.935962 'WE ROOLZ: 81974\r\n' 07:35:26.936019 Received DISC (on stdin) 07:35:26.936028 ====> Client forcibly disconnected 07:35:26.936082 Received QUIT (on stdin) 07:35:26.936091 quits 07:35:26.936192 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 576 === End of file server.cmd === Start of file stderr576 URL: ftp://127.0.0.1:34613/fully_simulated/UNIX/* === End of file stderr576 === Start of file valgrind576 ==106301== ==106301== Process terminating with default action of signal 4 (SIGILL) ==106301== Illegal opcode at address 0x51C2DB3 ==106301== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106301== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106301== by 0x51C2DB3: Curl_open (url.c:541) ==106301== by 0x513D46F: curl_easy_init (easy.c:372) ==106301== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==106301== by 0x4003443: main (first.c:167) ==106301== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x533CFA5: __tsearch (tsearch.c:337) ==106301== by 0x533CFA5: tsearch (tsearch.c:290) ==106301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106301== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106301== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== ==106301== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x533CFA5: __tsearch (tsearch.c:337) ==106301== by 0x533CFA5: tsearch (tsearch.c:290) ==106301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106301== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106301== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== ==106301== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106301== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106301== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== ==106301== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106301== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106301== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== ==106301== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106301== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106301== by 0x51C2D03: Curl_open (url.c:520) ==106301== by 0x513D46F: curl_easy_init (easy.c:372) ==106301== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==106301== by 0x4003443: main (first.c:167) ==106301== ==106301== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x533CFA5: __tsearch (tsearch.c:337) ==106301== by 0x533CFA5: tsearch (tsearch.c:290) ==106301== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106301== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106301== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== ==106301== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106301== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106301== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106301== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106301== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106301== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106301== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106301== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106301== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106301== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106301== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106301== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106301== by 0x525A142: setlocale (setlocale.c:337) ==106301== by 0x400336E: main (first.c:123) ==106301== === End of file valgrind576 test 0520...[FTP RETR with FILETIME] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind520 ./libtest/libtests lib520 ftp://127.0.0.1:45671/520 > log/20/stdout520 2> log/20/stderr520 520: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 520 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind520 ./libtest/libtests lib520 ftp://127.0.0.1:45671/520 > log/20/stdout520 2> log/20/stderr520 === End of file commands.log === Start of file ftp_server.log 07:35:08.807440 ====> Client connect 07:35:08.807611 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.807978 < "USER anonymous" 07:35:08.808018 > "331 We are happy you popped in![CR][LF]" 07:35:08.808165 < "PASS ftp@example.com" 07:35:08.808186 > "230 Welcome you silly person[CR][LF]" 07:35:08.808305 < "PWD" 07:35:08.808327 > "257 "/" is current directory[CR][LF]" 07:35:08.808534 < "EPSV" 07:35:08.808575 ====> Passive DATA channel requested by client 07:35:08.808589 DATA sockfilt for passive data channel starting... 07:35:08.810529 DATA sockfilt for passive data channel started (pid 102913) 07:35:08.810647 DATA sockfilt for passive data channel listens on port 35063 07:35:08.810687 > "229 Entering Passive Mode (|||35063|)[LF]" 07:35:08.810707 Client has been notified that DATA conn will be accepted on port 35063 07:35:08.810895 Client connects to port 35063 07:35:08.810924 ====> Client established passive DATA connection on port 35063 07:35:08.810995 < "TYPE I" 07:35:08.811024 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.811265 < "SIZE verifiedserver" 07:35:08.811301 > "213 17[CR][LF]" 07:35:08.811455 < "RETR verifiedserver" 07:35:08.811490 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.811562 =====> Closing passive DATA connection... 07:35:08.811577 Server disconnects passive DATA connection 07:35:08.811652 Server disconnected passive DATA connection 07:35:08.811671 DATA sockfilt for passive data channel quits (pid 102913) 07:35:08.811899 DATA sockfilt for passive data channel quit (pid 102913) 07:35:08.811920 =====> Closed passive DATA connection 07:35:08.811945 > "226 File transfer complete[CR][LF]" 07:35:08.856956 < "QUIT" 07:35:08.857016 > "221 bye bye baby[CR][LF]" 07:35:08.857423 MAIN sockfilt said DISC 07:35:08.857466 ====> Client disconnected 07:35:08.857534 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.653300 ====> Client connect 07:35:08.653608 Received DATA (on stdin) 07:35:08.653621 > 160 bytes data, server => client 07:35:08.653632 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.653643 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.653652 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.653792 < 16 bytes data, client => server 07:35:08.653840 'USER anonymous\r\n' 07:35:08.654014 Received DATA (on stdin) 07:35:08.654029 > 33 bytes data, server => client 07:35:08.654037 '331 We are happy you popped in!\r\n' 07:35:08.654090 < 22 bytes data, client => server 07:35:08.654101 'PASS ftp@example.com\r\n' 07:35:08.654171 Received DATA (on stdin) 07:35:08.654179 > 30 bytes data, server => client 07:35:08.654187 '230 Welcome you silly person\r\n' 07:35:08.654230 < 5 bytes data, client => server 07:35:08.654239 'PWD\r\n' 07:35:08.654311 Received DATA (on stdin) 07:35:08.654319 > 30 bytes data, server => client 07:35:08.654327 '257 "/" is current directory\r\n' 07:35:08.654385 < 6 bytes data, client => server 07:35:08.654403 'EPSV\r\n' 07:35:08.656705 Received DATA (on stdin) 07:35:08.656719 > 38 bytes data, server => client 07:35:08.656731 '229 Entering Passive Mode (|||35063|)\n' 07:35:08.656858 < 8 bytes data, client => server 07:35:08.656880 'TYPE I\r\n' 07:35:08.657015 Received DATA (on stdin) 07:35:08.657030 > 33 bytes data, server => client 07:35:08.657041 '200 I modify TYPE as you wanted\r\n' 07:35:08.657187 < 21 bytes data, client => server 07:35:08.657208 'SIZE verifiedserver\r\n' 07:35:08.657293 Received DATA (on stdin) 07:35:08.657308 > 8 bytes data, server => client 07:35:08.657318 '213 17\r\n' 07:35:08.657374 < 21 bytes data, client => server 07:35:08.657386 'RETR verifiedserver\r\n' 07:35:08.657567 Received DATA (on stdin) 07:35:08.657581 > 29 bytes data, server => client 07:35:08.657591 '150 Binary junk (17 bytes).\r\n' 07:35:08.657934 Received DATA (on stdin) 07:35:08.657946 > 28 bytes data, server => client 07:35:08.657956 '226 File transfer complete\r\n' 07:35:08.702750 < 6 bytes data, client => server 07:35:08.702775 'QUIT\r\n' 07:35:08.702998 Received DATA (on stdin) 07:35:08.703024 > 18 bytes data, server => client 07:35:08.703035 '221 bye bye baby\r\n' 07:35:08.703355 ====> Client disconnect 07:35:08.703523 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.656322 Running IPv4 version 07:35:08.656391 Listening on port 35063 07:35:08.656433 Wrote pid 102913 to log/20/server/ftp_sockdata.pid 07:35:08.656454 Received PING (on stdin) 07:35:08.656553 Received PORT (on stdin) 07:35:08.656833 ====> Client connect 07:35:08.657500 Received DATA (on stdin) 07:35:08.657525 > 17 bytes data, server => client 07:35:08.657536 'WE ROOLZ: 88588\r\n' 07:35:08.657565 Received DISC (on stdin) 07:35:08.657578 ====> Client forcibly disconnected 07:35:08.657669 Received QUIT (on stdin) 07:35:08.657683 quits 07:35:08.657739 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY MDTM 213 20030405060708 Testnum 520 === End of file server.cmd === Start of file stderr520 URL: ftp://127.0.0.1:45671/520 === End of file stderr520 === Start of file valgrind520 ==103178== ==103178== Process terminating with default action of signal 4 (SIGILL) ==103178== Illegal opcode at address 0x51C2DB3 ==103178== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103178== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103178== by 0x51C2DB3: Curl_open (url.c:541) ==103178== by 0x513D46F: curl_easy_init (easy.c:372) ==103178== by 0x4005AAA: test_lib520.lto_priv.0 (lib520.c:38) ==103178== by 0x4003443: main (first.c:167) ==103178== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x533CFA5: __tsearch (tsearch.c:337) ==103178== by 0x533CFA5: tsearch (tsearch.c:290) ==103178== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103178== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103178== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103178== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103178== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103178== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== ==103178== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x533CFA5: __tsearch (tsearch.c:337) ==103178== by 0x533CFA5: tsearch (tsearch.c:290) ==103178== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103178== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103178== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== ==103178== 681 bytes in 17 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind567 ./libtest/libtests lib567 rtsp://127.0.0.1:34021/567 > log/10/stdout567 2> log/10/stderr567 blocks are possibly lost in loss record 614 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103178== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103178== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103178== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103178== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103178== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== ==103178== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103178== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103178== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== ==103178== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103178== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103178== by 0x51C2D03: Curl_open (url.c:520) ==103178== by 0x513D46F: curl_easy_init (easy.c:372) ==103178== by 0x4005AAA: test_lib520.lto_priv.0 (lib520.c:38) ==103178== by 0x4003443: main (first.c:167) ==103178== ==103178== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x533CFA5: __tsearch (tsearch.c:337) ==103178== by 0x533CFA5: tsearch (tsearch.c:290) ==103178== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103178== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103178== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103178== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103178== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103178== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== ==103178== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103178== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103178== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103178== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103178== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103178== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103178== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103178== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103178== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103178== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103178== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103178== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103178== by 0x525A142: setlocale (setlocale.c:337) ==103178== by 0x400336E: main (first.c:123) ==103178== === End of file valgrind520 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/10/server/rtsp_server.pid" --portfile "log/10/server/rtsp_server.port" --logfile "log/10/rtsp_server.log" --logdir "log/10" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 105797 port 34021 * pid rtsp => 105797 105797 test 0567...[simple RTSP OPTIONS command] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind567 ./libtest/libtests lib567 rtsp://127.0.0.1:34021/567 > log/10/stdout567 2> log/10/stderr567 567: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 567 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind567 ./libtest/libtests lib567 rtsp://127.0.0.1:34021/567 > log/10/stdout567 2> log/10/stderr567 === End of file commands.log === Start of file rtsp_server.log 07:35:25.223150 Running IPv4 version on port 34021 07:35:25.223229 Wrote pid 105797 to log/10/server/rtsp_server.pid 07:35:25.223257 Wrote port 34021 to log/10/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 567 === End of file server.cmd === Start of file stderr567 URL: rtsp://127.0.0.1:34021/567 === End of file stderr567 === Start of file valgrind567 ==106356== ==106356== Process terminating with default action of signal 4 (SIGILL) ==106356== Illegal opcode at address 0x51C2DB3 ==106356== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106356== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106356== by 0x51C2DB3: Curl_open (url.c:541) ==106356== by 0x513D46F: curl_easy_init (easy.c:372) ==106356== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==106356== by 0x4003443: main (first.c:167) ==106356== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x533CFA5: __tsearch (tsearch.c:337) ==106356== by 0x533CFA5: tsearch (tsearch.c:290) ==106356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== ==106356== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x533CFA5: __tsearch (tsearch.c:337) ==106356== by 0x533CFA5: tsearch (tsearch.c:290) ==106356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== ==106356== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106356== at 0xCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind513 ./libtest/libtests lib513 http://127.0.0.1:45457/513 > log/2/stdout513 2> log/2/stderr513 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind564 ./libtest/libtests lib564 ftp://127.0.0.1:33107/path/564 127.0.0.1:44729 > log/18/stdout564 2> log/18/stderr564 50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== ==106356== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== ==106356== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106356== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106356== by 0x51C2D03: Curl_open (url.c:520) ==106356== by 0x513D46F: curl_easy_init (easy.c:372) ==106356== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==106356== by 0x4003443: main (first.c:167) ==106356== ==106356== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x533CFA5: __tsearch (tsearch.c:337) ==106356== by 0x533CFA5: tsearch (tsearch.c:290) ==106356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== ==106356== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106356== by 0x525A142: setlocale (setlocale.c:337) ==106356== by 0x400336E: main (first.c:123) ==106356== === End of file valgrind567 startnew: ./server/servers socksd --port 0 --pidfile log/18/server/socks_server.pid --portfile log/18/server/socks_server.port --reqfile log/18/socksd-request.log --logfile log/18/socks_server.log --backend 127.0.0.1 --config log/18/server.cmd RUN: SOCKS server is now running PID 105949 * pid socks => 105949 105949 test 0564...[FTP RETR a file over a SOCKS proxy using the multi interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind564 ./libtest/libtests lib564 ftp://127.0.0.1:33107/path/564 127.0.0.1:44729 > log/18/stdout564 2> log/18/stderr564 564: stdout FAILED: --- log/18/check-expected 2025-07-18 07:35:27.167112120 +0000 +++ log/18/check-generated 2025-07-18 07:35:27.167112120 +0000 @@ -1,6 +0,0 @@ -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] == Contents of files in the log/18/ dir after test 564 === Start of file check-expected data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind564 ./libtest/libtests lib564 ftp://127.0.0.1:33107/path/564 127.0.0.1:44729 > log/18/stdout564 2> log/18/stderr564 === End of file commands.log === Start of file ftp_server.log 07:35:25.372794 ====> Client connect 07:35:25.372915 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:25.373131 < "USER anonymous" 07:35:25.373158 > "331 We are happy you popped in![CR][LF]" 07:35:25.373273 < "PASS ftp@example.com" 07:35:25.373293 > "230 Welcome you silly person[CR][LF]" 07:35:25.373414 < "PWD" 07:35:25.373438 > "257 "/" is current directory[CR][LF]" 07:35:25.373547 < "EPSV" 07:35:25.373567 ====> Passive DATA channel requested by client 07:35:25.373576 DATA sockfilt for passive data channel starting... 07:35:25.374733 DATA sockfilt for passive data channel started (pid 105848) 07:35:25.374814 DATA sockfilt for passive data channel listens on port 44297 07:35:25.374841 > "229 Entering Passive Mode (|||44297|)[LF]" 07:35:25.374853 Client has been notified that DATA conn will be accepted on port 44297 07:35:25.375008 Client connects to port 44297 07:35:25.375028 ====> Client established passive DATA connection on port 44297 07:35:25.375071 < "TYPE I" 07:35:25.375088 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:25.375199 < "SIZE verifiedserver" 07:35:25.375223 > "213 17[CR][LF]" 07:35:25.375323 < "RETR verifiedserver" 07:35:25.375346 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:25.375399 =====> Closing passive DATA connection... 07:35:25.375410 Server disconnects passive DATA connection 07:35:25.375568 Server disconnected passive DATA connection 07:35:25.375587 DATA sockfilt for passive data channel quits (pid 105848) 07:35:25.375762 DATA sockfilt for passive data channel quit (pid 105848) 07:35:25.375780 =====> Closed passive DATA connection 07:35:25.375798 > "226 File transfer complete[CR][LF]" 07:35:25.417112 < "QUIT" 07:35:25.417210 > "221 bye bye baby[CR][LF]" 07:35:25.417326 MAIN sockfilt said DISC 07:35:25.417343 ====> Client disconnected 07:35:25.417425 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:25.218690 ====> Client connect 07:35:25.218907 Received DATA (on stdin) 07:35:25.218920 > 160 bytes data, server => client 07:35:25.218929 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:25.218937 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:25.218944 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:25.218997 < 16 bytes data, client => server 07:35:25.219006 'USER anonymous\r\n' 07:35:25.219143 Received DATA (on stdin) 07:35:25.219152 > 33 bytes data, server => client 07:35:25.219159 '331 We are happy you popped in!\r\n' 07:35:25.219196 < 22 bytes data, client => server 07:35:25.219204 'PASS ftp@example.com\r\n' 07:35:25.219275 Received DATA (on stdin) 07:35:25.219283 > 30 bytes data, server => client 07:35:25.219291 '230 Welcome you silly person\r\n' 07:35:25.219337 < 5 bytes data, client => server 07:35:25.219348 'PWD\r\n' 07:35:25.219421 Received DATA (on stdin) 07:35:25.219429 > 30 bytes data, server => client 07:35:25.219437 '257 "/" is current directory\r\n' 07:35:25.219481 < 6 bytes data, client => server 07:35:25.219492 'EPSV\r\n' 07:35:25.220839 Received DATA (on stdin) 07:35:25.220849 > 38 bytes data, server => client 07:35:25.220857 '229 Entering Passive Mode (|||44297|)\n' 07:35:25.220952 < 8 bytes data, client => server 07:35:25.220960 'TYPE I\r\n' 07:35:25.221071 Received DATA (on stdin) 07:35:25.221080 > 33 bytes data, server => client 07:35:25.221087 '200 I modify TYPE as you wanted\r\n' 07:35:25.221121 < 21 bytes data, client => server 07:35:25.221129 'SIZE verifiedserver\r\n' 07:35:25.221205 Received DATA (on stdin) 07:35:25.221213 > 8 bytes data, server => client 07:35:25.221220 '213 17\r\n' 07:35:25.221251 < 21 bytes data, client => server 07:35:25.221259 'RETR verifiedserver\r\n' 07:35:25.221393 Received DATA (on stdin) 07:35:25.221403 > 29 bytes data, server => client 07:35:25.221411 '150 Binary junk (17 bytes).\r\n' 07:35:25.221781 Received DATA (on stdin) 07:35:25.221793 > 28 bytes data, server => client 07:35:25.221801 '226 File transfer complete\r\n' 07:35:25.262846 < 6 bytes data, client => server 07:35:25.262870 'QUIT\r\n' 07:35:25.263199 Received DATA (on stdin) 07:35:25.263208 > 18 bytes data, server => client 07:35:25.263216 '221 bye bye baby\r\n' 07:35:25.263277 ====> Client disconnect 07:35:25.263362 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:25.220593 Running IPv4 version 07:35:25.220634 Listening on port 44297 07:35:25.220661 Wrote pid 105848 to log/18/server/ftp_sockdata.pid 07:35:25.220675 Received PING (on stdin) 07:35:25.220737 Received PORT (on stdin) 07:35:25.220932 ====> Client connect 07:35:25.221428 Received DATA (on stdin) 07:35:25.221438 > 17 bytes data, server => client 07:35:25.221447 'WE ROOLZ: 82311\r\n' 07:35:25.221466 Received DISC (on stdin) 07:35:25.221474 ====> Client forcibly disconnected 07:35:25.221575 Received QUIT (on stdin) 07:35:25.221584 quits 07:35:25.221630 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 564 === End of file server.cmd === Start of file socks_server.log 07:35:25.267927 Running IPv4 version 07:35:25.267976 Listening on port 44729 07:35:25.268001 Wrote pid 105949 to log/18/server/socks_server.pid 07:35:25.268021 Wrote port 44729 to log/18/server/socks_server.port === End of file socks_server.log === Start of file stderr564 URL: ftp://127.0.0.1:33107/path/564 === End of file stderr564 === Start of file valgrind564 ==106405== ==106405== Process terminating with default action of signal 4 (SIGILL) ==106405== Illegal opcode at address 0x51C2DB3 ==106405== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106405== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106405== by 0x51C2DB3: Curl_open (url.c:541) ==106405== by 0x513D46F: curl_easy_init (easy.c:372) ==106405== by 0x40554B5: test_lib564.part.0.lto_priv.0 (lib564.c:39) ==106405== by 0x4003443: main (first.c:167) ==106405== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x533CFA5: __tsearch (tsearch.c:337) ==106405== by 0x533CFA5: tsearch (tsearch.c:290) ==106405== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106405== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106405== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106405== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind524 ./libtest/libtests lib524 ftp://127.0.0.1:43393/path/to/ > log/11/stdout524 2> log/11/stderr524 dir.h:101) ==106405== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106405== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== ==106405== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x533CFA5: __tsearch (tsearch.c:337) ==106405== by 0x533CFA5: tsearch (tsearch.c:290) ==106405== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106405== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106405== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== ==106405== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106405== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106405== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106405== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106405== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106405== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== ==106405== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106405== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106405== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== ==106405== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106405== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106405== by 0x51C2D03: Curl_open (url.c:520) ==106405== by 0x513D46F: curl_easy_init (easy.c:372) ==106405== by 0x40554B5: test_lib564.part.0.lto_priv.0 (lib564.c:39) ==106405== by 0x4003443: main (first.c:167) ==106405== ==106405== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x533CFA5: __tsearch (tsearch.c:337) ==106405== by 0x533CFA5: tsearch (tsearch.c:290) ==106405== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106405== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106405== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106405== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106405== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106405== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== ==106405== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106405== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106405== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106405== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106405== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106405== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106405== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106405== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106405== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106405== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106405== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106405== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106405== by 0x525A142: setlocale (setlocale.c:337) ==106405== by 0x400336E: main (first.c:123) ==106405== === End of file valgrind564 test 0524...[FTP upload with target URL ending with slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind524 ./libtest/libtests lib524 ftp://127.0.0.1:43393/path/to/ > log/11/stdout524 2> log/11/stderr524 524: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 524 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind524 ./libtest/libtests lib524 ftp://127.0.0.1:43393/path/to/ > log/11/stdout524 2> log/11/stderr524 === End of file commands.log === Start of file ftp_server.log 07:35:08.831422 ====> Client connect 07:35:08.831676 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:08.832063 < "USER anonymous" 07:35:08.832114 > "331 We are happy you popped in![CR][LF]" 07:35:08.832285 < "PASS ftp@example.com" 07:35:08.832310 > "230 Welcome you silly person[CR][LF]" 07:35:08.832462 < "PWD" 07:35:08.832486 > "257 "/" is current directory[CR][LF]" 07:35:08.832664 < "EPSV" 07:35:08.832688 ====> Passive DATA channel requested by client 07:35:08.832702 DATA sockfilt for passive data channel starting... 07:35:08.834340 DATA sockfilt for passive data channel started (pid 103063) 07:35:08.834436 DATA sockfilt for passive data channel listens on port 43297 07:35:08.834474 > "229 Entering Passive Mode (|||43297|)[LF]" 07:35:08.834492 Client has been notified that DATA conn will be accepted on port 43297 07:35:08.834696 Client connects to port 43297 07:35:08.834723 ====> Client established passive DATA connection on port 43297 07:35:08.834783 < "TYPE I" 07:35:08.834805 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:08.834944 < "SIZE verifiedserver" 07:35:08.834978 > "213 17[CR][LF]" 07:35:08.835202 < "RETR verifiedserver" 07:35:08.835269 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:08.835365 =====> Closing passive DATA connection... 07:35:08.835381 Server disconnects passive DATA connection 07:35:08.835479 Server disconnected passive DATA connection 07:35:08.835512 DATA sockfilt for passive data channel quits (pid 103063) 07:35:08.835747 DATA sockfilt for passive data channel quit (pid 103063) 07:35:08.835769 =====> Closed passive DATA connection 07:35:08.835795 > "226 File transfer complete[CR][LF]" 07:35:08.877156 < "QUIT" 07:35:08.877225 > "221 bye bye baby[CR][LF]" 07:35:08.878345 MAIN sockfilt said DISC 07:35:08.878376 ====> Client disconnected 07:35:08.878442 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:08.677240 ====> Client connect 07:35:08.677693 Received DATA (on stdin) 07:35:08.677716 > 160 bytes data, server => client 07:35:08.677729 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:08.677740 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:08.677750 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:08.677874 < 16 bytes data, client => server 07:35:08.677885 'USER anonymous\r\n' 07:35:08.678111 Received DATA (on stdin) 07:35:08.678127 > 33 bytes data, server => client 07:35:08.678138 '331 We are happy you popped in!\r\n' 07:35:08.678195 < 22 bytes data, client => server 07:35:08.678210 'PASS ftp@example.com\r\n' 07:35:08.678299 Received DATA (on stdin) 07:35:08.678314 > 30 bytes data, server => client 07:35:08.678324 '230 Welcome you silly person\r\n' 07:35:08.678381 < 5 bytes data, client => server 07:35:08.678391 'PWD\r\n' 07:35:08.678473 Received DATA (on stdin) 07:35:08.678483 > 30 bytes data, server => client 07:35:08.678493 '257 "/" is current directory\r\n' 07:35:08.678559 < 6 bytes data, client => server 07:35:08.678577 'EPSV\r\n' 07:35:08.680488 Received DATA (on stdin) 07:35:08.680501 > 38 bytes data, server => client 07:35:08.680516 '229 Entering Passive Mode (|||43297|)\n' 07:35:08.680648 < 8 bytes data, client => server 07:35:08.680674 'TYPE I\r\n' 07:35:08.680778 Received DATA (on stdin) 07:35:08.680792 > 33 bytes data, server => client 07:35:08.680802 '200 I modify TYPE as you wanted\r\n' 07:35:08.680878 < 21 bytes data, client => server 07:35:08.680892 'SIZE verifiedserver\r\n' 07:35:08.680968 Received DATA (on stdin) 07:35:08.680984 > 8 bytes data, server => client 07:35:08.680994 '213 17\r\n' 07:35:08.681052 < 21 bytes data, client => server 07:35:08.681062 'RETR verifiedserver\r\n' 07:35:08.681314 Received DATA (on stdin) 07:35:08.681333 > 29 bytes data, server => client 07:35:08.681345 '150 Binary junk (17 bytes).\r\n' 07:35:08.681786 Received DATA (on stdin) 07:35:08.681799 > 28 bytes data, server => client 07:35:08.681809 '226 File transfer complete\r\n' 07:35:08.722884 < 6 bytes data, client => server 07:35:08.722926 'QUIT\r\n' 07:35:08.723228 Received DATA (on stdin) 07:35:08.723243 > 18 bytes data, server => client 07:35:08.723256 '221 bye bye baby\r\n' 07:35:08.724279 ====> Client disconnect 07:35:08.724431 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:08.680158 Running IPv4 version 07:35:08.680221 Listening on port 43297 07:35:08.680255 Wrote pid 103063 to log/11/server/ftp_sockdata.pid 07:35:08.680274 Received PING (on stdin) 07:35:08.680352 Received PORT (on stdin) 07:35:08.680635 ====> Client connect 07:35:08.681276 Received DATA (on stdin) 07:35:08.681289 > 17 bytes data, server => client 07:35:08.681300 'WE ROOLZ: 85489\r\n' 07:35:08.681383 Received DISC (on stdin) 07:35:08.681403 ====> Client forcibly disconnected 07:35:08.681516 Received QUIT (on stdin) 07:35:08.681530 quits 07:35:08.681587 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 524 === End of file server.cmd === Start of file stderr524 URL: ftp://127.0.0.1:43393/path/to/ === End of file stderr524 === Start of file valgrind524 ==103233== ==103233== Process terminating with default action of signal 4 (SIGILL) ==103233== Illegal opcode at address 0x51C2DB3 ==103233== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103233== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103233== by 0x51C2DB3: Curl_open (url.c:541) ==103233== by 0x513D46F: curl_easy_init (easy.c:372) ==103233== by 0x4005CEA: test_lib524.lto_priv.0 (lib524.c:38) ==103233== by 0x4003443: main (first.c:167) ==103233== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103233== by 0x533CFA5: __tsearch (tsearch.c:337) ==103233== by 0x533CFA5: tsearch (tsearch.c:290) ==103233== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103233== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103233== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103233== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103233== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103233== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== ==103233== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103233== by 0x533CFA5: __tsearch (tsearch.c:337) ==103233== by 0x533CFA5: tsearch (tsearch.c:290) ==103233== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103233== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103233== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== ==103233== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103233== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103233== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103233== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103233== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103233== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103233== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== ==103233== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103233== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103233== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103233== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== ==103233== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103233== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103233== by 0x51C2D03: Curl_open (url.c:520) ==103233== by 0x513D46F: curl_easy_init (easy.c:372) ==103233== by 0x4005CEA: test_lib524.lto_priv.0 (lib524.c:38) ==103233== by 0x4003443: main (first.c:167) ==103233== ==103233== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind569 ./libtest/libtests lib569 rtsp://127.0.0.1:43743/569 log/16/idfile569.txt > log/16/stdout569 2> log/16/stderr569 ==103233== by 0x533CFA5: __tsearch (tsearch.c:337) ==103233== by 0x533CFA5: tsearch (tsearch.c:290) ==103233== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103233== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103233== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103233== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103233== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103233== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== ==103233== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103233== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103233== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103233== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103233== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103233== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103233== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103233== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103233== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103233== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103233== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103233== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103233== by 0x525A142: setlocale (setlocale.c:337) ==103233== by 0x400336E: main (first.c:123) ==103233== === End of file valgrind524 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/16/server/rtsp_server.pid" --portfile "log/16/server/rtsp_server.port" --logfile "log/16/rtsp_server.log" --logdir "log/16" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106005 port 43743 * pid rtsp => 106005 106005 test 0569...[RTSP Session ID parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind569 ./libtest/libtests lib569 rtsp://127.0.0.1:43743/569 log/16/idfile569.txt > log/16/stdout569 2> log/16/stderr569 569: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 569 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind569 ./libtest/libtests lib569 rtsp://127.0.0.1:43743/569 log/16/idfile569.txt > log/16/stdout569 2> log/16/stderr569 === End of file commands.log === Start of file rtsp_server.log 07:35:25.365705 Running IPv4 version on port 43743 07:35:25.365782 Wrote pid 106005 to log/16/server/rtsp_server.pid 07:35:25.365806 Wrote port 43743 to log/16/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 569 === End of file server.cmd === Start of file stderr569 URL: rtsp://127.0.0.1:43743/569 === End of file stderr569 === Start of file valgrind569 ==106462== ==106462== Process terminating with default action of signal 4 (SIGILL) ==106462== Illegal opcode at address 0x51C2DB3 ==106462== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106462== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106462== by 0x51C2DB3: Curl_open (url.c:541) ==106462== by 0x513D46F: curl_easy_init (easy.c:372) ==106462== by 0x401631E: test_lib569.lto_priv.0 (lib569.c:53) ==106462== by 0x4003443: main (first.c:167) ==106462== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x533CFA5: __tsearch (tsearch.c:337) ==106462== by 0x533CFA5: tsearch (tsearch.c:290) ==106462== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106462== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106462== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106462== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106462== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106462== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== ==106462== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x533CFA5: __tsearch (tsearch.c:337) ==106462== by 0x533CFA5: tsearch (tsearch.c:290) ==106462== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106462== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106462== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== ==106462== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106462== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106462== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106462== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106462== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106462== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== ==106462== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106462== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106462== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== ==106462== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==106462== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106462== by 0x51C2D03: Curl_open (url.c:520) ==106462== by 0x513D46F: curl_easy_init (easy.c:372) ==106462== by 0x401631E: test_lib569.lto_priv.0 (lib569.c:53) ==106462== by 0x4003443: main (first.c:167) ==106462== ==106462== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x533CFA5: __tseCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind570 ./libtest/libtests lib570 rtsp://127.0.0.1:36929/570 > log/8/stdout570 2> log/8/stderr570 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind568 ./libtest/libtests lib568 rtsp://127.0.0.1:32861/568 log/4/file568.txt > log/4/stdout568 2> log/4/stderr568 arch (tsearch.c:337) ==106462== by 0x533CFA5: tsearch (tsearch.c:290) ==106462== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106462== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106462== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106462== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106462== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106462== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== ==106462== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==106462== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106462== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106462== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106462== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106462== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106462== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106462== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106462== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106462== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106462== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106462== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106462== by 0x525A142: setlocale (setlocale.c:337) ==106462== by 0x400336E: main (first.c:123) ==106462== === End of file valgrind569 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/8/server/rtsp_server.pid" --portfile "log/8/server/rtsp_server.port" --logfile "log/8/rtsp_server.log" --logdir "log/8" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106006 port 36929 * pid rtsp => 106006 106006 test 0570...[RTSP CSeq and Session Mismatch checks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind570 ./libtest/libtests lib570 rtsp://127.0.0.1:36929/570 > log/8/stdout570 2> log/8/stderr570 570: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 570 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind570 ./libtest/libtests lib570 rtsp://127.0.0.1:36929/570 > log/8/stdout570 2> log/8/stderr570 === End of file commands.log === Start of file rtsp_server.log 07:35:25.366404 Running IPv4 version on port 36929 07:35:25.366467 Wrote pid 106006 to log/8/server/rtsp_server.pid 07:35:25.366491 Wrote port 36929 to log/8/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 570 === End of file server.cmd === Start of file stderr570 URL: rtsp://127.0.0.1:36929/570 === End of file stderr570 === Start of file valgrind570 ==106461== ==106461== Process terminating with default action of signal 4 (SIGILL) ==106461== Illegal opcode at address 0x51C2DB3 ==106461== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106461== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106461== by 0x51C2DB3: Curl_open (url.c:541) ==106461== by 0x513D46F: curl_easy_init (easy.c:372) ==106461== by 0x401668A: test_lib570.lto_priv.0 (lib570.c:41) ==106461== by 0x4003443: main (first.c:167) ==106461== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x533CFA5: __tsearch (tsearch.c:337) ==106461== by 0x533CFA5: tsearch (tsearch.c:290) ==106461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106461== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106461== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== ==106461== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x533CFA5: __tsearch (tsearch.c:337) ==106461== by 0x533CFA5: tsearch (tsearch.c:290) ==106461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106461== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106461== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== ==106461== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106461== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106461== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== ==106461== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106461== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106461== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== ==106461== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106461== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106461== by 0x51C2D03: Curl_open (url.c:520) ==106461== by 0x513D46F: curl_easy_init (easy.c:372) ==106461== by 0x401668A: test_lib570.lto_priv.0 (lib570.c:41) ==106461== by 0x4003443: main (first.c:167) ==106461== ==106461== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x533CFA5: __tsearch (tsearch.c:337) ==106461== by 0x533CFA5: tsearch (tsearch.c:290) ==106461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106461== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106461== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== ==106461== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106461== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106461== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106461== by 0x525A142: setlocale (setlocale.c:337) ==106461== by 0x400336E: main (first.c:123) ==106461== === End of file valgrind570 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/4/server/rtsp_server.pid" --portfile "log/4/server/rtsp_server.port" --logfile "log/4/rtsp_server.log" --logdir "log/4" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106004 port 32861 * pid rtsp => 106004 106004 test 0568...[RTSP Announce (PUT and POST style) test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind568 ./libtest/libtests lib568 rtsp://127.0.0.1:32861/568 log/4/file568.txt > log/4/stdout568 2> log/4/stderr568 568: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 568 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind568 ./libtest/libtests lib568 rtsp://127.0.0.1:32861/568 log/4/file568.txt > log/4/stdout568 2> log/4/stderr568 === End of file commands.log === Start of file file568.txt v=0 o=mhandley 2890844526 2890845468 IN IP4 126.16.64.4 s=SDP Seminar i=A Seminar on the session description protocol u=http://www.cs.ucl.ac.uk/staff/M.Handley/sdp.03.ps e=mjh@isi.edu (Mark Handley) c=IN IP4 224.2.17.12/127 t=2873397496 2873404696 a=recvonly m=audio 3456 RTP/AVP 0 m=video 2232 RTP/AVP 31 === End of file file568.txt === Start of file rtsp_server.log 07:35:25.363612 Running IPv4 version on port 32861 07:35:25.363681 Wrote pid 106004 to log/4/server/rtsp_server.pid 07:35:25.363705 Wrote port 32861 to log/4/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 568 === End of file server.cmd === Start of file stderr568 URL: rtsp://127.0.0.1:32861/568 === End of file stderr568 === Start of file valgrind568 ==106460== ==106460== Process terminating with default action of signal 4 (SIGILL) ==106460== Illegal opcode at address 0x51C2DB3 ==106460== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106460== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106460== by 0x51C2DB3: Curl_open (url.c:541) ==106460== by 0x513D46F: curl_easy_init (easy.c:372) ==106460== by 0x4016E3E: test_lib568.lto_priv.0 (lib568.c:48) ==106460== by 0x4003443: main (first.c:167) ==106460== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x533CFA5: __tsearch (tsearch.c:337) ==106460== by 0x533CFA5: tsearch (tsearch.c:290) ==106460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== ==106460== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x533CFA5: __tsearch (tsearch.c:337) ==106460== by 0x533CFA5: tsearch (tsearch.c:290) ==106460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== ==106460== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== ==106460== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== ==106460== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106460== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106460== by 0x51C2D03: Curl_open (url.c:520) ==106460== by 0x513D46F: curl_easy_init (easy.c:372) ==106460== by 0x4016E3E: test_lib568.ltCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind526 ./libtest/libtests lib526 ftp://127.0.0.1:38701/path/526 > log/21/stdout526 2> log/21/stderr526 o_priv.0 (lib568.c:48) ==106460== by 0x4003443: main (first.c:167) ==106460== ==106460== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x533CFA5: __tsearch (tsearch.c:337) ==106460== by 0x533CFA5: tsearch (tsearch.c:290) ==106460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106460== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== ==106460== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106460== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106460== by 0x525A142: setlocale (setlocale.c:337) ==106460== by 0x400336E: main (first.c:123) ==106460== === End of file valgrind568 test 0526...[FTP RETR same file using different handles but same connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind526 ./libtest/libtests lib526 ftp://127.0.0.1:38701/path/526 > log/21/stdout526 2> log/21/stderr526 526: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 526 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind526 ./libtest/libtests lib526 ftp://127.0.0.1:38701/path/526 > log/21/stdout526 2> log/21/stderr526 === End of file commands.log === Start of file ftp_server.log 07:35:10.475276 ====> Client connect 07:35:10.475441 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:10.475714 < "USER anonymous" 07:35:10.475749 > "331 We are happy you popped in![CR][LF]" 07:35:10.475864 < "PASS ftp@example.com" 07:35:10.475880 > "230 Welcome you silly person[CR][LF]" 07:35:10.475966 < "PWD" 07:35:10.475983 > "257 "/" is current directory[CR][LF]" 07:35:10.476070 < "EPSV" 07:35:10.476086 ====> Passive DATA channel requested by client 07:35:10.476093 DATA sockfilt for passive data channel starting... 07:35:10.477318 DATA sockfilt for passive data channel started (pid 103530) 07:35:10.477408 DATA sockfilt for passive data channel listens on port 36317 07:35:10.477432 > "229 Entering Passive Mode (|||36317|)[LF]" 07:35:10.477442 Client has been notified that DATA conn will be accepted on port 36317 07:35:10.477595 Client connects to port 36317 07:35:10.477635 ====> Client established passive DATA connection on port 36317 07:35:10.477707 < "TYPE I" 07:35:10.477727 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:10.477840 < "SIZE verifiedserver" 07:35:10.477865 > "213 17[CR][LF]" 07:35:10.477958 < "RETR verifiedserver" 07:35:10.477979 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:10.478028 =====> Closing passive DATA connection... 07:35:10.478037 Server disconnects passive DATA connection 07:35:10.478089 Server disconnected passive DATA connection 07:35:10.478100 DATA sockfilt for passive data channel quits (pid 103530) 07:35:10.478287 DATA sockfilt for passive data channel quit (pid 103530) 07:35:10.478309 =====> Closed passive DATA connection 07:35:10.478327 > "226 File transfer complete[CR][LF]" 07:35:10.520282 < "QUIT" 07:35:10.520311 > "221 bye bye baby[CR][LF]" 07:35:10.520914 MAIN sockfilt said DISC 07:35:10.520931 ====> Client disconnected 07:35:10.520969 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:10.321165 ====> Client connect 07:35:10.321445 Received DATA (on stdin) 07:35:10.321463 > 160 bytes data, server => client 07:35:10.321474 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:10.321485 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:10.321494 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:10.321569 < 16 bytes data, client => server 07:35:10.321585 'USER anonymous\r\n' 07:35:10.321735 Received DATA (on stdin) 07:35:10.321743 > 33 bytes data, server => client 07:35:10.321750 '331 We are happy you popped in!\r\n' 07:35:10.321793 < 22 bytes data, client => server 07:35:10.321801 'PASS ftp@example.com\r\n' 07:35:10.321861 Received DATA (on stdin) 07:35:10.321868 > 30 bytes data, server => client 07:35:10.321875 '230 Welcome you silly person\r\n' 07:35:10.321902 < 5 bytes data, client => server 07:35:10.321908 'PWD\r\n' 07:35:10.321963 Received DATA (on stdin) 07:35:10.321970 > 30 bytes data, server => client 07:35:10.321976 '257 "/" is current directory\r\n' 07:35:10.322007 < 6 bytes data, client => server 07:35:10.322014 'EPSV\r\n' 07:35:10.323428 Received DATA (on stdin) 07:35:10.323439 > 38 bytes data, server => client 07:35:10.323446 '229 Entering Passive Mode (|||36317|)\n' 07:35:10.323518 < 8 bytes data, client => server 07:35:10.323525 'TYPE I\r\n' 07:35:10.323710 Received DATA (on stdin) 07:35:10.323719 > 33 bytes data, server => client 07:35:10.323726 '200 I modify TYPE as you wanted\r\n' 07:35:10.323774 < 21 bytes data, client => server 07:35:10.323781 'SIZE verifiedserver\r\n' 07:35:10.323847 Received DATA (on stdin) 07:35:10.323854 > 8 bytes data, server => client 07:35:10.323861 '213 17\r\n' 07:35:10.323891 < 21 bytes data, client => server 07:35:10.323898 'RETR verifiedserver\r\n' 07:35:10.324008 Received DATA (on stdin) 07:35:10.324019 > 29 bytes data, server => client 07:35:10.324026 '150 Binary junk (17 bytes).\r\n' 07:35:10.324311 Received DATA (on stdin) 07:35:10.324319 > 28 bytes data, server => client 07:35:10.324326 '226 File transfer complete\r\n' 07:35:10.366157 < 6 bytes data, client => server 07:35:10.366179 'QUIT\r\n' 07:35:10.366303 Received DATA (on stdin) 07:35:10.366315 > 18 bytes data, server => client 07:35:10.366326 '221 bye bye baby\r\n' 07:35:10.366865 ====> Client disconnect 07:35:10.366950 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:10.323173 Running IPv4 version 07:35:10.323216 Listening on port 36317 07:35:10.323241 Wrote pid 103530 to log/21/server/ftp_sockdata.pid 07:35:10.323256 Received PING (on stdin) 07:35:10.323326 Received PORT (on stdin) 07:35:10.323521 ====> Client connect 07:35:10.323967 Received DATA (on stdin) 07:35:10.323975 > 17 bytes data, server => client 07:35:10.323982 'WE ROOLZ: 81322\r\n' 07:35:10.324025 Received DISC (on stdin) 07:35:10.324036 ====> Client forcibly disconnected 07:35:10.324084 Received QUIT (on stdin) 07:35:10.324090 quits 07:35:10.324147 ============> CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind579 ./libtest/libtests lib579 http://127.0.0.1:39077/579 log/7/ip579 > log/7/stdout579 2> log/7/stderr579 sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 526 === End of file server.cmd === Start of file stderr526 URL: ftp://127.0.0.1:38701/path/526 === End of file stderr526 === Start of file valgrind526 ==103532== ==103532== Process terminating with default action of signal 4 (SIGILL) ==103532== Illegal opcode at address 0x51C2DB3 ==103532== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103532== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103532== by 0x51C2DB3: Curl_open (url.c:541) ==103532== by 0x513D46F: curl_easy_init (easy.c:372) ==103532== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103532== by 0x4003443: main (first.c:167) ==103532== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x533CFA5: __tsearch (tsearch.c:337) ==103532== by 0x533CFA5: tsearch (tsearch.c:290) ==103532== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103532== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103532== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103532== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103532== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103532== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== ==103532== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x533CFA5: __tsearch (tsearch.c:337) ==103532== by 0x533CFA5: tsearch (tsearch.c:290) ==103532== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103532== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103532== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== ==103532== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103532== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103532== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103532== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103532== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103532== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== ==103532== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103532== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103532== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== ==103532== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103532== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103532== by 0x51C2D03: Curl_open (url.c:520) ==103532== by 0x513D46F: curl_easy_init (easy.c:372) ==103532== by 0x400C769: test_lib526.lto_priv.0 (lib526.c:65) ==103532== by 0x4003443: main (first.c:167) ==103532== ==103532== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x533CFA5: __tsearch (tsearch.c:337) ==103532== by 0x533CFA5: tsearch (tsearch.c:290) ==103532== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103532== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103532== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103532== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103532== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103532== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== ==103532== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103532== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103532== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103532== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103532== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103532== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103532== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103532== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103532== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103532== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103532== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103532== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103532== by 0x525A142: setlocale (setlocale.c:337) ==103532== by 0x400336E: main (first.c:123) ==103532== === End of file valgrind526 test 0579...[small chunked HTTP POSTs with digest auth. and progress callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind579 ./libtest/libtests lib579 http://127.0.0.1:39077/579 log/7/ip579 > log/7/stdout579 2> log/7/stderr579 579: data FAILED: --- log/7/check-expected 2025-07-18 07:35:27.330445456 +0000 +++ log/7/check-generated 2025-07-18 07:35:27.330445456 +0000 @@ -1,17 +0,0 @@ -HTTP/1.1 100 Continue[CR][LF] -Server: Microsoft-IIS/5.0[CR][LF] -Date: Sun, 03 Apr 2005 14:57:45 GMT[CR][LF] -X-Powered-By: ASP.NET[CR][LF] -[CR][LF] -HTTP/1.1 401 authentication please swsbounce[CR][LF] -Server: Microsoft-IIS/6.0[CR][LF] -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 0[CR][LF] -[CR][LF] -HTTP/1.1 200 A OK[CR][LF] -Server: Microsoft-IIS/6.0[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 3[CR][LF] -[CR][LF] -ok[LF] == Contents of files in the log/7/ dir after test 579 === Start of file check-expected HTTP/1.1 100 Continue[CR][LF] Server: Microsoft-IIS/5.0[CR][LF] Date: Sun, 03 Apr 2005 14:57:45 GMT[CR][LF] X-Powered-By: ASP.NET[CR][LF] [CR][LF] HTTP/1.1 401 authentication please swsbounce[CR][LF] Server: Microsoft-IIS/6.0[CR][LF] WWW-Authenticate: Digest realm="testrealm", nonce="1053604144"[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 0[CR][LF] [CR][LF] HTTP/1.1 200 A OK[CR][LF] Server: Microsoft-IIS/6.0[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 3[CR][LF] [CR][LF] ok[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind579 ./libtest/libtests lib579 http://127.0.0.1:39077/579 log/7/ip579 > log/7/stdout579 2> log/7/stderr579 === End of file commands.log === Start of file http_server.log 07:35:26.417257 ====> Client connect 07:35:26.417281 accept_connection 3 returned 4 07:35:26.417293 accept_connection 3 returned 0 07:35:26.417304 Read 93 bytes 07:35:26.417312 Process 93 bytes request 07:35:26.417321 Got request: GET /verifiedserver HTTP/1.1 07:35:26.417328 Are-we-friendly question received 07:35:26.417346 Wrote request (93 bytes) input to log/7/server.input 07:35:26.417358 Identifying ourselves as friends 07:35:26.417397 Response sent (56 bytes) and written to log/7/server.response 07:35:26.417404 special request received, no persistency 07:35:26.417411 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 579 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr579 URL: http://127.0.0.1:39077/579 === End of file stderr579 === Start of file valgrind579 ==106645== ==106645== Process terminating with default action of signal 4 (SIGILL) ==106645== Illegal opcode at address 0x51C2DB3 ==106645== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106645== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106645== by 0x51C2DB3: Curl_open (url.c:541) ==106645== by 0x513D46F: curl_easy_init (easy.c:372) ==106645== by 0x4016000: test_lib579.lto_priv.0 (lib579.c:116) ==106645== by 0x4003443: main (first.c:167) ==106645== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106645== by 0x533CFA5: __tsearch (tsearch.c:337) ==106645== by 0x533CFA5: tsearch (tsearch.c:290) ==106645== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106645== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106645== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106645== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106645== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106645== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== ==106645== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106645== by 0x533CFA5: __tsearch (tsearch.c:337) ==106645== by 0x533CFA5: tsearch (tsearch.c:290) ==106645== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106645== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106645== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== ==106645== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106645== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106645== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106645== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106645== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106645== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106645== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== ==106645== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106645== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106645== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106645== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== ==106645== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106645== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106645== by 0x51C2D03: Curl_open (url.c:520) ==106645== by 0x513D46F: curl_easy_init (easy.c:372) ==106645== by 0x4016000: test_lib579.lto_priv.0 (lib579.c:116) ==106645== by 0x4003443: main (first.c:167) ==106645== ==106645== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind581 ./libtest/libtests lib507 http://127.0.0.1:38941/581 > log/1/stdout581 2> log/1/stderr581 ==106645== by 0x533CFA5: __tsearch (tsearch.c:337) ==106645== by 0x533CFA5: tsearch (tsearch.c:290) ==106645== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106645== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106645== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106645== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106645== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106645== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== ==106645== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106645== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106645== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106645== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106645== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106645== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106645== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106645== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106645== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106645== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106645== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106645== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106645== by 0x525A142: setlocale (setlocale.c:337) ==106645== by 0x400336E: main (first.c:123) ==106645== === End of file valgrind579 test 0581...[multi interface, multiple Content-Type: headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind581 ./libtest/libtests lib507 http://127.0.0.1:38941/581 > log/1/stdout581 2> log/1/stderr581 581: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 581 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind581 ./libtest/libtests lib507 http://127.0.0.1:38941/581 > log/1/stdout581 2> log/1/stderr581 === End of file commands.log === Start of file http_server.log 07:35:26.439819 ====> Client connect 07:35:26.439842 accept_connection 3 returned 4 07:35:26.439854 accept_connection 3 returned 0 07:35:26.439864 Read 93 bytes 07:35:26.439872 Process 93 bytes request 07:35:26.439880 Got request: GET /verifiedserver HTTP/1.1 07:35:26.439887 Are-we-friendly question received 07:35:26.439904 Wrote request (93 bytes) input to log/1/server.input 07:35:26.439916 Identifying ourselves as friends 07:35:26.439954 Response sent (56 bytes) and written to log/1/server.response 07:35:26.439961 special request received, no persistency 07:35:26.439968 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 581 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr581 URL: http://127.0.0.1:38941/581 === End of file stderr581 === Start of file valgrind581 ==106685== ==106685== Process terminating with default action of signal 4 (SIGILL) ==106685== Illegal opcode at address 0x518AA97 ==106685== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==106685== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==106685== by 0x518AA97: Curl_multi_handle (multi.c:236) ==106685== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==106685== by 0x4003443: main (first.c:167) ==106685== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x533CFA5: __tsearch (tsearch.c:337) ==106685== by 0x533CFA5: tsearch (tsearch.c:290) ==106685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106685== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106685== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== ==106685== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x533CFA5: __tsearch (tsearch.c:337) ==106685== by 0x533CFA5: tsearch (tsearch.c:290) ==106685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106685== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106685== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== ==106685== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==106685== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106685== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==106685== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==106685== by 0x4003443: main (first.c:167) ==106685== ==106685== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106685== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106685== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== ==106685== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106685== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106685== by 0x524F74A: __gconv_read_conf (gconv_conf.c:50CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind580 ./libtest/libtests lib507 http://127.0.0.1:38675/580 > log/24/stdout580 2> log/24/stderr580 8) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== ==106685== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x533CFA5: __tsearch (tsearch.c:337) ==106685== by 0x533CFA5: tsearch (tsearch.c:290) ==106685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106685== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106685== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== ==106685== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106685== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106685== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106685== by 0x525A142: setlocale (setlocale.c:337) ==106685== by 0x400336E: main (first.c:123) ==106685== === End of file valgrind581 test 0580...[multi interface, multiple Location: headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind580 ./libtest/libtests lib507 http://127.0.0.1:38675/580 > log/24/stdout580 2> log/24/stderr580 580: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 580 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind580 ./libtest/libtests lib507 http://127.0.0.1:38675/580 > log/24/stdout580 2> log/24/stderr580 === End of file commands.log === Start of file http_server.log 07:35:26.432488 ====> Client connect 07:35:26.432518 accept_connection 3 returned 4 07:35:26.432531 accept_connection 3 returned 0 07:35:26.432541 Read 93 bytes 07:35:26.432548 Process 93 bytes request 07:35:26.432559 Got request: GET /verifiedserver HTTP/1.1 07:35:26.432566 Are-we-friendly question received 07:35:26.432584 Wrote request (93 bytes) input to log/24/server.input 07:35:26.432596 Identifying ourselves as friends 07:35:26.432673 Response sent (56 bytes) and written to log/24/server.response 07:35:26.432683 special request received, no persistency 07:35:26.432692 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 580 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr580 URL: http://127.0.0.1:38675/580 === End of file stderr580 === Start of file valgrind580 ==106672== ==106672== Process terminating with default action of signal 4 (SIGILL) ==106672== Illegal opcode at address 0x518AA97 ==106672== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==106672== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==106672== by 0x518AA97: Curl_multi_handle (multi.c:236) ==106672== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==106672== by 0x4003443: main (first.c:167) ==106672== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x533CFA5: __tsearch (tsearch.c:337) ==106672== by 0x533CFA5: tsearch (tsearch.c:290) ==106672== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106672== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106672== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106672== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106672== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106672== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== ==106672== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x533CFA5: __tsearch (tsearch.c:337) ==106672== by 0x533CFA5: tsearch (tsearch.c:290) ==106672== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106672== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106672== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== ==106672== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==106672== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106672== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==106672== by 0x4056355: test_lib507.part.0.lto_priv.0 (lib507.c:41) ==106672== by 0x4003443: main (first.c:167) ==106672== ==106672== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106672== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106672== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106672== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106672== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106672== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E2CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind504 ./libtest/libtests lib504 http://127.0.0.1:47/504 127.0.0.1:47 > log/12/stdout504 2> log/12/stderr504 46: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== ==106672== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106672== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106672== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== ==106672== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x533CFA5: __tsearch (tsearch.c:337) ==106672== by 0x533CFA5: tsearch (tsearch.c:290) ==106672== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106672== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106672== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106672== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106672== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106672== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== ==106672== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106672== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106672== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106672== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106672== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106672== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106672== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106672== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106672== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106672== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106672== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106672== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106672== by 0x525A142: setlocale (setlocale.c:337) ==106672== by 0x400336E: main (first.c:123) ==106672== === End of file valgrind580 * starts no server test 0504...[simple multi through local proxy without listener] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind504 ./libtest/libtests lib504 http://127.0.0.1:47/504 127.0.0.1:47 > log/12/stdout504 2> log/12/stderr504 libtests returned 132, when expecting 41 504: exit FAILED == Contents of files in the log/12/ dir after test 504 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind504 ./libtest/libtests lib504 http://127.0.0.1:47/504 127.0.0.1:47 > log/12/stdout504 2> log/12/stderr504 === End of file commands.log === Start of file server.cmd Testnum 504 === End of file server.cmd === Start of file stderr504 URL: http://127.0.0.1:47/504 === End of file stderr504 === Start of file valgrind504 ==102104== ==102104== Process terminating with default action of signal 4 (SIGILL) ==102104== Illegal opcode at address 0x51C2DB3 ==102104== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102104== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102104== by 0x51C2DB3: Curl_open (url.c:541) ==102104== by 0x513D46F: curl_easy_init (easy.c:372) ==102104== by 0x4056BF5: test_lib504.part.0.lto_priv.0 (lib504.c:47) ==102104== by 0x4003443: main (first.c:167) ==102104== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x533CFA5: __tsearch (tsearch.c:337) ==102104== by 0x533CFA5: tsearch (tsearch.c:290) ==102104== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102104== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102104== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102104== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102104== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102104== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== ==102104== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x533CFA5: __tsearch (tsearch.c:337) ==102104== by 0x533CFA5: tsearch (tsearch.c:290) ==102104== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102104== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102104== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== ==102104== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102104== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102104== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102104== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102104== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102104== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== ==102104== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102104== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102104== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== ==102104== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102104== at 0x50F8CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind571 ./libtest/libtests lib571 rtsp://127.0.0.1:45025/571 log/9/protofile571.txt > log/9/stdout571 2> log/9/stderr571 C13: calloc (vg_replace_malloc.c:1675) ==102104== by 0x51C2D03: Curl_open (url.c:520) ==102104== by 0x513D46F: curl_easy_init (easy.c:372) ==102104== by 0x4056BF5: test_lib504.part.0.lto_priv.0 (lib504.c:47) ==102104== by 0x4003443: main (first.c:167) ==102104== ==102104== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x533CFA5: __tsearch (tsearch.c:337) ==102104== by 0x533CFA5: tsearch (tsearch.c:290) ==102104== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102104== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102104== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102104== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102104== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102104== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== ==102104== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102104== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102104== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102104== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102104== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102104== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102104== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102104== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102104== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102104== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102104== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102104== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102104== by 0x525A142: setlocale (setlocale.c:337) ==102104== by 0x400336E: main (first.c:123) ==102104== === End of file valgrind504 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/9/server/rtsp_server.pid" --portfile "log/9/server/rtsp_server.port" --logfile "log/9/rtsp_server.log" --logdir "log/9" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106018 port 45025 * pid rtsp => 106018 106018 test 0571...[RTSP RTP Interleaving Test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind571 ./libtest/libtests lib571 rtsp://127.0.0.1:45025/571 log/9/protofile571.txt > log/9/stdout571 2> log/9/stderr571 571: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:27.553778795 +0000 +++ log/9/check-generated 2025-07-18 07:35:27.553778795 +0000 @@ -1,20 +0,0 @@ -RTP: message size 10, channel 1[LF] -RTP: message size 500, channel 0[LF] -RTP: message size 196, channel 0[LF] -RTP: message size 124, channel 0[LF] -RTP: message size 824, channel 0[LF] -RTP: message size 12, channel 0[LF] -RTP: message size 10, channel 1[LF] -RTP: message size 50, channel 0[LF] -RTP: message size 798, channel 0[LF] -RTP: message size 42, channel 0[LF] -RTP: message size 30, channel 1[LF] -RTP: message size 2048, channel 0[LF] -RTP: message size 85, channel 0[LF] -RTP: message size 24, channel 1[LF] -RTP: message size 13, channel 0[LF] -RTP: message size 33, channel 0[LF] -RTP: message size 127, channel 0[LF] -RTP: message size 35, channel 1[LF] -RTP PAYLOAD END CORRUPTED (11), [$][LF] -RTP: message size 63, channel 0[LF] == Contents of files in the log/9/ dir after test 571 === Start of file check-expected RTP: message size 10, channel 1[LF] RTP: message size 500, channel 0[LF] RTP: message size 196, channel 0[LF] RTP: message size 124, channel 0[LF] RTP: message size 824, channel 0[LF] RTP: message size 12, channel 0[LF] RTP: message size 10, channel 1[LF] RTP: message size 50, channel 0[LF] RTP: message size 798, channel 0[LF] RTP: message size 42, channel 0[LF] RTP: message size 30, channel 1[LF] RTP: message size 2048, channel 0[LF] RTP: message size 85, channel 0[LF] RTP: message size 24, channel 1[LF] RTP: message size 13, channel 0[LF] RTP: message size 33, channel 0[LF] RTP: message size 127, channel 0[LF] RTP: message size 35, channel 1[LF] RTP PAYLOAD END CORRUPTED (11), [$][LF] RTP: message size 63, channel 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind571 ./libtest/libtests lib571 rtsp://127.0.0.1:45025/571 log/9/protofile571.txt > log/9/stdout571 2> log/9/stderr571 === End of file commands.log === Start of file rtsp_server.log 07:35:25.576285 Running IPv4 version on port 45025 07:35:25.576346 Wrote pid 106018 to log/9/server/rtsp_server.pid 07:35:25.576369 Wrote port 45025 to log/9/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd rtp: part 2 channel 1 size 10 rtp: part 2 channel 0 size 500 rtp: part 2 channel 0 size 196 rtp: part 2 channel 0 size 124 rtp: part 2 channel 0 size 824 rtp: part 2 channel 0 size 18 size_err -6 rtp: part 3 channel 1 size 10 rtp: part 3 channel 0 size 50 rtp: part 4 channel 0 size 798 rtp: part 4 channel 0 size 42 rtp: part 4 channel 1 size 30 rtp: part 4 channel 0 size 2048 rtp: part 4 channel 0 size 85 rtp: part 4 channel 1 size 24 rtp: part 4 channel 0 size 17 size_err -4 rtp: part 4 channel 0 size 33 rtp: part 4 channel 0 size 127 rtp: part 4 channel 1 size 24 size_err 11 rtp: part 4 channel 0 size 37 rtp: part 4 channel 0 size 63 Testnum 571 === End of file server.cmd === Start of file stderr571 URL: rtsp://127.0.0.1:45025/571 === End of file stderr571 === Start of file valgrind571 ==106804== ==106804== Process terminating with default action of signal 4 (SIGILL) ==106804== Illegal opcode at address 0x51C2DB3 ==106804== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106804== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106804== by 0x51C2DB3: Curl_open (url.c:541) ==106804== by 0x513D46F: curl_easy_init (easy.c:372) ==106804== by 0x40169CE: test_lib571.lto_priv.0 (lib571.c:112) ==106804== by 0x4003443: main (first.c:167) ==106804== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x533CFA5: __tsearch (tsearch.c:337) ==106804== by 0x533CFA5: tsearch (tsearch.c:290) ==106804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== ==106804== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x533CFA5: __tsearch (tsearch.c:337) ==106804== by 0x533CFA5: tsearch (tsearch.c:290) ==106804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== ==106804== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106804== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106804== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== ==106804== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106804== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106804== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== ==106804== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==106804== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106804== by 0x51C2D03: Curl_open (url.c:520CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind584 ./libtest/libtests lib589 http://127.0.0.1:37963/584 > log/14/stdout584 2> log/14/stderr584 ) ==106804== by 0x513D46F: curl_easy_init (easy.c:372) ==106804== by 0x40169CE: test_lib571.lto_priv.0 (lib571.c:112) ==106804== by 0x4003443: main (first.c:167) ==106804== ==106804== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x533CFA5: __tsearch (tsearch.c:337) ==106804== by 0x533CFA5: tsearch (tsearch.c:290) ==106804== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== ==106804== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==106804== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106804== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106804== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106804== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106804== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106804== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106804== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106804== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106804== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106804== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106804== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106804== by 0x525A142: setlocale (setlocale.c:337) ==106804== by 0x400336E: main (first.c:123) ==106804== === End of file valgrind571 test 0584...[CURLOPT_MIMEPOST first set then set to NULL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind584 ./libtest/libtests lib589 http://127.0.0.1:37963/584 > log/14/stdout584 2> log/14/stderr584 584: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 584 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind584 ./libtest/libtests lib589 http://127.0.0.1:37963/584 > log/14/stdout584 2> log/14/stderr584 === End of file commands.log === Start of file http_server.log 07:35:26.602191 ====> Client connect 07:35:26.602218 accept_connection 3 returned 4 07:35:26.602232 accept_connection 3 returned 0 07:35:26.602244 Read 93 bytes 07:35:26.602251 Process 93 bytes request 07:35:26.602262 Got request: GET /verifiedserver HTTP/1.1 07:35:26.602269 Are-we-friendly question received 07:35:26.602288 Wrote request (93 bytes) input to log/14/server.input 07:35:26.602301 Identifying ourselves as friends 07:35:26.602342 Response sent (56 bytes) and written to log/14/server.response 07:35:26.602349 special request received, no persistency 07:35:26.602356 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 584 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr584 URL: http://127.0.0.1:37963/584 === End of file stderr584 === Start of file valgrind584 ==106869== ==106869== Process terminating with default action of signal 4 (SIGILL) ==106869== Illegal opcode at address 0x51C2DB3 ==106869== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106869== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106869== by 0x51C2DB3: Curl_open (url.c:541) ==106869== by 0x513D46F: curl_easy_init (easy.c:372) ==106869== by 0x401AECA: test_lib589.lto_priv.0 (lib589.c:38) ==106869== by 0x4003443: main (first.c:167) ==106869== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x533CFA5: __tsearch (tsearch.c:337) ==106869== by 0x533CFA5: tsearch (tsearch.c:290) ==106869== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106869== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106869== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106869== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106869== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106869== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== ==106869== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x533CFA5: __tsearch (tsearch.c:337) ==106869== by 0x533CFA5: tsearch (tsearch.c:290) ==106869== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106869== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106869== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== ==106869== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106869== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106869== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106869== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106869== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106869== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== ==106869== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106869== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106869== by 0x524Fcannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind585 ./libtest/libtests lib500 http://127.0.0.1:42345/585 > log/3/stdout585 2> log/3/stderr585 74A: __gconv_read_conf (gconv_conf.c:508) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== ==106869== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106869== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106869== by 0x51C2D03: Curl_open (url.c:520) ==106869== by 0x513D46F: curl_easy_init (easy.c:372) ==106869== by 0x401AECA: test_lib589.lto_priv.0 (lib589.c:38) ==106869== by 0x4003443: main (first.c:167) ==106869== ==106869== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x533CFA5: __tsearch (tsearch.c:337) ==106869== by 0x533CFA5: tsearch (tsearch.c:290) ==106869== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106869== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106869== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106869== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106869== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106869== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== ==106869== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106869== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106869== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106869== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106869== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106869== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106869== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106869== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106869== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106869== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106869== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106869== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106869== by 0x525A142: setlocale (setlocale.c:337) ==106869== by 0x400336E: main (first.c:123) ==106869== === End of file valgrind584 test 0585...[socket open/close callbacks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind585 ./libtest/libtests lib500 http://127.0.0.1:42345/585 > log/3/stdout585 2> log/3/stderr585 585: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 585 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind585 ./libtest/libtests lib500 http://127.0.0.1:42345/585 > log/3/stdout585 2> log/3/stderr585 === End of file commands.log === Start of file http_server.log 07:35:26.689993 ====> Client connect 07:35:26.690019 accept_connection 3 returned 4 07:35:26.690031 accept_connection 3 returned 0 07:35:26.690041 Read 93 bytes 07:35:26.690049 Process 93 bytes request 07:35:26.690059 Got request: GET /verifiedserver HTTP/1.1 07:35:26.690066 Are-we-friendly question received 07:35:26.690084 Wrote request (93 bytes) input to log/3/server.input 07:35:26.690096 Identifying ourselves as friends 07:35:26.690136 Response sent (56 bytes) and written to log/3/server.response 07:35:26.690143 special request received, no persistency 07:35:26.690150 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 585 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr585 URL: http://127.0.0.1:42345/585 === End of file stderr585 === Start of file valgrind585 ==106936== ==106936== Process terminating with default action of signal 4 (SIGILL) ==106936== Illegal opcode at address 0x51C2DB3 ==106936== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106936== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106936== by 0x51C2DB3: Curl_open (url.c:541) ==106936== by 0x513D46F: curl_easy_init (easy.c:372) ==106936== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==106936== by 0x4003443: main (first.c:167) ==106936== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x533CFA5: __tsearch (tsearch.c:337) ==106936== by 0x533CFA5: tsearch (tsearch.c:290) ==106936== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106936== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106936== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106936== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106936== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106936== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== ==106936== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x533CFA5: __tsearch (tsearch.c:337) ==106936== by 0x533CFA5: tsearch (tsearch.c:290) ==106936== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106936== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106936== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== ==106936== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106936== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106936== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106936== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106936== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106936== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind572 ./libtest/libtests lib572 rtsp://127.0.0.1:42689/572 log/13/file572.txt > log/13/stdout572 2> log/13/stderr572 936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== ==106936== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106936== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106936== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== ==106936== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106936== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106936== by 0x51C2D03: Curl_open (url.c:520) ==106936== by 0x513D46F: curl_easy_init (easy.c:372) ==106936== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==106936== by 0x4003443: main (first.c:167) ==106936== ==106936== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x533CFA5: __tsearch (tsearch.c:337) ==106936== by 0x533CFA5: tsearch (tsearch.c:290) ==106936== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106936== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106936== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106936== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106936== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106936== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== ==106936== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106936== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106936== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106936== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106936== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106936== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106936== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106936== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106936== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106936== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106936== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106936== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106936== by 0x525A142: setlocale (setlocale.c:337) ==106936== by 0x400336E: main (first.c:123) ==106936== === End of file valgrind585 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/13/server/rtsp_server.pid" --portfile "log/13/server/rtsp_server.port" --logfile "log/13/rtsp_server.log" --logdir "log/13" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106029 port 42689 * pid rtsp => 106029 106029 test 0572...[RTSP GET_PARAMETER (Put/Heartbeat/Post)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind572 ./libtest/libtests lib572 rtsp://127.0.0.1:42689/572 log/13/file572.txt > log/13/stdout572 2> log/13/stderr572 572: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 572 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind572 ./libtest/libtests lib572 rtsp://127.0.0.1:42689/572 log/13/file572.txt > log/13/stdout572 2> log/13/stderr572 === End of file commands.log === Start of file file572.txt scale speed === End of file file572.txt === Start of file rtsp_server.log 07:35:25.722128 Running IPv4 version on port 42689 07:35:25.722197 Wrote pid 106029 to log/13/server/rtsp_server.pid 07:35:25.722220 Wrote port 42689 to log/13/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 572 === End of file server.cmd === Start of file stderr572 URL: rtsp://127.0.0.1:42689/572 === End of file stderr572 === Start of file valgrind572 ==106973== ==106973== Process terminating with default action of signal 4 (SIGILL) ==106973== Illegal opcode at address 0x51C2DB3 ==106973== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==106973== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==106973== by 0x51C2DB3: Curl_open (url.c:541) ==106973== by 0x513D46F: curl_easy_init (easy.c:372) ==106973== by 0x40173BE: test_lib572.lto_priv.0 (lib572.c:48) ==106973== by 0x4003443: main (first.c:167) ==106973== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x533CFA5: __tsearch (tsearch.c:337) ==106973== by 0x533CFA5: tsearch (tsearch.c:290) ==106973== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106973== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106973== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106973== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106973== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106973== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106973== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== ==106973== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x533CFA5: __tsearch (tsearch.c:337) ==106973== by 0x533CFA5: tsearch (tsearch.c:290) ==106973== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106973== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106973== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106973== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== ==106973== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106973== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106973== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106973== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106973== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==106973== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==106973== by 0x52BFCB3: __pcannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind586 ./libtest/libtests lib500 ftp://127.0.0.1:45671/586 > log/20/stdout586 2> log/20/stderr586 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind577 ./libtest/libtests lib567 rtsp://127.0.0.1:38859/577 > log/22/stdout577 2> log/22/stderr577 thread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== ==106973== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106973== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==106973== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==106973== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== ==106973== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==106973== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==106973== by 0x51C2D03: Curl_open (url.c:520) ==106973== by 0x513D46F: curl_easy_init (easy.c:372) ==106973== by 0x40173BE: test_lib572.lto_priv.0 (lib572.c:48) ==106973== by 0x4003443: main (first.c:167) ==106973== ==106973== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x533CFA5: __tsearch (tsearch.c:337) ==106973== by 0x533CFA5: tsearch (tsearch.c:290) ==106973== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==106973== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106973== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106973== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106973== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106973== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106973== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== ==106973== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==106973== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==106973== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==106973== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==106973== by 0x524F3F0: add_alias (gconv_conf.c:178) ==106973== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==106973== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==106973== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==106973== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==106973== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==106973== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==106973== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==106973== by 0x525A142: setlocale (setlocale.c:337) ==106973== by 0x400336E: main (first.c:123) ==106973== === End of file valgrind572 test 0586...[FTP and open/close socket callbacks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind586 ./libtest/libtests lib500 ftp://127.0.0.1:45671/586 > log/20/stdout586 2> log/20/stderr586 586: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 586 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind586 ./libtest/libtests lib500 ftp://127.0.0.1:45671/586 > log/20/stdout586 2> log/20/stderr586 === End of file commands.log === Start of file ftp_server.log 07:35:26.981803 ====> Client connect 07:35:26.981946 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:26.982149 < "USER anonymous" 07:35:26.982177 > "331 We are happy you popped in![CR][LF]" 07:35:26.982290 < "PASS ftp@example.com" 07:35:26.982310 > "230 Welcome you silly person[CR][LF]" 07:35:26.982411 < "PWD" 07:35:26.982434 > "257 "/" is current directory[CR][LF]" 07:35:26.982538 < "EPSV" 07:35:26.982556 ====> Passive DATA channel requested by client 07:35:26.982566 DATA sockfilt for passive data channel starting... 07:35:26.983706 DATA sockfilt for passive data channel started (pid 107058) 07:35:26.983783 DATA sockfilt for passive data channel listens on port 43303 07:35:26.983809 > "229 Entering Passive Mode (|||43303|)[LF]" 07:35:26.983822 Client has been notified that DATA conn will be accepted on port 43303 07:35:26.983977 Client connects to port 43303 07:35:26.983999 ====> Client established passive DATA connection on port 43303 07:35:26.984045 < "TYPE I" 07:35:26.984062 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:26.984169 < "SIZE verifiedserver" 07:35:26.984193 > "213 17[CR][LF]" 07:35:26.984297 < "RETR verifiedserver" 07:35:26.984318 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:26.984372 =====> Closing passive DATA connection... 07:35:26.984383 Server disconnects passive DATA connection 07:35:26.984544 Server disconnected passive DATA connection 07:35:26.984565 DATA sockfilt for passive data channel quits (pid 107058) 07:35:26.984718 DATA sockfilt for passive data channel quit (pid 107058) 07:35:26.984735 =====> Closed passive DATA connection 07:35:26.984753 > "226 File transfer complete[CR][LF]" 07:35:27.028716 < "QUIT" 07:35:27.028781 > "221 bye bye baby[CR][LF]" 07:35:27.029647 MAIN sockfilt said DISC 07:35:27.029672 ====> Client disconnected 07:35:27.029796 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:26.827665 ====> Client connect 07:35:26.827938 Received DATA (on stdin) 07:35:26.827950 > 160 bytes data, server => client 07:35:26.827959 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:26.827966 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:26.827974 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:26.828028 < 16 bytes data, client => server 07:35:26.828040 'USER anonymous\r\n' 07:35:26.828162 Received DATA (on stdin) 07:35:26.828172 > 33 bytes data, server => client 07:35:26.828181 '331 We are happy you popped in!\r\n' 07:35:26.828218 < 22 bytes data, client => server 07:35:26.828230 'PASS ftp@example.com\r\n' 07:35:26.828293 Received DATA (on stdin) 07:35:26.828301 > 30 bytes data, server => client 07:35:26.828310 '230 Welcome you silly person\r\n' 07:35:26.828346 < 5 bytes data, client => server 07:35:26.828357 'PWD\r\n' 07:35:26.828415 Received DATA (on stdin) 07:35:26.828424 > 30 bytes data, server => client 07:35:26.828432 '257 "/" is current directory\r\n' 07:35:26.828473 < 6 bytes data, client => server 07:35:26.828485 'EPSV\r\n' 07:35:26.829806 Received DATA (on stdin) 07:35:26.829816 > 38 bytes data, server => client 07:35:26.829824 '229 Entering Passive Mode (|||43303|)\n' 07:35:26.829922 < 8 bytes data, client => server 07:35:26.829930 'TYPE I\r\n' 07:35:26.830045 Received DATA (on stdin) 07:35:26.830053 > 33 bytes data, server => client 07:35:26.830061 '200 I modify TYPE as you wanted\r\n' 07:35:26.830095 < 21 bytes data, client => server 07:35:26.830103 'SIZE verifiedserver\r\n' 07:35:26.830174 Received DATA (on stdin) 07:35:26.830182 > 8 bytes data, server => client 07:35:26.830189 '213 17\r\n' 07:35:26.830221 < 21 bytes data, client => server 07:35:26.830229 'RETR verifiedserver\r\n' 07:35:26.830366 Received DATA (on stdin) 07:35:26.830374 > 29 bytes data, server => client 07:35:26.830382 '150 Binary junk (17 bytes).\r\n' 07:35:26.830736 Received DATA (on stdin) 07:35:26.830746 > 28 bytes data, server => client 07:35:26.830754 '226 File transfer complete\r\n' 07:35:26.874499 < 6 bytes data, client => server 07:35:26.874528 'QUIT\r\n' 07:35:26.874771 Received DATA (on stdin) 07:35:26.874781 > 18 bytes data, server => client 07:35:26.874790 '221 bye bye baby\r\n' 07:35:26.875589 ====> Client disconnect 07:35:26.875783 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:26.829560 Running IPv4 version 07:35:26.829603 Listening on port 43303 07:35:26.829631 Wrote pid 107058 to log/20/server/ftp_sockdata.pid 07:35:26.829646 Received PING (on stdin) 07:35:26.829708 Received PORT (on stdin) 07:35:26.829901 ====> Client connect 07:35:26.830399 Received DATA (on stdin) 07:35:26.830409 > 17 bytes data, server => client 07:35:26.830417 'WE ROOLZ: 88588\r\n' 07:35:26.830434 Received DISC (on stdin) 07:35:26.830442 ====> Client forcibly disconnected 07:35:26.830552 Received QUIT (on stdin) 07:35:26.830561 quits 07:35:26.830607 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 586 === End of file server.cmd === Start of file stderr586 URL: ftp://127.0.0.1:45671/586 === End of file stderr586 === Start of file valgrind586 ==107065== ==107065== Process terminating with default action of signal 4 (SIGILL) ==107065== Illegal opcode at address 0x51C2DB3 ==107065== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107065== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107065== by 0x51C2DB3: Curl_open (url.c:541) ==107065== by 0x513D46F: curl_easy_init (easy.c:372) ==107065== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107065== by 0x4003443: main (first.c:167) ==107065== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x533CFA5: __tsearch (tsearch.c:337) ==107065== by 0x533CFA5: tsearch (tsearch.c:290) ==107065== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107065== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107065== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107065== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107065== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107065== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== ==107065== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x533CFA5: __tsearch (tsearch.c:337) ==107065== by 0x533CFA5: tsearch (tsearch.c:290) ==107065== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107065== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107065== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== ==107065== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107065== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107065== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107065== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107065== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107065== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== ==107065== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107065== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107065== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== ==107065== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107065== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107065== by 0x51C2D03: Curl_open (url.c:520) ==107065== by 0x513D46F: curl_easy_init (easy.c:372) ==107065== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107065== by 0x4003443: main (first.c:167) ==107065== ==107065== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x533CFA5: __tsearch (tsearch.c:337) ==107065== by 0x533CFA5: tsearch (tsearch.c:290) ==107065== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107065== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107065== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107065== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107065== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107065== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== ==107065== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107065== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107065== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107065== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107065== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107065== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107065== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107065== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107065== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107065== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107065== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107065== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107065== by 0x525A142: setlocale (setlocale.c:337) ==107065== by 0x400336E: main (first.c:123) ==107065== === End of file valgrind586 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/22/seCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind587 ./libtest/libtests lib554 http://127.0.0.1:34851/587 > log/10/stdout587 2> log/10/stderr587 cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind503 ./libtest/libtests lib503 http://machine.503:36993/503 127.0.0.1:41727 > log/15/stdout503 2> log/15/stderr503 rver/rtsp_server.pid" --portfile "log/22/server/rtsp_server.port" --logfile "log/22/rtsp_server.log" --logdir "log/22" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 106222 port 38859 * pid rtsp => 106222 106222 test 0577...[Funny RTSP version in response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind577 ./libtest/libtests lib567 rtsp://127.0.0.1:38859/577 > log/22/stdout577 2> log/22/stderr577 577: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 577 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind577 ./libtest/libtests lib567 rtsp://127.0.0.1:38859/577 > log/22/stdout577 2> log/22/stderr577 === End of file commands.log === Start of file rtsp_server.log 07:35:26.932997 Running IPv4 version on port 38859 07:35:26.933061 Wrote pid 106222 to log/22/server/rtsp_server.pid 07:35:26.933083 Wrote port 38859 to log/22/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 577 === End of file server.cmd === Start of file stderr577 URL: rtsp://127.0.0.1:38859/577 === End of file stderr577 === Start of file valgrind577 ==107114== ==107114== Process terminating with default action of signal 4 (SIGILL) ==107114== Illegal opcode at address 0x51C2DB3 ==107114== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107114== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107114== by 0x51C2DB3: Curl_open (url.c:541) ==107114== by 0x513D46F: curl_easy_init (easy.c:372) ==107114== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==107114== by 0x4003443: main (first.c:167) ==107114== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x533CFA5: __tsearch (tsearch.c:337) ==107114== by 0x533CFA5: tsearch (tsearch.c:290) ==107114== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107114== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107114== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107114== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107114== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107114== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== ==107114== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x533CFA5: __tsearch (tsearch.c:337) ==107114== by 0x533CFA5: tsearch (tsearch.c:290) ==107114== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107114== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107114== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== ==107114== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107114== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107114== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107114== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107114== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107114== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== ==107114== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107114== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107114== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== ==107114== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107114== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107114== by 0x51C2D03: Curl_open (url.c:520) ==107114== by 0x513D46F: curl_easy_init (easy.c:372) ==107114== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==107114== by 0x4003443: main (first.c:167) ==107114== ==107114== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x533CFA5: __tsearch (tsearch.c:337) ==107114== by 0x533CFA5: tsearch (tsearch.c:290) ==107114== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107114== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107114== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107114== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107114== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107114== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== ==107114== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107114== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107114== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107114== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107114== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107114== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107114== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107114== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107114== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107114== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107114== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107114== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107114== by 0x525A142: setlocale (setlocale.c:337) ==107114== by 0x400336E: main (first.c:123) ==107114== === End of file valgrind577 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/15/server/http2_server.pid" --logfile "log/15/http2_server.log" --logdir "log/15" --portfile log/15/server/http2_server.port --config log/15/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 102097 port 41727 * pid http-proxy => 102097 102097 test 0503...[simple multi http:// through proxytunnel with authentication info] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind503 ./libtest/libtests lib503 http://machine.503:36993/503 127.0.0.1:41727 > log/15/stdout503 2> log/15/stderr503 503: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 503 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind503 ./libtest/libtests lib503 http://machine.503:36993/503 127.0.0.1:41727 > log/15/stdout503 2> log/15/stderr503 === End of file commands.log === Start of file http2_server.log 07:35:08.286250 Run as proxy, CONNECT to host 127.0.0.1 07:35:08.286382 Running HTTP IPv4 version on port 41727 07:35:08.286423 Wrote pid 102097 to log/15/server/http2_server.pid 07:35:08.286450 Wrote port 41727 to log/15/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:35:08.261750 ====> Client connect 07:35:08.261787 accept_connection 3 returned 4 07:35:08.261805 accept_connection 3 returned 0 07:35:08.261819 Read 93 bytes 07:35:08.261829 Process 93 bytes request 07:35:08.261843 Got request: GET /verifiedserver HTTP/1.1 07:35:08.261852 Are-we-friendly question received 07:35:08.261878 Wrote request (93 bytes) input to log/15/server.input 07:35:08.261895 Identifying ourselves as friends 07:35:08.261951 Response sent (56 bytes) and written to log/15/server.response 07:35:08.261961 special request received, no persistency 07:35:08.261970 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 503 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file stderr503 URL: http://machine.503:36993/503 === End of file stderr503 === Start of file test503.txt foo bar bar foo moo === End of file test503.txt === Start of file valgrind503 ==103461== ==103461== Process terminating with default action of signal 4 (SIGILL) ==103461== Illegal opcode at address 0x51C2DB3 ==103461== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==103461== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==103461== by 0x51C2DB3: Curl_open (url.c:541) ==103461== by 0x513D46F: curl_easy_init (easy.c:372) ==103461== by 0x4057655: test_lib503.part.0.lto_priv.0 (lib503.c:47) ==103461== by 0x4003443: main (first.c:167) ==103461== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x533CFA5: __tsearch (tsearch.c:337) ==103461== by 0x533CFA5: tsearch (tsearch.c:290) ==103461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103461== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103461== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== ==103461== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x533CFA5: __tsearch (tsearch.c:337) ==103461== by 0x533CFA5: tsearch (tsearch.c:290) ==103461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103461== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103461== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== ==103461== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103461== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==103461== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== ==103461== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103461== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==103461== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== ==103461== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==103461== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==103461== by 0x51C2D03: Curl_open (url.c:520) ==103461== by 0x513D46F: curl_easy_init (easy.c:372) ==103461== by 0x4057655: test_lib503.part.0.lto_priv.0 (lib503.c:47) ==103461== by 0x4003443: main (first.c:167) ==103461== ==103461== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x533CFA5: __tsearch (tsearch.c:337) ==103461== by 0x533CFA5: tsearch (tsearch.c:290) ==103461== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==103461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103461== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103461== by 0x524F775: __gconv_read_conf (gconCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind588 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/588 log/18/upload588 > log/18/stdout588 2> log/18/stderr588 v_conf.c:480) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== ==103461== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==103461== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==103461== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==103461== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==103461== by 0x524F3F0: add_alias (gconv_conf.c:178) ==103461== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==103461== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==103461== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==103461== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==103461== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==103461== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==103461== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==103461== by 0x525A142: setlocale (setlocale.c:337) ==103461== by 0x400336E: main (first.c:123) ==103461== === End of file valgrind503 test 0588...[FTP PORT upload using multi interface, EPRT doesn't work] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind588 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/588 log/18/upload588 > log/18/stdout588 2> log/18/stderr588 588: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 588 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind588 ./libtest/libtests lib525 ftp://127.0.0.1:33107/path/588 log/18/upload588 > log/18/stdout588 2> log/18/stderr588 === End of file commands.log === Start of file ftp_server.log 07:35:27.199242 ====> Client connect 07:35:27.199371 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.199574 < "USER anonymous" 07:35:27.199599 > "331 We are happy you popped in![CR][LF]" 07:35:27.199711 < "PASS ftp@example.com" 07:35:27.199730 > "230 Welcome you silly person[CR][LF]" 07:35:27.199830 < "PWD" 07:35:27.199850 > "257 "/" is current directory[CR][LF]" 07:35:27.199954 < "EPSV" 07:35:27.199972 ====> Passive DATA channel requested by client 07:35:27.199981 DATA sockfilt for passive data channel starting... 07:35:27.201697 DATA sockfilt for passive data channel started (pid 107246) 07:35:27.201833 DATA sockfilt for passive data channel listens on port 39415 07:35:27.201877 > "229 Entering Passive Mode (|||39415|)[LF]" 07:35:27.201897 Client has been notified that DATA conn will be accepted on port 39415 07:35:27.202082 Client connects to port 39415 07:35:27.202109 ====> Client established passive DATA connection on port 39415 07:35:27.202159 < "TYPE I" 07:35:27.202182 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.202363 < "SIZE verifiedserver" 07:35:27.202397 > "213 17[CR][LF]" 07:35:27.202538 < "RETR verifiedserver" 07:35:27.202574 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.202651 =====> Closing passive DATA connection... 07:35:27.202669 Server disconnects passive DATA connection 07:35:27.202837 Server disconnected passive DATA connection 07:35:27.202860 DATA sockfilt for passive data channel quits (pid 107246) 07:35:27.203117 DATA sockfilt for passive data channel quit (pid 107246) 07:35:27.203149 =====> Closed passive DATA connection 07:35:27.203178 > "226 File transfer complete[CR][LF]" 07:35:27.247020 < "QUIT" 07:35:27.247066 > "221 bye bye baby[CR][LF]" 07:35:27.247158 MAIN sockfilt said DISC 07:35:27.247180 ====> Client disconnected 07:35:27.247241 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.045123 ====> Client connect 07:35:27.045363 Received DATA (on stdin) 07:35:27.045374 > 160 bytes data, server => client 07:35:27.045382 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.045390 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.045398 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.045448 < 16 bytes data, client => server 07:35:27.045457 'USER anonymous\r\n' 07:35:27.045582 Received DATA (on stdin) 07:35:27.045591 > 33 bytes data, server => client 07:35:27.045599 '331 We are happy you popped in!\r\n' 07:35:27.045634 < 22 bytes data, client => server 07:35:27.045642 'PASS ftp@example.com\r\n' 07:35:27.045711 Received DATA (on stdin) 07:35:27.045719 > 30 bytes data, server => client 07:35:27.045726 '230 Welcome you silly person\r\n' 07:35:27.045758 < 5 bytes data, client => server 07:35:27.045765 'PWD\r\n' 07:35:27.045831 Received DATA (on stdin) 07:35:27.045839 > 30 bytes data, server => client 07:35:27.045847 '257 "/" is current directory\r\n' 07:35:27.045883 < 6 bytes data, client => server 07:35:27.045890 'EPSV\r\n' 07:35:27.047893 Received DATA (on stdin) 07:35:27.047910 > 38 bytes data, server => client 07:35:27.047921 '229 Entering Passive Mode (|||39415|)\n' 07:35:27.048014 < 8 bytes data, client => server 07:35:27.048027 'TYPE I\r\n' 07:35:27.048167 Received DATA (on stdin) 07:35:27.048179 > 33 bytes data, server => client 07:35:27.048187 '200 I modify TYPE as you wanted\r\n' 07:35:27.048257 < 21 bytes data, client => server 07:35:27.048276 'SIZE verifiedserver\r\n' 07:35:27.048385 Received DATA (on stdin) 07:35:27.048397 > 8 bytes data, server => client 07:35:27.048406 '213 17\r\n' 07:35:27.048460 < 21 bytes data, client => server 07:35:27.048478 'RETR verifiedserver\r\n' 07:35:27.048749 Received DATA (on stdin) 07:35:27.048763 > 29 bytes data, server => client 07:35:27.048775 '150 Binary junk (17 bytes).\r\n' 07:35:27.049172 Received DATA (on stdin) 07:35:27.049187 > 28 bytes data, server => client 07:35:27.049197 '226 File transfer complete\r\n' 07:35:27.092788 < 6 bytes data, client => server 07:35:27.092814 'QUIT\r\n' 07:35:27.093055 Received DATA (on stdin) 07:35:27.093065 > 18 bytes data, server => client 07:35:27.093073 '221 bye bye baby\r\n' 07:35:27.093107 ====> Client disconnect 07:35:27.093225 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.047498 Running IPv4 version 07:35:27.047562 Listening on port 39415 07:35:27.047599 Wrote pid 107246 to log/18/server/ftp_sockdata.pid 07:35:27.047617 Received PING (on stdin) 07:35:27.047733 Received PORT (on stdin) 07:35:27.048014 ====> Client connect 07:35:27.048659 Received DATA (on stdin) 07:35:27.048671 > 17 bytes data, server => client 07:35:27.048686 'WE ROOLZ: 82311\r\n' 07:35:27.048712 Received DISC (on stdin) 07:35:27.048724 ====> Client forcibly disconnected 07:35:27.048854 Received QUIT (on stdin) 07:35:27.048865 quits 07:35:27.048925 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPRT 500 we don't like EPRT now Testnum 588 === End of file server.cmd === Start of file stderr588 URL: ftp://127.0.0.1:33107/path/588 === End of file stderr588 === Start of file upload588 Moooooooooooo upload this === End of file upload588 === Start of file valgrind588 ==107252== ==107252== Process terminating with default action of signal 4 (SIGILL) ==107252== Illegal opcode at address 0x51C2DB3 ==107252== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107252== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107252== by 0x51C2DB3: Curl_open (url.c:541) ==107252== by cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind589 ./libtest/libtests lib589 http://127.0.0.1:41173/589 > log/11/stdout589 2> log/11/stderr589 0x513D46F: curl_easy_init (easy.c:372) ==107252== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==107252== by 0x4003443: main (first.c:167) ==107252== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x533CFA5: __tsearch (tsearch.c:337) ==107252== by 0x533CFA5: tsearch (tsearch.c:290) ==107252== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107252== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107252== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107252== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107252== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107252== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== ==107252== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x533CFA5: __tsearch (tsearch.c:337) ==107252== by 0x533CFA5: tsearch (tsearch.c:290) ==107252== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107252== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107252== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== ==107252== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107252== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107252== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107252== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107252== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107252== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== ==107252== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107252== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107252== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== ==107252== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==107252== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107252== by 0x51C2D03: Curl_open (url.c:520) ==107252== by 0x513D46F: curl_easy_init (easy.c:372) ==107252== by 0x400BE1C: test_lib525.lto_priv.0 (lib525.c:74) ==107252== by 0x4003443: main (first.c:167) ==107252== ==107252== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x533CFA5: __tsearch (tsearch.c:337) ==107252== by 0x533CFA5: tsearch (tsearch.c:290) ==107252== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107252== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107252== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107252== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107252== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107252== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== ==107252== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==107252== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107252== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107252== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107252== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107252== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107252== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107252== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107252== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107252== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107252== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107252== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107252== by 0x525A142: setlocale (setlocale.c:337) ==107252== by 0x400336E: main (first.c:123) ==107252== === End of file valgrind588 test 0589...[make an HTTP MIME POST set to NULL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind589 ./libtest/libtests lib589 http://127.0.0.1:41173/589 > log/11/stdout589 2> log/11/stderr589 589: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 589 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind589 ./libtest/libtests lib589 http://127.0.0.1:41173/589 > log/11/stdout589 2> log/11/stderr589 === End of file commands.log === Start of file http_server.log 07:35:27.150871 ====> Client connect 07:35:27.150907 accept_connection 3 returned 4 07:35:27.150922 accept_connection 3 returned 0 07:35:27.150935 Read 93 bytes 07:35:27.150944 Process 93 bytes request 07:35:27.150958 Got request: GET /verifiedserver HTTP/1.1 07:35:27.150967 Are-we-friendly question received 07:35:27.150992 Wrote request (93 bytes) input to log/11/server.input 07:35:27.151008 Identifying ourselves as friends 07:35:27.151061 Response sent (56 bytes) and written to log/11/server.response 07:35:27.151071 special request received, no persistency 07:35:27.151080 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of ficannot find sshd le server.cmd Testnum 589 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file stderr589 URL: http://127.0.0.1:41173/589 === End of file stderr589 === Start of file valgrind589 ==107356== ==107356== Process terminating with default action of signal 4 (SIGILL) ==107356== Illegal opcode at address 0x51C2DB3 ==107356== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107356== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107356== by 0x51C2DB3: Curl_open (url.c:541) ==107356== by 0x513D46F: curl_easy_init (easy.c:372) ==107356== by 0x401AECA: test_lib589.lto_priv.0 (lib589.c:38) ==107356== by 0x4003443: main (first.c:167) ==107356== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x533CFA5: __tsearch (tsearch.c:337) ==107356== by 0x533CFA5: tsearch (tsearch.c:290) ==107356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== ==107356== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x533CFA5: __tsearch (tsearch.c:337) ==107356== by 0x533CFA5: tsearch (tsearch.c:290) ==107356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== ==107356== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107356== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107356== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== ==107356== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107356== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107356== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== ==107356== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107356== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107356== by 0x51C2D03: Curl_open (url.c:520) ==107356== by 0x513D46F: curl_easy_init (easy.c:372) ==107356== by 0x401AECA: test_lib589.lto_priv.0 (lib589.c:38) ==107356== by 0x4003443: main (first.c:167) ==107356== ==107356== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x533CFA5: __tsearch (tsearch.c:337) ==107356== by 0x533CFA5: tsearch (tsearch.c:290) ==107356== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== ==107356== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107356== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107356== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107356== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107356== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107356== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107356== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107356== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107356== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107356== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107356== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107356== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107356== by 0x525A142: setlocale (setlocale.c:337) ==107356== by 0x400336E: main (first.c:123) ==107356== === End of file valgrind589 test 0513...[send HTTP POST using read callback that returns CURL_READFUNC_ABORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind513 ./libtest/libtests lib513 http://127.0.0.1:45457/513 > log/2/stdout513 2> log/2/stderr513 libtests returned 132, when expecting 42 513: exit FAILED == Contents of files in the log/2/ dir after test 513 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind513 ./libtest/libtests lib513 http://127.0.0.1:45457/513 > log/2/stdout513 2> log/2/stderr513 === End of file commands.log === Start of file http_server.log 07:35:08.594939 ====> Client connect 07:35:08.594964 accept_connection 3 returned 4 07:35:08.594977 accept_connection 3 returned 0 07:35:08.594987 Read 93 bytes 07:35:08.594995 Process 93 bytes request 07:35:08.595005 Got request: GET /verifiedserver HTTP/1.1 07:35:08.595012 Are-we-friendly question received 07:35:08.595031 Wrote request (93 bytes) input to log/2/server.input 07:35:08.595043 Identifying ourselves as friends 07:35:08.595075 Response sent (56 bytes) and written to log/2/server.response 07:35:08.595083 special request received, no persistency 07:35CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind590 ./libtest/libtests lib590 http://test.remote.example.com/path/590 http://127.0.0.1:46739 > log/16/stdout590 2> log/16/stderr590 :08.595090 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 513 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr513 URL: http://127.0.0.1:45457/513 === End of file stderr513 === Start of file valgrind513 ==102568== ==102568== Process terminating with default action of signal 4 (SIGILL) ==102568== Illegal opcode at address 0x51C2DB3 ==102568== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102568== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102568== by 0x51C2DB3: Curl_open (url.c:541) ==102568== by 0x513D46F: curl_easy_init (easy.c:372) ==102568== by 0x400546A: test_lib513.lto_priv.0 (lib513.c:47) ==102568== by 0x4003443: main (first.c:167) ==102568== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x533CFA5: __tsearch (tsearch.c:337) ==102568== by 0x533CFA5: tsearch (tsearch.c:290) ==102568== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102568== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102568== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102568== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102568== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102568== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== ==102568== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x533CFA5: __tsearch (tsearch.c:337) ==102568== by 0x533CFA5: tsearch (tsearch.c:290) ==102568== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102568== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102568== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== ==102568== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102568== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102568== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102568== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102568== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102568== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== ==102568== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102568== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102568== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== ==102568== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102568== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102568== by 0x51C2D03: Curl_open (url.c:520) ==102568== by 0x513D46F: curl_easy_init (easy.c:372) ==102568== by 0x400546A: test_lib513.lto_priv.0 (lib513.c:47) ==102568== by 0x4003443: main (first.c:167) ==102568== ==102568== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x533CFA5: __tsearch (tsearch.c:337) ==102568== by 0x533CFA5: tsearch (tsearch.c:290) ==102568== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102568== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102568== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102568== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102568== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102568== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== ==102568== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102568== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102568== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102568== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102568== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102568== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102568== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102568== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102568== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102568== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102568== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102568== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102568== by 0x525A142: setlocale (setlocale.c:337) ==102568== by 0x400336E: main (first.c:123) ==102568== === End of file valgrind513 test 0590...[HTTP proxy offers Negotiate+NTLM, use only NTLM] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind590 ./libtest/libtests lib590 http://test.remote.example.com/path/590 http://127.0.0.1:46739 > log/16/stdout590 2> log/16/stderr590 590: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 590 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind590 ./libtest/libtests lib590 http://test.remote.example.com/path/590 http://127.0.0.1:46739 > cannot find sshd cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind510 ./libtest/libtests lib510 http://127.0.0.1:33487/510 > log/19/stdout510 2> log/19/stderr510 log/16/stdout590 2> log/16/stderr590 === End of file commands.log === Start of file http_server.log 07:35:27.164069 ====> Client connect 07:35:27.164101 accept_connection 3 returned 4 07:35:27.164116 accept_connection 3 returned 0 07:35:27.164128 Read 93 bytes 07:35:27.164137 Process 93 bytes request 07:35:27.164148 Got request: GET /verifiedserver HTTP/1.1 07:35:27.164156 Are-we-friendly question received 07:35:27.164178 Wrote request (93 bytes) input to log/16/server.input 07:35:27.164193 Identifying ourselves as friends 07:35:27.164243 Response sent (56 bytes) and written to log/16/server.response 07:35:27.164252 special request received, no persistency 07:35:27.164260 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 590 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr590 URL: http://test.remote.example.com/path/590 === End of file stderr590 === Start of file valgrind590 ==107390== ==107390== Process terminating with default action of signal 4 (SIGILL) ==107390== Illegal opcode at address 0x51C2DB3 ==107390== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107390== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107390== by 0x51C2DB3: Curl_open (url.c:541) ==107390== by 0x513D46F: curl_easy_init (easy.c:372) ==107390== by 0x4017A9F: test_lib590.lto_priv.0 (lib590.c:52) ==107390== by 0x4003443: main (first.c:167) ==107390== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x533CFA5: __tsearch (tsearch.c:337) ==107390== by 0x533CFA5: tsearch (tsearch.c:290) ==107390== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107390== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107390== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107390== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107390== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107390== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== ==107390== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x533CFA5: __tsearch (tsearch.c:337) ==107390== by 0x533CFA5: tsearch (tsearch.c:290) ==107390== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107390== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107390== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== ==107390== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107390== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107390== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107390== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107390== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107390== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== ==107390== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107390== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107390== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== ==107390== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107390== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107390== by 0x51C2D03: Curl_open (url.c:520) ==107390== by 0x513D46F: curl_easy_init (easy.c:372) ==107390== by 0x4017A9F: test_lib590.lto_priv.0 (lib590.c:52) ==107390== by 0x4003443: main (first.c:167) ==107390== ==107390== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x533CFA5: __tsearch (tsearch.c:337) ==107390== by 0x533CFA5: tsearch (tsearch.c:290) ==107390== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107390== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107390== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107390== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107390== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107390== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== ==107390== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107390== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107390== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107390== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107390== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107390== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107390== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107390== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107390== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107390== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107390== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107390== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107390== by 0x525A142: setlocale (setlocale.c:337) ==107390== by 0x400336E: main (first.c:123) ==107390== === End of file valgrind590 test 0510...[send HTTP POST using read callback, using chunked transfer-encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind510 ./libtest/libtests lib510 http://127.0.0.1:33487/510 > log/19/stdout510 2> log/19/stderr510 510: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 510 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind510 ./libtest/libtests lib510 http://127.0.0.1:33487/510 > log/19/stdout510 2> log/19/stderr510 === End of file commands.log === Start of file http_server.log 07:35:08.337734 ====> Client connect 07:35:08.337767 accept_connection 3 returned 4 07:35:08.337783 accept_connection 3 returned 0 07:35:08.337797 Read 93 bytes 07:35:08.337807 Process 93 bytes request 07:35:08.337820 Got request: GET /verifiedserver HTTP/1.1 07:35:08.337829 Are-we-friendly question received 07:35:08.337851 Wrote request (93 bytes) input to log/19/server.input 07:35:08.337867 Identifying ourselves as friends 07:35:08.337918 Response sent (56 bytes) and written to log/19/server.response 07:35:08.337928 special request received, no persistency 07:35:08.337937 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 510 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr510 URL: http://127.0.0.1:33487/510 === End of file stderr510 === Start of file valgrind510 ==102366== ==102366== Process terminating with default action of signal 4 (SIGILL) ==102366== Illegal opcode at address 0x51C2DB3 ==102366== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102366== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102366== by 0x51C2DB3: Curl_open (url.c:541) ==102366== by 0x513D46F: curl_easy_init (easy.c:372) ==102366== by 0x4006980: test_lib510.lto_priv.0 (lib510.c:76) ==102366== by 0x4003443: main (first.c:167) ==102366== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x533CFA5: __tsearch (tsearch.c:337) ==102366== by 0x533CFA5: tsearch (tsearch.c:290) ==102366== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102366== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102366== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102366== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102366== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102366== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== ==102366== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x533CFA5: __tsearch (tsearch.c:337) ==102366== by 0x533CFA5: tsearch (tsearch.c:290) ==102366== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102366== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102366== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== ==102366== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102366== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102366== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102366== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102366== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102366== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== ==102366== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102366== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102366== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== ==102366== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102366== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102366== by 0x51C2D03: Curl_open (url.c:520) ==102366== by 0x513D46F: curl_easy_init (easy.c:372) ==102366== by 0x4006980: test_lib510.lto_priv.0 (lib510.c:76) ==102366== by 0x4003443: main (first.c:167) ==102366== ==102366== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x533CFA5: __tsearch (tsearch.c:337) ==102366== by 0x533CFA5: tsearch (tsearch.c:290) ==102366== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102366== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102366== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102366== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102366== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102366== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== ==102366== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102366== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102366== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102366== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102366== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102366== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102366== by 0x524F775: gconv_parseconfdir (gconv_parseCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind591 ./libtest/libtests lib591 ftp://127.0.0.1:44159/path/591 8 log/8/upload591 > log/8/stdout591 2> log/8/stderr591 confdir.h:170) ==102366== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102366== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102366== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102366== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102366== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102366== by 0x525A142: setlocale (setlocale.c:337) ==102366== by 0x400336E: main (first.c:123) ==102366== === End of file valgrind510 test 0591...[FTP multi PORT and 425 on upload] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind591 ./libtest/libtests lib591 ftp://127.0.0.1:44159/path/591 8 log/8/upload591 > log/8/stdout591 2> log/8/stderr591 591: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 591 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind591 ./libtest/libtests lib591 ftp://127.0.0.1:44159/path/591 8 log/8/upload591 > log/8/stdout591 2> log/8/stderr591 === End of file commands.log === Start of file ftp_server.log 07:35:27.326770 ====> Client connect 07:35:27.326892 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.327100 < "USER anonymous" 07:35:27.327128 > "331 We are happy you popped in![CR][LF]" 07:35:27.327245 < "PASS ftp@example.com" 07:35:27.327264 > "230 Welcome you silly person[CR][LF]" 07:35:27.327366 < "PWD" 07:35:27.327387 > "257 "/" is current directory[CR][LF]" 07:35:27.327493 < "EPSV" 07:35:27.327509 ====> Passive DATA channel requested by client 07:35:27.327519 DATA sockfilt for passive data channel starting... 07:35:27.329359 DATA sockfilt for passive data channel started (pid 107381) 07:35:27.329472 DATA sockfilt for passive data channel listens on port 39323 07:35:27.329529 > "229 Entering Passive Mode (|||39323|)[LF]" 07:35:27.329546 Client has been notified that DATA conn will be accepted on port 39323 07:35:27.330300 Client connects to port 39323 07:35:27.330339 ====> Client established passive DATA connection on port 39323 07:35:27.330423 < "TYPE I" 07:35:27.330457 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.330609 < "SIZE verifiedserver" 07:35:27.330645 > "213 17[CR][LF]" 07:35:27.330777 < "RETR verifiedserver" 07:35:27.330810 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.330888 =====> Closing passive DATA connection... 07:35:27.330920 Server disconnects passive DATA connection 07:35:27.331019 Server disconnected passive DATA connection 07:35:27.331055 DATA sockfilt for passive data channel quits (pid 107381) 07:35:27.331398 DATA sockfilt for passive data channel quit (pid 107381) 07:35:27.331426 =====> Closed passive DATA connection 07:35:27.331461 > "226 File transfer complete[CR][LF]" 07:35:27.376947 < "QUIT" 07:35:27.376991 > "221 bye bye baby[CR][LF]" 07:35:27.377144 MAIN sockfilt said DISC 07:35:27.377172 ====> Client disconnected 07:35:27.377244 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:28.172623 ====> Client connect 07:35:28.172885 Received DATA (on stdin) 07:35:28.172896 > 160 bytes data, server => client 07:35:28.172905 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:28.172916 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:28.172925 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:28.172977 < 16 bytes data, client => server 07:35:28.172986 'USER anonymous\r\n' 07:35:28.173113 Received DATA (on stdin) 07:35:28.173122 > 33 bytes data, server => client 07:35:28.173130 '331 We are happy you popped in!\r\n' 07:35:28.173167 < 22 bytes data, client => server 07:35:28.173175 'PASS ftp@example.com\r\n' 07:35:28.173245 Received DATA (on stdin) 07:35:28.173254 > 30 bytes data, server => client 07:35:28.173261 '230 Welcome you silly person\r\n' 07:35:28.173294 < 5 bytes data, client => server 07:35:28.173301 'PWD\r\n' 07:35:28.173368 Received DATA (on stdin) 07:35:28.173377 > 30 bytes data, server => client 07:35:28.173384 '257 "/" is current directory\r\n' 07:35:28.173420 < 6 bytes data, client => server 07:35:28.173428 'EPSV\r\n' 07:35:28.176004 Received DATA (on stdin) 07:35:28.176033 > 38 bytes data, server => client 07:35:28.176045 '229 Entering Passive Mode (|||39323|)\n' 07:35:28.176227 < 8 bytes data, client => server 07:35:28.176240 'TYPE I\r\n' 07:35:28.176444 Received DATA (on stdin) 07:35:28.176457 > 33 bytes data, server => client 07:35:28.176468 '200 I modify TYPE as you wanted\r\n' 07:35:28.176515 < 21 bytes data, client => server 07:35:28.176526 'SIZE verifiedserver\r\n' 07:35:28.176630 Received DATA (on stdin) 07:35:28.176640 > 8 bytes data, server => client 07:35:28.176649 '213 17\r\n' 07:35:28.176691 < 21 bytes data, client => server 07:35:28.176703 'RETR verifiedserver\r\n' 07:35:28.176889 Received DATA (on stdin) 07:35:28.176983 > 29 bytes data, server => client 07:35:28.176999 '150 Binary junk (17 bytes).\r\n' 07:35:28.177454 Received DATA (on stdin) 07:35:28.177469 > 28 bytes data, server => client 07:35:28.177480 '226 File transfer complete\r\n' 07:35:28.222806 < 6 bytes data, client => server 07:35:28.222832 'QUIT\r\n' 07:35:28.222982 Received DATA (on stdin) 07:35:28.222996 > 18 bytes data, server => client 07:35:28.223004 '221 bye bye baby\r\n' 07:35:28.223081 ====> Client disconnect 07:35:28.223233 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.175044 Running IPv4 version 07:35:27.175103 Listening on port 39323 07:35:27.175277 Wrote pid 107381 to log/8/server/ftp_sockdata.pid 07:35:27.175294 Received PING (on stdin) 07:35:27.175376 Received PORT (on stdin) 07:35:27.176230 ====> Client connect 07:35:27.176851 Received DATA (on stdin) 07:35:27.176892 > 17 bytes data, server => client 07:35:27.176905 'WE ROOLZ: 81995\r\n' 07:35:27.176937 Received DISC (on stdin) 07:35:27.176951 ====> Client forcibly disconnected 07:35:27.177051 Received QUIT (on stdin) 07:35:27.177061 quits 07:35:27.177123 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN425 REPLY EPRT 500 we don't like EPRT now Testnum 591 === End of file server.cmd === Start of file stderr591 URL: ftp://127.0.0.1:44159/path/591 === End of file stderr591 === Start of file upload591 Moooooooooooo for 591 upload this === End of file upload591 === Start of file valgrind591 ==107525== ==107525== Process terminating with default action of signal 4 (SIGILL) ==107525== Illegal opcode at address 0x51C2DB3 ==107525== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107525== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107525== by 0x51C2DB3: Curl_open (url.c:541) ==107525== by 0x513D46F: curl_easy_init (easy.c:372) ==107525== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107525== by 0x4003443: main (first.c:167) ==107525== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x533CFA5: __tsearch (tsearch.c:337) ==107525== by 0x533CFA5: tsearch (tsearch.c:290) ==107525== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107525== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107525== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107525== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107525== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107525== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind592 ./libtest/libtests lib591 ftp://127.0.0.1:37869/path/592 8 log/4/upload592 > log/4/stdout592 2> log/4/stderr592 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind593 ./libtest/libtests lib591 ftp://127.0.0.1:38701/path/593 8 log/21/upload593 > log/21/stdout593 2> log/21/stderr593 == by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== ==107525== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x533CFA5: __tsearch (tsearch.c:337) ==107525== by 0x533CFA5: tsearch (tsearch.c:290) ==107525== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107525== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107525== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== ==107525== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107525== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107525== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107525== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107525== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107525== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== ==107525== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107525== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107525== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== ==107525== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==107525== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107525== by 0x51C2D03: Curl_open (url.c:520) ==107525== by 0x513D46F: curl_easy_init (easy.c:372) ==107525== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107525== by 0x4003443: main (first.c:167) ==107525== ==107525== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x533CFA5: __tsearch (tsearch.c:337) ==107525== by 0x533CFA5: tsearch (tsearch.c:290) ==107525== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107525== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107525== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107525== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107525== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107525== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== ==107525== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==107525== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107525== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107525== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107525== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107525== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107525== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107525== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107525== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107525== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107525== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107525== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107525== by 0x525A142: setlocale (setlocale.c:337) ==107525== by 0x400336E: main (first.c:123) ==107525== === End of file valgrind591 test 0592...[FTP multi PORT and 421 on upload] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind592 ./libtest/libtests lib591 ftp://127.0.0.1:37869/path/592 8 log/4/upload592 > log/4/stdout592 2> log/4/stderr592 592: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 592 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind592 ./libtest/libtests lib591 ftp://127.0.0.1:37869/path/592 8 log/4/upload592 > log/4/stdout592 2> log/4/stderr592 === End of file commands.log === Start of file ftp_server.log 07:35:27.323047 ====> Client connect 07:35:27.323211 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.323522 < "USER anonymous" 07:35:27.323556 > "331 We are happy you popped in![CR][LF]" 07:35:27.323718 < "PASS ftp@example.com" 07:35:27.323742 > "230 Welcome you silly person[CR][LF]" 07:35:27.323888 < "PWD" 07:35:27.323916 > "257 "/" is current directory[CR][LF]" 07:35:27.324067 < "EPSV" 07:35:27.324093 ====> Passive DATA channel requested by client 07:35:27.324105 DATA sockfilt for passive data channel starting... 07:35:27.325632 DATA sockfilt for passive data channel started (pid 107376) 07:35:27.325732 DATA sockfilt for passive data channel listens on port 34655 07:35:27.325772 > "229 Entering Passive Mode (|||34655|)[LF]" 07:35:27.325787 Client has been notified that DATA conn will be accepted on port 34655 07:35:27.326050 Client connects to port 34655 07:35:27.326071 ====> Client established passive DATA connection on port 34655 07:35:27.326128 < "TYPE I" 07:35:27.326151 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.326269 < "SIZE verifiedserver" 07:35:27.326300 > "213 17[CR][LF]" 07:35:27.326412 < "RETR verifiedserver" 07:35:27.326444 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.326510 =====> Closing passive DATA connection... 07:35:27.326523 Server disconnects passive DATA connection 07:35:27.326591 Server disconnected passive DATA connection 07:35:27.326607 DATA sockfilt for passive data channel quits (pid 107376) 07:35:27.326884 DATA sockfilt for passive data channel quit (pid 107376) 07:35:27.326907 =====> Closed passive DATA connection 07:35:27.326931 > "226 File transfer complete[CR][LF]" 07:35:27.366969 < "QUIT" 07:35:27.367019 > "221 bye bye baby[CR][LF]" 07:35:27.367356 MAIN sockfilt said DISC 07:35:27.367382 ====> Client disconnected 07:35:27.367449 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.168941 ====> Client connect 07:35:27.169209 Received DATA (on stdin) 07:35:27.169224 > 160 bytes data, server => client 07:35:27.169235 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.169246 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.169256 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.169358 < 16 bytes data, client => server 07:35:27.169377 'USER anonymous\r\n' 07:35:27.169547 Received DATA (on stdin) 07:35:27.169559 > 33 bytes data, server => client 07:35:27.169570 '331 We are happy you popped in!\r\n' 07:35:27.169620 < 22 bytes data, client => server 07:35:27.169632 'PASS ftp@example.com\r\n' 07:35:27.169729 Received DATA (on stdin) 07:35:27.169741 > 30 bytes data, server => client 07:35:27.169751 '230 Welcome you silly person\r\n' 07:35:27.169796 < 5 bytes data, client => server 07:35:27.169808 'PWD\r\n' 07:35:27.169902 Received DATA (on stdin) 07:35:27.169913 > 30 bytes data, server => client 07:35:27.169923 '257 "/" is current directory\r\n' 07:35:27.169976 < 6 bytes data, client => server 07:35:27.169988 'EPSV\r\n' 07:35:27.171776 Received DATA (on stdin) 07:35:27.171788 > 38 bytes data, server => client 07:35:27.171799 '229 Entering Passive Mode (|||34655|)\n' 07:35:27.171982 < 8 bytes data, client => server 07:35:27.171993 'TYPE I\r\n' 07:35:27.172137 Received DATA (on stdin) 07:35:27.172148 > 33 bytes data, server => client 07:35:27.172158 '200 I modify TYPE as you wanted\r\n' 07:35:27.172203 < 21 bytes data, client => server 07:35:27.172218 'SIZE verifiedserver\r\n' 07:35:27.172286 Received DATA (on stdin) 07:35:27.172297 > 8 bytes data, server => client 07:35:27.172306 '213 17\r\n' 07:35:27.172346 < 21 bytes data, client => server 07:35:27.172357 'RETR verifiedserver\r\n' 07:35:27.172511 Received DATA (on stdin) 07:35:27.172522 > 29 bytes data, server => client 07:35:27.172532 '150 Binary junk (17 bytes).\r\n' 07:35:27.172922 Received DATA (on stdin) 07:35:27.172934 > 28 bytes data, server => client 07:35:27.172945 '226 File transfer complete\r\n' 07:35:27.212804 < 6 bytes data, client => server 07:35:27.212827 'QUIT\r\n' 07:35:27.213012 Received DATA (on stdin) 07:35:27.213022 > 18 bytes data, server => client 07:35:27.213032 '221 bye bye baby\r\n' 07:35:27.213294 ====> Client disconnect 07:35:27.213437 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.171463 Running IPv4 version 07:35:27.171511 Listening on port 34655 07:35:27.171548 Wrote pid 107376 to log/4/server/ftp_sockdata.pid 07:35:27.171566 Received PING (on stdin) 07:35:27.171643 Received PORT (on stdin) 07:35:27.171984 ====> Client connect 07:35:27.172437 Received DATA (on stdin) 07:35:27.172448 > 17 bytes data, server => client 07:35:27.172458 'WE ROOLZ: 79844\r\n' 07:35:27.172509 Received DISC (on stdin) 07:35:27.172520 ====> Client forcibly disconnected 07:35:27.172601 Received QUIT (on stdin) 07:35:27.172612 quits 07:35:27.172729 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN421 REPLY EPRT 500 we don't like EPRT now Testnum 592 === End of file server.cmd === Start of file stderr592 URL: ftp://127.0.0.1:37869/path/592 === End of file stderr592 === Start of file upload592 Moooooooooooo for 592 upload this === End of file upload592 === Start of file valgrind592 ==107507== ==107507== Process terminating with default action of signal 4 (SIGILL) ==107507== Illegal opcode at address 0x51C2DB3 ==107507== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107507== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107507== by 0x51C2DB3: Curl_open (url.c:541) ==107507== by 0x513D46F: curl_easy_init (easy.c:372) ==107507== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107507== by 0x4003443: main (first.c:167) ==107507== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x533CFA5: __tsearch (tsearch.c:337) ==107507== by 0x533CFA5: tsearch (tsearch.c:290) ==107507== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107507== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107507== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107507== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107507== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107507== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== ==107507== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x533CFA5: __tsearch (tsearch.c:337) ==107507== by 0x533CFA5: tsearch (tsearch.c:290) ==107507== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107507== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107507== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== ==107507== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107507== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107507== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107507== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107507== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107507== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== ==107507== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107507== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107507== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== ==107507== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==107507== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107507== by 0x51C2D03: Curl_open (url.c:520) ==107507== by 0x513D46F: curl_easy_init (easy.c:372) ==107507== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107507== by 0x4003443: main (first.c:167) ==107507== ==107507== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x533CFA5: __tsearch (tsearch.c:337) ==107507== by 0x533CFA5: tsearch (tsearch.c:290) ==107507== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107507== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107507== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107507== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107507== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107507== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== ==107507== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==107507== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107507== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107507== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107507== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107507== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107507== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107507== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107507== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107507== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107507== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107507== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107507== by 0x525A142: setlocale (setlocale.c:337) ==107507== by 0x400336E: main (first.c:123) ==107507== === End of file valgrind592 test 0593...[FTP multi PORT upload, no data conn and no transient neg. reply] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind593 ./libtest/libtests lib591 ftp://127.0.0.1:38701/path/593 8 log/21/upload593 > log/21/stdout593 2> log/21/stderr593 593: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 593 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind593 ./libtest/libtests lib591 ftp://127.0.0.1:38701/path/593 8 log/21/upload593 > log/21/stdout593 2> log/21/stderr593 === End of file commands.log === Start of file ftp_server.log 07:35:27.355404 ====> Client connect 07:35:27.355572 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.355803 < "USER anonymous" 07:35:27.355836 > "331 We are happy you popped in![CR][LF]" 07:35:27.355961 < "PASS ftp@example.com" 07:35:27.355985 > "230 Welcome you silly person[CR][LF]" 07:35:27.356222 < "PWD" 07:35:27.356276 > "257 "/" is current directory[CR][LF]" 07:35:27.356481 < "EPSV" 07:35:27.356510 ====> Passive DATA channel requested by client 07:35:27.356523 DATA sockfilt for passive data channel starting... 07:35:27.358391 DATA sockfilt for passive data channel started (pid 107474) 07:35:27.358497 DATA sockfilt for passive data channel listens on port 37951 07:35:27.358532 > "229 Entering Passive Mode (|||37951|)[LF]" 07:35:27.358546 Client has been notified that DATA conn will be accepted on port 37951 07:35:27.358784 Client connects to port 37951 07:35:27.358820 ====> Client established passive DATA connection on port 37951 07:35:27.358895 < "TYPE I" 07:35:27.358920 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.359053 < "SIZE verifiedserver" 07:35:27.359084 > "213 17[CR][LF]" 07:35:27.359223 < "RETR verifiedserver" 07:35:27.359257 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.359316 =====> Closing passive DATA connection... 07:35:27.359327 Server disconnects passive DATA connection 07:35:27.359388 Server disconnected passive DATA connection 07:35:27.359401 DATA sockfilt for passive data channel quits (pid 107474) 07:35:27.359632 DATA sockfilt for passive data channel quit (pid 107474) 07:35:27.359651 =====> Closed passive DATA connection 07:35:27.359670 > "226 File transfer complete[CR][LF]" 07:35:27.400311 < "QUIT" 07:35:27.400363 > "221 bye bye baby[CR][LF]" 07:35:27.400491 MAIN sockfilt said DISC 07:35:27.400518 ====> Client disconnected 07:35:27.400584 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.201284 ====> Client connect 07:35:27.201570 Received DATA (on stdin) 07:35:27.201585 > 160 bytes data, server => client 07:35:27.201596 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.201607 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.201616 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.201676 < 16 bytes data, client => server 07:35:27.201691 'USER anonymous\r\n' 07:35:27.201825 Received DATA (on stdin) 07:35:27.201837 > 33 bytes data, server => client 07:35:27.201847 '331 We are happy you popped in!\r\n' 07:35:27.201889 < 22 bytes data, client => server 07:35:27.201901 'PASS ftp@example.com\r\n' 07:35:27.201971 Received DATA (on stdin) 07:35:27.201982 > 30 bytes data, server => client 07:35:27.201991 '230 Welcome you silly person\r\n' 07:35:27.202053 < 5 bytes data, client => server 07:35:27.202077 'PWD\r\n' 07:35:27.202269 Received DATA (on stdin) 07:35:27.202282 > 30 bytes data, server => client 07:35:27.202293 '257 "/" is current directory\r\n' 07:35:27.202369 < 6 bytes data, client => server 07:35:27.202385 'EPSV\r\n' 07:35:27.204542 Received DATA (on stdin) 07:35:27.204560 > 38 bytes data, server => client 07:35:27.204572 '229 Entering Passive Mode (|||37951|)\n' 07:35:27.204706 < 8 bytes data, client => server 07:35:27.204717 'TYPE I\r\n' 07:35:27.204905 Received DATA (on stdin) 07:35:27.204916 > 33 bytes data, server => client 07:35:27.204926 '200 I modify TYPE as you wanted\r\n' 07:35:27.204970 < 21 bytes data, client => server 07:35:27.204979 'SIZE verifiedserver\r\n' 07:35:27.205067 Received DATA (on stdin) 07:35:27.205078 > 8 bytes data, server => client 07:35:27.205087 '213 17\r\n' 07:35:27.205125 < 21 bytes data, client => server 07:35:27.205136 'RETR verifiedserver\r\n' 07:35:27.205312 Received DATA (on stdin) 07:35:27.205322 > 29 bytes data, server => client 07:35:27.205331 '150 Binary junk (17 bytes).\r\n' 07:35:27.205654 Received DATA (on stdin) 07:35:27.205664 > 28 bytes data, server => client 07:35:27.205672 '226 File transfer complete\r\n' 07:35:27.246092 < 6 bytes data, client => server 07:35:27.246116 'QUIT\r\n' 07:35:27.246356 Received DATA (on stdin) 07:35:27.246369 > 18 bytes data, server => client 07:35:27.246379 '221 bye bye baby\r\n' 07:35:27.246434 ====> Client disconnect 07:35:27.246573 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.204178 Running IPv4 version 07:35:27.204257 Listening on port 37951 07:35:27.204297 Wrote pid 107474 to log/21/server/ftp_sockdata.pid 07:35:27.204318 Received PING (on stdin) 07:35:27.204410 Received PORT (on stdin) 07:35:27.204676 ====> Client connect 07:35:27.205254 Received DATA (on stdin) 07:35:27.205268 > 17 bytes data, server => client 07:35:27.205278 'WE ROOLZ: 81322\r\n' 07:35:27.205311 Received DISC (on stdin) 07:35:27.205322 ====> Client forcibly disconnected 07:35:27.205389 Received QUIT (on stdin) 07:35:27.205399 quits 07:35:27.205463 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN150 REPLY EPRT 500 we don't like EPRT now Testnum 593 === End of file server.cmd === Start of file stderr593 URL: ftp://127.0.0.1:38701/path/593 === End of file stderr593 === Start of fcannot find sshd cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind595 ./libtest/libtests lib500 ftp://127.0.0.1:40197/595 log/7/ip595 > log/7/stdout595 2> log/7/stderr595 ile upload593 Moooooooooooo for 593 upload this === End of file upload593 === Start of file valgrind593 ==107610== ==107610== Process terminating with default action of signal 4 (SIGILL) ==107610== Illegal opcode at address 0x51C2DB3 ==107610== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107610== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107610== by 0x51C2DB3: Curl_open (url.c:541) ==107610== by 0x513D46F: curl_easy_init (easy.c:372) ==107610== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107610== by 0x4003443: main (first.c:167) ==107610== 408 bytes in 17 blocks are possibly lost in loss record 604 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x533CFA5: __tsearch (tsearch.c:337) ==107610== by 0x533CFA5: tsearch (tsearch.c:290) ==107610== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107610== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107610== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107610== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107610== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107610== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== ==107610== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x533CFA5: __tsearch (tsearch.c:337) ==107610== by 0x533CFA5: tsearch (tsearch.c:290) ==107610== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107610== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107610== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== ==107610== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107610== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107610== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107610== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107610== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107610== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== ==107610== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107610== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107610== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== ==107610== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==107610== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107610== by 0x51C2D03: Curl_open (url.c:520) ==107610== by 0x513D46F: curl_easy_init (easy.c:372) ==107610== by 0x401B391: test_lib591.lto_priv.0 (lib591.c:56) ==107610== by 0x4003443: main (first.c:167) ==107610== ==107610== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x533CFA5: __tsearch (tsearch.c:337) ==107610== by 0x533CFA5: tsearch (tsearch.c:290) ==107610== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107610== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107610== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107610== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107610== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107610== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== ==107610== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==107610== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107610== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107610== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107610== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107610== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107610== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107610== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107610== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107610== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107610== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107610== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107610== by 0x525A142: setlocale (setlocale.c:337) ==107610== by 0x400336E: main (first.c:123) ==107610== === End of file valgrind593 test 0595...[verify close callbacks with passive FTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind595 ./libtest/libtests lib500 ftp://127.0.0.1:40197/595 log/7/ip595 > log/7/stdout595 2> log/7/stderr595 595: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 595 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind595 ./libtest/libtests lib500 ftp://127.0.0.1:40197/595 log/7/ip595 > log/7/stdout595 2> log/7/stderr595 === End of file commands.log === Start of file ftp_server.log 07:35:27.365594 ====> Client connect 07:35:27.365746 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.365984 < "USER anonymous" 07:35:27.366018 > "331 We are happy you popped in![CR][LF]" 07:35:27.366296 < "PASS ftp@example.com" 07:35:27.366347 > "230 Welcome you silly person[CR][LF]" 07:35:27.366509 < "PWD" 07:35:27.366538 > "257 "/" is current directory[CR][LF]" 07:35:27.366803 < "EPSV" 07:35:27.366832 ====> Passive DATA channel requested by client 07:35:27.366845 DATA sockfilt for passive data channel starting... 07:35:27.368528 DATA sockfilt for passive data channel started (pid 107493) 07:35:27.368628 DATA sockfilt for passive data channel listens on port 43217 07:35:27.368663 > "229 Entering Passive Mode (|||43217|)[LF]" 07:35:27.368679 Client has been notified that DATA conn will be accepted on port 43217 07:35:27.368904 Client connects to port 43217 07:35:27.368930 ====> Client established passive DATA connection on port 43217 07:35:27.369040 < "TYPE I" 07:35:27.369068 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.369219 < "SIZE verifiedserver" 07:35:27.369254 > "213 17[CR][LF]" 07:35:27.369417 < "RETR verifiedserver" 07:35:27.369450 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.369516 =====> Closing passive DATA connection... 07:35:27.369530 Server disconnects passive DATA connection 07:35:27.369684 Server disconnected passive DATA connection 07:35:27.369707 DATA sockfilt for passive data channel quits (pid 107493) 07:35:27.369906 DATA sockfilt for passive data channel quit (pid 107493) 07:35:27.369927 =====> Closed passive DATA connection 07:35:27.369946 > "226 File transfer complete[CR][LF]" 07:35:27.413673 < "QUIT" 07:35:27.413724 > "221 bye bye baby[CR][LF]" 07:35:27.414262 MAIN sockfilt said DISC 07:35:27.414288 ====> Client disconnected 07:35:27.414347 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.211470 ====> Client connect 07:35:27.211743 Received DATA (on stdin) 07:35:27.211756 > 160 bytes data, server => client 07:35:27.211767 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.211776 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.211785 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.211855 < 16 bytes data, client => server 07:35:27.211876 'USER anonymous\r\n' 07:35:27.212001 Received DATA (on stdin) 07:35:27.212030 > 33 bytes data, server => client 07:35:27.212042 '331 We are happy you popped in!\r\n' 07:35:27.212136 < 22 bytes data, client => server 07:35:27.212157 'PASS ftp@example.com\r\n' 07:35:27.212339 Received DATA (on stdin) 07:35:27.212354 > 30 bytes data, server => client 07:35:27.212364 '230 Welcome you silly person\r\n' 07:35:27.212410 < 5 bytes data, client => server 07:35:27.212424 'PWD\r\n' 07:35:27.212522 Received DATA (on stdin) 07:35:27.212531 > 30 bytes data, server => client 07:35:27.212540 '257 "/" is current directory\r\n' 07:35:27.212596 < 6 bytes data, client => server 07:35:27.212614 'EPSV\r\n' 07:35:27.214670 Received DATA (on stdin) 07:35:27.214683 > 38 bytes data, server => client 07:35:27.214693 '229 Entering Passive Mode (|||43217|)\n' 07:35:27.214930 < 8 bytes data, client => server 07:35:27.214943 'TYPE I\r\n' 07:35:27.215057 Received DATA (on stdin) 07:35:27.215068 > 33 bytes data, server => client 07:35:27.215078 '200 I modify TYPE as you wanted\r\n' 07:35:27.215146 < 21 bytes data, client => server 07:35:27.215166 'SIZE verifiedserver\r\n' 07:35:27.215242 Received DATA (on stdin) 07:35:27.215256 > 8 bytes data, server => client 07:35:27.215266 '213 17\r\n' 07:35:27.215318 < 21 bytes data, client => server 07:35:27.215336 'RETR verifiedserver\r\n' 07:35:27.215519 Received DATA (on stdin) 07:35:27.215534 > 29 bytes data, server => client 07:35:27.215544 '150 Binary junk (17 bytes).\r\n' 07:35:27.215929 Received DATA (on stdin) 07:35:27.215939 > 28 bytes data, server => client 07:35:27.215946 '226 File transfer complete\r\n' 07:35:27.259510 < 6 bytes data, client => server 07:35:27.259532 'QUIT\r\n' 07:35:27.259718 Received DATA (on stdin) 07:35:27.259731 > 18 bytes data, server => client 07:35:27.259742 '221 bye bye baby\r\n' 07:35:27.260202 ====> Client disconnect 07:35:27.260337 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.214333 Running IPv4 version 07:35:27.214398 Listening on port 43217 07:35:27.214435 Wrote pid 107493 to log/7/server/ftp_sockdata.pid 07:35:27.214455 Received PING (on stdin) 07:35:27.214544 Received PORT (on stdin) 07:35:27.214842 ====> Client connect 07:35:27.215569 Received DATA (on stdin) 07:35:27.215582 > 17 bytes data, server => client 07:35:27.215591 'WE ROOLZ: 81417\r\n' 07:35:27.215615 Received DISC (on stdin) 07:35:27.215626 ====> Client forcibly disconnected 07:35:27.215699 Received QUIT (on stdin) 07:35:27.215709 quits 07:35:27.215755 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 595 === End of file server.cmd === Start of file stderr595 URL: ftp://127.0.0.1:40197/595 === End of file stderr595 === Start of file valgrind595 ==107641== ==107641== Process terminating with default action of signal 4 (SIGILL) ==107641== Illegal opcode at address 0x51C2DB3 ==107641== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107641== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107641== by 0x51C2DB3: Curl_open (url.c:541) ==107641== by 0x513D46F: curl_easy_init (easy.c:372) ==107641== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107641== by 0x4003443: main (first.c:167) ==107641== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x533CFA5: __tsearch (tsearch.c:337) ==107641== by 0x533CFA5: tsearch (tsearch.c:290) ==107641== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107641== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107641== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107641== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107641== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107641== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== ==107641== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x533CFA5: __tsearch (tsearch.c:337) ==107641== by 0x533CFA5: tsearch (tsearch.c:290) ==107641== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107641== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107641== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== ==107641== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107641== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107641== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107641== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107641== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107641== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== ==107641== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x524F0A9: add_alCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind597 ./libtest/libtests lib597 ftp://127.0.0.1:38657 > log/24/stdout597 2> log/24/stderr597 ias2.part.0 (gconv_conf.c:132) ==107641== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107641== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== ==107641== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107641== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107641== by 0x51C2D03: Curl_open (url.c:520) ==107641== by 0x513D46F: curl_easy_init (easy.c:372) ==107641== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107641== by 0x4003443: main (first.c:167) ==107641== ==107641== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x533CFA5: __tsearch (tsearch.c:337) ==107641== by 0x533CFA5: tsearch (tsearch.c:290) ==107641== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107641== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107641== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107641== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107641== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107641== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== ==107641== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107641== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107641== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107641== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107641== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107641== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107641== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107641== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107641== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107641== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107641== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107641== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107641== by 0x525A142: setlocale (setlocale.c:337) ==107641== by 0x400336E: main (first.c:123) ==107641== === End of file valgrind595 test 0597...[FTP connect only option] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind597 ./libtest/libtests lib597 ftp://127.0.0.1:38657 > log/24/stdout597 2> log/24/stderr597 597: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 597 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind597 ./libtest/libtests lib597 ftp://127.0.0.1:38657 > log/24/stdout597 2> log/24/stderr597 === End of file commands.log === Start of file ftp_server.log 07:35:27.411650 ====> Client connect 07:35:27.411808 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.412252 < "USER anonymous" 07:35:27.412284 > "331 We are happy you popped in![CR][LF]" 07:35:27.412428 < "PASS ftp@example.com" 07:35:27.412458 > "230 Welcome you silly person[CR][LF]" 07:35:27.412604 < "PWD" 07:35:27.412635 > "257 "/" is current directory[CR][LF]" 07:35:27.412799 < "EPSV" 07:35:27.412823 ====> Passive DATA channel requested by client 07:35:27.412837 DATA sockfilt for passive data channel starting... 07:35:27.414374 DATA sockfilt for passive data channel started (pid 107606) 07:35:27.414478 DATA sockfilt for passive data channel listens on port 36687 07:35:27.414518 > "229 Entering Passive Mode (|||36687|)[LF]" 07:35:27.414536 Client has been notified that DATA conn will be accepted on port 36687 07:35:27.414744 Client connects to port 36687 07:35:27.414770 ====> Client established passive DATA connection on port 36687 07:35:27.414828 < "TYPE I" 07:35:27.414855 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.415011 < "SIZE verifiedserver" 07:35:27.415045 > "213 17[CR][LF]" 07:35:27.415198 < "RETR verifiedserver" 07:35:27.415229 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.415297 =====> Closing passive DATA connection... 07:35:27.415314 Server disconnects passive DATA connection 07:35:27.415434 Server disconnected passive DATA connection 07:35:27.415459 DATA sockfilt for passive data channel quits (pid 107606) 07:35:27.415675 DATA sockfilt for passive data channel quit (pid 107606) 07:35:27.415727 =====> Closed passive DATA connection 07:35:27.415768 > "226 File transfer complete[CR][LF]" 07:35:27.457414 < "QUIT" 07:35:27.457469 > "221 bye bye baby[CR][LF]" 07:35:27.457581 MAIN sockfilt said DISC 07:35:27.457603 ====> Client disconnected 07:35:27.457700 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.257545 ====> Client connect 07:35:27.257816 Received DATA (on stdin) 07:35:27.257839 > 160 bytes data, server => client 07:35:27.257851 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.257862 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.257871 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.258107 < 16 bytes data, client => server 07:35:27.258122 'USER anonymous\r\n' 07:35:27.258273 Received DATA (on stdin) 07:35:27.258285 > 33 bytes data, server => client 07:35:27.258296 '331 We are happy you popped in!\r\n' 07:35:27.258340 < 22 bytes data, client => server 07:35:27.258351 'PASS ftp@example.com\r\n' 07:35:27.258450 Received DATA (on stdin) 07:35:27.258468 > 30 bytes data, server => client 07:35:27.258479 '230 Welcome you silly person\r\n' 07:35:27.258531 < 5 bytes data, client => server 07:35:27.258543 'PWD\r\n' 07:35:27.258623 Received DATA (on stdin) 07:35:27.258636 > 30 bytes data, server => client 07:35:27.258647 '257 "/" is current directory\r\n' 07:35:27.258705 < 6 bytes data, client => server 07:35:27.258717 'EPSV\r\n' 07:35:27.260560 Received DATA (on stdin) 07:35:27.260576 > 38 bytes data, server => client 07:35:27.260587 '229 Entering Passive Mode (|||36687|)\n' 07:35:27.260710 < 8 bytes data, client => server 07:35:27.260721 'TYPE I\r\n' 07:35:27.260843 Received DATA (on stdin) 07:35:27.260856 > 33 bytes data, server => client 07:35:27.260867 '200 I modify TYPE as you wanted\r\n' 07:35:27.260918 < 21 bytes data, client => server 07:35:27.260929 'SIZE verifiedserver\r\n' 07:35:27.261033 Received DATA (on stdin) 07:35:27.261045 > 8 bytes data, server => client 07:35:27.261055 '213 17\r\n' 07:35:27.261105 < 21 bytes data, client => server 07:35:27.261117 'RETR verifiedserver\r\n' 07:35:27.261236 Received DATA (on stdin) 07:35:27.261261 > 29 bytes data, server => client 07:35:27.261272 '150 Binary junk (17 bytes).\r\n' 07:35:27.261765 Received DATA (on stdin) 07:35:27.261779 > 28 bytes data, server => client 07:35:27.261789 '226 File transfer complete\r\n' 07:35:27.303216 < 6 bytes data, client => server 07:35:27.303242 'QUIT\r\n' 07:35:27.303462 Received DATA (on stdin) 07:35:27.303473 > 18 bytes data, seCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind596 ./libtest/libtests lib500 ftp://127.0.0.1:34427/596 log/1/ip596 activeftp > log/1/stdout596 2> log/1/stderr596 rver => client 07:35:27.303483 '221 bye bye baby\r\n' 07:35:27.303529 ====> Client disconnect 07:35:27.303600 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.260191 Running IPv4 version 07:35:27.260243 Listening on port 36687 07:35:27.260285 Wrote pid 107606 to log/24/server/ftp_sockdata.pid 07:35:27.260305 Received PING (on stdin) 07:35:27.260384 Received PORT (on stdin) 07:35:27.260685 ====> Client connect 07:35:27.261305 Received DATA (on stdin) 07:35:27.261318 > 17 bytes data, server => client 07:35:27.261331 'WE ROOLZ: 81588\r\n' 07:35:27.261358 Received DISC (on stdin) 07:35:27.261370 ====> Client forcibly disconnected 07:35:27.261453 Received QUIT (on stdin) 07:35:27.261465 quits 07:35:27.261516 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 597 === End of file server.cmd === Start of file stderr597 URL: ftp://127.0.0.1:38657 === End of file stderr597 === Start of file valgrind597 ==107757== ==107757== Process terminating with default action of signal 4 (SIGILL) ==107757== Illegal opcode at address 0x51C2DB3 ==107757== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107757== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107757== by 0x51C2DB3: Curl_open (url.c:541) ==107757== by 0x513D46F: curl_easy_init (easy.c:372) ==107757== by 0x4054D15: test_lib597.part.0.lto_priv.0 (lib597.c:50) ==107757== by 0x4003443: main (first.c:167) ==107757== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x533CFA5: __tsearch (tsearch.c:337) ==107757== by 0x533CFA5: tsearch (tsearch.c:290) ==107757== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107757== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107757== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107757== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107757== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107757== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== ==107757== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x533CFA5: __tsearch (tsearch.c:337) ==107757== by 0x533CFA5: tsearch (tsearch.c:290) ==107757== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107757== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107757== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== ==107757== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107757== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107757== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107757== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107757== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107757== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== ==107757== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107757== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107757== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== ==107757== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107757== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107757== by 0x51C2D03: Curl_open (url.c:520) ==107757== by 0x513D46F: curl_easy_init (easy.c:372) ==107757== by 0x4054D15: test_lib597.part.0.lto_priv.0 (lib597.c:50) ==107757== by 0x4003443: main (first.c:167) ==107757== ==107757== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x533CFA5: __tsearch (tsearch.c:337) ==107757== by 0x533CFA5: tsearch (tsearch.c:290) ==107757== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107757== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107757== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107757== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107757== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107757== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== ==107757== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107757== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107757== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107757== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107757== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107757== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107757== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107757== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107757== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107757== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107757== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107757== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107757== by 0x525A142: setlocale (setlocale.c:337) ==107757== by 0x400336E: main (first.c:123) ==107757== === End of file valgrind597 test 0596...[verify close callbacks with active FTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind596 ./libtest/libtests lib500 ftp://127.0.0.1:34427/596 log/1/ip596 activeftp > log/1/stdout596 2> log/1/stderr596 596: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 596 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind596 ./libtest/libtests lib500 ftp://127.0.0.1:34427/596 log/1/ip596 activeftp > log/1/stdout596 2> log/1/stderr596 === End of file commands.log === Start of file ftp_server.log 07:35:27.391773 ====> Client connect 07:35:27.391929 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:27.392155 < "USER anonymous" 07:35:27.392186 > "331 We are happy you popped in![CR][LF]" 07:35:27.392321 < "PASS ftp@example.com" 07:35:27.392347 > "230 Welcome you silly person[CR][LF]" 07:35:27.392499 < "PWD" 07:35:27.392524 > "257 "/" is current directory[CR][LF]" 07:35:27.392692 < "EPSV" 07:35:27.392719 ====> Passive DATA channel requested by client 07:35:27.392733 DATA sockfilt for passive data channel starting... 07:35:27.394293 DATA sockfilt for passive data channel started (pid 107536) 07:35:27.394401 DATA sockfilt for passive data channel listens on port 35005 07:35:27.394445 > "229 Entering Passive Mode (|||35005|)[LF]" 07:35:27.394466 Client has been notified that DATA conn will be accepted on port 35005 07:35:27.394644 Client connects to port 35005 07:35:27.394673 ====> Client established passive DATA connection on port 35005 07:35:27.394737 < "TYPE I" 07:35:27.394764 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:27.394899 < "SIZE verifiedserver" 07:35:27.394935 > "213 17[CR][LF]" 07:35:27.395063 < "RETR verifiedserver" 07:35:27.395096 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:27.395163 =====> Closing passive DATA connection... 07:35:27.395179 Server disconnects passive DATA connection 07:35:27.395252 Server disconnected passive DATA connection 07:35:27.395274 DATA sockfilt for passive data channel quits (pid 107536) 07:35:27.395481 DATA sockfilt for passive data channel quit (pid 107536) 07:35:27.395505 =====> Closed passive DATA connection 07:35:27.395530 > "226 File transfer complete[CR][LF]" 07:35:27.437064 < "QUIT" 07:35:27.437122 > "221 bye bye baby[CR][LF]" 07:35:27.437397 MAIN sockfilt said DISC 07:35:27.437449 ====> Client disconnected 07:35:27.437522 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:27.237662 ====> Client connect 07:35:27.237910 Received DATA (on stdin) 07:35:27.237932 > 160 bytes data, server => client 07:35:27.237944 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:27.237954 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:27.237964 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:27.238035 < 16 bytes data, client => server 07:35:27.238047 'USER anonymous\r\n' 07:35:27.238174 Received DATA (on stdin) 07:35:27.238187 > 33 bytes data, server => client 07:35:27.238197 '331 We are happy you popped in!\r\n' 07:35:27.238249 < 22 bytes data, client => server 07:35:27.238266 'PASS ftp@example.com\r\n' 07:35:27.238333 Received DATA (on stdin) 07:35:27.238345 > 30 bytes data, server => client 07:35:27.238355 '230 Welcome you silly person\r\n' 07:35:27.238412 < 5 bytes data, client => server 07:35:27.238423 'PWD\r\n' 07:35:27.238509 Received DATA (on stdin) 07:35:27.238519 > 30 bytes data, server => client 07:35:27.238530 '257 "/" is current directory\r\n' 07:35:27.238587 < 6 bytes data, client => server 07:35:27.238604 'EPSV\r\n' 07:35:27.240454 Received DATA (on stdin) 07:35:27.240473 > 38 bytes data, server => client 07:35:27.240485 '229 Entering Passive Mode (|||35005|)\n' 07:35:27.240580 < 8 bytes data, client => server 07:35:27.240594 'TYPE I\r\n' 07:35:27.240752 Received DATA (on stdin) 07:35:27.240765 > 33 bytes data, server => client 07:35:27.240776 '200 I modify TYPE as you wanted\r\n' 07:35:27.240823 < 21 bytes data, client => server 07:35:27.240837 'SIZE verifiedserver\r\n' 07:35:27.240923 Received DATA (on stdin) 07:35:27.240935 > 8 bytes data, server => client 07:35:27.240945 '213 17\r\n' 07:35:27.240987 < 21 bytes data, client => server 07:35:27.240999 'RETR verifiedserver\r\n' 07:35:27.241168 Received DATA (on stdin) 07:35:27.241181 > 29 bytes data, server => client 07:35:27.241191 '150 Binary junk (17 bytes).\r\n' 07:35:27.241518 Received DATA (on stdin) 07:35:27.241531 > 28 bytes data, server => client 07:35:27.241541 '226 File transfer complete\r\n' 07:35:27.282836 < 6 bytes data, client => server 07:35:27.282872 'QUIT\r\n' 07:35:27.283116 Received DATA (on stdin) 07:35:27.283129 > 18 bytes data, server => client 07:35:27.283139 '221 bye bye baby\r\n' 07:35:27.283311 ====> Client disconnect 07:35:27.284128 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:27.240112 Running IPv4 version 07:35:27.240165 Listening on port 35005 07:35:27.240202 Wrote pid 107536 to log/1/server/ftp_sockdata.pid 07:35:27.240220 Received PING (on stdin) 07:35:27.240311 Received PORT (on stdin) 07:35:27.240581 ====> Client connect 07:35:27.241092 Received DATA (on stdin) 07:35:27.241104 > 17 bytes data, server => client 07:35:27.241114 'WE ROOLZ: 80151\r\n' 07:35:27.241166 Received DISC (on stdin) 07:35:27.241178 ====> Client forcibly disconnected 07:35:27.241270 Received QUIT (on stdin) 07:35:27.241282 quits 07:35:27.241339 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 596 === End of file server.cmd === Start of file stderr596 URL: ftp://127.0.0.1:34427/596 === End of file stderr596 === Start of file valgrind596 ==107709== ==107709== Process terminating with default action of signal 4 (SIGILL) ==107709== Illegal opcode at address 0x51C2DB3 ==107709== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107709== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107709== by 0x51C2DB3: Curl_open (url.c:541) ==107709== by 0x513D46F: curl_easy_init (easy.c:372) ==107709== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107709== by 0x4003443: main (first.c:167) ==107709== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x533CFA5: __tsearch (tsearch.c:337) ==107709== by 0x533CFA5: tsearch (tsearch.c:290) ==107709== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107709== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107709== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107709== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107709== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107709== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== ==107709== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x533CFA5: __tsearch (tsearch.c:337) ==107709== by 0x533CFA5: tsearch (tsearch.c:290) ==107709== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107709== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107709== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== ==107709== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x524F0A9: acannot find sshd cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind500 ./libtest/libtests lib500 http://127.0.0.1:45701/500 log/23/ip500 > log/23/stdout500 2> log/23/stderr500 dd_alias2.part.0 (gconv_conf.c:132) ==107709== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107709== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107709== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107709== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107709== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== ==107709== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107709== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107709== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== ==107709== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107709== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107709== by 0x51C2D03: Curl_open (url.c:520) ==107709== by 0x513D46F: curl_easy_init (easy.c:372) ==107709== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==107709== by 0x4003443: main (first.c:167) ==107709== ==107709== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x533CFA5: __tsearch (tsearch.c:337) ==107709== by 0x533CFA5: tsearch (tsearch.c:290) ==107709== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107709== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107709== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107709== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107709== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107709== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== ==107709== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107709== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107709== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107709== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107709== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107709== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107709== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107709== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107709== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107709== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107709== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107709== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107709== by 0x525A142: setlocale (setlocale.c:337) ==107709== by 0x400336E: main (first.c:123) ==107709== === End of file valgrind596 test 0500...[simple libcurl HTTP GET tool] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind500 ./libtest/libtests lib500 http://127.0.0.1:45701/500 log/23/ip500 > log/23/stdout500 2> log/23/stderr500 500: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 500 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind500 ./libtest/libtests lib500 http://127.0.0.1:45701/500 log/23/ip500 > log/23/stdout500 2> log/23/stderr500 === End of file commands.log === Start of file http_server.log 07:35:08.132070 ====> Client connect 07:35:08.132106 accept_connection 3 returned 4 07:35:08.132123 accept_connection 3 returned 0 07:35:08.132138 Read 93 bytes 07:35:08.132149 Process 93 bytes request 07:35:08.132168 Got request: GET /verifiedserver HTTP/1.1 07:35:08.132177 Are-we-friendly question received 07:35:08.132221 Wrote request (93 bytes) input to log/23/server.input 07:35:08.132238 Identifying ourselves as friends 07:35:08.132295 Response sent (56 bytes) and written to log/23/server.response 07:35:08.132304 special request received, no persistency 07:35:08.132313 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 500 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file stderr500 URL: http://127.0.0.1:45701/500 === End of file stderr500 === Start of file valgrind500 ==101927== ==101927== Process terminating with default action of signal 4 (SIGILL) ==101927== Illegal opcode at address 0x51C2DB3 ==101927== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==101927== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==101927== by 0x51C2DB3: Curl_open (url.c:541) ==101927== by 0x513D46F: curl_easy_init (easy.c:372) ==101927== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==101927== by 0x4003443: main (first.c:167) ==101927== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x533CFA5: __tsearch (tsearch.c:337) ==101927== by 0x533CFA5: tsearch (tsearch.c:290) ==101927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101927== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101927== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== ==101927== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x533CFA5: __tsearch (tsearch.c:337) ==101927== by 0x533CFA5: tsearch (tsearch.c:290) ==101927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101927== by 0x524F74A: add_alias2 (gconv_conCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind598 ./libtest/libtests lib598 http://127.0.0.1:37285/598 > log/12/stdout598 2> log/12/stderr598 f.c:105) ==101927== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== ==101927== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101927== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==101927== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== ==101927== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101927== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==101927== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== ==101927== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==101927== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==101927== by 0x51C2D03: Curl_open (url.c:520) ==101927== by 0x513D46F: curl_easy_init (easy.c:372) ==101927== by 0x4004B21: test_lib500.lto_priv.0 (lib500.c:66) ==101927== by 0x4003443: main (first.c:167) ==101927== ==101927== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x533CFA5: __tsearch (tsearch.c:337) ==101927== by 0x533CFA5: tsearch (tsearch.c:290) ==101927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==101927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101927== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101927== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== ==101927== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==101927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==101927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==101927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==101927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==101927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==101927== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==101927== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==101927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==101927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==101927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==101927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==101927== by 0x525A142: setlocale (setlocale.c:337) ==101927== by 0x400336E: main (first.c:123) ==101927== === End of file valgrind500 test 0598...[curl_easy_reset with referer and other strings set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind598 ./libtest/libtests lib598 http://127.0.0.1:37285/598 > log/12/stdout598 2> log/12/stderr598 598: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 598 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind598 ./libtest/libtests lib598 http://127.0.0.1:37285/598 > log/12/stdout598 2> log/12/stderr598 === End of file commands.log === Start of file http_server.log 07:35:27.423523 ====> Client connect 07:35:27.423555 accept_connection 3 returned 4 07:35:27.423571 accept_connection 3 returned 0 07:35:27.423586 Read 93 bytes 07:35:27.423596 Process 93 bytes request 07:35:27.423608 Got request: GET /verifiedserver HTTP/1.1 07:35:27.423617 Are-we-friendly question received 07:35:27.423641 Wrote request (93 bytes) input to log/12/server.input 07:35:27.423657 Identifying ourselves as friends 07:35:27.423712 Response sent (56 bytes) and written to log/12/server.response 07:35:27.423722 special request received, no persistency 07:35:27.423731 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 598 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr598 URL: http://127.0.0.1:37285/598 === End of file stderr598 === Start of file valgrind598 ==107870== ==107870== Process terminating with default action of signal 4 (SIGILL) ==107870== Illegal opcode at address 0x51C2DB3 ==107870== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107870== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107870== by 0x51C2DB3: Curl_open (url.c:541) ==107870== by 0x513D46F: curl_easy_init (easy.c:372) ==107870== by 0x401BF2C: test_lib598.lto_priv.0 (lib598.c:38) ==107870== by 0x4003443: main (first.c:167) ==107870== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x533CFA5: __tsearch (tsearch.c:337) ==107870== by 0x533CFA5: tsearch (tsearch.c:290) ==107870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107870== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107870== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLICMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind599 ./libtest/libtests lib599 http://127.0.0.1:34999/599 log/9/ip599 > log/9/stdout599 2> log/9/stderr599 BC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== ==107870== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x533CFA5: __tsearch (tsearch.c:337) ==107870== by 0x533CFA5: tsearch (tsearch.c:290) ==107870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107870== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107870== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== ==107870== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107870== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107870== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== ==107870== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107870== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107870== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== ==107870== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107870== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107870== by 0x51C2D03: Curl_open (url.c:520) ==107870== by 0x513D46F: curl_easy_init (easy.c:372) ==107870== by 0x401BF2C: test_lib598.lto_priv.0 (lib598.c:38) ==107870== by 0x4003443: main (first.c:167) ==107870== ==107870== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x533CFA5: __tsearch (tsearch.c:337) ==107870== by 0x533CFA5: tsearch (tsearch.c:290) ==107870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107870== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107870== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== ==107870== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107870== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107870== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107870== by 0x525A142: setlocale (setlocale.c:337) ==107870== by 0x400336E: main (first.c:123) ==107870== === End of file valgrind598 test 0599...[HTTP GET with progress callback and redirects changing content sizes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind599 ./libtest/libtests lib599 http://127.0.0.1:34999/599 log/9/ip599 > log/9/stdout599 2> log/9/stderr599 599: data FAILED: --- log/9/check-expected 2025-07-18 07:35:28.337112146 +0000 +++ log/9/check-generated 2025-07-18 07:35:28.337112146 +0000 @@ -1,16 +0,0 @@ -HTTP/1.1 302 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Location: 5990001[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Content-Type: text/html[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Transfer-Encoding: chunked[CR][LF] -Connection: close[CR][LF] -Content-Type: text/html[CR][LF] -[CR][LF] -this data is slightly larger than the first piece[LF] == Contents of files in the log/9/ dir after test 599 === Start of file check-expected HTTP/1.1 302 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Location: 5990001[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Content-Type: text/html[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Transfer-Encoding: chunked[CR][LF] Connection: close[CR][LF] Content-Type: text/html[CR][LF] [CR][LF] this data is slightly larger than the first piece[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind599 ./libtest/libtests lib599 http://127.0.0.1:34999/599 log/9/ip599 > log/9/stdout599 2> log/9/stderr599 === End of file commands.log === Start of file http_server.log 07:35:27.432016 ====> Client connect 07:35:27.432041 accept_connection 3 returned 4 07:35:27.432053 accept_connection 3 returned 0 07:35:27.432064 Read 93 bytes 07:35:27.432072 Process 93 bytes request 07:35:27.432082 Got request: GET /verifiedserver HTTP/1.1 07:35:27.432089 Are-we-friendly question received 07:35:27.432114 Wrote request (93 bytes) input to log/9/server.input 07:35:27.432126 Identifying ourselves as friends 07:35:27.432165 Response sent (56 bytes) and written to log/9/server.response 07:35:27.432172 special request received, no persistency 07:35:27.432179 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 599 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr599 URL: http://127.0.0.1:34999/599 === End of file stderr599 === Start of file valgrind599 ==107881== ==107881== Process terminating with default action of signal 4 (SIGILL) ==107881== Illegal opcode at address 0x51C2DB3 ==107881== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107881== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107881== by 0x51C2DB3: Curl_open (url.c:541) ==107881== by 0x513D46F: curl_easy_init (easy.c:372) ==107881== by 0x4015C5F: test_lib599.lto_priv.0 (lib599.c:55) ==107881== by 0x4003443: main (first.c:167) ==107881== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x533CFA5: __tsearch (tsearch.c:337) ==107881== by 0x533CFA5: tsearch (tsearch.c:290) ==107881== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107881== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107881== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107881== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107881== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107881== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== ==107881== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x533CFA5: __tsearch (tsearch.c:337) ==107881== by 0x533CFA5: tsearch (tsearch.c:290) ==107881== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107881== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107881== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== ==107881== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107881== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107881== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107881== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107881== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107881== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== ==107881== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107881== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107881== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== ==107881== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==107881== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107881== by 0x51C2D03: Curl_open (url.c:520) ==107881== by 0x513D46F: curl_easy_init (easy.c:372) ==107881== by 0x4015C5F: test_lib599.lto_priv.0 (lib599.c:55) ==107881== by 0x4003443: main (first.c:167) ==107881== ==107881== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x533CFA5: __tsearch (tsearch.c:337) ==107881== by 0x533CFA5: tsearch (tsearch.c:290) ==107881== by 0x524F0F4: acannot find sshd cannot find sshd cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind514 ./libtest/libtests lib514 http://127.0.0.1:35775/514 > log/6/stdout514 2> log/6/stderr514 dd_alias2.part.0 (gconv_conf.c:142) ==107881== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107881== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107881== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107881== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107881== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== ==107881== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==107881== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107881== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107881== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107881== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107881== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107881== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107881== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107881== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107881== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107881== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107881== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107881== by 0x525A142: setlocale (setlocale.c:337) ==107881== by 0x400336E: main (first.c:123) ==107881== === End of file valgrind599 test 0587...[HTTP multi-part formpost with aborted read callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind587 ./libtest/libtests lib554 http://127.0.0.1:34851/587 > log/10/stdout587 2> log/10/stderr587 libtests returned 132, when expecting 42 587: exit FAILED == Contents of files in the log/10/ dir after test 587 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind587 ./libtest/libtests lib554 http://127.0.0.1:34851/587 > log/10/stdout587 2> log/10/stderr587 === End of file commands.log === Start of file http_server.log 07:35:26.955231 ====> Client connect 07:35:26.955288 accept_connection 3 returned 4 07:35:26.955308 accept_connection 3 returned 0 07:35:26.955884 Read 93 bytes 07:35:26.955908 Process 93 bytes request 07:35:26.955922 Got request: GET /verifiedserver HTTP/1.1 07:35:26.955931 Are-we-friendly question received 07:35:26.955982 Wrote request (93 bytes) input to log/10/server.input 07:35:26.955999 Identifying ourselves as friends 07:35:26.956052 Response sent (56 bytes) and written to log/10/server.response 07:35:26.956061 special request received, no persistency 07:35:26.956069 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 587 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr587 URL: http://127.0.0.1:34851/587 === End of file stderr587 === Start of file valgrind587 ==107174== ==107174== Process terminating with default action of signal 4 (SIGILL) ==107174== Illegal opcode at address 0x51C2DB3 ==107174== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==107174== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==107174== by 0x51C2DB3: Curl_open (url.c:541) ==107174== by 0x513D46F: curl_easy_init (easy.c:372) ==107174== by 0x400FC08: t554_test_once (lib554.c:147) ==107174== by 0x400FE8B: test_lib554.lto_priv.0 (lib554.c:204) ==107174== by 0x4003443: main (first.c:167) ==107174== 408 bytes in 17 blocks are possibly lost in loss record 620 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x533CFA5: __tsearch (tsearch.c:337) ==107174== by 0x533CFA5: tsearch (tsearch.c:290) ==107174== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107174== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107174== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107174== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107174== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107174== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== ==107174== 552 bytes in 23 blocks are possibly lost in loss record 624 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x533CFA5: __tsearch (tsearch.c:337) ==107174== by 0x533CFA5: tsearch (tsearch.c:290) ==107174== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107174== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107174== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== ==107174== 681 bytes in 17 blocks are possibly lost in loss record 630 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107174== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107174== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107174== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107174== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==107174== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== ==107174== 1,018 bytes in 23 blocks are possibly lost in loss record 645 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107174== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==107174== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== ==107174== 5,480 bytes in 1 blockcannot find sshd s are definitely lost in loss record 664 of 671 ==107174== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==107174== by 0x51C2D03: Curl_open (url.c:520) ==107174== by 0x513D46F: curl_easy_init (easy.c:372) ==107174== by 0x400FC08: t554_test_once (lib554.c:147) ==107174== by 0x400FE8B: test_lib554.lto_priv.0 (lib554.c:204) ==107174== by 0x4003443: main (first.c:167) ==107174== ==107174== 11,664 bytes in 486 blocks are possibly lost in loss record 667 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x533CFA5: __tsearch (tsearch.c:337) ==107174== by 0x533CFA5: tsearch (tsearch.c:290) ==107174== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==107174== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107174== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107174== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107174== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107174== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== ==107174== 18,800 bytes in 486 blocks are possibly lost in loss record 669 of 671 ==107174== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==107174== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==107174== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==107174== by 0x524F3F0: add_alias (gconv_conf.c:178) ==107174== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==107174== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==107174== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==107174== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==107174== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==107174== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==107174== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==107174== by 0x525A142: setlocale (setlocale.c:337) ==107174== by 0x400336E: main (first.c:123) ==107174== === End of file valgrind587 test 0514...[First set options to POST and then to make HEAD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind514 ./libtest/libtests lib514 http://127.0.0.1:35775/514 > log/6/stdout514 2> log/6/stderr514 514: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 514 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind514 ./libtest/libtests lib514 http://127.0.0.1:35775/514 > log/6/stdout514 2> log/6/stderr514 === End of file commands.log === Start of file http_server.log 07:35:08.598849 ====> Client connect 07:35:08.598879 accept_connection 3 returned 4 07:35:08.598896 accept_connection 3 returned 0 07:35:08.598955 Read 93 bytes 07:35:08.598966 Process 93 bytes request 07:35:08.598977 Got request: GET /verifiedserver HTTP/1.1 07:35:08.598985 Are-we-friendly question received 07:35:08.599007 Wrote request (93 bytes) input to log/6/server.input 07:35:08.599020 Identifying ourselves as friends 07:35:08.599063 Response sent (56 bytes) and written to log/6/server.response 07:35:08.599070 special request received, no persistency 07:35:08.599077 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 514 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file stderr514 URL: http://127.0.0.1:35775/514 === End of file stderr514 === Start of file valgrind514 ==102598== ==102598== Process terminating with default action of signal 4 (SIGILL) ==102598== Illegal opcode at address 0x51C2DB3 ==102598== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==102598== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==102598== by 0x51C2DB3: Curl_open (url.c:541) ==102598== by 0x513D46F: curl_easy_init (easy.c:372) ==102598== by 0x40055CA: test_lib514.lto_priv.0 (lib514.c:38) ==102598== by 0x4003443: main (first.c:167) ==102598== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x533CFA5: __tsearch (tsearch.c:337) ==102598== by 0x533CFA5: tsearch (tsearch.c:290) ==102598== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102598== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102598== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102598== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102598== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102598== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== ==102598== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x533CFA5: __tsearch (tsearch.c:337) ==102598== by 0x533CFA5: tsearch (tsearch.c:290) ==102598== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102598== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102598== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== ==102598== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102598== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102598== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102598== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102598== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==102598== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== ==102598== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 65cannot find sshd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind632 ../src/curl -q --output log/17/curl632.out --include --trace-ascii log/17/trace632 --trace-config all --trace-time --hostpubmd5 00 --key log/17/server/curl_client_key --pubkey log/17/server/curl_client_key.pub -u builduser: sftp://127.0.0.1:47/startdir/src/build-curl/tests/log/17/irrelevant-file --insecure > log/17/stdout632 2> log/17/stderr632 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind643 ./libtest/libtests lib643 http://127.0.0.1:46675/643 > log/5/stdout643 2> log/5/stderr643 5 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102598== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==102598== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== ==102598== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==102598== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==102598== by 0x51C2D03: Curl_open (url.c:520) ==102598== by 0x513D46F: curl_easy_init (easy.c:372) ==102598== by 0x40055CA: test_lib514.lto_priv.0 (lib514.c:38) ==102598== by 0x4003443: main (first.c:167) ==102598== ==102598== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x533CFA5: __tsearch (tsearch.c:337) ==102598== by 0x533CFA5: tsearch (tsearch.c:290) ==102598== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==102598== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102598== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102598== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102598== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102598== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== ==102598== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==102598== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==102598== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==102598== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==102598== by 0x524F3F0: add_alias (gconv_conf.c:178) ==102598== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==102598== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==102598== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==102598== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==102598== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==102598== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==102598== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==102598== by 0x525A142: setlocale (setlocale.c:337) ==102598== by 0x400336E: main (first.c:123) ==102598== === End of file valgrind514 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/17/server/ssh_server.pid" --logdir "log/17" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 36817 startnew: child process has died, server might start up RUN: failed to start the SSH server on 36817 test 0582 SKIPPED: failed starting SSH server test 0622 SKIPPED: failed starting SSH server test 0623 SKIPPED: failed starting SSH server startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/5/server/ssh_server.pid" --logdir "log/5" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 42095 startnew: child process has died, server might start up RUN: failed to start the SSH server on 42095 * starts no server test 0632...[SFTP syntactically invalid host key] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind632 ../src/curl -q --output log/17/curl632.out --include --trace-ascii log/17/trace632 --trace-config all --trace-time --hostpubmd5 00 --key log/17/server/curl_client_key --pubkey log/17/server/curl_client_key.pub -u builduser: sftp://127.0.0.1:47/startdir/src/build-curl/tests/log/17/irrelevant-file --insecure > log/17/stdout632 2> log/17/stderr632 curl returned 132, when expecting 2 632: exit FAILED == Contents of files in the log/17/ dir after test 632 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind632 ../src/curl -q --output log/17/curl632.out --include --trace-ascii log/17/trace632 --trace-config all --trace-time --hostpubmd5 00 --key log/17/server/curl_client_key --pubkey log/17/server/curl_client_key.pub -u builduser: sftp://127.0.0.1:47/startdir/src/build-curl/tests/log/17/irrelevant-file --insecure > log/17/stdout632 2> log/17/stderr632 === End of file commands.log === Start of file server.cmd Testnum 632 === End of file server.cmd === Start of file valgrind632 ==108031== ==108031== Process terminating with default action of signal 4 (SIGILL) ==108031== Illegal opcode at address 0x4003082 ==108031== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==108031== by 0x4003082: main (tool_main.c:234) === End of file valgrind632 test 0643...[HTTP multi-part mimepost using read callback for the file part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind643 ./libtest/libtests lib643 http://127.0.0.1:46675/643 > log/5/stdout643 2> log/5/stderr643 643: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 643 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind643 ./libtest/libtests lib643 http://127.0.0.1:46675/643 > log/5/stdout643 2> log/5/stderr643 === End of file commands.log === Start of file http_server.log 07:35:42.604895 ====> Client connect 07:35:42.604914 accept_connection 3 returned 4 07:35:42.604925 accept_connection 3 returned 0 07:35:42.604935 Read 93 bytes 07:35:42.604942 Process 93 bytes request 07:35:42.604951 Got request: GET /verifiedserver HTTP/1.1 07:35:42.604957 Are-we-friendly question received 07:35:42.604972 Wrote request (93 bytes) input to log/5/server.input 07:35:42.604982 Identifying ourselves as friends 07:35:42.605015 Response sent (56 bytes) and written to log/5/server.response 07:35:42.605021 special request received, no persistency 07:35:42.605027 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 643 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stderr643 URL: http://127.0.0.1:46675/643 === End of file stderr643 === Start of file valgrind643 ==108097== ==108097== Process terminating with default action of signal 4 (SIGILL) ==108097== Illegal opcode at address 0x51C2DB3 ==108097== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108097== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108097== by CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind645 ./libtest/libtests lib643 http://127.0.0.1:39089/645 > log/17/stdout645 2> log/17/stderr645 0x51C2DB3: Curl_open (url.c:541) ==108097== by 0x513D46F: curl_easy_init (easy.c:372) ==108097== by 0x401C793: t643_test_once (lib643.c:77) ==108097== by 0x401CC57: test_lib643.lto_priv.0 (lib643.c:259) ==108097== by 0x4003443: main (first.c:167) ==108097== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x533CFA5: __tsearch (tsearch.c:337) ==108097== by 0x533CFA5: tsearch (tsearch.c:290) ==108097== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108097== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108097== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108097== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108097== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108097== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== ==108097== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x533CFA5: __tsearch (tsearch.c:337) ==108097== by 0x533CFA5: tsearch (tsearch.c:290) ==108097== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108097== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108097== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== ==108097== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108097== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108097== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108097== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108097== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108097== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== ==108097== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108097== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108097== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== ==108097== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108097== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108097== by 0x51C2D03: Curl_open (url.c:520) ==108097== by 0x513D46F: curl_easy_init (easy.c:372) ==108097== by 0x401C793: t643_test_once (lib643.c:77) ==108097== by 0x401CC57: test_lib643.lto_priv.0 (lib643.c:259) ==108097== by 0x4003443: main (first.c:167) ==108097== ==108097== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x533CFA5: __tsearch (tsearch.c:337) ==108097== by 0x533CFA5: tsearch (tsearch.c:290) ==108097== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108097== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108097== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108097== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108097== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108097== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== ==108097== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108097== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108097== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108097== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108097== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108097== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108097== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108097== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108097== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108097== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108097== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108097== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108097== by 0x525A142: setlocale (setlocale.c:337) ==108097== by 0x400336E: main (first.c:123) ==108097== === End of file valgrind643 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/14/server/ssh_server.pid" --logdir "log/14" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 42907 startnew: child process has died, server might start up RUN: failed to start the SSH server on 42907 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/3/server/ssh_server.pid" --logdir "log/3" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 43271 startnew: child process has died, server might start up RUN: failed to start the SSH server on 43271 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/13/server/ssh_server.pid" --logdir "log/13" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 34781 startnew: child process has died, server might start up RUN: failed to start the SSH server on 34781 test 0645...[HTTP multi-part chunked mimepost using read callback for the file part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind645 ./libtest/libtests lib643 http://127.0.0.1:39089/645 > log/17/stdout645 2> log/17/stderr645 645: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 645 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind645 ./libtest/libtests lib643 http://127.0.0.1:39089/645 > log/17/stdout645 2> log/17/stderr645 === End of file commands.log === Start of file http_server.log 07:35:42.945953 ====> Client connect 07:35:42.945985 accept_connection 3 returned 4 07:35:42.945997 accept_connection 3 returned 0 07:35:42.946007 Read 93 bytes 07:35:42.946014 Process 93 bytes request 07:35:42.946024 Got request: GET /verifiedserver HTTP/1.1 07:35:42.946031 Are-we-friendly question received 07:35:42.946048 Wrote request (93 bytes) input to log/17/server.input 07:35:42.946060 Identifying ourselves as friends 07:35:42.946097 Response sent (56 bytes) and written to log/17/server.response 07:35:42.946104 special request received, no persistency 07:35:42.946110 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 645 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr645 URL: http://127.0.0.1:39089/645 === End of file stderr645 === Start of file valgrind645 ==108163== ==108163== Process terminating with default action of signal 4 (SIGILL) ==108163== Illegal opcode at address 0x51C2DB3 ==108163== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108163== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108163== by 0x51C2DB3: Curl_open (url.c:541) ==108163== by 0x513D46F: curl_easy_init (easy.c:372) ==108163== by 0x401C793: t643_test_once (lib643.c:77) ==108163== by 0x401CC57: test_lib643.lto_priv.0 (lib643.c:259) ==108163== by 0x4003443: main (first.c:167) ==108163== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x533CFA5: __tsearch (tsearch.c:337) ==108163== by 0x533CFA5: tsearch (tsearch.c:290) ==108163== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108163== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108163== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108163== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108163== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108163== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== ==108163== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x533CFA5: __tsearch (tsearch.c:337) ==108163== by 0x533CFA5: tsearch (tsearch.c:290) ==108163== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108163== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108163== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== ==108163== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108163== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108163== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108163== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108163== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108163== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== ==108163== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108163== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108163== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== ==108163== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108163== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108163== by 0x51C2D03: Curl_open (url.c:520) ==108163== by 0x513D46F: curl_easy_init (easy.c:372) ==108163== by 0x401C793: t643_test_once (lib643.c:77) ==108163== by 0x401CC57: test_lib643.lto_priv.0 (lib643.c:259) ==108163== by 0x4003443: main (first.c:167) ==108163== ==108163== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x533CFA5: __tsearch (tsearch.c:337) ==108163== by 0x533CFA5: tsearch (tsearch.c:290) ==108163== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108163== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108163== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108163== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108163== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108163== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== ==108163== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108163== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108163== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108163== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108163== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108163== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108163== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108163== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108163== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108163== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108163== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108163== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108163== by 0x525A142: setlocale (setlocale.c:337) ==108163== by 0x400336E: main (first.c:123) ==108163== === End of file valgrind645 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/20/server/RUN: Process with pid 105949 signalled to die RUN: Process with pid 105949 gracefully died CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind651 ./libtest/libtests lib651 http://127.0.0.1:37169/651 log/20/test651.filedata log/20/stdout651 2> log/20/stderr651 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind650 ./libtest/libtests lib650 http://127.0.0.1:39089/650 log/17/test650.filedata log/17/stdout650 2> log/17/stderr650 ssh_server.pid" --logdir "log/20" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 38113 startnew: child process has died, server might start up RUN: failed to start the SSH server on 38113 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/22/server/ssh_server.pid" --logdir "log/22" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 43299 startnew: child process has died, server might start up RUN: failed to start the SSH server on 43299 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/15/server/ssh_server.pid" --logdir "log/15" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 43855 startnew: child process has died, server might start up RUN: failed to start the SSH server on 43855 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/2/server/ssh_server.pid" --logdir "log/2" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 46309 startnew: child process has died, server might start up RUN: failed to start the SSH server on 46309 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/11/server/ssh_server.pid" --logdir "log/11" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 35607 startnew: child process has died, server might start up RUN: failed to start the SSH server on 35607 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/16/server/ssh_server.pid" --logdir "log/16" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 42773 startnew: child process has died, server might start up RUN: failed to start the SSH server on 42773 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/19/server/ssh_server.pid" --logdir "log/19" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 41751 startnew: child process has died, server might start up RUN: failed to start the SSH server on 41751 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/8/server/ssh_server.pid" --logdir "log/8" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 41185 startnew: child process has died, server might start up RUN: failed to start the SSH server on 41185 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/4/server/ssh_server.pid" --logdir "log/4" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 41117 startnew: child process has died, server might start up RUN: failed to start the SSH server on 41117 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/21/server/ssh_server.pid" --logdir "log/21" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 45111 startnew: child process has died, server might start up RUN: failed to start the SSH server on 45111 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/18/server/ssh_server.pid" --logdir "log/18" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 44849 startnew: child process has died, server might start up RUN: failed to start the SSH server on 44849 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/7/server/ssh_server.pid" --logdir "log/7" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 43173 startnew: child process has died, server might start up RUN: failed to start the SSH server on 43173 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/24/server/ssh_server.pid" --logdir "log/24" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 37989 startnew: child process has died, server might start up RUN: failed to start the SSH server on 37989 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/1/server/ssh_server.pid" --logdir "log/1" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 36811 startnew: child process has died, server might start up RUN: failed to start the SSH server on 36811 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/23/server/ssh_server.pid" --logdir "log/23" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 45833 startnew: child process has died, server might start up RUN: failed to start the SSH server on 45833 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/12/server/ssh_server.pid" --logdir "log/12" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 41103 startnew: child process has died, server might start up RUN: failed to start the SSH server on 41103 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/9/server/ssh_server.pid" --logdir "log/9" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 35205 startnew: child process has died, server might start up RUN: failed to start the SSH server on 35205 test 0650...[HTTP formpost using form API - with redirect and re-POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind650 ./libtest/libtests lib650 http://127.0.0.1:39089/650 log/17/test650.filedata log/17/stdout650 2> log/17/stderr650 650: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 650 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind650 ./libtest/libtests lib650 http://127.0.0.1:39089/650 log/17/test650.filedata log/17/stdout650 2> log/17/stderr650 === End of file commands.log === Start of file http_server.log 07:35:43.607571 ====> Client connect 07:35:43.607596 accept_connection 3 returned 4 07:35:43.607609 accept_connection 3 returned 0 07:35:43.607618 Read 93 bytes 07:35:43.607625 Process 93 bytes request 07:35:43.607635 Got request: GET /verifiedserver HTTP/1.1 07:35:43.607641 Are-we-friendly question received 07:35:43.607658 Wrote request (93 bytes) input to log/17/server.input 07:35:43.607668 Identifying ourselves as friends 07:35:43.607702 Response sent (56 bytes) and written to log/17/server.response 07:35:43.607708 special request received, no persistency 07:35:43.607714 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 650 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr650 URL: http://127.0.0.1:39089/650 === End of file stderr650 === Start of file stdin-for-650 Some data from stdin === End of file stdin-for-650 === Start of file test650.filedata This is data from a file. === End of file test650.filedata === Start of file valgrind650 ==108237== ==108237== Process terminating with default action of signal 4 (SIGILL) ==108237== Illegal opcode at address 0x5177475 ==108237== at 0x5177475: UnknownInlinedFun (string_fortified.h:59) ==108237== by 0x5177475: curl_mime_init (mime.c:1292) ==108237== by 0x5147908: Curl_getformdata.part.0 (formdata.c:811) ==108237== by 0x5147DE9: UnknownInlinedFun (formdata.c:808) ==108237== by 0x5147DE9: curl_formget (formdata.c:701) ==108237== by 0x401CF9E: test_lib650.lto_priv.0 (lib650.c:146) ==108237== by 0x4003443: main (first.c:167) ==108237== 96 bytes in 1 blocks are definitely lost in loss record 593 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x517744F: curl_mime_init (mime.c:1285) ==108237== by 0x5147908: Curl_getformdata.part.0 (formdata.c:811) ==108237== by 0x5147DE9: UnknownInlinedFun (formdata.c:808) ==108237== by 0x5147DE9: curl_formget (formdata.c:701) ==108237== by 0x401CF9E: test_lib650.lto_priv.0 (lib650.c:146) ==108237== by 0x4003443: main (first.c:167) ==108237== ==108237== 408 bytes in 17 blocks are possibly lost in loss record 625 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x533CFA5: __tsearch (tsearch.c:337) ==108237== by 0x533CFA5: tsearch (tsearch.c:290) ==108237== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108237== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108237== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108237== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108237== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108237== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== ==108237== 552 bytes in 23 blocks are possibly lost in loss record 629 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x533CFA5: __tsearch (tsearch.c:337) ==108237== by 0x533CFA5: tsearch (tsearch.c:290) ==108237== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108237== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108237== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== ==108237== 681 bytes in 17 blocks are possibly lost in loss record 635 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108237== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108237== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108237== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108237== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108237== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== ==108237== 1,018 bytes in 23 blocks are possibly lost in loss record 650 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108237== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108237== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== ==108237== 11,664 bytes in 486 blocks are possibly lost in loss record 671 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x533CFA5: __tsearch (tsearch.c:337) ==108237== by 0x533CFA5: tsearch (tsearch.c:290) ==108237== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108237== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108237== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108237== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108237== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108237== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== ==108237== 18,800 bytes in 486 blocks are possibly lost in loss record 673 of 675 ==108237== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108237== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108237== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108237== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108237== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108237== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108237== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108237== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108237== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108237== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108237== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108237== by 0x525A142: setlocale (setlocale.c:337) ==108237== by 0x400336E: main (first.c:123) ==108237== === End of file valgrind650 test 0651...[curl_formadd with huge COPYCONTENTS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind651 ./libtest/libtests lib651 http://127.0.0.1:37169/651 log/20/test651.filedata log/20/stdout651 2> log/20/stderr651 651: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 651 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind651 ./libtest/libtests lib651 http://127.0.0.1:37169/651 log/20/test651.filedata log/20/stdout651 2> log/20/stderr651 === End of file commands.log === Start of file http_server.log 07:35:43.785331 ====> Client connect 07:35:43.785353 accept_connection 3 returned 4 07:35:43.785365 accept_connection 3 returned 0 07:35:43.785374 Read 93 bytes 07:35:43.785381 Process 93 bytes request 07:35:43.785390 Got request: GET /verifiedserver HTTP/1.1 07:35:43.785396 Are-we-friendly question received 07:35:43.785413 Wrote request (93 bytes) input to log/20/server.input 07:35:43.785424 Identifying ourselves as friends 07:35:43.785461 Response sent (56 bytes) and written to log/20/server.response 07:35:43.785467 special request received, no persistency 07:35:43.785473 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * TryingCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind662 ../src/curl -q --output log/4/curl662.out --include --trace-ascii log/4/trace662 --trace-config all --trace-time http://example.com/please/gimme/662 -L -x http://127.0.0.1:33235 > log/4/stdout662 2> log/4/stderr662 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 651 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr651 URL: http://127.0.0.1:37169/651 === End of file stderr651 === Start of file stdin-for-651 Some data from stdin === End of file stdin-for-651 === Start of file test651.filedata This is data from a file. === End of file test651.filedata === Start of file valgrind651 ==108304== ==108304== Process terminating with default action of signal 4 (SIGILL) ==108304== Illegal opcode at address 0x401D2F0 ==108304== at 0x401D2F0: UnknownInlinedFun (string_fortified.h:59) ==108304== by 0x401D2F0: test_lib651.lto_priv.0 (lib651.c:43) ==108304== by 0x4003443: main (first.c:167) ==108304== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x533CFA5: __tsearch (tsearch.c:337) ==108304== by 0x533CFA5: tsearch (tsearch.c:290) ==108304== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108304== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108304== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108304== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108304== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108304== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== ==108304== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x533CFA5: __tsearch (tsearch.c:337) ==108304== by 0x533CFA5: tsearch (tsearch.c:290) ==108304== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108304== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108304== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== ==108304== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108304== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108304== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108304== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108304== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108304== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== ==108304== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108304== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108304== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== ==108304== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x533CFA5: __tsearch (tsearch.c:337) ==108304== by 0x533CFA5: tsearch (tsearch.c:290) ==108304== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108304== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108304== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108304== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108304== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108304== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== ==108304== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==108304== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108304== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108304== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108304== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108304== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108304== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108304== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108304== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108304== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108304== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108304== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108304== by 0x525A142: setlocale (setlocale.c:337) ==108304== by 0x400336E: main (first.c:123) ==108304== === End of file valgrind651 test 0662...[HTTP redirect with whitespace in absolute Location: URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind662 ../src/curl -q --output log/4/curl662.out --include --trace-ascii log/4/trace662 --trace-config all --trace-time http://example.com/please/gimme/662 -L -x http://127.0.0.1:33235 > log/4/stdout662 2> log/4/stderr662 662: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 662 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind662 ../src/curl -q --output log/4/curl662.out --include --trace-ascii log/4/trace662 --trace-config all --trace-time http://example.com/please/gimme/662 -L -x http://127.0.0.1:33235 > log/4/stdout662 2> log/4/stderr662 === End of file commands.log === Start of file http_server.log 07:35:44.056010 ====> Client connect 07:35:44.056040 accept_connection 3 returned 4 07:35:44.056055 accept_connection 3 returned 0 07:35:44.056067 Read 93 bytes 07:35:44.056076 ProcCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind663 ../src/curl -q --output log/18/curl663.out --include --trace-ascii log/18/trace663 --trace-config all --trace-time http://example.com/please/../gimme/663?foobar#hello -L -x http://127.0.0.1:45825 > log/18/stdout663 2> log/18/stderr663 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind653 ./libtest/libtests lib653 http://127.0.0.1:36993/653 > log/15/stdout653 2> log/15/stderr653 ess 93 bytes request 07:35:44.056088 Got request: GET /verifiedserver HTTP/1.1 07:35:44.056096 Are-we-friendly question received 07:35:44.056119 Wrote request (93 bytes) input to log/4/server.input 07:35:44.056134 Identifying ourselves as friends 07:35:44.056175 Response sent (56 bytes) and written to log/4/server.response 07:35:44.056182 special request received, no persistency 07:35:44.056188 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 662 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind662 ==108713== ==108713== Process terminating with default action of signal 4 (SIGILL) ==108713== Illegal opcode at address 0x4003082 ==108713== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==108713== by 0x4003082: main (tool_main.c:234) === End of file valgrind662 test 0663...[HTTP redirect with dotdots and whitespaces in absolute Location: URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind663 ../src/curl -q --output log/18/curl663.out --include --trace-ascii log/18/trace663 --trace-config all --trace-time http://example.com/please/../gimme/663?foobar#hello -L -x http://127.0.0.1:45825 > log/18/stdout663 2> log/18/stderr663 663: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 663 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind663 ../src/curl -q --output log/18/curl663.out --include --trace-ascii log/18/trace663 --trace-config all --trace-time http://example.com/please/../gimme/663?foobar#hello -L -x http://127.0.0.1:45825 > log/18/stdout663 2> log/18/stderr663 === End of file commands.log === Start of file http_server.log 07:35:44.063408 ====> Client connect 07:35:44.063430 accept_connection 3 returned 4 07:35:44.063442 accept_connection 3 returned 0 07:35:44.063451 Read 93 bytes 07:35:44.063458 Process 93 bytes request 07:35:44.063467 Got request: GET /verifiedserver HTTP/1.1 07:35:44.063473 Are-we-friendly question received 07:35:44.063490 Wrote request (93 bytes) input to log/18/server.input 07:35:44.063502 Identifying ourselves as friends 07:35:44.063540 Response sent (56 bytes) and written to log/18/server.response 07:35:44.063546 special request received, no persistency 07:35:44.063553 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 663 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind663 ==108729== ==108729== Process terminating with default action of signal 4 (SIGILL) ==108729== Illegal opcode at address 0x4003082 ==108729== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==108729== by 0x4003082: main (tool_main.c:234) === End of file valgrind663 test 0653...[Reuse of handle after altering mime data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind653 ./libtest/libtests lib653 http://127.0.0.1:36993/653 > log/15/stdout653 2> log/15/stderr653 653: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 653 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind653 ./libtest/libtests lib653 http://127.0.0.1:36993/653 > log/15/stdout653 2> log/15/stderr653 === End of file commands.log === Start of file http_server.log 07:35:43.944541 ====> Client connect 07:35:43.944561 accept_connection 3 returned 4 07:35:43.944572 accept_connection 3 returned 0 07:35:43.944582 Read 93 bytes 07:35:43.944589 Process 93 bytes request 07:35:43.944598 Got request: GET /verifiedserver HTTP/1.1 07:35:43.944604 Are-we-friendly question received 07:35:43.944620 Wrote request (93 bytes) input to log/15/server.input 07:35:43.944631 Identifying ourselves as friends 07:35:43.944666 Response sent (56 bytes) and written to log/15/server.response 07:35:43.944673 special request received, no persistency 07:35:43.944679 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 653 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file stderr653 URL: http://127.0.0.1:36993/653 === End of file stderr653 === Start of file valgrind653 ==108372== ==108372== Process terminating with default action of signal 4 (SIGILL) ==108372== Illegal opcode at address 0x51C2DB3 ==108372== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108372== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108372== by 0x51C2DB3: Curl_open (url.c:541) ==108372== by 0x513D46F: curl_easy_init (easy.c:372) ==108372== by 0x401B070: UnknownInlinedFun (lib653.c:36) ==108372== by 0x401B070: test_lib653.lto_priv.0 (lib653.c:28) ==108372== by 0x4003443: main (first.c:167) ==108372== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x533CFA5: __tsearch (tsearch.c:337) ==108372== by 0x533CFA5: tsearch (tsearch.c:290) ==108372== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108372== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108372== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108372== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108372== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108372== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind646 ../src/curl -q --output log/5/curl646.out --include --trace-ascii log/5/trace646 --trace-config all --trace-time smtp://127.0.0.1:43997/646 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=(;type=multipart/alternative" -F "= This is the html version;headers=X-test1: this is a header;type=text/html;headers=X-test2: this is another header " -F "=This is the plain text version;headers=@log/5/headers646" -F "=)" -F "=@log/5/test646.txt;headers=" log/5/stdout646 2> log/5/stderr646 (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== ==108372== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x533CFA5: __tsearch (tsearch.c:337) ==108372== by 0x533CFA5: tsearch (tsearch.c:290) ==108372== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108372== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108372== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== ==108372== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108372== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108372== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108372== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108372== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108372== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== ==108372== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108372== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108372== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== ==108372== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108372== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108372== by 0x51C2D03: Curl_open (url.c:520) ==108372== by 0x513D46F: curl_easy_init (easy.c:372) ==108372== by 0x401B070: UnknownInlinedFun (lib653.c:36) ==108372== by 0x401B070: test_lib653.lto_priv.0 (lib653.c:28) ==108372== by 0x4003443: main (first.c:167) ==108372== ==108372== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x533CFA5: __tsearch (tsearch.c:337) ==108372== by 0x533CFA5: tsearch (tsearch.c:290) ==108372== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108372== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108372== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108372== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108372== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108372== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== ==108372== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108372== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108372== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108372== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108372== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108372== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108372== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108372== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108372== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108372== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108372== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108372== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108372== by 0x525A142: setlocale (setlocale.c:337) ==108372== by 0x400336E: main (first.c:123) ==108372== === End of file valgrind653 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/5/server/smtp_server.pid" --logfile "log/5/smtp_server.log" --logdir "log/5" --portfile "log/5/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 43997 (log/5/server/smtp_server.port) RUN: SMTP server is PID 108210 port 43997 * pid smtp => 108210 108210 test 0646...[SMTP multipart using mime API] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind646 ../src/curl -q --output log/5/curl646.out --include --trace-ascii log/5/trace646 --trace-config all --trace-time smtp://127.0.0.1:43997/646 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=(;type=multipart/alternative" -F "= This is the html version;headers=X-test1: this is a header;type=text/html;headers=X-test2: this is another header " -F "=This is the plain text version;headers=@log/5/headers646" -F "=)" -F "=@log/5/test646.txt;headers=" log/5/stdout646 2> log/5/stderr646 646: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 646 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind646 ../src/curl -q --output log/5/curl646.out --include --trace-ascii log/5/trace646 --trace-config all --trace-time smtp://127.0.0.1:43997/646 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=(;type=multipart/alternative" -F "= This is the html version;headers=X-test1: this is a header;type=text/html;headers=X-test2: this is another header " -F "=This is the plain text version;headers=@log/5/headers646" -F "=)" -F "=@log/5/test646.txt;headers=" log/5/stdout646 2> log/5/stderr646 === End of file commands.log === Start of file headers646 # This line is a comment X-fileheader1: This is a header from a file # This line is another comment. It precedes a folded header. X-fileheader2: This is #a folded header === End of file headers646 === Start of file server.cmd Testnum 646 === End of file server.cmd === Start of file smtp_server.log 07:35:43.401291 SMTP server listens on port IPv4/43997 07:35:43.401338 logged pid 108210 in log/5/server/smtp_server.pid 07:35:43.401352 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:43.247111 Running IPv4 version 07:35:43.247157 Listening on port 43997 07:35:43.247183 Wrote pid 108212 to log/5/server/smtp_sockfilt.pid 07:35:43.247202 Wrote port 43997 to CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind669 ../src/curl -q --output log/23/curl669.out --include --trace-ascii log/23/trace669 --trace-config all --trace-time http://127.0.0.1:45701/we/want/669 -H 'Content-type: multipart/form-data; charset=utf-8' -F name=daniel -F tool=curl > log/23/stdout669 2> log/23/stderr669 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind658 ./libtest/libtests lib658 http://127.0.0.1:45457/658 > log/2/stdout658 2> log/2/stderr658 log/5/server/smtp_server.port 07:35:43.247215 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-646 From: different To: another body === End of file stdin-for-646 === Start of file test646.txt This is an attached file. It may contain any type of data. === End of file test646.txt === Start of file valgrind646 ==109098== ==109098== Process terminating with default action of signal 4 (SIGILL) ==109098== Illegal opcode at address 0x4003082 ==109098== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109098== by 0x4003082: main (tool_main.c:234) === End of file valgrind646 test 0669...[HTTP custom Content-Type with parameter] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind669 ../src/curl -q --output log/23/curl669.out --include --trace-ascii log/23/trace669 --trace-config all --trace-time http://127.0.0.1:45701/we/want/669 -H 'Content-type: multipart/form-data; charset=utf-8' -F name=daniel -F tool=curl > log/23/stdout669 2> log/23/stderr669 669: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 669 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind669 ../src/curl -q --output log/23/curl669.out --include --trace-ascii log/23/trace669 --trace-config all --trace-time http://127.0.0.1:45701/we/want/669 -H 'Content-type: multipart/form-data; charset=utf-8' -F name=daniel -F tool=curl > log/23/stdout669 2> log/23/stderr669 === End of file commands.log === Start of file http_server.log 07:35:44.234103 ====> Client connect 07:35:44.234133 accept_connection 3 returned 4 07:35:44.234148 accept_connection 3 returned 0 07:35:44.234162 Read 93 bytes 07:35:44.234172 Process 93 bytes request 07:35:44.234184 Got request: GET /verifiedserver HTTP/1.1 07:35:44.234193 Are-we-friendly question received 07:35:44.234215 Wrote request (93 bytes) input to log/23/server.input 07:35:44.234229 Identifying ourselves as friends 07:35:44.234276 Response sent (56 bytes) and written to log/23/server.response 07:35:44.234285 special request received, no persistency 07:35:44.234293 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 669 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind669 ==109118== ==109118== Process terminating with default action of signal 4 (SIGILL) ==109118== Illegal opcode at address 0x4003082 ==109118== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109118== by 0x4003082: main (tool_main.c:234) === End of file valgrind669 test 0658...[Pass URL to libcurl with CURLOPT_CURLU] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind658 ./libtest/libtests lib658 http://127.0.0.1:45457/658 > log/2/stdout658 2> log/2/stderr658 658: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 658 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind658 ./libtest/libtests lib658 http://127.0.0.1:45457/658 > log/2/stdout658 2> log/2/stderr658 === End of file commands.log === Start of file http_server.log 07:35:43.989066 ====> Client connect 07:35:43.989088 accept_connection 3 returned 4 07:35:43.989100 accept_connection 3 returned 0 07:35:43.989109 Read 93 bytes 07:35:43.989116 Process 93 bytes request 07:35:43.989125 Got request: GET /verifiedserver HTTP/1.1 07:35:43.989131 Are-we-friendly question received 07:35:43.989147 Wrote request (93 bytes) input to log/2/server.input 07:35:43.989158 Identifying ourselves as friends 07:35:43.989195 Response sent (56 bytes) and written to log/2/server.response 07:35:43.989201 special request received, no persistency 07:35:43.989207 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 658 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr658 URL: http://127.0.0.1:45457/658 === End of file stderr658 === Start of file valgrind658 ==108466== ==108466== Process terminating with default action of signal 4 (SIGILL) ==108466== Illegal opcode at address 0x51C2DB3 ==108466== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108466== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108466== by 0x51C2DB3: Curl_open (url.c:541) ==108466== by 0x513D46F: curl_easy_init (easy.c:372) ==108466== by 0x401E8AC: UnknownInlinedFun (lib658.c:40) ==108466== by 0x401E8AC: test_lib658.lto_priv.0 (lib658.c:32) ==108466== by 0x4003443: main (first.c:167) ==108466== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x533CFA5: __tsearch (tsearch.c:337) ==108466== by 0x533CFA5: tsearch (tsearch.c:290) ==108466== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108466== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108466== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108466== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108466== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108466== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== ==108466== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x533CFA5: __tsearch (tsearch.c:337) ==108466== by 0x533CFA5: tsearch (tsearch.c:290) ==108466== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108466== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108466== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind654 ./libtest/libtests lib654 http://127.0.0.1:41173/654 log/11/file654.txt > log/11/stdout654 2> log/11/stderr654 ocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== ==108466== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108466== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108466== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108466== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108466== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108466== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== ==108466== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108466== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108466== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== ==108466== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108466== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108466== by 0x51C2D03: Curl_open (url.c:520) ==108466== by 0x513D46F: curl_easy_init (easy.c:372) ==108466== by 0x401E8AC: UnknownInlinedFun (lib658.c:40) ==108466== by 0x401E8AC: test_lib658.lto_priv.0 (lib658.c:32) ==108466== by 0x4003443: main (first.c:167) ==108466== ==108466== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x533CFA5: __tsearch (tsearch.c:337) ==108466== by 0x533CFA5: tsearch (tsearch.c:290) ==108466== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108466== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108466== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108466== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108466== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108466== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== ==108466== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108466== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108466== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108466== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108466== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108466== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108466== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108466== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108466== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108466== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108466== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108466== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108466== by 0x525A142: setlocale (setlocale.c:337) ==108466== by 0x400336E: main (first.c:123) ==108466== === End of file valgrind658 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/10/server/ssh_server.pid" --logdir "log/10" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 33717 startnew: child process has died, server might start up RUN: failed to start the SSH server on 33717 test 0654...[HTTP duplicate easy handle with mime data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind654 ./libtest/libtests lib654 http://127.0.0.1:41173/654 log/11/file654.txt > log/11/stdout654 2> log/11/stderr654 654: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 654 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind654 ./libtest/libtests lib654 http://127.0.0.1:41173/654 log/11/file654.txt > log/11/stdout654 2> log/11/stderr654 === End of file commands.log === Start of file file654.txt This is data from a file === End of file file654.txt === Start of file http_server.log 07:35:43.988617 ====> Client connect 07:35:43.988641 accept_connection 3 returned 4 07:35:43.988652 accept_connection 3 returned 0 07:35:43.988663 Read 93 bytes 07:35:43.988669 Process 93 bytes request 07:35:43.988679 Got request: GET /verifiedserver HTTP/1.1 07:35:43.988685 Are-we-friendly question received 07:35:43.988701 Wrote request (93 bytes) input to log/11/server.input 07:35:43.988712 Identifying ourselves as friends 07:35:43.988747 Response sent (56 bytes) and written to log/11/server.response 07:35:43.988753 special request received, no persistency 07:35:43.988759 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 654 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file stderr654 URL: http://127.0.0.1:41173/654 === End of file stderr654 === Start of file valgrind654 ==108478== ==108478== Process terminating with default action of signal 4 (SIGILL) ==108478== Illegal opcode at address 0x51C2DB3 ==108478== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108478== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108478== by 0x51C2DB3: Curl_open (url.c:541) ==108478== by 0x513D46F: curl_easy_init (easy.c:372) ==108478== by 0x401E53B: test_lib654.lto_priv.0 (lib654.c:84) ==108478== by 0x4003443: main (first.c:167) ==108478== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x533CFA5: __tsearch (tsearch.c:337) ==108478== by 0x533CFA5: tsearch (tsearch.c:290) ==108478== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108478== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108478== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108478== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108478== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108478== by 0x524F555: __gconv_CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind655 ./libtest/libtests lib655 http://127.0.0.1:46739/655 > log/16/stdout655 2> log/16/stderr655 read_conf (gconv_conf.c:480) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== ==108478== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x533CFA5: __tsearch (tsearch.c:337) ==108478== by 0x533CFA5: tsearch (tsearch.c:290) ==108478== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108478== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108478== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== ==108478== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108478== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108478== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108478== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108478== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108478== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== ==108478== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108478== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108478== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== ==108478== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108478== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108478== by 0x51C2D03: Curl_open (url.c:520) ==108478== by 0x513D46F: curl_easy_init (easy.c:372) ==108478== by 0x401E53B: test_lib654.lto_priv.0 (lib654.c:84) ==108478== by 0x4003443: main (first.c:167) ==108478== ==108478== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x533CFA5: __tsearch (tsearch.c:337) ==108478== by 0x533CFA5: tsearch (tsearch.c:290) ==108478== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108478== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108478== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108478== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108478== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108478== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== ==108478== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108478== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108478== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108478== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108478== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108478== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108478== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108478== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108478== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108478== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108478== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108478== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108478== by 0x525A142: setlocale (setlocale.c:337) ==108478== by 0x400336E: main (first.c:123) ==108478== === End of file valgrind654 test 0655...[resolver start callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind655 ./libtest/libtests lib655 http://127.0.0.1:46739/655 > log/16/stdout655 2> log/16/stderr655 655: data FAILED: --- log/16/check-expected 2025-07-18 07:35:44.957112533 +0000 +++ log/16/check-generated 2025-07-18 07:35:44.957112533 +0000 @@ -1 +0,0 @@ -hello[LF] == Contents of files in the log/16/ dir after test 655 === Start of file check-expected hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind655 ./libtest/libtests lib655 http://127.0.0.1:46739/655 > log/16/stdout655 2> log/16/stderr655 === End of file commands.log === Start of file http_server.log 07:35:43.988621 ====> Client connect 07:35:43.988643 accept_connection 3 returned 4 07:35:43.988655 accept_connection 3 returned 0 07:35:43.988664 Read 93 bytes 07:35:43.988670 Process 93 bytes request 07:35:43.988679 Got request: GET /verifiedserver HTTP/1.1 07:35:43.988686 Are-we-friendly question received 07:35:43.988703 Wrote request (93 bytes) input to log/16/server.input 07:35:43.988714 Identifying ourselves as friends 07:35:43.988749 Response sent (56 bytes) and written to log/16/server.response 07:35:43.988756 special request received, no persistency 07:35:43.988762 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 655 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr655 URL: http://127.0.0.1:46739/655 === End of file stderr655 === Start of file valgrind655 ==108465== ==108465== Process terminating with default action of signal 4 (SIGILL) ==108465== Illegal opcode at address 0x51C2DB3 ==108465== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108465== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108465== by 0x51C2DB3: Curl_open (url.c:541) ==108465== by 0x513D46F: curl_easy_init (easy.c:372) ==108465== by 0x4014746: test_lib655.lto_priv.0 (lib655.c:70) ==108465== by 0x4003443: main (first.c:167) ==108465== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x533CFA5: __tsearch (tsearch.c:337) ==108465== by 0x533CFA5: tsearch (tsearch.c:290) ==108465== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108465== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108465== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108465== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108465== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108465== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== ==108465== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x533CFA5: __tsearch (tsearch.c:337) ==108465== by 0x533CFA5: tsearch (tsearch.c:290) ==108465== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108465== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108465== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== ==108465== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108465== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108465== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108465== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108465== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108465== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== ==108465== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108465== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108465== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== ==108465== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108465== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108465== by 0x51C2D03: Curl_open (url.c:520) ==108465== by 0x513D46F: curl_easy_init (easy.c:372) ==108465== by 0x4014746: test_lib655.lto_priv.0 (lib655.c:70) ==108465== by 0x4003443: main (first.c:167) ==108465== ==108465== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x533CFA5: __tsearch (tsearch.c:337) ==108465== by 0x533CFA5: tsearch (tsearch.c:290) ==108465== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108465== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108465== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108465== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108465== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108465== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== ==108465== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108465== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108465== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108465== by 0x524F3F0: add_alias2 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind659 ./libtest/libtests lib659 http://127.0.0.1:33487 > log/19/stdout659 2> log/19/stderr659 (gconv_conf.c:176) ==108465== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108465== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108465== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108465== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108465== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108465== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108465== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108465== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108465== by 0x525A142: setlocale (setlocale.c:337) ==108465== by 0x400336E: main (first.c:123) ==108465== === End of file valgrind655 test 0659...[CURLOPT_CURLU without the path set - over proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind659 ./libtest/libtests lib659 http://127.0.0.1:33487 > log/19/stdout659 2> log/19/stderr659 659: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 659 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind659 ./libtest/libtests lib659 http://127.0.0.1:33487 > log/19/stdout659 2> log/19/stderr659 === End of file commands.log === Start of file http_server.log 07:35:44.035157 ====> Client connect 07:35:44.035181 accept_connection 3 returned 4 07:35:44.035193 accept_connection 3 returned 0 07:35:44.035203 Read 93 bytes 07:35:44.035210 Process 93 bytes request 07:35:44.035218 Got request: GET /verifiedserver HTTP/1.1 07:35:44.035225 Are-we-friendly question received 07:35:44.035241 Wrote request (93 bytes) input to log/19/server.input 07:35:44.035252 Identifying ourselves as friends 07:35:44.035288 Response sent (56 bytes) and written to log/19/server.response 07:35:44.035295 special request received, no persistency 07:35:44.035301 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 659 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr659 URL: http://127.0.0.1:33487 === End of file stderr659 === Start of file valgrind659 ==108627== ==108627== Process terminating with default action of signal 4 (SIGILL) ==108627== Illegal opcode at address 0x51C2DB3 ==108627== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108627== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108627== by 0x51C2DB3: Curl_open (url.c:541) ==108627== by 0x513D46F: curl_easy_init (easy.c:372) ==108627== by 0x401EB0C: UnknownInlinedFun (lib659.c:39) ==108627== by 0x401EB0C: test_lib659.lto_priv.0 (lib659.c:32) ==108627== by 0x4003443: main (first.c:167) ==108627== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x533CFA5: __tsearch (tsearch.c:337) ==108627== by 0x533CFA5: tsearch (tsearch.c:290) ==108627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108627== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108627== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== ==108627== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x533CFA5: __tsearch (tsearch.c:337) ==108627== by 0x533CFA5: tsearch (tsearch.c:290) ==108627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108627== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108627== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== ==108627== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108627== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108627== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== ==108627== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108627== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108627== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== ==108627== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108627== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108627== by 0x51C2D03: Curl_open (url.c:520) ==108627== by 0x513D46F: curl_easy_init (easy.c:372) ==108627== by 0x401EB0C: UnknownInlinedFun (lib659.c:39) ==108627== by 0x401EB0C: test_lib659.lto_priv.0 (lib659.c:32) ==108627== by 0x4003443: main (first.c:167) ==108627== ==108627== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x533CFA5: __tsearch (tsearch.c:337) ==108627== by 0x533CFA5: tsearch (tsearch.c:290) ==108627== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108627== by 0x524F775: gconv_parseconCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind661 ./libtest/libtests lib661 ftp://127.0.0.1:38701/ > log/21/stdout661 2> log/21/stderr661 fdir (gconv_parseconfdir.h:170) ==108627== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== ==108627== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108627== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108627== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108627== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108627== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108627== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108627== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108627== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108627== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108627== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108627== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108627== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108627== by 0x525A142: setlocale (setlocale.c:337) ==108627== by 0x400336E: main (first.c:123) ==108627== === End of file valgrind659 test 0661...[Avoid redundant CWDs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind661 ./libtest/libtests lib661 ftp://127.0.0.1:38701/ > log/21/stdout661 2> log/21/stderr661 661: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 661 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind661 ./libtest/libtests lib661 ftp://127.0.0.1:38701/ > log/21/stdout661 2> log/21/stderr661 === End of file commands.log === Start of file ftp_server.log 07:35:44.208370 ====> Client connect 07:35:44.208518 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:44.208711 < "USER anonymous" 07:35:44.208735 > "331 We are happy you popped in![CR][LF]" 07:35:44.208861 < "PASS ftp@example.com" 07:35:44.208884 > "230 Welcome you silly person[CR][LF]" 07:35:44.208998 < "PWD" 07:35:44.209019 > "257 "/" is current directory[CR][LF]" 07:35:44.209120 < "EPSV" 07:35:44.209137 ====> Passive DATA channel requested by client 07:35:44.209145 DATA sockfilt for passive data channel starting... 07:35:44.210325 DATA sockfilt for passive data channel started (pid 108682) 07:35:44.210409 DATA sockfilt for passive data channel listens on port 39151 07:35:44.210440 > "229 Entering Passive Mode (|||39151|)[LF]" 07:35:44.210454 Client has been notified that DATA conn will be accepted on port 39151 07:35:44.210693 Client connects to port 39151 07:35:44.210719 ====> Client established passive DATA connection on port 39151 07:35:44.210775 < "TYPE I" 07:35:44.210799 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:44.210939 < "SIZE verifiedserver" 07:35:44.210968 > "213 17[CR][LF]" 07:35:44.211253 < "RETR verifiedserver" 07:35:44.211297 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:44.211357 =====> Closing passive DATA connection... 07:35:44.211368 Server disconnects passive DATA connection 07:35:44.211450 Server disconnected passive DATA connection 07:35:44.211480 DATA sockfilt for passive data channel quits (pid 108682) 07:35:44.211662 DATA sockfilt for passive data channel quit (pid 108682) 07:35:44.211684 =====> Closed passive DATA connection 07:35:44.211711 > "226 File transfer complete[CR][LF]" 07:35:44.253716 < "QUIT" 07:35:44.253773 > "221 bye bye baby[CR][LF]" 07:35:44.254677 MAIN sockfilt said DISC 07:35:44.254708 ====> Client disconnected 07:35:44.254771 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:44.054255 ====> Client connect 07:35:44.054508 Received DATA (on stdin) 07:35:44.054520 > 160 bytes data, server => client 07:35:44.054528 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:44.054536 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:44.054543 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:44.054597 < 16 bytes data, client => server 07:35:44.054605 'USER anonymous\r\n' 07:35:44.054717 Received DATA (on stdin) 07:35:44.054725 > 33 bytes data, server => client 07:35:44.054733 '331 We are happy you popped in!\r\n' 07:35:44.054767 < 22 bytes data, client => server 07:35:44.054774 'PASS ftp@example.com\r\n' 07:35:44.054866 Received DATA (on stdin) 07:35:44.054876 > 30 bytes data, server => client 07:35:44.054884 '230 Welcome you silly person\r\n' 07:35:44.054923 < 5 bytes data, client => server 07:35:44.054930 'PWD\r\n' 07:35:44.054998 Received DATA (on stdin) 07:35:44.055005 > 30 bytes data, server => client 07:35:44.055013 '257 "/" is current directory\r\n' 07:35:44.055049 < 6 bytes data, client => server 07:35:44.055056 'EPSV\r\n' 07:35:44.056433 Received DATA (on stdin) 07:35:44.056461 > 38 bytes data, server => client 07:35:44.056473 '229 Entering Passive Mode (|||39151|)\n' 07:35:44.056655 < 8 bytes data, client => server 07:35:44.056664 'TYPE I\r\n' 07:35:44.056785 Received DATA (on stdin) 07:35:44.056799 > 33 bytes data, server => client 07:35:44.056809 '200 I modify TYPE as you wanted\r\n' 07:35:44.056862 < 21 bytes data, client => server 07:35:44.056873 'SIZE verifiedserver\r\n' 07:35:44.056950 Received DATA (on stdin) 07:35:44.056960 > 8 bytes data, server => client 07:35:44.056967 '213 17\r\n' 07:35:44.057122 < 21 bytes data, client => server 07:35:44.057138 'RETR verifiedserver\r\n' 07:35:44.057284 Received DATA (on stdin) 07:35:44.057301 > 29 bytes data, server => client 07:35:44.057310 '150 Binary junk (17 bytes).\r\n' 07:35:44.057699 Received DATA (on stdin) 07:35:44.057711 > 28 bytes data, server => client 07:35:44.057722 '226 File transfer complete\r\n' 07:35:44.099516 < 6 bytes data, client => server 07:35:44.099537 'QUIT\r\n' 07:35:44.099749 Received DATA (on stdin) 07:35:44.099765 > 18 bytes data, server => client 07:35:44.099775 '221 bye bye baby\r\n' 07:35:44.100612 ====> Client disconnect 07:35:44.100757 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:44.056147 Running IPv4 version 07:35:44.056202 Listening on port 39151 07:35:44.056243 Wrote pid 108682 to log/21/server/ftp_sockdata.pid 07:35:44.056260 Received PING (on stdin) 07:35:44.056329 Received PORT (on stdin) 07:35:44.056628 ====> Client connect 07:35:44.057351 Received DATA (on stdin) 07:35:44.057361 > 17 bytes data, server => client 07:35:44.057369 'WE ROOLZ: 81322\r\n' 07:35:44.057394 Received DISC (on stdin) 07:35:44.057402 ====> Client forcibly disconnected 07:35:44.057466 Received QUIT (on stdin) 07:35:44.057475 quits 07:35:44.057527 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 661 === End of file server.cmd === Start of file stderr661 URL: ftp://127.0.0.1:38701/ === End of file stderr661 === Start of file valgrind661 ==108865== ==108865== Process terminating with default action of signal 4 (SIGILL) ==108865== Illegal opcode at address 0x51C2DB3 ==108865== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108865== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108865== by 0x51C2DB3: Curl_open (url.c:541) ==108865== by 0x513D46F: curl_easy_init (easy.c:372) ==108865== by 0x401C150: test_lib661.lto_priv.0 (lib661.c:40) ==108865== by 0x4003443CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind647 ../src/curl -q --output log/14/curl647.out --include --trace-ascii log/14/trace647 --trace-config all --trace-time imap://127.0.0.1:34685/647 -F "=(;type=multipart/alternative" -F "= This is the html version;type=text/html" -F "=This is the plain text version" -F "=)" -F "=@log/14/test647.txt" -H "Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)" -H "From: Fred Foobar " -H "To: joe@example.com" -H "Message-Id: " -H "Subject: afternoon meeting" -u user:secret > log/14/stdout647 2> log/14/stderr647 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind668 ./libtest/libtests lib668 http://127.0.0.1:38941/668 log/1/file668.txt > log/1/stdout668 2> log/1/stderr668 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind666 ./libtest/libtests lib666 http://127.0.0.1:38675/666 > log/24/stdout666 2> log/24/stderr666 : main (first.c:167) ==108865== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x533CFA5: __tsearch (tsearch.c:337) ==108865== by 0x533CFA5: tsearch (tsearch.c:290) ==108865== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108865== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108865== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108865== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108865== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108865== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== ==108865== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x533CFA5: __tsearch (tsearch.c:337) ==108865== by 0x533CFA5: tsearch (tsearch.c:290) ==108865== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108865== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108865== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== ==108865== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108865== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108865== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108865== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108865== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108865== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== ==108865== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108865== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108865== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== ==108865== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108865== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108865== by 0x51C2D03: Curl_open (url.c:520) ==108865== by 0x513D46F: curl_easy_init (easy.c:372) ==108865== by 0x401C150: test_lib661.lto_priv.0 (lib661.c:40) ==108865== by 0x4003443: main (first.c:167) ==108865== ==108865== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x533CFA5: __tsearch (tsearch.c:337) ==108865== by 0x533CFA5: tsearch (tsearch.c:290) ==108865== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108865== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108865== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108865== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108865== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108865== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== ==108865== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108865== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108865== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108865== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108865== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108865== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108865== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108865== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108865== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108865== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108865== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108865== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108865== by 0x525A142: setlocale (setlocale.c:337) ==108865== by 0x400336E: main (first.c:123) ==108865== === End of file valgrind661 test 0668...[HTTP mimepost early end of data detection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind668 ./libtest/libtests lib668 http://127.0.0.1:38941/668 log/1/file668.txt > log/1/stdout668 2> log/1/stderr668 668: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 668 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind668 ./libtest/libtests lib668 http://127.0.0.1:38941/668 log/1/file668.txt > log/1/stdout668 2> log/1/stderr668 === End of file commands.log === Start of file file668.txt This is data from a file === End of file file668.txt === Start of file http_server.log 07:35:44.105192 ====> Client connect 07:35:44.105216 accept_connection 3 returned 4 07:35:44.105229 accept_connection 3 returned 0 07:35:44.105239 Read 93 bytes 07:35:44.105247 Process 93 bytes request 07:35:44.105256 Got request: GET /verifiedserver HTTP/1.1 07:35:44.105263 Are-we-friendly question received 07:35:44.105279 Wrote request (93 bytes) input to log/1/server.input 07:35:44.105291 Identifying ourselves as friends 07:35:44.105328 Response sent (56 bytes) and written to log/1/server.response 07:35:44.105335 special request received, no persistency 07:35:44.105342 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 668 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr668 URL: http://127.0.0.1:38941/668 === End of file stderr668 === Start of file valgrind668 ==108891== ==108891== Process terminating with default action of signal 4 (SIGILL) ==108891== Illegal opcode at address 0x51C2DB3 ==108891== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108891== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108891== by 0x51C2DB3: Curl_open (url.c:541) ==108891== by 0x513D46F: curl_easy_init (easy.c:372) ==108891== by 0x401E319: test_lib668.lto_priv.0 (lib668.c:68) ==108891== by 0x4003443: main (first.c:167) ==108891== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x533CFA5: __tsearch (tsearch.c:337) ==108891== by 0x533CFA5: tsearch (tsearch.c:290) ==108891== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108891== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108891== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108891== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108891== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108891== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== ==108891== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x533CFA5: __tsearch (tsearch.c:337) ==108891== by 0x533CFA5: tsearch (tsearch.c:290) ==108891== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108891== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108891== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== ==108891== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108891== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108891== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108891== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108891== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108891== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== ==108891== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108891== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108891== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== ==108891== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108891== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108891== by 0x51C2D03: Curl_open (url.c:520) ==108891== by 0x513D46F: curl_easy_init (easy.c:372) ==108891== by 0x401E319: test_lib668.lto_priv.0 (lib668.c:68) ==108891== by 0x4003443: main (first.c:167) ==108891== ==108891== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x533CFA5: __tsearch (tsearch.c:337) ==108891== by 0x533CFA5: tsearch (tsearch.c:290) ==108891== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108891== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108891== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108891== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108891== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108891== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== ==108891== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108891== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108891== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108891== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108891== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108891== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108891== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108891== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108891== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108891== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108891== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108891== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108891== by 0x525A142: setlocale (setlocale.c:337) ==108891== by 0x400336E: main (first.c:123) ==108891== === End of file valgrind668 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/14/server/imap_server.pid" --logfile "log/14/imap_server.log" --logdir "log/14" --portfile "log/14/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34685 (log/14/server/imap_server.port) RUN: IMAP server is PID 108215 port 34685 * pid imap => 108215 108215 test 0647...[IMAP APPEND multipart using mime API] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind647 ../src/curl -q --output log/14/curl647.out --include --trace-ascii log/14/trace647 --trace-config all --trace-time imap://127.0.0.1:34685/647 -F "=(;type=multipart/alternative" -F "= This is the html version;type=text/html" -F "=This is the plain text version" -F "=)" -F "=@log/14/test647.txt" -H "Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)" -H "From: Fred Foobar " -H "To: joe@example.com" -H "Message-Id: " -H "Subject: afternoon meeting" -u user:secret > log/14/stdout647 2> log/14/stderr647 647: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 647 ===CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind667 ./libtest/libtests lib667 http://127.0.0.1:39077/667 > log/7/stdout667 2> log/7/stderr667 Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind647 ../src/curl -q --output log/14/curl647.out --include --trace-ascii log/14/trace647 --trace-config all --trace-time imap://127.0.0.1:34685/647 -F "=(;type=multipart/alternative" -F "= This is the html version;type=text/html" -F "=This is the plain text version" -F "=)" -F "=@log/14/test647.txt" -H "Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)" -H "From: Fred Foobar " -H "To: joe@example.com" -H "Message-Id: " -H "Subject: afternoon meeting" -u user:secret > log/14/stdout647 2> log/14/stderr647 === End of file commands.log === Start of file imap_server.log 07:35:43.611442 IMAP server listens on port IPv4/34685 07:35:43.611490 logged pid 108215 in log/14/server/imap_server.pid 07:35:43.611505 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:43.457198 Running IPv4 version 07:35:43.457250 Listening on port 34685 07:35:43.457276 Wrote pid 108216 to log/14/server/imap_sockfilt.pid 07:35:43.457295 Wrote port 34685 to log/14/server/imap_server.port 07:35:43.457373 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 647 === End of file server.cmd === Start of file test647.txt This is an attached file. It may contain any type of data. === End of file test647.txt === Start of file valgrind647 ==109442== ==109442== Process terminating with default action of signal 4 (SIGILL) ==109442== Illegal opcode at address 0x4003082 ==109442== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109442== by 0x4003082: main (tool_main.c:234) === End of file valgrind647 test 0666...[HTTP mime post with binary-encoded huge data contents] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind666 ./libtest/libtests lib666 http://127.0.0.1:38675/666 > log/24/stdout666 2> log/24/stderr666 666: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 666 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind666 ./libtest/libtests lib666 http://127.0.0.1:38675/666 > log/24/stdout666 2> log/24/stderr666 === End of file commands.log === Start of file http_server.log 07:35:44.098285 ====> Client connect 07:35:44.098310 accept_connection 3 returned 4 07:35:44.098323 accept_connection 3 returned 0 07:35:44.098335 Read 93 bytes 07:35:44.098343 Process 93 bytes request 07:35:44.098353 Got request: GET /verifiedserver HTTP/1.1 07:35:44.098360 Are-we-friendly question received 07:35:44.098377 Wrote request (93 bytes) input to log/24/server.input 07:35:44.098389 Identifying ourselves as friends 07:35:44.098437 Response sent (56 bytes) and written to log/24/server.response 07:35:44.098444 special request received, no persistency 07:35:44.098451 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 666 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr666 URL: http://127.0.0.1:38675/666 === End of file stderr666 === Start of file valgrind666 ==108925== ==108925== Process terminating with default action of signal 4 (SIGILL) ==108925== Illegal opcode at address 0x51C2DB3 ==108925== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108925== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108925== by 0x51C2DB3: Curl_open (url.c:541) ==108925== by 0x513D46F: curl_easy_init (easy.c:372) ==108925== by 0x401D8D2: test_lib666.lto_priv.0 (lib666.c:52) ==108925== by 0x4003443: main (first.c:167) ==108925== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x533CFA5: __tsearch (tsearch.c:337) ==108925== by 0x533CFA5: tsearch (tsearch.c:290) ==108925== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108925== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108925== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108925== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108925== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108925== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== ==108925== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x533CFA5: __tsearch (tsearch.c:337) ==108925== by 0x533CFA5: tsearch (tsearch.c:290) ==108925== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108925== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108925== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== ==108925== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108925== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108925== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108925== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108925== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108925== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== ==108925== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108925== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108925== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== ==108925== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108925== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108925== by 0x51C2D03: Curl_open (url.c:520) ==108925== by 0x513D46F: curl_easy_init (easy.c:372) ==108925== by 0x401D8D2: test_lib666.lto_priv.0 (lib666.c:52) ==108925== by 0x4003443: main (first.c:167) ==108925== ==108925== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x533CFA5: __tsearch (tsearch.c:337) ==108925== by 0x533CFA5: tsearch (tsearch.c:290) ==108925== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108925== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108925== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108925== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108925== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108925== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== ==108925== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108925== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108925== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108925== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108925== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108925== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108925== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108925== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108925== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108925== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108925== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108925== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108925== by 0x525A142: setlocale (setlocale.c:337) ==108925== by 0x400336E: main (first.c:123) ==108925== === End of file valgrind666 test 0667...[HTTP chunked mimepost using single-byte read callback with encoder] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind667 ./libtest/libtests lib667 http://127.0.0.1:39077/667 > log/7/stdout667 2> log/7/stderr667 667: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 667 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind667 ./libtest/libtests lib667 http://127.0.0.1:39077/667 > log/7/stdout667 2> log/7/stderr667 === End of file commands.log === Start of file http_server.log 07:35:44.098290 ====> Client connect 07:35:44.098315 accept_connection 3 returned 4 07:35:44.098327 accept_connection 3 returned 0 07:35:44.098338 Read 93 bytes 07:35:44.098345 Process 93 bytes request 07:35:44.098354 Got request: GET /verifiedserver HTTP/1.1 07:35:44.098361 Are-we-friendly question received 07:35:44.098380 Wrote request (93 bytes) input to log/7/server.input 07:35:44.098392 Identifying ourselves as friends 07:35:44.098442 Response sent (56 bytes) and written to log/7/server.response 07:35:44.098449 special request received, no persistency 07:35:44.098455 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 667 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stderr667 URL: http://127.0.0.1:39077/667 === End of file stderr667 === Start of file valgrind667 ==108864== ==108864== Process terminating with default action of signal 4 (SIGILL) ==108864== Illegal opcode at address 0x51C2DB3 ==108864== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==108864== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==108864== by 0x51C2DB3: Curl_open (url.c:541) ==108864== by 0x513D46F: curl_easy_init (easy.c:372) ==108864== by 0x401DB99: test_lib667.lto_priv.0 (lib667.c:74) ==108864== by 0x4003443: main (first.c:167) ==108864== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x533CFA5: __tsearch (tsearch.c:337) ==108864== by 0x533CFA5: tsearch (tsearch.c:290) ==108864== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108864== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108864== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108864== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108864== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108864== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864== ==108864== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x533CFA5: __tsearch (tsearch.c:337) ==108864== by 0x533CFA5: tsearch (tsearch.c:290) ==108864== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108864== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108864== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864== ==108864== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108864== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108864== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108864== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108864== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==108864== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864=CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind648 ../src/curl -q --output log/3/curl648.out --include --trace-ascii log/3/trace648 --trace-config all --trace-time smtp://127.0.0.1:38981/648 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is the email inline text with a very long line containing the special character = and that should be split by encoder.;headers=Content-disposition: "inline";encoder=quoted-printable' -F "=@log/3/test648.txt;encoder=base64" -H "From: different" -H "To: another" log/3/stdout648 2> log/3/stderr648 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind649 ../src/curl -q --output log/13/curl649.out --include --trace-ascii log/13/trace649 --trace-config all --trace-time smtp://127.0.0.1:38115/649 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@log/13/test649.txt;encoder=7bit" -H "From: different" -H "To: another" log/13/stdout649 2> log/13/stderr649 = ==108864== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108864== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==108864== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864== ==108864== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==108864== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==108864== by 0x51C2D03: Curl_open (url.c:520) ==108864== by 0x513D46F: curl_easy_init (easy.c:372) ==108864== by 0x401DB99: test_lib667.lto_priv.0 (lib667.c:74) ==108864== by 0x4003443: main (first.c:167) ==108864== ==108864== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x533CFA5: __tsearch (tsearch.c:337) ==108864== by 0x533CFA5: tsearch (tsearch.c:290) ==108864== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==108864== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108864== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108864== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108864== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108864== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864== ==108864== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==108864== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==108864== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==108864== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==108864== by 0x524F3F0: add_alias (gconv_conf.c:178) ==108864== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==108864== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==108864== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==108864== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==108864== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==108864== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==108864== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==108864== by 0x525A142: setlocale (setlocale.c:337) ==108864== by 0x400336E: main (first.c:123) ==108864== === End of file valgrind667 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/3/server/smtp_server.pid" --logfile "log/3/smtp_server.log" --logdir "log/3" --portfile "log/3/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38981 (log/3/server/smtp_server.port) RUN: SMTP server is PID 108217 port 38981 * pid smtp => 108217 108217 test 0648...[SMTP multipart with transfer content encoders] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind648 ../src/curl -q --output log/3/curl648.out --include --trace-ascii log/3/trace648 --trace-config all --trace-time smtp://127.0.0.1:38981/648 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is the email inline text with a very long line containing the special character = and that should be split by encoder.;headers=Content-disposition: "inline";encoder=quoted-printable' -F "=@log/3/test648.txt;encoder=base64" -H "From: different" -H "To: another" log/3/stdout648 2> log/3/stderr648 648: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 648 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind648 ../src/curl -q --output log/3/curl648.out --include --trace-ascii log/3/trace648 --trace-config all --trace-time smtp://127.0.0.1:38981/648 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is the email inline text with a very long line containing the special character = and that should be split by encoder.;headers=Content-disposition: "inline";encoder=quoted-printable' -F "=@log/3/test648.txt;encoder=base64" -H "From: different" -H "To: another" log/3/stdout648 2> log/3/stderr648 === End of file commands.log === Start of file server.cmd Testnum 648 === End of file server.cmd === Start of file smtp_server.log 07:35:43.711731 SMTP server listens on port IPv4/38981 07:35:43.711788 logged pid 108217 in log/3/server/smtp_server.pid 07:35:43.711804 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:43.557542 Running IPv4 version 07:35:43.557591 Listening on port 38981 07:35:43.557618 Wrote pid 108219 to log/3/server/smtp_sockfilt.pid 07:35:43.557636 Wrote port 38981 to log/3/server/smtp_server.port 07:35:43.557649 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-648 From: different To: another body === End of file stdin-for-648 === Start of file test648.txt This is an attached file. It may contain any type of data and will be encoded in base64 for transfer. === End of file test648.txt === Start of file valgrind648 ==109513== ==109513== Process terminating with default action of signal 4 (SIGILL) ==109513== Illegal opcode at address 0x4003082 ==109513== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109513== by 0x4003082: main (tool_main.c:234) === End of file valgrind648 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/13/server/smtp_server.pid" --logfile "log/13/smtp_server.log" --logdir "log/13" --portfile "log/13/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38115 (log/13/server/smtp_server.port) RUN: SMTP server is PID 108218 port 38115 * pid smtp => 108218 108218 test 0649...[SMTP multipart with 7bit encoder error] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind649 ../src/curl -q --output log/13/curl649.out --include --trace-ascii log/13/trace649 --trace-config all --trace-time smtp://127.0.0.1:38115/649 --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@log/13/test649.txt;encoder=7bit" -H "From: different" -H "To: another" log/13/stdout649 2> log/13/stderr649 649: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 649 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind649 ../src/curl -q --output log/13/curl649.out --include --trace-ascii log/13/trace649 --trace-config all --trace-time smtp://127.0.0.1:38115/649 --mail-rcpt recipient@example.com --maCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind675 ../src/curl -q --output log/18/curl675.out --include --trace-ascii log/18/trace675 --trace-config all --trace-time http://user1:foo1@127.0.0.1:45825/user1/675 http://user2:foo2@127.0.0.1:45825/user2/675 > log/18/stdout675 2> log/18/stderr675 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind670 ./libtest/libtests lib670 http://127.0.0.1:37285/670 > log/12/stdout670 2> log/12/stderr670 il-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@log/13/test649.txt;encoder=7bit" -H "From: different" -H "To: another" log/13/stdout649 2> log/13/stderr649 === End of file commands.log === Start of file server.cmd Testnum 649 === End of file server.cmd === Start of file smtp_server.log 07:35:43.731962 SMTP server listens on port IPv4/38115 07:35:43.732017 logged pid 108218 in log/13/server/smtp_server.pid 07:35:43.732034 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:43.577769 Running IPv4 version 07:35:43.577811 Listening on port 38115 07:35:43.577837 Wrote pid 108220 to log/13/server/smtp_sockfilt.pid 07:35:43.577858 Wrote port 38115 to log/13/server/smtp_server.port 07:35:43.577870 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-649 From: different To: another body === End of file stdin-for-649 === Start of file test649.txt This is an attached file (in french: pièce jointe). It contains at least an 8-bit byte value. === End of file test649.txt === Start of file valgrind649 ==109554== ==109554== Process terminating with default action of signal 4 (SIGILL) ==109554== Illegal opcode at address 0x4003082 ==109554== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109554== by 0x4003082: main (tool_main.c:234) === End of file valgrind649 test 0675...[HTTP connection reuse and different credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind675 ../src/curl -q --output log/18/curl675.out --include --trace-ascii log/18/trace675 --trace-config all --trace-time http://user1:foo1@127.0.0.1:45825/user1/675 http://user2:foo2@127.0.0.1:45825/user2/675 > log/18/stdout675 2> log/18/stderr675 675: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 675 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind675 ../src/curl -q --output log/18/curl675.out --include --trace-ascii log/18/trace675 --trace-config all --trace-time http://user1:foo1@127.0.0.1:45825/user1/675 http://user2:foo2@127.0.0.1:45825/user2/675 > log/18/stdout675 2> log/18/stderr675 === End of file commands.log === Start of file http_server.log 07:35:44.580324 ====> Client connect 07:35:44.580357 accept_connection 3 returned 4 07:35:44.580372 accept_connection 3 returned 0 07:35:44.580385 Read 93 bytes 07:35:44.580394 Process 93 bytes request 07:35:44.580407 Got request: GET /verifiedserver HTTP/1.1 07:35:44.580416 Are-we-friendly question received 07:35:44.580469 Wrote request (93 bytes) input to log/18/server.input 07:35:44.580484 Identifying ourselves as friends 07:35:44.580536 Response sent (56 bytes) and written to log/18/server.response 07:35:44.580546 special request received, no persistency 07:35:44.580555 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 675 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind675 ==109650== ==109650== Process terminating with default action of signal 4 (SIGILL) ==109650== Illegal opcode at address 0x4003082 ==109650== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109650== by 0x4003082: main (tool_main.c:234) === End of file valgrind675 test 0670...[Request pause from mime read callback: multi] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind670 ./libtest/libtests lib670 http://127.0.0.1:37285/670 > log/12/stdout670 2> log/12/stderr670 670: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 670 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind670 ./libtest/libtests lib670 http://127.0.0.1:37285/670 > log/12/stdout670 2> log/12/stderr670 === End of file commands.log === Start of file http_server.log 07:35:44.235957 ====> Client connect 07:35:44.235991 accept_connection 3 returned 4 07:35:44.236003 accept_connection 3 returned 0 07:35:44.236014 Read 93 bytes 07:35:44.236021 Process 93 bytes request 07:35:44.236029 Got request: GET /verifiedserver HTTP/1.1 07:35:44.236036 Are-we-friendly question received 07:35:44.236053 Wrote request (93 bytes) input to log/12/server.input 07:35:44.236065 Identifying ourselves as friends 07:35:44.236108 Response sent (56 bytes) and written to log/12/server.response 07:35:44.236117 special request received, no persistency 07:35:44.236125 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 670 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr670 URL: http://127.0.0.1:37285/670 === End of file stderr670 === Start of file valgrind670 ==109121== ==109121== Process terminating with default action of signal 4 (SIGILL) ==109121== Illegal opcode at address 0x51C2DB3 ==109121== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109121== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109121== by 0x51C2DB3: Curl_open (url.c:541) ==109121== by 0x513D46F: curl_easy_init (easy.c:372) ==109121== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109121== by 0x4003443: main (first.c:167) ==109121== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x533CFA5: __tsearch (tsearch.c:337) ==109121== by 0x533CFA5: tsearch (tsearch.c:290) ==109121== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109121== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109121== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109121== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109121== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109121== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== ==109121== 552 bytes in 23 bCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind671 ./libtest/libtests lib670 http://127.0.0.1:34999/671 > log/9/stdout671 2> log/9/stderr671 locks are possibly lost in loss record 608 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x533CFA5: __tsearch (tsearch.c:337) ==109121== by 0x533CFA5: tsearch (tsearch.c:290) ==109121== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109121== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109121== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== ==109121== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109121== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109121== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109121== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109121== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109121== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== ==109121== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109121== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109121== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== ==109121== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109121== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109121== by 0x51C2D03: Curl_open (url.c:520) ==109121== by 0x513D46F: curl_easy_init (easy.c:372) ==109121== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109121== by 0x4003443: main (first.c:167) ==109121== ==109121== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x533CFA5: __tsearch (tsearch.c:337) ==109121== by 0x533CFA5: tsearch (tsearch.c:290) ==109121== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109121== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109121== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109121== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109121== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109121== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== ==109121== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109121== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109121== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109121== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109121== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109121== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109121== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109121== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109121== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109121== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109121== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109121== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109121== by 0x525A142: setlocale (setlocale.c:337) ==109121== by 0x400336E: main (first.c:123) ==109121== === End of file valgrind670 test 0671...[Request pause from mime read callback: easy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind671 ./libtest/libtests lib670 http://127.0.0.1:34999/671 > log/9/stdout671 2> log/9/stderr671 671: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 671 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind671 ./libtest/libtests lib670 http://127.0.0.1:34999/671 > log/9/stdout671 2> log/9/stderr671 === End of file commands.log === Start of file http_server.log 07:35:44.242998 ====> Client connect 07:35:44.243025 accept_connection 3 returned 4 07:35:44.243040 accept_connection 3 returned 0 07:35:44.243052 Read 93 bytes 07:35:44.243061 Process 93 bytes request 07:35:44.243072 Got request: GET /verifiedserver HTTP/1.1 07:35:44.243080 Are-we-friendly question received 07:35:44.243101 Wrote request (93 bytes) input to log/9/server.input 07:35:44.243115 Identifying ourselves as friends 07:35:44.243161 Response sent (56 bytes) and written to log/9/server.response 07:35:44.243170 special request received, no persistency 07:35:44.243178 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 671 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr671 URL: http://127.0.0.1:34999/671 === End of file stderr671 === Start of file valgrind671 ==109148== ==109148== Process terminating with default action of signal 4 (SIGILL) ==109148== Illegal opcode at address 0x51C2DB3 ==109148== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109148== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109148== by 0x51C2DB3: Curl_open (url.c:541) ==109148== by 0x513D46F: curl_easy_init (easy.c:372) ==109148== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109148== by 0x4003443: main (first.c:167) ==109148== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x533CFA5: __tsearch (tsearch.c:337) ==109148== by 0x533CFA5: tsearch (tsearch.c:290) ==109148== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109148== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109148== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109148== by 0x5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind673 ./libtest/libtests lib670 http://127.0.0.1:39089/673 > log/17/stdout673 2> log/17/stderr673 24F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109148== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109148== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== ==109148== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x533CFA5: __tsearch (tsearch.c:337) ==109148== by 0x533CFA5: tsearch (tsearch.c:290) ==109148== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109148== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109148== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== ==109148== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109148== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109148== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109148== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109148== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109148== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== ==109148== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109148== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109148== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== ==109148== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109148== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109148== by 0x51C2D03: Curl_open (url.c:520) ==109148== by 0x513D46F: curl_easy_init (easy.c:372) ==109148== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109148== by 0x4003443: main (first.c:167) ==109148== ==109148== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x533CFA5: __tsearch (tsearch.c:337) ==109148== by 0x533CFA5: tsearch (tsearch.c:290) ==109148== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109148== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109148== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109148== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109148== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109148== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== ==109148== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109148== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109148== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109148== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109148== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109148== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109148== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109148== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109148== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109148== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109148== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109148== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109148== by 0x525A142: setlocale (setlocale.c:337) ==109148== by 0x400336E: main (first.c:123) ==109148== === End of file valgrind671 test 0673...[Request pause from form read callback: easy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind673 ./libtest/libtests lib670 http://127.0.0.1:39089/673 > log/17/stdout673 2> log/17/stderr673 673: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 673 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind673 ./libtest/libtests lib670 http://127.0.0.1:39089/673 > log/17/stdout673 2> log/17/stderr673 === End of file commands.log === Start of file http_server.log 07:35:44.283346 ====> Client connect 07:35:44.283373 accept_connection 3 returned 4 07:35:44.283386 accept_connection 3 returned 0 07:35:44.283397 Read 93 bytes 07:35:44.283405 Process 93 bytes request 07:35:44.283415 Got request: GET /verifiedserver HTTP/1.1 07:35:44.283422 Are-we-friendly question received 07:35:44.283443 Wrote request (93 bytes) input to log/17/server.input 07:35:44.283456 Identifying ourselves as friends 07:35:44.283502 Response sent (56 bytes) and written to log/17/server.response 07:35:44.283510 special request received, no persistency 07:35:44.283516 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 673 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr673 URL: http://127.0.0.1:39089/673 === End of file stderr673 === Start of file valgrind673 ==109334== ==109334== Process terminating with default action of signal 4 (SIGILL) ==109334== Illegal opcode at address 0x51C2DB3 ==109334== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109334== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109334== by 0x51C2DB3: Curl_opeCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind672 ./libtest/libtests lib670 http://127.0.0.1:37169/672 > log/20/stdout672 2> log/20/stderr672 n (url.c:541) ==109334== by 0x513D46F: curl_easy_init (easy.c:372) ==109334== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109334== by 0x4003443: main (first.c:167) ==109334== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x533CFA5: __tsearch (tsearch.c:337) ==109334== by 0x533CFA5: tsearch (tsearch.c:290) ==109334== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109334== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109334== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109334== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109334== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109334== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== ==109334== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x533CFA5: __tsearch (tsearch.c:337) ==109334== by 0x533CFA5: tsearch (tsearch.c:290) ==109334== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109334== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109334== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== ==109334== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109334== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109334== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109334== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109334== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109334== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== ==109334== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109334== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109334== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== ==109334== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109334== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109334== by 0x51C2D03: Curl_open (url.c:520) ==109334== by 0x513D46F: curl_easy_init (easy.c:372) ==109334== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109334== by 0x4003443: main (first.c:167) ==109334== ==109334== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x533CFA5: __tsearch (tsearch.c:337) ==109334== by 0x533CFA5: tsearch (tsearch.c:290) ==109334== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109334== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109334== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109334== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109334== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109334== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== ==109334== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109334== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109334== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109334== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109334== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109334== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109334== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109334== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109334== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109334== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109334== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109334== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109334== by 0x525A142: setlocale (setlocale.c:337) ==109334== by 0x400336E: main (first.c:123) ==109334== === End of file valgrind673 test 0672...[Request pause from form read callback: multi] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind672 ./libtest/libtests lib670 http://127.0.0.1:37169/672 > log/20/stdout672 2> log/20/stderr672 672: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 672 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind672 ./libtest/libtests lib670 http://127.0.0.1:37169/672 > log/20/stdout672 2> log/20/stderr672 === End of file commands.log === Start of file http_server.log 07:35:44.283335 ====> Client connect 07:35:44.283380 accept_connection 3 returned 4 07:35:44.283399 accept_connection 3 returned 0 07:35:44.283414 Read 93 bytes 07:35:44.283427 Process 93 bytes request 07:35:44.283440 Got request: GET /verifiedserver HTTP/1.1 07:35:44.283449 Are-we-friendly question received 07:35:44.283479 Wrote request (93 bytes) input to log/20/server.input 07:35:44.283496 Identifying ourselves as friends 07:35:44.283576 Response sent (56 bytes) and written to log/20/server.response 07:35:44.283585 special request received, no persistency 07:35:44.283595 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 ===CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind680 ../src/curl -q --output log/2/curl680.out --include --trace-ascii log/2/trace680 --trace-config all --trace-time --netrc --netrc-file log/2/netrc680 http://user1@http.example/ > log/2/stdout680 2> log/2/stderr680 End of file http_verify.out === Start of file server.cmd Testnum 672 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr672 URL: http://127.0.0.1:37169/672 === End of file stderr672 === Start of file valgrind672 ==109333== ==109333== Process terminating with default action of signal 4 (SIGILL) ==109333== Illegal opcode at address 0x51C2DB3 ==109333== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109333== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109333== by 0x51C2DB3: Curl_open (url.c:541) ==109333== by 0x513D46F: curl_easy_init (easy.c:372) ==109333== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109333== by 0x4003443: main (first.c:167) ==109333== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x533CFA5: __tsearch (tsearch.c:337) ==109333== by 0x533CFA5: tsearch (tsearch.c:290) ==109333== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109333== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109333== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109333== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109333== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109333== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== ==109333== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x533CFA5: __tsearch (tsearch.c:337) ==109333== by 0x533CFA5: tsearch (tsearch.c:290) ==109333== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109333== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109333== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== ==109333== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109333== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109333== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109333== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109333== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109333== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== ==109333== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109333== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109333== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== ==109333== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109333== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109333== by 0x51C2D03: Curl_open (url.c:520) ==109333== by 0x513D46F: curl_easy_init (easy.c:372) ==109333== by 0x401F170: test_lib670.lto_priv.0 (lib670.c:109) ==109333== by 0x4003443: main (first.c:167) ==109333== ==109333== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x533CFA5: __tsearch (tsearch.c:337) ==109333== by 0x533CFA5: tsearch (tsearch.c:290) ==109333== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109333== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109333== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109333== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109333== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109333== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== ==109333== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109333== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109333== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109333== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109333== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109333== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109333== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109333== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109333== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109333== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109333== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109333== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109333== by 0x525A142: setlocale (setlocale.c:337) ==109333== by 0x400336E: main (first.c:123) ==109333== === End of file valgrind672 * starts no server test 0680...[netrc with quoted password but missing end quote] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind680 ../src/curl -q --output log/2/curl680.out --include --trace-ascii log/2/trace680 --trace-config all --trace-time --netrc --netrc-file log/2/netrc680 http://user1@http.example/ > log/2/stdout680 2> log/2/stderr680 curl returned 132, when expecting 26 680: exit FAILED == Contents of files in the log/2/ dir after test 680 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind680 ../src/curl -q --output log/2/curl680.out --include --trace-ascii log/2/trace680 --trace-config all --trace-time --netrc --netrc-file log/2/netrc680 http://user1@http.example/ > log/2/stdout680 2> log/2/stderr680 === End of file commands.log === Start of file netrc680 machine 127.0.0.1 login user1 password "with spaces and \"\n\r\t\a === End of file netrc680 === Start of file server.cmd Testnum 680 === End of file server.cmd === Start of file valgrind680 ==109821== ==109821== Process terminating with default action of signal 4 (SIGILL) ==109821== IllegaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind679 ../src/curl -q --output log/23/curl679.out --include --trace-ascii log/23/trace679 --trace-config all --trace-time --netrc-optional --netrc-file log/23/netrc679 http://127.0.0.1:45701/ > log/23/stdout679 2> log/23/stderr679 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind681 ../src/curl -q --trace-ascii log/10/trace681 --trace-config all --trace-time --remote-name-all --no-remote-name --output-dir log http://127.0.0.1:34851/681 > log/10/stdout681 2> log/10/stderr681 l opcode at address 0x4003082 ==109821== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109821== by 0x4003082: main (tool_main.c:234) === End of file valgrind680 test 0679...[netrc with quoted password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind679 ../src/curl -q --output log/23/curl679.out --include --trace-ascii log/23/trace679 --trace-config all --trace-time --netrc-optional --netrc-file log/23/netrc679 http://127.0.0.1:45701/ > log/23/stdout679 2> log/23/stderr679 679: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 679 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind679 ../src/curl -q --output log/23/curl679.out --include --trace-ascii log/23/trace679 --trace-config all --trace-time --netrc-optional --netrc-file log/23/netrc679 http://127.0.0.1:45701/ > log/23/stdout679 2> log/23/stderr679 === End of file commands.log === Start of file http_server.log 07:35:44.786214 ====> Client connect 07:35:44.786248 accept_connection 3 returned 4 07:35:44.786277 accept_connection 3 returned 0 07:35:44.786292 Read 93 bytes 07:35:44.786303 Process 93 bytes request 07:35:44.786315 Got request: GET /verifiedserver HTTP/1.1 07:35:44.786324 Are-we-friendly question received 07:35:44.786350 Wrote request (93 bytes) input to log/23/server.input 07:35:44.786367 Identifying ourselves as friends 07:35:44.786423 Response sent (56 bytes) and written to log/23/server.response 07:35:44.786433 special request received, no persistency 07:35:44.787170 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file netrc679 machine 127.0.0.1 login user1 password "with spaces and \"\n\r\t\a" === End of file netrc679 === Start of file server.cmd Testnum 679 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind679 ==109837== ==109837== Process terminating with default action of signal 4 (SIGILL) ==109837== Illegal opcode at address 0x4003082 ==109837== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109837== by 0x4003082: main (tool_main.c:234) === End of file valgrind679 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind683 ../src/curl -q --output log/16/curl683.out --include --trace-ascii log/16/trace683 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc683 http://user2@127.0.0.1:46739/ > log/16/stdout683 2> log/16/stderr683 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind682 ../src/curl -q --output log/11/curl682.out --include --trace-ascii log/11/trace682 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc682 http://user1@127.0.0.1:41173/ > log/11/stdout682 2> log/11/stderr682 test 0681...[--remote-name-all with --no-remote-name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind681 ../src/curl -q --trace-ascii log/10/trace681 --trace-config all --trace-time --remote-name-all --no-remote-name --output-dir log http://127.0.0.1:34851/681 > log/10/stdout681 2> log/10/stderr681 681: stdout FAILED: --- log/10/check-expected 2025-07-18 07:35:45.537112548 +0000 +++ log/10/check-generated 2025-07-18 07:35:45.537112548 +0000 @@ -1 +0,0 @@ --foo-[LF] == Contents of files in the log/10/ dir after test 681 === Start of file check-expected -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind681 ../src/curl -q --trace-ascii log/10/trace681 --trace-config all --trace-time --remote-name-all --no-remote-name --output-dir log http://127.0.0.1:34851/681 > log/10/stdout681 2> log/10/stderr681 === End of file commands.log === Start of file http_server.log 07:35:44.811984 ====> Client connect 07:35:44.812016 accept_connection 3 returned 4 07:35:44.812032 accept_connection 3 returned 0 07:35:44.812046 Read 93 bytes 07:35:44.812056 Process 93 bytes request 07:35:44.812069 Got request: GET /verifiedserver HTTP/1.1 07:35:44.812079 Are-we-friendly question received 07:35:44.812104 Wrote request (93 bytes) input to log/10/server.input 07:35:44.812120 Identifying ourselves as friends 07:35:44.812174 Response sent (56 bytes) and written to log/10/server.response 07:35:44.812184 special request received, no persistency 07:35:44.812193 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 681 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind681 ==109941== ==109941== Process terminating with default action of signal 4 (SIGILL) ==109941== Illegal opcode at address 0x4003082 ==109941== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109941== by 0x4003082: main (tool_main.c:234) === End of file valgrind681 test 0682...[netrc with multiple logins - pick first] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind682 ../src/curl -q --output log/11/curl682.out --include --trace-ascii log/11/trace682 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc682 http://user1@127.0.0.1:41173/ > log/11/stdout682 2> log/11/stderr682 682: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 682 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind682 ../src/curl -q --output log/11/curl682.out --include --trace-ascii log/11/trace682 --trace-config all --trace-time --netrc-optional --netrc-file log/11/netrc682 http://user1@127.0.0.1:41173/ > log/11/stdout682 2> log/11/stderr682 === End of file commands.log === Start of file http_server.log 07:35:44.817267 ====> Client connect 07:35:44.817299 accept_connection 3 returned 4 07:35:44.817315 accept_connection 3 returned 0 07:35:44.817328 Read 93 bytes 07:35:44.817336 Process 93 bytes request 07:35:44.817348 Got request: GET /verifiedserver HTTP/1.1 07:35:44.817357 Are-we-friendly question received 07:35:44.817380 Wrote request (93 bytes) input to log/11/server.input 07:35:44.817394 Identifying ourselves as friends 07:35:44.817449 Response sent (56 bytes) and written to log/11/server.response 07:35:44.817458 special request received, no persistency 07:35:44.817466 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file netrc682 machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc682 === Start of file server.cmd Testnum 682 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind682 ==109972== ==109972== Process terminating with default action of signal 4 (SIGILL) ==109972== Illegal opcode at address 0x4003082 ==109972== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==109972== by 0x4003082: main (tool_main.c:234) === End of file valgrind682 test 0683...[netrc with multiple logins - pick second] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind683 ../src/curl -q --output log/16/curl683.out --include --trace-ascii log/16/trace683 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc683 http://user2@127.0.0.1:46739/ > log/16/stdout683 2> log/16/stderr683 683: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 683 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind683 ../src/curl -q --output log/16/curl683.out --include --trace-ascii log/16/trace683 --trace-config all --trace-time --netrc-optional --netrc-file log/16/netrc683 http://user2@127.0.0.1:46739/ > log/16/stdout683 2> log/16/stderr683 === End of file commands.log === Start of file http_server.log 07:35:44.836622 ====> Client connect 07:35:44.836694 accept_connection 3 returned 4 07:35:44.836712 accept_connection 3 returned 0 07:35:44.836729 Read 93 bytes 07:35:44.836738 Process 93 bytes request 07:35:44.836753 Got request: GET /verifiedserver HTTP/1.1 07:35:44.836762 Are-we-friendly question received 07:35:44.836788 Wrote request (93 bytes) input to log/16/server.input 07:35:44.836804 Identifying ourselves as friends 07:35:44.836880 Response sent (56 bytes) and written to log/16/server.response 07:35:44.836892 special request received, no persistency 07:35:44.836901 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file netrc683 machine 127.0.0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind684 ../src/curl -q --output log/19/curl684.out --include --trace-ascii log/19/trace684 --trace-config all --trace-time --netrc-optional --netrc-file log/19/netrc684 http://127.0.0.1:33487/ > log/19/stdout684 2> log/19/stderr684 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind674 ./libtest/libtests lib674 http://127.0.0.1:33235/674 > log/4/stdout674 2> log/4/stderr674 .1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc683 === Start of file server.cmd Testnum 683 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind683 ==110088== ==110088== Process terminating with default action of signal 4 (SIGILL) ==110088== Illegal opcode at address 0x4003082 ==110088== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110088== by 0x4003082: main (tool_main.c:234) === End of file valgrind683 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/sshserver.pl --verbose --pidfile "log/6/server/ssh_server.pid" --logdir "log/6" --ipv4 --addr "127.0.0.1" --user "builduser" --sshport 39737 startnew: child process has died, server might start up RUN: failed to start the SSH server on 39737 test 0684...[netrc with no login] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind684 ../src/curl -q --output log/19/curl684.out --include --trace-ascii log/19/trace684 --trace-config all --trace-time --netrc-optional --netrc-file log/19/netrc684 http://127.0.0.1:33487/ > log/19/stdout684 2> log/19/stderr684 684: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 684 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind684 ../src/curl -q --output log/19/curl684.out --include --trace-ascii log/19/trace684 --trace-config all --trace-time --netrc-optional --netrc-file log/19/netrc684 http://127.0.0.1:33487/ > log/19/stdout684 2> log/19/stderr684 === End of file commands.log === Start of file http_server.log 07:35:44.918502 ====> Client connect 07:35:44.918534 accept_connection 3 returned 4 07:35:44.918549 accept_connection 3 returned 0 07:35:44.918563 Read 93 bytes 07:35:44.918572 Process 93 bytes request 07:35:44.918585 Got request: GET /verifiedserver HTTP/1.1 07:35:44.918594 Are-we-friendly question received 07:35:44.918616 Wrote request (93 bytes) input to log/19/server.input 07:35:44.918631 Identifying ourselves as friends 07:35:44.918683 Response sent (56 bytes) and written to log/19/server.response 07:35:44.918692 special request received, no persistency 07:35:44.918700 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file netrc684 machine 127.0.0.1 password 5up3r53cr37 === End of file netrc684 === Start of file server.cmd Testnum 684 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind684 ==110214== ==110214== Process terminating with default action of signal 4 (SIGILL) ==110214== Illegal opcode at address 0x4003082 ==110214== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110214== by 0x4003082: main (tool_main.c:234) === End of file valgrind684 test 0674...[Set CURLOPT_CURLU and dupe the handle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind674 ./libtest/libtests lib674 http://127.0.0.1:33235/674 > log/4/stdout674 2> log/4/stderr674 674: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 674 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind674 ./libtest/libtests lib674 http://127.0.0.1:33235/674 > log/4/stdout674 2> log/4/stderr674 === End of file commands.log === Start of file http_server.log 07:35:44.560004 ====> Client connect 07:35:44.560040 accept_connection 3 returned 4 07:35:44.560055 accept_connection 3 returned 0 07:35:44.560068 Read 93 bytes 07:35:44.560077 Process 93 bytes request 07:35:44.560089 Got request: GET /verifiedserver HTTP/1.1 07:35:44.560097 Are-we-friendly question received 07:35:44.560119 Wrote request (93 bytes) input to log/4/server.input 07:35:44.560133 Identifying ourselves as friends 07:35:44.560180 Response sent (56 bytes) and written to log/4/server.response 07:35:44.560189 special request received, no persistency 07:35:44.560196 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 674 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr674 URL: http://127.0.0.1:33235/674 === End of file stderr674 === Start of file valgrind674 ==109570== ==109570== Process terminating with default action of signal 4 (SIGILL) ==109570== Illegal opcode at address 0x51C2DB3 ==109570== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109570== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109570== by 0x51C2DB3: Curl_open (url.c:541) ==109570== by 0x513D46F: curl_easy_init (easy.c:372) ==109570== by 0x401ED90: UnknownInlinedFun (lib674.c:41) ==109570== by 0x401ED90: test_lib674.lto_priv.0 (lib674.c:32) ==109570== by 0x4003443: main (first.c:167) ==109570== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x533CFA5: __tsearch (tsearch.c:337) ==109570== by 0x533CFA5: tsearch (tsearch.c:290) ==109570== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109570== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109570== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109570== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109570== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109570== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== ==109570== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x533CFA5: __tsearch (tsearch.c:337) ==109570== by 0x533CFA5: tsearch (tsearch.c:290) ==109570== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109570== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109570== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind686 ../src/curl -q --output log/14/curl686.out --include --trace-ascii log/14/trace686 --trace-config all --trace-time htdhdhdtp://localhost --next > log/14/stdout686 2> log/14/stderr686 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind691 ../src/curl -q --include --trace-ascii log/1/trace691 --trace-config all --trace-time http://127.0.0.1:38941/path/to/here/ -O --output-dir log/1 > log/1/stdout691 2> log/1/stderr691 ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== ==109570== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109570== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109570== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109570== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109570== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109570== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== ==109570== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109570== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109570== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== ==109570== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109570== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109570== by 0x51C2D03: Curl_open (url.c:520) ==109570== by 0x513D46F: curl_easy_init (easy.c:372) ==109570== by 0x401ED90: UnknownInlinedFun (lib674.c:41) ==109570== by 0x401ED90: test_lib674.lto_priv.0 (lib674.c:32) ==109570== by 0x4003443: main (first.c:167) ==109570== ==109570== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x533CFA5: __tsearch (tsearch.c:337) ==109570== by 0x533CFA5: tsearch (tsearch.c:290) ==109570== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109570== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109570== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109570== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109570== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109570== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== ==109570== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109570== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109570== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109570== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109570== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109570== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109570== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109570== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109570== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109570== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109570== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109570== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109570== by 0x525A142: setlocale (setlocale.c:337) ==109570== by 0x400336E: main (first.c:123) ==109570== === End of file valgrind674 * starts no server test 0686...[verify return code for missing URL after --next] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind686 ../src/curl -q --output log/14/curl686.out --include --trace-ascii log/14/trace686 --trace-config all --trace-time htdhdhdtp://localhost --next > log/14/stdout686 2> log/14/stderr686 curl returned 132, when expecting 2 686: exit FAILED == Contents of files in the log/14/ dir after test 686 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind686 ../src/curl -q --output log/14/curl686.out --include --trace-ascii log/14/trace686 --trace-config all --trace-time htdhdhdtp://localhost --next > log/14/stdout686 2> log/14/stderr686 === End of file commands.log === Start of file server.cmd Testnum 686 === End of file server.cmd === Start of file valgrind686 ==110285== ==110285== Process terminating with default action of signal 4 (SIGILL) ==110285== Illegal opcode at address 0x4003082 ==110285== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110285== by 0x4003082: main (tool_main.c:234) === End of file valgrind686 test 0691...[-O with URL with path using trailing slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind691 ../src/curl -q --include --trace-ascii log/1/trace691 --trace-config all --trace-time http://127.0.0.1:38941/path/to/here/ -O --output-dir log/1 > log/1/stdout691 2> log/1/stderr691 691: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 691 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind691 ../src/curl -q --include --trace-ascii log/1/trace691 --trace-config all --trace-time http://127.0.0.1:38941/path/to/here/ -O --output-dir log/1 > log/1/stdout691 2> log/1/stderr691 === End of file commands.log === Start of file http_server.log 07:35:45.033499 ====> Client connect 07:35:45.033530 accept_connection 3 returned 4 07:35:45.033546 accept_connection 3 returned 0 07:35:45.033560 Read 93 bytes 07:35:45.033570 Process 93 bytes request 07:35:45.033581 Got request: GET /verifiedserver HTTP/1.1 07:35:45.033592 Are-we-friendly question received 07:35:45.033617 Wrote request (93 bytes) input to log/1/server.input 07:35:45.033634 Identifying ourselves as friends 07:35:45.033696 Response sent (56 bytes) and written to log/1/server.response 07:35:45.033708 special request received, no persistency 07:35:45.033716 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 691 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind685 ../src/curl -q --output log/21/curl685.out --include --trace-ascii log/21/trace685 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc685 http://user@127.0.0.1:41087/ > log/21/stdout685 2> log/21/stderr685 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind691 ==110369== ==110369== Process terminating with default action of signal 4 (SIGILL) ==110369== Illegal opcode at address 0x4003082 ==110369== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110369== by 0x4003082: main (tool_main.c:234) === End of file valgrind691 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind690 ../src/curl -q --include --trace-ascii log/7/trace690 --trace-config all --trace-time http://127.0.0.1:39077/ -O --output-dir log/7 > log/7/stdout690 2> log/7/stderr690 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind693 ../src/curl -q --output log/13/curl693.out --include --trace-ascii log/13/trace693 --trace-config all --trace-time http://127.0.0.1:33627/693 --etag-save log/13/moo/boo/etag693 --create-dirs > log/13/stdout693 2> log/13/stderr693 test 0685...[netrc with no login - provided user] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind685 ../src/curl -q --output log/21/curl685.out --include --trace-ascii log/21/trace685 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc685 http://user@127.0.0.1:41087/ > log/21/stdout685 2> log/21/stderr685 685: data FAILED: --- log/21/check-expected 2025-07-18 07:35:45.703779219 +0000 +++ log/21/check-generated 2025-07-18 07:35:45.703779219 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Fri, 05 Aug 2022 10:09:00 GMT[LF] -Server: test-server/fake[LF] -Content-Type: text/plain[LF] -Content-Length: 6[LF] -Connection: close[LF] -[LF] --foo-[LF] == Contents of files in the log/21/ dir after test 685 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Fri, 05 Aug 2022 10:09:00 GMT[LF] Server: test-server/fake[LF] Content-Type: text/plain[LF] Content-Length: 6[LF] Connection: close[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind685 ../src/curl -q --output log/21/curl685.out --include --trace-ascii log/21/trace685 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc685 http://user@127.0.0.1:41087/ > log/21/stdout685 2> log/21/stderr685 === End of file commands.log === Start of file http_server.log 07:35:45.028184 ====> Client connect 07:35:45.028220 accept_connection 3 returned 4 07:35:45.028238 accept_connection 3 returned 0 07:35:45.028253 Read 93 bytes 07:35:45.028263 Process 93 bytes request 07:35:45.028276 Got request: GET /verifiedserver HTTP/1.1 07:35:45.028286 Are-we-friendly question received 07:35:45.028311 Wrote request (93 bytes) input to log/21/server.input 07:35:45.028327 Identifying ourselves as friends 07:35:45.028382 Response sent (56 bytes) and written to log/21/server.response 07:35:45.028392 special request received, no persistency 07:35:45.028401 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file netrc685 machine 127.0.0.1 password 5up3r53cr37 === End of file netrc685 === Start of file server.cmd Testnum 685 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind685 ==110349== ==110349== Process terminating with default action of signal 4 (SIGILL) ==110349== Illegal opcode at address 0x4003082 ==110349== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110349== by 0x4003082: main (tool_main.c:234) === End of file valgrind685 test 0690...[-O with URL without path using trailing slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind690 ../src/curl -q --include --trace-ascii log/7/trace690 --trace-config all --trace-time http://127.0.0.1:39077/ -O --output-dir log/7 > log/7/stdout690 2> log/7/stderr690 690: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 690 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind690 ../src/curl -q --include --trace-ascii log/7/trace690 --trace-config all --trace-time http://127.0.0.1:39077/ -O --output-dir log/7 > log/7/stdout690 2> log/7/stderr690 === End of file commands.log === Start of file http_server.log 07:35:45.033265 ====> Client connect 07:35:45.033297 accept_connection 3 returned 4 07:35:45.033312 accept_connection 3 returned 0 07:35:45.033325 Read 93 bytes 07:35:45.033335 Process 93 bytes request 07:35:45.033346 Got request: GET /verifiedserver HTTP/1.1 07:35:45.033355 Are-we-friendly question received 07:35:45.033379 Wrote request (93 bytes) input to log/7/server.input 07:35:45.033395 Identifying ourselves as friends 07:35:45.033448 Response sent (56 bytes) and written to log/7/server.response 07:35:45.033457 special request received, no persistency 07:35:45.033466 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 690 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind690 ==110389== ==110389== Process terminating with default action of signal 4 (SIGILL) ==110389== Illegal opcode at address 0x4003082 ==110389== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110389== by 0x4003082: main (tool_main.c:234) === End of file valgrind690 test 0693...[--etag-save with --create-dirs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind693 ../src/curl -q --output log/13/curl693.out --include --trace-ascii log/13/trace693 --trace-config all --trace-time http://127.0.0.1:33627/693 --etag-save log/13/moo/boo/etag693 --create-dirs > log/13/stdout693 2> log/13/stderr693 693: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 693 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind693 ../src/curl -q --output log/13/curl693.out --include --trace-ascii log/13/trace693 --trace-config all --trace-time http://127.0.0.1:33627/693 --etag-save log/13/moo/boo/etag693 --create-dirs > log/13/stdout693 2> log/13/stderr693 === End of file commands.log === Start of file http_server.log 07:35:45.129874 ====> Client connect 07:35:45.129908 accept_connection 3 returned 4 07:35:45.129925 accept_connection 3 returned 0 07:35:45.129940 Read 93 bytes 07:35:45.129949 Process 93 bytes request 07:35:45.129961 Got request: GET /verifiedserver HTTP/1.1 07:35:45.129970 Are-we-friendly question received 07:35:45.129995 Wrote request (93 bytes) input to log/13/server.input 07:35:45.130010 Identifying ourselves as friends 07:35:45.130064 Response sent (56 bytes) and written to log/13/server.response 07:35:45.130073 special request received, no persistency 07:35:45.130082 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind692 ../src/curl -q --trace-ascii log/3/trace692 --trace-config all --trace-time http://127.0.0.1:42345/ -JO --output-dir log/3 > log/3/stdout692 2> log/3/stderr692 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind676 ./libtest/libtests lib676 http://127.0.0.1:36993/we/want/676 log/15/cookies676 > log/15/stdout676 2> log/15/stderr676 { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 693 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind693 ==110608== ==110608== Process terminating with default action of signal 4 (SIGILL) ==110608== Illegal opcode at address 0x4003082 ==110608== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110608== by 0x4003082: main (tool_main.c:234) === End of file valgrind693 test 0692...[-JO with URL without path using trailing slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind692 ../src/curl -q --trace-ascii log/3/trace692 --trace-config all --trace-time http://127.0.0.1:42345/ -JO --output-dir log/3 > log/3/stdout692 2> log/3/stderr692 692: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 692 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind692 ../src/curl -q --trace-ascii log/3/trace692 --trace-config all --trace-time http://127.0.0.1:42345/ -JO --output-dir log/3 > log/3/stdout692 2> log/3/stderr692 === End of file commands.log === Start of file http_server.log 07:35:45.129533 ====> Client connect 07:35:45.129568 accept_connection 3 returned 4 07:35:45.129585 accept_connection 3 returned 0 07:35:45.129601 Read 93 bytes 07:35:45.129611 Process 93 bytes request 07:35:45.129624 Got request: GET /verifiedserver HTTP/1.1 07:35:45.129634 Are-we-friendly question received 07:35:45.129661 Wrote request (93 bytes) input to log/3/server.input 07:35:45.129676 Identifying ourselves as friends 07:35:45.129726 Response sent (56 bytes) and written to log/3/server.response 07:35:45.129736 special request received, no persistency 07:35:45.129744 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 692 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind692 ==110607== ==110607== Process terminating with default action of signal 4 (SIGILL) ==110607== Illegal opcode at address 0x4003082 ==110607== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110607== by 0x4003082: main (tool_main.c:234) === End of file valgrind692 test 0676...[verify setting CURLOPT_COOKIEFILE to NULL again] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind676 ./libtest/libtests lib676 http://127.0.0.1:36993/we/want/676 log/15/cookies676 > log/15/stdout676 2> log/15/stderr676 676: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 676 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind676 ./libtest/libtests lib676 http://127.0.0.1:36993/we/want/676 log/15/cookies676 > log/15/stdout676 2> log/15/stderr676 === End of file commands.log === Start of file cookies676 127.0.0.1 TRUE /we/want/ FALSE 22118138987 proven yes === End of file cookies676 === Start of file http_server.log 07:35:44.767366 ====> Client connect 07:35:44.767410 accept_connection 3 returned 4 07:35:44.767428 accept_connection 3 returned 0 07:35:44.767445 Read 93 bytes 07:35:44.767456 Process 93 bytes request 07:35:44.767470 Got request: GET /verifiedserver HTTP/1.1 07:35:44.767479 Are-we-friendly question received 07:35:44.767506 Wrote request (93 bytes) input to log/15/server.input 07:35:44.767523 Identifying ourselves as friends 07:35:44.767606 Response sent (56 bytes) and written to log/15/server.response 07:35:44.767618 special request received, no persistency 07:35:44.767627 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 676 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file stderr676 URL: http://127.0.0.1:36993/we/want/676 === End of file stderr676 === Start of file valgrind676 ==109794== ==109794== Process terminating with default action of signal 4 (SIGILL) ==109794== Illegal opcode at address 0x51C2DB3 ==109794== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109794== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109794== by 0x51C2DB3: Curl_open (url.c:541) ==109794== by 0x513D46F: curl_easy_init (easy.c:372) ==109794== by 0x4014906: test_lib676.lto_priv.0 (lib676.c:38) ==109794== by 0x4003443: main (first.c:167) ==109794== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x533CFA5: __tsearch (tsearch.c:337) ==109794== by 0x533CFA5: tsearch (tsearch.c:290) ==109794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109794== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109794== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setlocale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== ==109794== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x533CFA5: __tsearch (tsearch.c:337) ==109794== by 0x533CFA5: tsearch (tsearch.c:290) ==109794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109794== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109794== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setloCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind697 ../src/curl -q --output log/17/curl697.out --include --trace-ascii log/17/trace697 --trace-config all --trace-time --netrc --netrc-file log/17/netrc697 http://user1@http.example/ > log/17/stdout697 2> log/17/stderr697 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind652 ./libtest/libtests lib652 smtp://127.0.0.1:40991/652 > log/22/stdout652 2> log/22/stderr652 cale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== ==109794== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109794== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109794== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setlocale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== ==109794== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109794== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109794== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setlocale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== ==109794== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109794== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109794== by 0x51C2D03: Curl_open (url.c:520) ==109794== by 0x513D46F: curl_easy_init (easy.c:372) ==109794== by 0x4014906: test_lib676.lto_priv.0 (lib676.c:38) ==109794== by 0x4003443: main (first.c:167) ==109794== ==109794== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x533CFA5: __tsearch (tsearch.c:337) ==109794== by 0x533CFA5: tsearch (tsearch.c:290) ==109794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109794== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109794== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setlocale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== ==109794== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109794== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109794== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109794== by 0x525A142: setlocale (setlocale.c:337) ==109794== by 0x400336E: main (first.c:123) ==109794== === End of file valgrind676 * starts no server test 0697...[netrc with missing netrc file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind697 ../src/curl -q --output log/17/curl697.out --include --trace-ascii log/17/trace697 --trace-config all --trace-time --netrc --netrc-file log/17/netrc697 http://user1@http.example/ > log/17/stdout697 2> log/17/stderr697 curl returned 132, when expecting 26 697: exit FAILED == Contents of files in the log/17/ dir after test 697 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind697 ../src/curl -q --output log/17/curl697.out --include --trace-ascii log/17/trace697 --trace-config all --trace-time --netrc --netrc-file log/17/netrc697 http://user1@http.example/ > log/17/stdout697 2> log/17/stderr697 === End of file commands.log === Start of file server.cmd Testnum 697 === End of file server.cmd === Start of file valgrind697 ==110798== ==110798== Process terminating with default action of signal 4 (SIGILL) ==110798== Illegal opcode at address 0x4003082 ==110798== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110798== by 0x4003082: main (tool_main.c:234) === End of file valgrind697 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/22/server/smtp_server.pid" --logfile "log/22/smtp_server.log" --logdir "log/22" --portfile "log/22/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40991 (log/22/server/smtp_server.port) RUN: SMTP server is PID 108298 port 40991 * pid smtp => 108298 108298 test 0652...[SMTP with encoded huge mime data contents] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind652 ./libtest/libtests lib652 smtp://127.0.0.1:40991/652 > log/22/stdout652 2> log/22/stderr652 652: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 652 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind652 ./libtest/libtests lib652 smtp://127.0.0.1:40991/652 > log/22/stdout652 2> log/22/stderr652 === End of file commands.log === Start of file server.cmd Testnum 652 === End of file server.cmd === Start of file smtp_server.log 07:35:43.958523 SMTP server listens on port IPv4/40991 07:35:43.958570 logged pid 108298 in log/22/server/smtp_server.pid 07:35:43.958587 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:43.804344 Running IPv4 version 07:35:43.804389 Listening on port 40991 07:35:43.804415 Wrote pid 108320 to log/22/server/smtp_sockfilt.pid 07:35:43.804434 Wrote port 40991 to log/22/server/smtp_server.port 07:35:43.804446 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stderr652 URL: smtp://127.0.0.1:40991/652 === End of file stderr652 === Start of file valgrind652 ==109928== ==109928== Process terminating with default action of signal 4 (SIGILL) ==109928== Illegal opcode at address 0x51C2DB3 ==109928== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==109928== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==109928== by 0x51C2DB3: Curl_open (url.c:541) ==109928== by 0x513D46F: curl_easy_init (easy.c:372) ==109928== by 0x401DDCD: test_lib652.lto_priv.0 (lib652.c:50) ==109928== by 0x4003443: main (first.c:167) ==109928== 408 bytes in 17 blocks are possiblCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind698 ../src/curl -q --output log/20/curl698.out --include --trace-ascii log/20/trace698 --trace-config all --trace-time ftp://127.0.0.1:45671/698 --ftp-account "one count" ftp://127.0.0.1:45671/698 > log/20/stdout698 2> log/20/stderr698 y lost in loss record 604 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x533CFA5: __tsearch (tsearch.c:337) ==109928== by 0x533CFA5: tsearch (tsearch.c:290) ==109928== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109928== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109928== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109928== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109928== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109928== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== ==109928== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x533CFA5: __tsearch (tsearch.c:337) ==109928== by 0x533CFA5: tsearch (tsearch.c:290) ==109928== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109928== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109928== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== ==109928== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109928== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109928== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109928== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109928== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==109928== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== ==109928== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109928== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==109928== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== ==109928== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==109928== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==109928== by 0x51C2D03: Curl_open (url.c:520) ==109928== by 0x513D46F: curl_easy_init (easy.c:372) ==109928== by 0x401DDCD: test_lib652.lto_priv.0 (lib652.c:50) ==109928== by 0x4003443: main (first.c:167) ==109928== ==109928== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x533CFA5: __tsearch (tsearch.c:337) ==109928== by 0x533CFA5: tsearch (tsearch.c:290) ==109928== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==109928== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109928== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109928== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109928== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109928== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== ==109928== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==109928== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==109928== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==109928== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==109928== by 0x524F3F0: add_alias (gconv_conf.c:178) ==109928== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==109928== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==109928== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==109928== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==109928== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==109928== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==109928== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==109928== by 0x525A142: setlocale (setlocale.c:337) ==109928== by 0x400336E: main (first.c:123) ==109928== === End of file valgrind652 test 0698...[FTP with ACCT and connection reuse] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind698 ../src/curl -q --output log/20/curl698.out --include --trace-ascii log/20/trace698 --trace-config all --trace-time ftp://127.0.0.1:45671/698 --ftp-account "one count" ftp://127.0.0.1:45671/698 > log/20/stdout698 2> log/20/stderr698 698: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 698 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind698 ../src/curl -q --output log/20/curl698.out --include --trace-ascii log/20/trace698 --trace-config all --trace-time ftp://127.0.0.1:45671/698 --ftp-account "one count" ftp://127.0.0.1:45671/698 > log/20/stdout698 2> log/20/stderr698 === End of file commands.log === Start of file ftp_server.log 07:35:45.387537 ====> Client connect 07:35:45.387761 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.388075 < "USER anonymous" 07:35:45.388115 > "331 We are happy you popped in![CR][LF]" 07:35:45.388284 < "PASS ftp@example.com" 07:35:45.388311 > "230 Welcome you silly person[CR][LF]" 07:35:45.388463 < "PWD" 07:35:45.388497 > "257 "/" is current directory[CR][LF]" 07:35:45.388662 < "EPSV" 07:35:45.388687 ====> Passive DATA channel requested by client 07:35:45.388700 DATA sockfilt for passive data channel starting... 07:35:45.390622 DATA sockfilt for passive data channel started (pid 110885) 07:35:45.390723 DATA sockfilt for passive data channel listens on port 38053 07:35:45.390761 > "229 Entering Passive Mode (|||38053|)[LF]" 07:35:45.390779 Client has been notified that DATA conn will be accepted on port 38053 07:35:45.390997 Client connects to port 38053 07:35:45.391025 ====> Client estabCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind699 ../src/curl -q --output log/2/curl699.out --include --trace-ascii log/2/trace699 --trace-config all --trace-time http://127.0.0.1:45457/699 -K log/2/cmd > log/2/stdout699 2> log/2/stderr699 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind660 ./libtest/libtests lib597 imap://127.0.0.1:38013/660 > log/8/stdout660 2> log/8/stderr660 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind704 ../src/curl -q --output log/6/curl704.out --include --trace-ascii log/6/trace704 --trace-config all --trace-time --socks4 127.0.0.1:47 http://127.0.0.1:35775/704 > log/6/stdout704 2> log/6/stderr704 lished passive DATA connection on port 38053 07:35:45.391088 < "TYPE I" 07:35:45.391113 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.391259 < "SIZE verifiedserver" 07:35:45.391296 > "213 17[CR][LF]" 07:35:45.391432 < "RETR verifiedserver" 07:35:45.391465 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.391530 =====> Closing passive DATA connection... 07:35:45.391545 Server disconnects passive DATA connection 07:35:45.391617 Server disconnected passive DATA connection 07:35:45.391635 DATA sockfilt for passive data channel quits (pid 110885) 07:35:45.392142 DATA sockfilt for passive data channel quit (pid 110885) 07:35:45.392168 =====> Closed passive DATA connection 07:35:45.392194 > "226 File transfer complete[CR][LF]" 07:35:45.433626 < "QUIT" 07:35:45.433682 > "221 bye bye baby[CR][LF]" 07:35:45.434418 MAIN sockfilt said DISC 07:35:45.434445 ====> Client disconnected 07:35:45.434522 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.233363 ====> Client connect 07:35:45.233768 Received DATA (on stdin) 07:35:45.233785 > 160 bytes data, server => client 07:35:45.233797 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.233808 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.233818 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.233898 < 16 bytes data, client => server 07:35:45.233912 'USER anonymous\r\n' 07:35:45.234107 Received DATA (on stdin) 07:35:45.234120 > 33 bytes data, server => client 07:35:45.234131 '331 We are happy you popped in!\r\n' 07:35:45.234180 < 22 bytes data, client => server 07:35:45.234193 'PASS ftp@example.com\r\n' 07:35:45.234298 Received DATA (on stdin) 07:35:45.234310 > 30 bytes data, server => client 07:35:45.234321 '230 Welcome you silly person\r\n' 07:35:45.234367 < 5 bytes data, client => server 07:35:45.234378 'PWD\r\n' 07:35:45.234487 Received DATA (on stdin) 07:35:45.234499 > 30 bytes data, server => client 07:35:45.234510 '257 "/" is current directory\r\n' 07:35:45.234564 < 6 bytes data, client => server 07:35:45.234577 'EPSV\r\n' 07:35:45.236770 Received DATA (on stdin) 07:35:45.236784 > 38 bytes data, server => client 07:35:45.236795 '229 Entering Passive Mode (|||38053|)\n' 07:35:45.236930 < 8 bytes data, client => server 07:35:45.236943 'TYPE I\r\n' 07:35:45.237100 Received DATA (on stdin) 07:35:45.237112 > 33 bytes data, server => client 07:35:45.237123 '200 I modify TYPE as you wanted\r\n' 07:35:45.237172 < 21 bytes data, client => server 07:35:45.237185 'SIZE verifiedserver\r\n' 07:35:45.237283 Received DATA (on stdin) 07:35:45.237296 > 8 bytes data, server => client 07:35:45.237306 '213 17\r\n' 07:35:45.237360 < 21 bytes data, client => server 07:35:45.237376 'RETR verifiedserver\r\n' 07:35:45.237533 Received DATA (on stdin) 07:35:45.237546 > 29 bytes data, server => client 07:35:45.237556 '150 Binary junk (17 bytes).\r\n' 07:35:45.238180 Received DATA (on stdin) 07:35:45.238194 > 28 bytes data, server => client 07:35:45.238204 '226 File transfer complete\r\n' 07:35:45.279425 < 6 bytes data, client => server 07:35:45.279452 'QUIT\r\n' 07:35:45.279671 Received DATA (on stdin) 07:35:45.279683 > 18 bytes data, server => client 07:35:45.279693 '221 bye bye baby\r\n' 07:35:45.280355 ====> Client disconnect 07:35:45.280507 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.236339 Running IPv4 version 07:35:45.236395 Listening on port 38053 07:35:45.236433 Wrote pid 110885 to log/20/server/ftp_sockdata.pid 07:35:45.236552 Received PING (on stdin) 07:35:45.236631 Received PORT (on stdin) 07:35:45.236902 ====> Client connect 07:35:45.237461 Received DATA (on stdin) 07:35:45.237478 > 17 bytes data, server => client 07:35:45.237489 'WE ROOLZ: 88588\r\n' 07:35:45.237532 Received DISC (on stdin) 07:35:45.237546 ====> Client forcibly disconnected 07:35:45.237626 Received QUIT (on stdin) 07:35:45.237638 quits 07:35:45.237706 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 332 please provide account name REPLY ACCT 230 thank you Testnum 698 === End of file server.cmd === Start of file valgrind698 ==110949== ==110949== Process terminating with default action of signal 4 (SIGILL) ==110949== Illegal opcode at address 0x4003082 ==110949== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==110949== by 0x4003082: main (tool_main.c:234) === End of file valgrind698 test 0699...[--config with single-letter options plus one that is cleared] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind699 ../src/curl -q --output log/2/curl699.out --include --trace-ascii log/2/trace699 --trace-config all --trace-time http://127.0.0.1:45457/699 -K log/2/cmd > log/2/stdout699 2> log/2/stderr699 699: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 699 === Start of file cmd -Lfuhej:you === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind699 ../src/curl -q --output log/2/curl699.out --include --trace-ascii log/2/trace699 --trace-config all --trace-time http://127.0.0.1:45457/699 -K log/2/cmd > log/2/stdout699 2> log/2/stderr699 === End of file commands.log === Start of file http_server.log 07:35:45.405071 ====> Client connect 07:35:45.405104 accept_connection 3 returned 4 07:35:45.405120 accept_connection 3 returned 0 07:35:45.405134 Read 93 bytes 07:35:45.405143 Process 93 bytes request 07:35:45.405157 Got request: GET /verifiedserver HTTP/1.1 07:35:45.405166 Are-we-friendly question received 07:35:45.405192 Wrote request (93 bytes) input to log/2/server.input 07:35:45.405207 Identifying ourselves as friends 07:35:45.405265 Response sent (56 bytes) and written to log/2/server.response 07:35:45.405275 special request received, no persistency 07:35:45.405284 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 699 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind699 ==111057== ==111057== Process terminating with default action of signal 4 (SIGILL) ==111057== Illegal opcode at address 0x4003082 ==111057== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111057== by 0x4003082: main (tool_main.c:234) === End of file valgrind699 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/8/server/imap_server.pid" --logfile "log/8/imap_server.log" --logdir "log/8" --portfile "log/8/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38013 (log/8/server/imap_server.port) RUN: IMAP server is PID 108619 port 38013 * pid imap => 108619 108619 test 0660...[IMAP CONNECT_ONLY option] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind660 ./libtest/libtests lib597 imap://127.0.0.1:38013/660 > log/8/stdout660 2> log/8/stderr660 660: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 660 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind660 ./libtest/libtests lib597 imap://127.0.0.1:38013/660 > log/8/stdout660 2> log/8/stderr660 === End of file commands.log === Start of file imap_server.log 07:35:44.215006 IMAP server listens on port IPv4/38013 07:35:44.215067 logged pid 108619 in log/8/server/imap_server.pid 07:35:44.215086 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:44.060804 Running IPv4 version 07:35:44.060857 Listening on port 38013 07:35:44.060883 Wrote pid 108695 to log/8/server/imap_sockfilt.pid 07:35:44.060905 Wrote port 38013 to log/8/server/imap_server.port 07:35:44.060920 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 660 === End of file server.cmd === Start of file stderr660 URL: imap://127.0.0.1:38013/660 === End of file stderr660 === Start of file valgrind660 ==110350== ==110350== Process terminating with default action of signal 4 (SIGILL) ==110350== Illegal opcode at address 0x51C2DB3 ==110350== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==110350== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==110350== by 0x51C2DB3: Curl_open (url.c:541) ==110350== by 0x513D46F: curl_easy_init (easy.c:372) ==110350== by 0x4054D15: test_lib597.part.0.lto_priv.0 (lib597.c:50) ==110350== by 0x4003443: main (first.c:167) ==110350== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x533CFA5: __tsearch (tsearch.c:337) ==110350== by 0x533CFA5: tsearch (tsearch.c:290) ==110350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110350== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110350== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== ==110350== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x533CFA5: __tsearch (tsearch.c:337) ==110350== by 0x533CFA5: tsearch (tsearch.c:290) ==110350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110350== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110350== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== ==110350== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110350== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110350== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== ==110350== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110350== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110350== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== ==110350== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==110350== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==110350== by 0x51C2D03: Curl_open (url.c:520) ==110350== by 0x513D46F: curl_easy_init (easy.c:372) ==110350== by 0x4054D15: test_lib597.part.0.lto_priv.0 (lib597.c:50) ==110350== by 0x4003443: main (first.c:167) ==110350== ==110350== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x533CFA5: __tsearch (tsearch.c:337) ==110350== by 0x533CFA5: tsearch (tsearch.c:290) ==110350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110350== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110350== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== ==110350== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==110350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110350== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110350== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110350== by 0x525A142: setlocale (setlocale.c:337) ==110350== by 0x400336E: main (first.c:123) ==110350== === End of file valgrind660 test 0704...[Attempt connect to non-listening SOCKS4 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind704 ../src/curl -q --output log/6/curl704.out --include --trace-ascii log/6/trace704 --trace-config all --trace-time --socks4 127.0.0.1:47 http://127.0.0.1:35775/704 > log/6/stdout704 2> log/6/stderr704 curl returned 132, when expecting 7 704: eCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind705 ../src/curl -q --output log/19/curl705.out --include --trace-ascii log/19/trace705 --trace-config all --trace-time --socks5 127.0.0.1:47 http://127.0.0.1:33487/705 > log/19/stdout705 2> log/19/stderr705 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind694 ./libtest/libtests lib694 http://127.0.0.1:45825/path/mine http://127.0.0.1:45825/path/6940010 > log/18/stdout694 2> log/18/stderr694 xit FAILED == Contents of files in the log/6/ dir after test 704 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind704 ../src/curl -q --output log/6/curl704.out --include --trace-ascii log/6/trace704 --trace-config all --trace-time --socks4 127.0.0.1:47 http://127.0.0.1:35775/704 > log/6/stdout704 2> log/6/stderr704 === End of file commands.log === Start of file http_server.log 07:35:45.452884 ====> Client connect 07:35:45.452921 accept_connection 3 returned 4 07:35:45.452938 accept_connection 3 returned 0 07:35:45.452952 Read 93 bytes 07:35:45.452962 Process 93 bytes request 07:35:45.452974 Got request: GET /verifiedserver HTTP/1.1 07:35:45.452983 Are-we-friendly question received 07:35:45.453008 Wrote request (93 bytes) input to log/6/server.input 07:35:45.453023 Identifying ourselves as friends 07:35:45.453079 Response sent (56 bytes) and written to log/6/server.response 07:35:45.453088 special request received, no persistency 07:35:45.453097 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 704 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind704 ==111126== ==111126== Process terminating with default action of signal 4 (SIGILL) ==111126== Illegal opcode at address 0x4003082 ==111126== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111126== by 0x4003082: main (tool_main.c:234) === End of file valgrind704 test 0705...[Attempt connect to non-listening SOCKS5 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind705 ../src/curl -q --output log/19/curl705.out --include --trace-ascii log/19/trace705 --trace-config all --trace-time --socks5 127.0.0.1:47 http://127.0.0.1:33487/705 > log/19/stdout705 2> log/19/stderr705 curl returned 132, when expecting 7 705: exit FAILED == Contents of files in the log/19/ dir after test 705 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind705 ../src/curl -q --output log/19/curl705.out --include --trace-ascii log/19/trace705 --trace-config all --trace-time --socks5 127.0.0.1:47 http://127.0.0.1:33487/705 > log/19/stdout705 2> log/19/stderr705 === End of file commands.log === Start of file http_server.log 07:35:45.527906 ====> Client connect 07:35:45.527936 accept_connection 3 returned 4 07:35:45.527949 accept_connection 3 returned 0 07:35:45.527963 Read 93 bytes 07:35:45.527972 Process 93 bytes request 07:35:45.527982 Got request: GET /verifiedserver HTTP/1.1 07:35:45.527990 Are-we-friendly question received 07:35:45.528011 Wrote request (93 bytes) input to log/19/server.input 07:35:45.528024 Identifying ourselves as friends 07:35:45.528066 Response sent (56 bytes) and written to log/19/server.response 07:35:45.528073 special request received, no persistency 07:35:45.528080 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 705 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind705 ==111223== ==111223== Process terminating with default action of signal 4 (SIGILL) ==111223== Illegal opcode at address 0x4003082 ==111223== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111223== by 0x4003082: main (tool_main.c:234) === End of file valgrind705 test 0694...[HTTP with NTLM twice, verify CURLINFO_HTTPAUTH_USED] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind694 ./libtest/libtests lib694 http://127.0.0.1:45825/path/mine http://127.0.0.1:45825/path/6940010 > log/18/stdout694 2> log/18/stderr694 694: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 694 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind694 ./libtest/libtests lib694 http://127.0.0.1:45825/path/mine http://127.0.0.1:45825/path/6940010 > log/18/stdout694 2> log/18/stderr694 === End of file commands.log === Start of file http_server.log 07:35:45.152865 ====> Client connect 07:35:45.152898 accept_connection 3 returned 4 07:35:45.152915 accept_connection 3 returned 0 07:35:45.152929 Read 93 bytes 07:35:45.152939 Process 93 bytes request 07:35:45.152952 Got request: GET /verifiedserver HTTP/1.1 07:35:45.152961 Are-we-friendly question received 07:35:45.152987 Wrote request (93 bytes) input to log/18/server.input 07:35:45.153003 Identifying ourselves as friends 07:35:45.153064 Response sent (56 bytes) and written to log/18/server.response 07:35:45.153075 special request received, no persistency 07:35:45.153084 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 694 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr694 URL: http://127.0.0.1:45825/path/mine === End of file stderr694 === Start of file valgrind694 ==110679== ==110679== Process terminating with default action of signal 4 (SIGILL) ==110679== Illegal opcode at address 0x51C2DB3 ==110679== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==110679== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==110679== by 0x51C2DB3: Curl_open (url.c:541) ==110679== by 0x513D46F: curl_easy_init (easy.c:372) ==110679== by 0x4017CE1: test_lib694.lto_priv.0 (lib694.c:40) ==110679== by 0x4003443: main (first.c:167) ==110679== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x533CFA5: __tsearch (tsearch.c:337) ==110679== by 0x533CFA5: tsearch (tsearch.c:290) ==110679== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110679== by 0x524F3F0: add_alias2 (gconv_conf.c:17CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind695 ./libtest/libtests lib695 http://127.0.0.1:37285/we/want/695 > log/12/stdout695 2> log/12/stderr695 6) ==110679== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110679== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110679== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110679== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== ==110679== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x533CFA5: __tsearch (tsearch.c:337) ==110679== by 0x533CFA5: tsearch (tsearch.c:290) ==110679== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110679== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110679== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== ==110679== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110679== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110679== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110679== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110679== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110679== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== ==110679== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110679== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110679== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== ==110679== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==110679== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==110679== by 0x51C2D03: Curl_open (url.c:520) ==110679== by 0x513D46F: curl_easy_init (easy.c:372) ==110679== by 0x4017CE1: test_lib694.lto_priv.0 (lib694.c:40) ==110679== by 0x4003443: main (first.c:167) ==110679== ==110679== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x533CFA5: __tsearch (tsearch.c:337) ==110679== by 0x533CFA5: tsearch (tsearch.c:290) ==110679== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110679== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110679== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110679== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110679== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110679== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== ==110679== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==110679== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110679== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110679== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110679== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110679== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110679== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110679== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110679== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110679== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110679== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110679== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110679== by 0x525A142: setlocale (setlocale.c:337) ==110679== by 0x400336E: main (first.c:123) ==110679== === End of file valgrind694 test 0695...[MIME parts reuse as a child part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind695 ./libtest/libtests lib695 http://127.0.0.1:37285/we/want/695 > log/12/stdout695 2> log/12/stderr695 695: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 695 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind695 ./libtest/libtests lib695 http://127.0.0.1:37285/we/want/695 > log/12/stdout695 2> log/12/stderr695 === End of file commands.log === Start of file http_server.log 07:35:45.187263 ====> Client connect 07:35:45.187308 accept_connection 3 returned 4 07:35:45.187324 accept_connection 3 returned 0 07:35:45.187339 Read 93 bytes 07:35:45.187351 Process 93 bytes request 07:35:45.187364 Got request: GET /verifiedserver HTTP/1.1 07:35:45.187374 Are-we-friendly question received 07:35:45.187401 Wrote request (93 bytes) input to log/12/server.input 07:35:45.187422 Identifying ourselves as friends 07:35:45.187480 Response sent (56 bytes) and written to log/12/server.response 07:35:45.187489 special request received, no persistency 07:35:45.187498 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 695 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr695 URL: http://127.0.0.1:37285/we/want/695 === End of file stderr695 === Start of file valgrind695 ==110771== ==110771== Process terminating with default action of signal 4 (SIGILL) ==110771== Illegal opcode at address 0x51C2DB3 ==110771== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==11CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind696 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout696 2> log/9/stderr696 0771== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==110771== by 0x51C2DB3: Curl_open (url.c:541) ==110771== by 0x513D46F: curl_easy_init (easy.c:372) ==110771== by 0x401E0CA: test_lib695.lto_priv.0 (lib695.c:53) ==110771== by 0x4003443: main (first.c:167) ==110771== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x533CFA5: __tsearch (tsearch.c:337) ==110771== by 0x533CFA5: tsearch (tsearch.c:290) ==110771== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110771== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110771== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110771== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110771== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110771== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== ==110771== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x533CFA5: __tsearch (tsearch.c:337) ==110771== by 0x533CFA5: tsearch (tsearch.c:290) ==110771== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110771== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110771== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== ==110771== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110771== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110771== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110771== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110771== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110771== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== ==110771== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110771== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110771== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== ==110771== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==110771== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==110771== by 0x51C2D03: Curl_open (url.c:520) ==110771== by 0x513D46F: curl_easy_init (easy.c:372) ==110771== by 0x401E0CA: test_lib695.lto_priv.0 (lib695.c:53) ==110771== by 0x4003443: main (first.c:167) ==110771== ==110771== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x533CFA5: __tsearch (tsearch.c:337) ==110771== by 0x533CFA5: tsearch (tsearch.c:290) ==110771== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110771== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110771== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110771== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110771== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110771== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== ==110771== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==110771== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110771== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110771== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110771== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110771== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110771== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110771== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110771== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110771== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110771== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110771== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110771== by 0x525A142: setlocale (setlocale.c:337) ==110771== by 0x400336E: main (first.c:123) ==110771== === End of file valgrind695 test 0696...[CONNECT_ONLY and doing a second curl_easy_perform] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind696 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout696 2> log/9/stderr696 696: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:46.117112562 +0000 +++ log/9/check-generated 2025-07-18 07:35:46.117112562 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 200 OK swsclose[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -[CR][LF] --foo-[LF] -HTTP/1.1 200 OK swsclose[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -[CR][LF] --foo-[LF] == Contents of files in the log/9/ dir after test 696 === Start of file check-expected HTTP/1.1 200 OK swsclose[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] [CR][LF] -foo-[LF] HTTP/1.1 200 OK swsclose[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] [CR][LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind696 ./libtest/libtests lib556 http://127.0.0.1:34999 > log/9/stdout696 2> log/9/stderr696 === End of file commands.log === Start of file http_server.log 07:35:45.211303 ====> Client connect 07:35:45.211338 accept_connection 3 returned 4 07:35:45.211355 accept_connection 3 returned 0 07:35:45.211369 Read 93 bytes 07:35:45.211379 Process 93 bytes request 07:35:45.211391 Got request: GET /verifiedserver HTTP/1.1 07:35:45.211400 Are-we-friendly question received 07:35:45.211470 Wrote request (93 bytes) input to log/9/server.input 07:35:45.211488 Identifying ourselves as friends 07:35:45.211544 Response sent (56 bytes) and written to log/9/server.response 07:35:45.211555 special request received, no persistency 07:35:45.211564 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 696 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr696 URL: http://127.0.0.1:34999 === End of file stderr696 === Start of file valgrind696 ==110845== ==110845== Process terminating with default action of signal 4 (SIGILL) ==110845== Illegal opcode at address 0x51C2DB3 ==110845== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==110845== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==110845== by 0x51C2DB3: Curl_open (url.c:541) ==110845== by 0x513D46F: curl_easy_init (easy.c:372) ==110845== by 0x400FF20: test_lib556.lto_priv.0 (lib556.c:39) ==110845== by 0x4003443: main (first.c:167) ==110845== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x533CFA5: __tsearch (tsearch.c:337) ==110845== by 0x533CFA5: tsearch (tsearch.c:290) ==110845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110845== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110845== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== ==110845== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x533CFA5: __tsearch (tsearch.c:337) ==110845== by 0x533CFA5: tsearch (tsearch.c:290) ==110845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110845== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110845== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== ==110845== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110845== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==110845== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== ==110845== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110845== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==110845== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== ==110845== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==110845== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==110845== by 0x51C2D03: Curl_open (url.c:520) ==110845== by 0x513D46F: curl_easy_init (easy.c:372) ==110845== by 0x400FF20: test_lib556.lto_priv.0 (lib556.c:39) ==110845== by 0x4003443: main (first.c:167) ==110845== ==110845== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x533CFA5: __tsearch (tsearch.c:337) ==110845== by 0x533CFA5: tsearch (tsearch.c:290) ==110845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==110845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110845== by 0xCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind718 ../src/curl -q --output log/8/curl718.out --include --trace-ascii log/8/trace718 --trace-config all --trace-time http://test.remote.haxx.se.718:8990/path/7180002 --proxy http://127.0.0.1:45261 --proxytunnel > log/8/stdout718 2> log/8/stderr718 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind722 ../src/curl -q --output log/12/curl722.out --include --trace-ascii log/12/trace722 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:37285 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout722 2> log/12/stderr722 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind723 ../src/curl -q --output log/9/curl723.out --include --trace-ascii log/9/trace723 --trace-config all --trace-time --ipfs-gateway http://nonexisting,local:8080 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout723 2> log/9/stderr723 524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110845== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== ==110845== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==110845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==110845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==110845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==110845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==110845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==110845== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==110845== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==110845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==110845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==110845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==110845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==110845== by 0x525A142: setlocale (setlocale.c:337) ==110845== by 0x400336E: main (first.c:123) ==110845== === End of file valgrind696 test 0718...[HTTP proxy CONNECT (no auth) with proxy returning 407 and closing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind718 ../src/curl -q --output log/8/curl718.out --include --trace-ascii log/8/trace718 --trace-config all --trace-time http://test.remote.haxx.se.718:8990/path/7180002 --proxy http://127.0.0.1:45261 --proxytunnel > log/8/stdout718 2> log/8/stderr718 718: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 718 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind718 ../src/curl -q --output log/8/curl718.out --include --trace-ascii log/8/trace718 --trace-config all --trace-time http://test.remote.haxx.se.718:8990/path/7180002 --proxy http://127.0.0.1:45261 --proxytunnel > log/8/stdout718 2> log/8/stderr718 === End of file commands.log === Start of file http_server.log 07:35:45.895749 ====> Client connect 07:35:45.895776 accept_connection 3 returned 4 07:35:45.895787 accept_connection 3 returned 0 07:35:45.895797 Read 93 bytes 07:35:45.895804 Process 93 bytes request 07:35:45.895813 Got request: GET /verifiedserver HTTP/1.1 07:35:45.895820 Are-we-friendly question received 07:35:45.895836 Wrote request (93 bytes) input to log/8/server.input 07:35:45.895848 Identifying ourselves as friends 07:35:45.895883 Response sent (56 bytes) and written to log/8/server.response 07:35:45.895890 special request received, no persistency 07:35:45.895896 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 718 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind718 ==111505== ==111505== Process terminating with default action of signal 4 (SIGILL) ==111505== Illegal opcode at address 0x4003082 ==111505== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111505== by 0x4003082: main (tool_main.c:234) === End of file valgrind718 test 0722...[IPFS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind722 ../src/curl -q --output log/12/curl722.out --include --trace-ascii log/12/trace722 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:37285 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout722 2> log/12/stderr722 722: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 722 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind722 ../src/curl -q --output log/12/curl722.out --include --trace-ascii log/12/trace722 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:37285 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout722 2> log/12/stderr722 === End of file commands.log === Start of file http_server.log 07:35:45.959791 ====> Client connect 07:35:45.959813 accept_connection 3 returned 4 07:35:45.959824 accept_connection 3 returned 0 07:35:45.959834 Read 93 bytes 07:35:45.959841 Process 93 bytes request 07:35:45.959850 Got request: GET /verifiedserver HTTP/1.1 07:35:45.959856 Are-we-friendly question received 07:35:45.959874 Wrote request (93 bytes) input to log/12/server.input 07:35:45.959893 Identifying ourselves as friends 07:35:45.959936 Response sent (56 bytes) and written to log/12/server.response 07:35:45.959944 special request received, no persistency 07:35:45.959952 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 722 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind722 ==111601== ==111601== Process terminating with default action of signal 4 (SIGILL) ==111601== Illegal opcode at address 0x4003082 ==111601== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111601== by 0x4003082: main (tool_main.c:234) === End of file valgrind722 test 0723...[IPFS with malformed gateway URL (bad function argument error)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind723 ../src/curl -q --output log/9/curl723.out --include --trace-ascii log/9/trace723 --trace-config all --trace-time --ipfs-gateway http://nonexisting,local:8080 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout723 2> log/9/stderr723 curl returned 132, when expecting 43 723: exit FAILED == Contents of files in the log/9/ dir after test 723 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind723 ../src/curl -q --output log/9/curl723.out --include --trace-ascii log/9/trace723 --trace-config all --trace-time --ipfs-gatewCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind677 ./libtest/libtests lib677 imap://127.0.0.1:37251/677 > log/5/stdout677 2> log/5/stderr677 ay http://nonexisting,local:8080 ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout723 2> log/9/stderr723 === End of file commands.log === Start of file http_server.log 07:35:45.987747 ====> Client connect 07:35:45.987767 accept_connection 3 returned 4 07:35:45.987779 accept_connection 3 returned 0 07:35:45.987788 Read 93 bytes 07:35:45.987794 Process 93 bytes request 07:35:45.987803 Got request: GET /verifiedserver HTTP/1.1 07:35:45.987809 Are-we-friendly question received 07:35:45.987825 Wrote request (93 bytes) input to log/9/server.input 07:35:45.987836 Identifying ourselves as friends 07:35:45.987871 Response sent (56 bytes) and written to log/9/server.response 07:35:45.987877 special request received, no persistency 07:35:45.987883 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 723 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind723 ==111666== ==111666== Process terminating with default action of signal 4 (SIGILL) ==111666== Illegal opcode at address 0x4003082 ==111666== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111666== by 0x4003082: main (tool_main.c:234) === End of file valgrind723 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/5/server/imap_server.pid" --logfile "log/5/imap_server.log" --logdir "log/5" --portfile "log/5/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37251 (log/5/server/imap_server.port) RUN: IMAP server is PID 109769 port 37251 * pid imap => 109769 109769 test 0677...[IMAP with CONNECT_ONLY, custom command then exit] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind677 ./libtest/libtests lib677 imap://127.0.0.1:37251/677 > log/5/stdout677 2> log/5/stderr677 677: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 677 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind677 ./libtest/libtests lib677 imap://127.0.0.1:37251/677 > log/5/stdout677 2> log/5/stderr677 === End of file commands.log === Start of file imap_server.log 07:35:44.944736 IMAP server listens on port IPv4/37251 07:35:44.944825 logged pid 109769 in log/5/server/imap_server.pid 07:35:44.944853 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:44.790378 Running IPv4 version 07:35:44.790433 Listening on port 37251 07:35:44.790469 Wrote pid 109799 to log/5/server/imap_sockfilt.pid 07:35:44.790496 Wrote port 37251 to log/5/server/imap_server.port 07:35:44.790630 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 677 === End of file server.cmd === Start of file stderr677 URL: imap://127.0.0.1:37251/677 === End of file stderr677 === Start of file valgrind677 ==111422== ==111422== Process terminating with default action of signal 4 (SIGILL) ==111422== Illegal opcode at address 0x518AA97 ==111422== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==111422== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==111422== by 0x518AA97: Curl_multi_handle (multi.c:236) ==111422== by 0x401F6EF: test_lib677.lto_priv.0 (lib677.c:43) ==111422== by 0x4003443: main (first.c:167) ==111422== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x533CFA5: __tsearch (tsearch.c:337) ==111422== by 0x533CFA5: tsearch (tsearch.c:290) ==111422== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111422== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111422== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111422== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111422== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==111422== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by 0x400336E: main (first.c:123) ==111422== ==111422== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x533CFA5: __tsearch (tsearch.c:337) ==111422== by 0x533CFA5: tsearch (tsearch.c:290) ==111422== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111422== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==111422== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by 0x400336E: main (first.c:123) ==111422== ==111422== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==111422== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==111422== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==111422== by 0x401F6EF: test_lib677.lto_priv.0 (lib677.c:43) ==111422== by 0x4003443: main (first.c:167) ==111422== ==111422== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111422== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111422== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111422== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111422== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==111422== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by 0x400336E: main (first.c:123) ==111422== ==111422== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111422== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==111422== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind689 ./libtest/libtests lib567 rtsp://127.0.0.1:36085/689 > log/24/stdout689 2> log/24/stderr689 0x400336E: main (first.c:123) ==111422== ==111422== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x533CFA5: __tsearch (tsearch.c:337) ==111422== by 0x533CFA5: tsearch (tsearch.c:290) ==111422== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111422== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111422== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111422== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111422== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==111422== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by 0x400336E: main (first.c:123) ==111422== ==111422== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==111422== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111422== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111422== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111422== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111422== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111422== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==111422== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==111422== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111422== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111422== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111422== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111422== by 0x525A142: setlocale (setlocale.c:337) ==111422== by 0x400336E: main (first.c:123) ==111422== === End of file valgrind677 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/24/server/rtsp_server.pid" --portfile "log/24/server/rtsp_server.port" --logfile "log/24/rtsp_server.log" --logdir "log/24" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 110276 port 36085 * pid rtsp => 110276 110276 test 0689...[fuzzing crash issue #12701] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind689 ./libtest/libtests lib567 rtsp://127.0.0.1:36085/689 > log/24/stdout689 2> log/24/stderr689 689: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 689 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind689 ./libtest/libtests lib567 rtsp://127.0.0.1:36085/689 > log/24/stdout689 2> log/24/stderr689 === End of file commands.log === Start of file rtsp_server.log 07:35:45.031471 Running IPv4 version on port 36085 07:35:45.031557 Wrote pid 110276 to log/24/server/rtsp_server.pid 07:35:45.031588 Wrote port 36085 to log/24/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 689 === End of file server.cmd === Start of file stderr689 URL: rtsp://127.0.0.1:36085/689 === End of file stderr689 === Start of file valgrind689 ==111714== ==111714== Process terminating with default action of signal 4 (SIGILL) ==111714== Illegal opcode at address 0x51C2DB3 ==111714== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==111714== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==111714== by 0x51C2DB3: Curl_open (url.c:541) ==111714== by 0x513D46F: curl_easy_init (easy.c:372) ==111714== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==111714== by 0x4003443: main (first.c:167) ==111714== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x533CFA5: __tsearch (tsearch.c:337) ==111714== by 0x533CFA5: tsearch (tsearch.c:290) ==111714== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111714== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111714== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111714== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111714== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==111714== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== ==111714== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x533CFA5: __tsearch (tsearch.c:337) ==111714== by 0x533CFA5: tsearch (tsearch.c:290) ==111714== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111714== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==111714== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== ==111714== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111714== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111714== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111714== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111714== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==111714== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== ==111714== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111714== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==111714== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== ==111714== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==111714== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==111714== by 0x51C2D03: Curl_open (url.c:520) ==111714== by 0x513D46F: curl_easy_init (easy.c:372) ==111714== by 0x4015E4A: test_lib567.lto_priv.0 (lib567.c:42) ==111714== by 0x4003443: main (first.c:167) ==111714== ==111714== 11,664 bytes in 4CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind726 ../src/curl -q --output log/9/curl726.out --include --trace-ascii log/9/trace726 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout726 2> log/9/stderr726 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind703 ../src/curl -q --output log/11/curl703.out --include --trace-ascii log/11/trace703 --trace-config all --trace-time --socks5 127.0.0.1:46377 http://127.0.0.1:47 > log/11/stdout703 2> log/11/stderr703 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind727 ../src/curl -q --output log/5/curl727.out --include --trace-ascii log/5/trace727 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46675 ipns://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout727 2> log/5/stderr727 86 blocks are possibly lost in loss record 651 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x533CFA5: __tsearch (tsearch.c:337) ==111714== by 0x533CFA5: tsearch (tsearch.c:290) ==111714== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==111714== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111714== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111714== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111714== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==111714== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== ==111714== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==111714== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==111714== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==111714== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==111714== by 0x524F3F0: add_alias (gconv_conf.c:178) ==111714== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==111714== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==111714== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==111714== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==111714== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==111714== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==111714== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==111714== by 0x525A142: setlocale (setlocale.c:337) ==111714== by 0x400336E: main (first.c:123) ==111714== === End of file valgrind689 setenv HOME = /startdir/src/build-curl/tests test 0726...[IPFS with no gateway URL (no environment or home file either)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind726 ../src/curl -q --output log/9/curl726.out --include --trace-ascii log/9/trace726 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout726 2> log/9/stderr726 curl returned 132, when expecting 37 726: exit FAILED == Contents of files in the log/9/ dir after test 726 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind726 ../src/curl -q --output log/9/curl726.out --include --trace-ascii log/9/trace726 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/9/stdout726 2> log/9/stderr726 === End of file commands.log === Start of file http_server.log 07:35:46.335512 ====> Client connect 07:35:46.335535 accept_connection 3 returned 4 07:35:46.335548 accept_connection 3 returned 0 07:35:46.335558 Read 93 bytes 07:35:46.335565 Process 93 bytes request 07:35:46.335574 Got request: GET /verifiedserver HTTP/1.1 07:35:46.335580 Are-we-friendly question received 07:35:46.335596 Wrote request (93 bytes) input to log/9/server.input 07:35:46.335612 Identifying ourselves as friends 07:35:46.335660 Response sent (56 bytes) and written to log/9/server.response 07:35:46.335666 special request received, no persistency 07:35:46.335672 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 726 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind726 ==111909== ==111909== Process terminating with default action of signal 4 (SIGILL) ==111909== Illegal opcode at address 0x4003082 ==111909== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111909== by 0x4003082: main (tool_main.c:234) === End of file valgrind726 startnew: ./server/servers socksd --port 0 --pidfile log/11/server/socks_server.pid --portfile log/11/server/socks_server.port --reqfile log/11/socksd-request.log --logfile log/11/socks_server.log --backend 127.0.0.1 --config log/11/server.cmd RUN: SOCKS server is now running PID 111036 * pid socks => 111036 111036 test 0703...[Attempt connect to non-listening HTTP server via SOCKS5 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind703 ../src/curl -q --output log/11/curl703.out --include --trace-ascii log/11/trace703 --trace-config all --trace-time --socks5 127.0.0.1:46377 http://127.0.0.1:47 > log/11/stdout703 2> log/11/stderr703 curl returned 132, when expecting 97 703: exit FAILED == Contents of files in the log/11/ dir after test 703 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind703 ../src/curl -q --output log/11/curl703.out --include --trace-ascii log/11/trace703 --trace-config all --trace-time --socks5 127.0.0.1:46377 http://127.0.0.1:47 > log/11/stdout703 2> log/11/stderr703 === End of file commands.log === Start of file server.cmd response 1 Testnum 703 === End of file server.cmd === Start of file socks_server.log 07:35:45.402514 Running IPv4 version 07:35:45.402583 Listening on port 46377 07:35:45.402712 Wrote pid 111036 to log/11/server/socks_server.pid 07:35:45.402742 Wrote port 46377 to log/11/server/socks_server.port === End of file socks_server.log === Start of file valgrind703 ==112005== ==112005== Process terminating with default action of signal 4 (SIGILL) ==112005== Illegal opcode at address 0x4003082 ==112005== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112005== by 0x4003082: main (tool_main.c:234) === End of file valgrind703 test 0727...[IPNS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind727 ../src/curl -q --output log/5/curl727.out --include --trace-ascii log/5/trace727 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46675 ipns://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout727 2> log/5/stderr727 727: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 727 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind727 ../src/curl -q --output log/5/curl727.out --include --trace-ascii log/5/trace727 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46675 ipns://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout727 2> log/5/stderr727 === End of file commands.log === Start of file http_server.log 07:35:46.383443 ====> Client connect 07:35:46.383463 accept_connection 3 returned 4 07:35:46.383474 accept_connection 3 returned 0 07:35:46.383483 Read 93 bytes 07:35:46.383490 Process 93 bytes requestCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind702 ../src/curl -q --output log/16/curl702.out --include --trace-ascii log/16/trace702 --trace-config all --trace-time --socks4 127.0.0.1:33279 http://127.0.0.1:47 > log/16/stdout702 2> log/16/stderr702 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind700 ../src/curl -q --output log/23/curl700.out --include --trace-ascii log/23/trace700 --trace-config all --trace-time --socks4 127.0.0.1:40037 http://127.0.0.1:45701/700 > log/23/stdout700 2> log/23/stderr700 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind701 ../src/curl -q --output log/10/curl701.out --include --trace-ascii log/10/trace701 --trace-config all --trace-time --socks5 127.0.0.1:35371 http://127.0.0.1:34851/701 > log/10/stdout701 2> log/10/stderr701 07:35:46.383497 Got request: GET /verifiedserver HTTP/1.1 07:35:46.383503 Are-we-friendly question received 07:35:46.383518 Wrote request (93 bytes) input to log/5/server.input 07:35:46.383527 Identifying ourselves as friends 07:35:46.383560 Response sent (56 bytes) and written to log/5/server.response 07:35:46.383566 special request received, no persistency 07:35:46.383571 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 727 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind727 ==111977== ==111977== Process terminating with default action of signal 4 (SIGILL) ==111977== Illegal opcode at address 0x4003082 ==111977== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111977== by 0x4003082: main (tool_main.c:234) === End of file valgrind727 startnew: ./server/servers socksd --port 0 --pidfile log/16/server/socks_server.pid --portfile log/16/server/socks_server.port --reqfile log/16/socksd-request.log --logfile log/16/socks_server.log --backend 127.0.0.1 --config log/16/server.cmd RUN: SOCKS server is now running PID 111035 * pid socks => 111035 111035 test 0702...[Attempt connect to non-listening HTTP server via SOCKS4 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind702 ../src/curl -q --output log/16/curl702.out --include --trace-ascii log/16/trace702 --trace-config all --trace-time --socks4 127.0.0.1:33279 http://127.0.0.1:47 > log/16/stdout702 2> log/16/stderr702 curl returned 132, when expecting 97 702: exit FAILED == Contents of files in the log/16/ dir after test 702 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind702 ../src/curl -q --output log/16/curl702.out --include --trace-ascii log/16/trace702 --trace-config all --trace-time --socks4 127.0.0.1:33279 http://127.0.0.1:47 > log/16/stdout702 2> log/16/stderr702 === End of file commands.log === Start of file server.cmd response 91 Testnum 702 === End of file server.cmd === Start of file socks_server.log 07:35:45.402440 Running IPv4 version 07:35:45.402504 Listening on port 33279 07:35:45.402545 Wrote pid 111035 to log/16/server/socks_server.pid 07:35:45.402579 Wrote port 33279 to log/16/server/socks_server.port === End of file socks_server.log === Start of file valgrind702 ==112006== ==112006== Process terminating with default action of signal 4 (SIGILL) ==112006== Illegal opcode at address 0x4003082 ==112006== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112006== by 0x4003082: main (tool_main.c:234) === End of file valgrind702 startnew: ./server/servers socksd --port 0 --pidfile log/23/server/socks_server.pid --portfile log/23/server/socks_server.port --reqfile log/23/socksd-request.log --logfile log/23/socks_server.log --backend 127.0.0.1 --config log/23/server.cmd RUN: SOCKS server is now running PID 111051 * pid socks => 111051 111051 test 0700...[HTTP GET via SOCKS4 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind700 ../src/curl -q --output log/23/curl700.out --include --trace-ascii log/23/trace700 --trace-config all --trace-time --socks4 127.0.0.1:40037 http://127.0.0.1:45701/700 > log/23/stdout700 2> log/23/stderr700 700: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 700 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind700 ../src/curl -q --output log/23/curl700.out --include --trace-ascii log/23/trace700 --trace-config all --trace-time --socks4 127.0.0.1:40037 http://127.0.0.1:45701/700 > log/23/stdout700 2> log/23/stderr700 === End of file commands.log === Start of file http_server.log 07:35:45.406626 ====> Client connect 07:35:45.406655 accept_connection 3 returned 4 07:35:45.406671 accept_connection 3 returned 0 07:35:45.406684 Read 93 bytes 07:35:45.406694 Process 93 bytes request 07:35:45.406704 Got request: GET /verifiedserver HTTP/1.1 07:35:45.406714 Are-we-friendly question received 07:35:45.406737 Wrote request (93 bytes) input to log/23/server.input 07:35:45.406752 Identifying ourselves as friends 07:35:45.406802 Response sent (56 bytes) and written to log/23/server.response 07:35:45.406811 special request received, no persistency 07:35:45.406819 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 700 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file socks_server.log 07:35:45.412804 Running IPv4 version 07:35:45.412886 Listening on port 40037 07:35:45.412924 Wrote pid 111051 to log/23/server/socks_server.pid 07:35:45.412951 Wrote port 40037 to log/23/server/socks_server.port === End of file socks_server.log === Start of file valgrind700 ==112068== ==112068== Process terminating with default action of signal 4 (SIGILL) ==112068== Illegal opcode at address 0x4003082 ==112068== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112068== by 0x4003082: main (tool_main.c:234) === End of file valgrind700 startnew: ./server/servers socksd --port 0 --pidfile log/10/server/socks_server.pid --portfile log/10/server/socks_server.port --reqfile log/10/socksd-request.log --logfile log/10/socks_server.log --backend 127.0.0.1 --config log/10/server.cmd RUN: SOCKS server is now running PID 111058 * pid socks => 111058 111058 test 0701...[HTTP GET via SOCKS5 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind701 ../src/curl -q --output log/10/curl701.out --include --trace-ascii log/10/trace701 --trace-config all --trace-time --socks5 127.0.0.1:35371 http://127.0.0.1:34851/701 > log/10/stdout701 2> log/10/stderr701 701: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 701 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind701 ../src/curl -q --output log/10/curl701.out --include --trace-ascii log/10/trace701 --trace-config all --trace-time --socks5 127.0.0.1:35371 http://127.0.0.1:34851/701 > log/10/stdout701 2> log/10/stderr701 === EnCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind708 ../src/curl -q --output log/1/curl708.out --include --trace-ascii log/1/trace708 --trace-config all --trace-time http://127.0.0.1:38941/708 > log/1/stdout708 2> log/1/stderr708 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind707 ../src/curl -q --output log/14/curl707.out --include --trace-ascii log/14/trace707 --trace-config all --trace-time --socks5 127.0.0.1:33377 ftp://127.0.0.1:41711/ > log/14/stdout707 2> log/14/stderr707 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind709 ../src/curl -q --output log/21/curl709.out --include --trace-ascii log/21/trace709 --trace-config all --trace-time http://127.0.0.1:41087/709 > log/21/stdout709 2> log/21/stderr709 d of file commands.log === Start of file http_server.log 07:35:45.418046 ====> Client connect 07:35:45.418081 accept_connection 3 returned 4 07:35:45.418099 accept_connection 3 returned 0 07:35:45.418113 Read 93 bytes 07:35:45.418124 Process 93 bytes request 07:35:45.418138 Got request: GET /verifiedserver HTTP/1.1 07:35:45.418148 Are-we-friendly question received 07:35:45.418177 Wrote request (93 bytes) input to log/10/server.input 07:35:45.418194 Identifying ourselves as friends 07:35:45.418256 Response sent (56 bytes) and written to log/10/server.response 07:35:45.418267 special request received, no persistency 07:35:45.418276 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 701 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file socks_server.log 07:35:45.424027 Running IPv4 version 07:35:45.424095 Listening on port 35371 07:35:45.424132 Wrote pid 111058 to log/10/server/socks_server.pid 07:35:45.424162 Wrote port 35371 to log/10/server/socks_server.port === End of file socks_server.log === Start of file valgrind701 ==112138== ==112138== Process terminating with default action of signal 4 (SIGILL) ==112138== Illegal opcode at address 0x4003082 ==112138== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112138== by 0x4003082: main (tool_main.c:234) === End of file valgrind701 startnew: ./server/servers socksd --port 0 --pidfile log/1/server/socks_server.pid --portfile log/1/server/socks_server.port --reqfile log/1/socksd-request.log --logfile log/1/socks_server.log --backend 127.0.0.1 --config log/1/server.cmd RUN: SOCKS server is now running PID 111284 * pid socks => 111284 111284 setenv all_proxy = socks4://127.0.0.1:40791 test 0708...[HTTP GET via SOCKS4 proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind708 ../src/curl -q --output log/1/curl708.out --include --trace-ascii log/1/trace708 --trace-config all --trace-time http://127.0.0.1:38941/708 > log/1/stdout708 2> log/1/stderr708 708: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 708 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind708 ../src/curl -q --output log/1/curl708.out --include --trace-ascii log/1/trace708 --trace-config all --trace-time http://127.0.0.1:38941/708 > log/1/stdout708 2> log/1/stderr708 === End of file commands.log === Start of file http_server.log 07:35:45.565824 ====> Client connect 07:35:45.565860 accept_connection 3 returned 4 07:35:45.565877 accept_connection 3 returned 0 07:35:45.565893 Read 93 bytes 07:35:45.565902 Process 93 bytes request 07:35:45.565916 Got request: GET /verifiedserver HTTP/1.1 07:35:45.565925 Are-we-friendly question received 07:35:45.565947 Wrote request (93 bytes) input to log/1/server.input 07:35:45.565971 Identifying ourselves as friends 07:35:45.566041 Response sent (56 bytes) and written to log/1/server.response 07:35:45.566051 special request received, no persistency 07:35:45.566059 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 708 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file socks_server.log 07:35:45.571662 Running IPv4 version 07:35:45.571713 Listening on port 40791 07:35:45.571747 Wrote pid 111284 to log/1/server/socks_server.pid 07:35:45.571781 Wrote port 40791 to log/1/server/socks_server.port === End of file socks_server.log === Start of file valgrind708 ==112229== ==112229== Process terminating with default action of signal 4 (SIGILL) ==112229== Illegal opcode at address 0x4003082 ==112229== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112229== by 0x4003082: main (tool_main.c:234) === End of file valgrind708 startnew: ./server/servers socksd --port 0 --pidfile log/14/server/socks_server.pid --portfile log/14/server/socks_server.port --reqfile log/14/socksd-request.log --logfile log/14/socks_server.log --backend 127.0.0.1 --config log/14/server.cmd RUN: SOCKS server is now running PID 111324 * pid socks => 111324 111324 test 0707...[FTP dir list PASV via SOCKS5] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind707 ../src/curl -q --output log/14/curl707.out --include --trace-ascii log/14/trace707 --trace-config all --trace-time --socks5 127.0.0.1:33377 ftp://127.0.0.1:41711/ > log/14/stdout707 2> log/14/stderr707 707: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 707 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind707 ../src/curl -q --output log/14/curl707.out --include --trace-ascii log/14/trace707 --trace-config all --trace-time --socks5 127.0.0.1:33377 ftp://127.0.0.1:41711/ > log/14/stdout707 2> log/14/stderr707 === End of file commands.log === Start of file ftp_server.log 07:35:45.696755 ====> Client connect 07:35:45.696909 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.697359 < "USER anonymous" 07:35:45.697394 > "331 We are happy you popped in![CR][LF]" 07:35:45.697566 < "PASS ftp@example.com" 07:35:45.697587 > "230 Welcome you silly person[CR][LF]" 07:35:45.697713 < "PWD" 07:35:45.697739 > "257 "/" is current directory[CR][LF]" 07:35:45.697949 < "EPSV" 07:35:45.697984 ====> Passive DATA channel requested by client 07:35:45.697997 DATA sockfilt for passive data channel starting... 07:35:45.699937 DATA sockfilt for passive data channel started (pid 111228) 07:35:45.700061 DATA sockfilt for passive data channel listens on port 35931 07:35:45.700099 > "229 Entering Passive Mode (|||35931|)[LF]" 07:35:45.700116 Client has been notified that DATA conn will be accepted on port 35931 07:35:45.700542 Client connects to port 35931 07:35:45.700569 ====> Client established passive DATA connection on port 35931 07:35:45.700634 < "TYPE I" 07:35:45.700660 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.700792 < "SIZE verifiedserver" 07:35:45.700828 > "213 17[CR][LF]" 07:35:45.700948 < "RETR verifiedserver" 07:35:45.700982 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.701053 =====> Closing passive DATA connection... 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind706 ../src/curl -q --output log/4/curl706.out --include --trace-ascii log/4/trace706 --trace-config all --trace-time --socks4 127.0.0.1:44657 ftp://127.0.0.1:37869/ > log/4/stdout706 2> log/4/stderr706 7:35:45.701068 Server disconnects passive DATA connection 07:35:45.701133 Server disconnected passive DATA connection 07:35:45.701173 DATA sockfilt for passive data channel quits (pid 111228) 07:35:45.701436 DATA sockfilt for passive data channel quit (pid 111228) 07:35:45.701462 =====> Closed passive DATA connection 07:35:45.701496 > "226 File transfer complete[CR][LF]" 07:35:45.743665 < "QUIT" 07:35:45.743716 > "221 bye bye baby[CR][LF]" 07:35:45.744580 MAIN sockfilt said DISC 07:35:45.744606 ====> Client disconnected 07:35:45.744687 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.542644 ====> Client connect 07:35:45.542893 Received DATA (on stdin) 07:35:45.542988 > 160 bytes data, server => client 07:35:45.543005 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.543017 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.543028 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.543136 < 16 bytes data, client => server 07:35:45.543171 'USER anonymous\r\n' 07:35:45.543384 Received DATA (on stdin) 07:35:45.543399 > 33 bytes data, server => client 07:35:45.543409 '331 We are happy you popped in!\r\n' 07:35:45.543471 < 22 bytes data, client => server 07:35:45.543483 'PASS ftp@example.com\r\n' 07:35:45.543570 Received DATA (on stdin) 07:35:45.543580 > 30 bytes data, server => client 07:35:45.543590 '230 Welcome you silly person\r\n' 07:35:45.543629 < 5 bytes data, client => server 07:35:45.543639 'PWD\r\n' 07:35:45.543727 Received DATA (on stdin) 07:35:45.543737 > 30 bytes data, server => client 07:35:45.543747 '257 "/" is current directory\r\n' 07:35:45.543797 < 6 bytes data, client => server 07:35:45.543808 'EPSV\r\n' 07:35:45.546105 Received DATA (on stdin) 07:35:45.546117 > 38 bytes data, server => client 07:35:45.546128 '229 Entering Passive Mode (|||35931|)\n' 07:35:45.546470 < 8 bytes data, client => server 07:35:45.546486 'TYPE I\r\n' 07:35:45.546646 Received DATA (on stdin) 07:35:45.546658 > 33 bytes data, server => client 07:35:45.546668 '200 I modify TYPE as you wanted\r\n' 07:35:45.546714 < 21 bytes data, client => server 07:35:45.546729 'SIZE verifiedserver\r\n' 07:35:45.546815 Received DATA (on stdin) 07:35:45.546827 > 8 bytes data, server => client 07:35:45.546837 '213 17\r\n' 07:35:45.546876 < 21 bytes data, client => server 07:35:45.546887 'RETR verifiedserver\r\n' 07:35:45.547055 Received DATA (on stdin) 07:35:45.547067 > 29 bytes data, server => client 07:35:45.547081 '150 Binary junk (17 bytes).\r\n' 07:35:45.547492 Received DATA (on stdin) 07:35:45.547509 > 28 bytes data, server => client 07:35:45.547521 '226 File transfer complete\r\n' 07:35:45.589472 < 6 bytes data, client => server 07:35:45.589506 'QUIT\r\n' 07:35:45.589706 Received DATA (on stdin) 07:35:45.589717 > 18 bytes data, server => client 07:35:45.589727 '221 bye bye baby\r\n' 07:35:45.590521 ====> Client disconnect 07:35:45.590674 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.545750 Running IPv4 version 07:35:45.545806 Listening on port 35931 07:35:45.545844 Wrote pid 111228 to log/14/server/ftp_sockdata.pid 07:35:45.545863 Received PING (on stdin) 07:35:45.545955 Received PORT (on stdin) 07:35:45.546470 ====> Client connect 07:35:45.546975 Received DATA (on stdin) 07:35:45.546988 > 17 bytes data, server => client 07:35:45.546999 'WE ROOLZ: 79837\r\n' 07:35:45.547053 Received DISC (on stdin) 07:35:45.547076 ====> Client forcibly disconnected 07:35:45.547177 Received QUIT (on stdin) 07:35:45.547195 quits 07:35:45.547260 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 707 === End of file server.cmd === Start of file socks_server.log 07:35:45.595026 Running IPv4 version 07:35:45.595085 Listening on port 33377 07:35:45.595125 Wrote pid 111324 to log/14/server/socks_server.pid 07:35:45.595155 Wrote port 33377 to log/14/server/socks_server.port === End of file socks_server.log === Start of file valgrind707 ==112289== ==112289== Process terminating with default action of signal 4 (SIGILL) ==112289== Illegal opcode at address 0x4003082 ==112289== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112289== by 0x4003082: main (tool_main.c:234) === End of file valgrind707 startnew: ./server/servers socksd --port 0 --pidfile log/21/server/socks_server.pid --portfile log/21/server/socks_server.port --reqfile log/21/socksd-request.log --logfile log/21/socks_server.log --backend 127.0.0.1 --config log/21/server.cmd RUN: SOCKS server is now running PID 111319 * pid socks => 111319 111319 setenv http_proxy = socks5://127.0.0.1:45717 test 0709...[HTTP GET via SOCKS5 set in http_proxy environment variable] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind709 ../src/curl -q --output log/21/curl709.out --include --trace-ascii log/21/trace709 --trace-config all --trace-time http://127.0.0.1:41087/709 > log/21/stdout709 2> log/21/stderr709 709: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 709 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind709 ../src/curl -q --output log/21/curl709.out --include --trace-ascii log/21/trace709 --trace-config all --trace-time http://127.0.0.1:41087/709 > log/21/stdout709 2> log/21/stderr709 === End of file commands.log === Start of file http_server.log 07:35:45.580876 ====> Client connect 07:35:45.580902 accept_connection 3 returned 4 07:35:45.580915 accept_connection 3 returned 0 07:35:45.580927 Read 93 bytes 07:35:45.580935 Process 93 bytes request 07:35:45.580945 Got request: GET /verifiedserver HTTP/1.1 07:35:45.580952 Are-we-friendly question received 07:35:45.580971 Wrote request (93 bytes) input to log/21/server.input 07:35:45.580983 Identifying ourselves as friends 07:35:45.581023 Response sent (56 bytes) and written to log/21/server.response 07:35:45.581030 special request received, no persistency 07:35:45.581037 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 709 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file socks_server.log 07:35:45.586486 Running IPv4 version 07:35:45.586541 Listening on port 45717 07:35:45.586573 Wrote pid 111319 to log/21/server/socks_server.pid 07:35:45.586600 Wrote port 45717 to log/21/server/socks_server.port === End of file socks_server.log === Start of file valgrind709 ==112259== ==112259== Process terminating with default action of signal 4 (SIGILL) ==112259== Illegal opcode at address 0x4003082 ==112259== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112259== by 0x4003082: main (tool_main.c:234) === End of file valgrind709 startnew: ./server/servers socksd --port 0 --pidfile log/4/server/socks_server.pid --portfile log/4/server/socks_server.port --reqfile log/4/socksd-request.log --logfile log/4/socks_server.log --backend 127.0.0.1 --config log/4/server.cmd RUN: SOCKS server is now running PID 111327 * pid socks => 111327 111327 test 0706...[FTP dir list PASV via SOCKS4] ../libtool --mode=execute /usCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind710 ../src/curl -q --output log/7/curl710.out --include --trace-ascii log/7/trace710 --trace-config all --trace-time http://127.0.0.1:39077/710 --proxy socks5://127.0.0.1:33531 > log/7/stdout710 2> log/7/stderr710 r/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind706 ../src/curl -q --output log/4/curl706.out --include --trace-ascii log/4/trace706 --trace-config all --trace-time --socks4 127.0.0.1:44657 ftp://127.0.0.1:37869/ > log/4/stdout706 2> log/4/stderr706 706: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 706 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind706 ../src/curl -q --output log/4/curl706.out --include --trace-ascii log/4/trace706 --trace-config all --trace-time --socks4 127.0.0.1:44657 ftp://127.0.0.1:37869/ > log/4/stdout706 2> log/4/stderr706 === End of file commands.log === Start of file ftp_server.log 07:35:45.697504 ====> Client connect 07:35:45.697647 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.698004 < "USER anonymous" 07:35:45.698038 > "331 We are happy you popped in![CR][LF]" 07:35:45.698246 < "PASS ftp@example.com" 07:35:45.698294 > "230 Welcome you silly person[CR][LF]" 07:35:45.698643 < "PWD" 07:35:45.698678 > "257 "/" is current directory[CR][LF]" 07:35:45.698828 < "EPSV" 07:35:45.698854 ====> Passive DATA channel requested by client 07:35:45.698867 DATA sockfilt for passive data channel starting... 07:35:45.700817 DATA sockfilt for passive data channel started (pid 111231) 07:35:45.700940 DATA sockfilt for passive data channel listens on port 34499 07:35:45.700987 > "229 Entering Passive Mode (|||34499|)[LF]" 07:35:45.701008 Client has been notified that DATA conn will be accepted on port 34499 07:35:45.701272 Client connects to port 34499 07:35:45.701306 ====> Client established passive DATA connection on port 34499 07:35:45.701377 < "TYPE I" 07:35:45.701405 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.701552 < "SIZE verifiedserver" 07:35:45.701584 > "213 17[CR][LF]" 07:35:45.701716 < "RETR verifiedserver" 07:35:45.701746 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.701811 =====> Closing passive DATA connection... 07:35:45.701824 Server disconnects passive DATA connection 07:35:45.702022 Server disconnected passive DATA connection 07:35:45.702045 DATA sockfilt for passive data channel quits (pid 111231) 07:35:45.702313 DATA sockfilt for passive data channel quit (pid 111231) 07:35:45.702335 =====> Closed passive DATA connection 07:35:45.702358 > "226 File transfer complete[CR][LF]" 07:35:45.749445 < "QUIT" 07:35:45.749485 > "221 bye bye baby[CR][LF]" 07:35:45.750122 MAIN sockfilt said DISC 07:35:45.750177 ====> Client disconnected 07:35:45.750247 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.543395 ====> Client connect 07:35:45.543640 Received DATA (on stdin) 07:35:45.543654 > 160 bytes data, server => client 07:35:45.543665 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.543676 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.543686 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.543883 < 16 bytes data, client => server 07:35:45.543899 'USER anonymous\r\n' 07:35:45.544027 Received DATA (on stdin) 07:35:45.544042 > 33 bytes data, server => client 07:35:45.544053 '331 We are happy you popped in!\r\n' 07:35:45.544113 < 22 bytes data, client => server 07:35:45.544124 'PASS ftp@example.com\r\n' 07:35:45.544289 Received DATA (on stdin) 07:35:45.544305 > 30 bytes data, server => client 07:35:45.544316 '230 Welcome you silly person\r\n' 07:35:45.544536 < 5 bytes data, client => server 07:35:45.544553 'PWD\r\n' 07:35:45.544666 Received DATA (on stdin) 07:35:45.544678 > 30 bytes data, server => client 07:35:45.544688 '257 "/" is current directory\r\n' 07:35:45.544746 < 6 bytes data, client => server 07:35:45.544765 'EPSV\r\n' 07:35:45.547000 Received DATA (on stdin) 07:35:45.547015 > 38 bytes data, server => client 07:35:45.547027 '229 Entering Passive Mode (|||34499|)\n' 07:35:45.547196 < 8 bytes data, client => server 07:35:45.547212 'TYPE I\r\n' 07:35:45.547391 Received DATA (on stdin) 07:35:45.547403 > 33 bytes data, server => client 07:35:45.547413 '200 I modify TYPE as you wanted\r\n' 07:35:45.547460 < 21 bytes data, client => server 07:35:45.547472 'SIZE verifiedserver\r\n' 07:35:45.547568 Received DATA (on stdin) 07:35:45.547579 > 8 bytes data, server => client 07:35:45.547588 '213 17\r\n' 07:35:45.547629 < 21 bytes data, client => server 07:35:45.547640 'RETR verifiedserver\r\n' 07:35:45.547809 Received DATA (on stdin) 07:35:45.547821 > 29 bytes data, server => client 07:35:45.547831 '150 Binary junk (17 bytes).\r\n' 07:35:45.548364 Received DATA (on stdin) 07:35:45.548377 > 28 bytes data, server => client 07:35:45.548387 '226 File transfer complete\r\n' 07:35:45.595297 < 6 bytes data, client => server 07:35:45.595314 'QUIT\r\n' 07:35:45.595468 Received DATA (on stdin) 07:35:45.595476 > 18 bytes data, server => client 07:35:45.595484 '221 bye bye baby\r\n' 07:35:45.595983 ====> Client disconnect 07:35:45.596235 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.546619 Running IPv4 version 07:35:45.546675 Listening on port 34499 07:35:45.546718 Wrote pid 111231 to log/4/server/ftp_sockdata.pid 07:35:45.546738 Received PING (on stdin) 07:35:45.546837 Received PORT (on stdin) 07:35:45.547157 ====> Client connect 07:35:45.547856 Received DATA (on stdin) 07:35:45.547868 > 17 bytes data, server => client 07:35:45.547879 'WE ROOLZ: 79844\r\n' 07:35:45.547900 Received DISC (on stdin) 07:35:45.547910 ====> Client forcibly disconnected 07:35:45.548037 Received QUIT (on stdin) 07:35:45.548048 quits 07:35:45.548113 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 706 === End of file server.cmd === Start of file socks_server.log 07:35:45.599103 Running IPv4 version 07:35:45.599145 Listening on port 44657 07:35:45.599176 Wrote pid 111327 to log/4/server/socks_server.pid 07:35:45.599199 Wrote port 44657 to log/4/server/socks_server.port === End of file socks_server.log === Start of file valgrind706 ==112328== ==112328== Process terminating with default action of signal 4 (SIGILL) ==112328== Illegal opcode at address 0x4003082 ==112328== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112328== by 0x4003082: main (tool_main.c:234) === End of file valgrind706 startnew: ./server/servers socksd --port 0 --pidfile log/7/server/socks_server.pid --portfile log/7/server/socks_server.port --reqfile log/7/socksd-request.log --logfile log/7/socks_server.log --backend 127.0.0.1 --config log/7/server.cmd RUN: SOCKS server is now running PID 111325 * pid socks => 111325 111325 test 0710...[HTTP GET via SOCKS5 set with --proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind710 ../src/curl -q --output log/7/curl710.out --include --trace-ascii log/7/trace710 --trace-config all --trace-time http://127.0.0.1:39077/710 --proxy socks5://127.0.0.1:33531 > log/7/stdout710 2> log/7/stderr710 710: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 710 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind710 ../src/curl -q --output log/7/curl710.out --include --trace-ascii log/7/trace710 --trace-config all --trace-time http://127.0.0.1:39077/710 --CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind733 ../src/curl -q --output log/23/curl733.out --include --trace-ascii log/23/trace733 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:45701 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/23/stdout733 2> log/23/stderr733 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind714 ../src/curl -q --output log/17/curl714.out --include --trace-ascii log/17/trace714 --trace-config all --trace-time ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:39713 --proxytunnel --proxy http://127.0.0.1:40179 > log/17/stdout714 2> log/17/stderr714 proxy socks5://127.0.0.1:33531 > log/7/stdout710 2> log/7/stderr710 === End of file commands.log === Start of file http_server.log 07:35:45.590523 ====> Client connect 07:35:45.590548 accept_connection 3 returned 4 07:35:45.590561 accept_connection 3 returned 0 07:35:45.590572 Read 93 bytes 07:35:45.590580 Process 93 bytes request 07:35:45.590590 Got request: GET /verifiedserver HTTP/1.1 07:35:45.590597 Are-we-friendly question received 07:35:45.590618 Wrote request (93 bytes) input to log/7/server.input 07:35:45.590631 Identifying ourselves as friends 07:35:45.590672 Response sent (56 bytes) and written to log/7/server.response 07:35:45.590680 special request received, no persistency 07:35:45.590687 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 710 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file socks_server.log 07:35:45.595027 Running IPv4 version 07:35:45.595085 Listening on port 33531 07:35:45.595124 Wrote pid 111325 to log/7/server/socks_server.pid 07:35:45.595155 Wrote port 33531 to log/7/server/socks_server.port === End of file socks_server.log === Start of file valgrind710 ==112288== ==112288== Process terminating with default action of signal 4 (SIGILL) ==112288== Illegal opcode at address 0x4003082 ==112288== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112288== by 0x4003082: main (tool_main.c:234) === End of file valgrind710 test 0733...[IPFS with path and query args] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind733 ../src/curl -q --output log/23/curl733.out --include --trace-ascii log/23/trace733 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:45701 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/23/stdout733 2> log/23/stderr733 733: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 733 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind733 ../src/curl -q --output log/23/curl733.out --include --trace-ascii log/23/trace733 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:45701 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/23/stdout733 2> log/23/stderr733 === End of file commands.log === Start of file http_server.log 07:35:46.824362 ====> Client connect 07:35:46.824397 accept_connection 3 returned 4 07:35:46.824414 accept_connection 3 returned 0 07:35:46.824427 Read 93 bytes 07:35:46.824436 Process 93 bytes request 07:35:46.824448 Got request: GET /verifiedserver HTTP/1.1 07:35:46.824457 Are-we-friendly question received 07:35:46.824482 Wrote request (93 bytes) input to log/23/server.input 07:35:46.824498 Identifying ourselves as friends 07:35:46.824557 Response sent (56 bytes) and written to log/23/server.response 07:35:46.824566 special request received, no persistency 07:35:46.824575 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 733 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind733 ==112900== ==112900== Process terminating with default action of signal 4 (SIGILL) ==112900== Illegal opcode at address 0x4003082 ==112900== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112900== by 0x4003082: main (tool_main.c:234) === End of file valgrind733 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/17/server/http2_server.pid" --logfile "log/17/http2_server.log" --logdir "log/17" --portfile log/17/server/http2_server.port --config log/17/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 111419 port 40179 * pid http-proxy => 111419 111419 test 0714...[FTP fetch with --proxy set to http:// and with --connect-to] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind714 ../src/curl -q --output log/17/curl714.out --include --trace-ascii log/17/trace714 --trace-config all --trace-time ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:39713 --proxytunnel --proxy http://127.0.0.1:40179 > log/17/stdout714 2> log/17/stderr714 714: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 714 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind714 ../src/curl -q --output log/17/curl714.out --include --trace-ascii log/17/trace714 --trace-config all --trace-time ftp://ftp.example.com.714/714 --connect-to ::connect.example.com.714:39713 --proxytunnel --proxy http://127.0.0.1:40179 > log/17/stdout714 2> log/17/stderr714 === End of file commands.log === Start of file ftp_server.log 07:35:45.850465 ====> Client connect 07:35:45.850572 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.850759 < "USER anonymous" 07:35:45.850786 > "331 We are happy you popped in![CR][LF]" 07:35:45.850897 < "PASS ftp@example.com" 07:35:45.850915 > "230 Welcome you silly person[CR][LF]" 07:35:45.851014 < "PWD" 07:35:45.851033 > "257 "/" is current directory[CR][LF]" 07:35:45.851134 < "EPSV" 07:35:45.851153 ====> Passive DATA channel requested by client 07:35:45.851162 DATA sockfilt for passive data channel starting... 07:35:45.853032 DATA sockfilt for passive data channel started (pid 111398) 07:35:45.853128 DATA sockfilt for passive data channel listens on port 34879 07:35:45.853162 > "229 Entering Passive Mode (|||34879|)[LF]" 07:35:45.853175 Client has been notified that DATA conn will be accepted on port 34879 07:35:45.853368 Client connects to port 34879 07:35:45.853404 ====> Client established passive DATA connection on port 34879 07:35:45.853462 < "TYPE I" 07:35:45.853482 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.853635 < "SIZE verifiedserver" 07:35:45.853662 > "213 17[CR][LF]" 07:35:45.853777 < "RETR verifiedserver" 07:35:45.853823 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.853892 =====> Closing passive DATA connection... 07:35:45.853905 Server disconnects passive DATA connectioCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind712 ../src/curl -q --output log/3/curl712.out --include --trace-ascii log/3/trace712 --trace-config all --trace-time ftp://127.0.0.1:34613/712 --proxy socks5://127.0.0.1:45955 > log/3/stdout712 2> log/3/stderr712 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind711 ../src/curl -q --output log/13/curl711.out --include --trace-ascii log/13/trace711 --trace-config all --trace-time ftp://127.0.0.1:40375/711 > log/13/stdout711 2> log/13/stderr711 n 07:35:45.853955 Server disconnected passive DATA connection 07:35:45.853978 DATA sockfilt for passive data channel quits (pid 111398) 07:35:45.854133 DATA sockfilt for passive data channel quit (pid 111398) 07:35:45.854149 =====> Closed passive DATA connection 07:35:45.854169 > "226 File transfer complete[CR][LF]" 07:35:45.896908 < "QUIT" 07:35:45.896953 > "221 bye bye baby[CR][LF]" 07:35:45.897781 MAIN sockfilt said DISC 07:35:45.897803 ====> Client disconnected 07:35:45.897865 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.696369 ====> Client connect 07:35:45.696561 Received DATA (on stdin) 07:35:45.696571 > 160 bytes data, server => client 07:35:45.696580 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.696588 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.696595 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.696640 < 16 bytes data, client => server 07:35:45.696649 'USER anonymous\r\n' 07:35:45.696768 Received DATA (on stdin) 07:35:45.696777 > 33 bytes data, server => client 07:35:45.696784 '331 We are happy you popped in!\r\n' 07:35:45.696819 < 22 bytes data, client => server 07:35:45.696827 'PASS ftp@example.com\r\n' 07:35:45.696895 Received DATA (on stdin) 07:35:45.696903 > 30 bytes data, server => client 07:35:45.696910 '230 Welcome you silly person\r\n' 07:35:45.696941 < 5 bytes data, client => server 07:35:45.696948 'PWD\r\n' 07:35:45.697011 Received DATA (on stdin) 07:35:45.697019 > 30 bytes data, server => client 07:35:45.697027 '257 "/" is current directory\r\n' 07:35:45.697062 < 6 bytes data, client => server 07:35:45.697069 'EPSV\r\n' 07:35:45.699160 Received DATA (on stdin) 07:35:45.699171 > 38 bytes data, server => client 07:35:45.699180 '229 Entering Passive Mode (|||34879|)\n' 07:35:45.699296 < 8 bytes data, client => server 07:35:45.699315 'TYPE I\r\n' 07:35:45.699455 Received DATA (on stdin) 07:35:45.699474 > 33 bytes data, server => client 07:35:45.699496 '200 I modify TYPE as you wanted\r\n' 07:35:45.699542 < 21 bytes data, client => server 07:35:45.699554 'SIZE verifiedserver\r\n' 07:35:45.699643 Received DATA (on stdin) 07:35:45.699652 > 8 bytes data, server => client 07:35:45.699659 '213 17\r\n' 07:35:45.699696 < 21 bytes data, client => server 07:35:45.699708 'RETR verifiedserver\r\n' 07:35:45.699826 Received DATA (on stdin) 07:35:45.699835 > 29 bytes data, server => client 07:35:45.699844 '150 Binary junk (17 bytes).\r\n' 07:35:45.700150 Received DATA (on stdin) 07:35:45.700159 > 28 bytes data, server => client 07:35:45.700167 '226 File transfer complete\r\n' 07:35:45.742749 < 6 bytes data, client => server 07:35:45.742771 'QUIT\r\n' 07:35:45.742940 Received DATA (on stdin) 07:35:45.742951 > 18 bytes data, server => client 07:35:45.742961 '221 bye bye baby\r\n' 07:35:45.743722 ====> Client disconnect 07:35:45.743804 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.698872 Running IPv4 version 07:35:45.698919 Listening on port 34879 07:35:45.698951 Wrote pid 111398 to log/17/server/ftp_sockdata.pid 07:35:45.698971 Received PING (on stdin) 07:35:45.699029 Received PORT (on stdin) 07:35:45.699267 ====> Client connect 07:35:45.699830 Received DATA (on stdin) 07:35:45.699846 > 17 bytes data, server => client 07:35:45.699857 'WE ROOLZ: 79834\r\n' 07:35:45.699901 Received DISC (on stdin) 07:35:45.699912 ====> Client forcibly disconnected 07:35:45.699967 Received QUIT (on stdin) 07:35:45.699976 quits 07:35:45.700012 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http2_server.log 07:35:45.759656 Run as proxy, CONNECT to host 127.0.0.1 07:35:45.759714 Running HTTP IPv4 version on port 40179 07:35:45.759741 Wrote pid 111419 to log/17/server/http2_server.pid 07:35:45.759761 Wrote port 40179 to log/17/server/http2_server.port === End of file http2_server.log === Start of file server.cmd Testnum 714 === End of file server.cmd === Start of file valgrind714 ==112546== ==112546== Process terminating with default action of signal 4 (SIGILL) ==112546== Illegal opcode at address 0x4003082 ==112546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112546== by 0x4003082: main (tool_main.c:234) === End of file valgrind714 startnew: ./server/servers socksd --port 0 --pidfile log/3/server/socks_server.pid --portfile log/3/server/socks_server.port --reqfile log/3/socksd-request.log --logfile log/3/socks_server.log --backend 127.0.0.1 --config log/3/server.cmd RUN: SOCKS server is now running PID 111417 * pid socks => 111417 111417 test 0712...[FTP fetch with --proxy set to socks5://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind712 ../src/curl -q --output log/3/curl712.out --include --trace-ascii log/3/trace712 --trace-config all --trace-time ftp://127.0.0.1:34613/712 --proxy socks5://127.0.0.1:45955 > log/3/stdout712 2> log/3/stderr712 712: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 712 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind712 ../src/curl -q --output log/3/curl712.out --include --trace-ascii log/3/trace712 --trace-config all --trace-time ftp://127.0.0.1:34613/712 --proxy socks5://127.0.0.1:45955 > log/3/stdout712 2> log/3/stderr712 === End of file commands.log === Start of file ftp_server.log 07:35:45.844589 ====> Client connect 07:35:45.844713 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.844906 < "USER anonymous" 07:35:45.844931 > "331 We are happy you popped in![CR][LF]" 07:35:45.845090 < "PASS ftp@example.com" 07:35:45.845112 > "230 Welcome you silly person[CR][LF]" 07:35:45.845224 < "PWD" 07:35:45.845246 > "257 "/" is current directory[CR][LF]" 07:35:45.845350 < "EPSV" 07:35:45.845366 ====> Passive DATA channel requested by client 07:35:45.845375 DATA sockfilt for passive data channel starting... 07:35:45.846520 DATA sockfilt for passive data channel started (pid 111394) 07:35:45.846596 DATA sockfilt for passive data channel listens on port 42607 07:35:45.846620 > "229 Entering Passive Mode (|||42607|)[LF]" 07:35:45.846630 Client has been notified that DATA conn will be accepted on port 42607 07:35:45.846791 Client connects to port 42607 07:35:45.846811 ====> Client established passive DATA connection on port 42607 07:35:45.846854 < "TYPE I" 07:35:45.846872 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.846975 < "SIZE verifiedserver" 07:35:45.846998 > "213 17[CR][LF]" 07:35:45.847095 < "RETR verifiedserver" 07:35:45.847113 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.847170 =====> Closing passive DATA connection... 07:35:45.847181 Server disconnects passive DATA connection 07:35:45.847332 Server disconnected passive DATA connection 07:35:45.847352 DATA sockfilt for passive data channel quits (pid 111394) 07:35:45.847498 DATA sockfilt for passive data channel quit (pid 111394) 07:35:45.847514 =====> Closed passive DATA connection 07:35:45.847532 > "226 File transfer complete[CR][LF]" 07:35:45.890289 < "QUIT" 07:35:45.890330 > "221 bye bye baby[CR][LF]" 07:35:45.890417 MAIN sockfilt said DISC 07:35:45.890433 ====> Client disconnected 07:35:45.890486 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:46.690495 ====> Client connect 07:35:46.690703 Received DATA (on stdin) 07:35:46.690715 > 160 bytes data, server => client 07:35:46.690724 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:46.690731 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:46.690738 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:46.690789 < 16 bytes data, client => server 07:35:46.690798 'USER anonymous\r\n' 07:35:46.690913 Received DATA (on stdin) 07:35:46.690922 > 33 bytes data, server => client 07:35:46.690929 '331 We are happy you popped in!\r\n' 07:35:46.690993 < 22 bytes data, client => server 07:35:46.691009 'PASS ftp@example.com\r\n' 07:35:46.691093 Received DATA (on stdin) 07:35:46.691101 > 30 bytes data, server => client 07:35:46.691109 '230 Welcome you silly person\r\n' 07:35:46.691147 < 5 bytes data, client => server 07:35:46.691155 'PWD\r\n' 07:35:46.691225 Received DATA (on stdin) 07:35:46.691233 > 30 bytes data, server => client 07:35:46.691240 '257 "/" is current directory\r\n' 07:35:46.691276 < 6 bytes data, client => server 07:35:46.691283 'EPSV\r\n' 07:35:46.692612 Received DATA (on stdin) 07:35:46.692621 > 38 bytes data, server => client 07:35:46.692637 '229 Entering Passive Mode (|||42607|)\n' 07:35:46.692733 < 8 bytes data, client => server 07:35:46.692742 'TYPE I\r\n' 07:35:46.692852 Received DATA (on stdin) 07:35:46.692860 > 33 bytes data, server => client 07:35:46.692868 '200 I modify TYPE as you wanted\r\n' 07:35:46.692901 < 21 bytes data, client => server 07:35:46.692908 'SIZE verifiedserver\r\n' 07:35:46.692977 Received DATA (on stdin) 07:35:46.692985 > 8 bytes data, server => client 07:35:46.692992 '213 17\r\n' 07:35:46.693022 < 21 bytes data, client => server 07:35:46.693030 'RETR verifiedserver\r\n' 07:35:46.693161 Received DATA (on stdin) 07:35:46.693170 > 29 bytes data, server => client 07:35:46.693177 '150 Binary junk (17 bytes).\r\n' 07:35:46.693512 Received DATA (on stdin) 07:35:46.693522 > 28 bytes data, server => client 07:35:46.693529 '226 File transfer complete\r\n' 07:35:46.736097 < 6 bytes data, client => server 07:35:46.736116 'QUIT\r\n' 07:35:46.736316 Received DATA (on stdin) 07:35:46.736327 > 18 bytes data, server => client 07:35:46.736334 '221 bye bye baby\r\n' 07:35:46.736368 ====> Client disconnect 07:35:46.736465 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.692326 Running IPv4 version 07:35:45.692412 Listening on port 42607 07:35:45.692445 Wrote pid 111394 to log/3/server/ftp_sockdata.pid 07:35:45.692460 Received PING (on stdin) 07:35:45.692519 Received PORT (on stdin) 07:35:45.692713 ====> Client connect 07:35:45.693194 Received DATA (on stdin) 07:35:45.693203 > 17 bytes data, server => client 07:35:45.693211 'WE ROOLZ: 81974\r\n' 07:35:45.693227 Received DISC (on stdin) 07:35:45.693235 ====> Client forcibly disconnected 07:35:45.693338 Received QUIT (on stdin) 07:35:45.693346 quits 07:35:45.693387 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 712 === End of file server.cmd === Start of file socks_server.log 07:35:45.740002 Running IPv4 version 07:35:45.740043 Listening on port 45955 07:35:45.740067 Wrote pid 111417 to log/3/server/socks_server.pid 07:35:45.740150 Wrote port 45955 to log/3/server/socks_server.port === End of file socks_server.log === Start of file valgrind712 ==112516== ==112516== Process terminating with default action of signal 4 (SIGILL) ==112516== Illegal opcode at address 0x4003082 ==112516== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112516== by 0x4003082: main (tool_main.c:234) === End of file valgrind712 startnew: ./server/servers socksd --port 0 --pidfile log/13/server/socks_server.pid --portfile log/13/server/socks_server.port --reqfile log/13/socksd-request.log --logfile log/13/socks_server.log --backend 127.0.0.1 --config log/13/server.cmd RUN: SOCKS server is now running PID 111416 * pid socks => 111416 111416 setenv all_proxy = socks5://127.0.0.1:39791 test 0711...[FTP fetch with all_proxy set to socks5] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind711 ../src/curl -q --output log/13/curl711.out --include --trace-ascii log/13/trace711 --trace-config all --trace-time ftp://127.0.0.1:40375/711 > log/13/stdout711 2> log/13/stderr711 711: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 711 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind711 ../src/curl -q --output log/13/curl711.out --include --trace-ascii log/13/trace711 --trace-config all --trace-time ftp://127.0.0.1:40375/711 > log/13/stdout711 2> log/13/stderr711 === End of file commands.log === Start of file ftp_server.log 07:35:45.837747 ====> Client connect 07:35:45.837886 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.838108 < "USER anonymous" 07:35:45.838140 > "331 We are happy you popped in![CR][LF]" 07:35:45.838277 < "PASS ftp@example.com" 07:35:45.838298 > "230 Welcome you silly person[CR][LF]" 07:35:45.838472 < "PWD" 07:35:45.838520 > "257 "/" is current directory[CR][LF]" 07:35:45.838711 < "EPSV" 07:35:45.838736 ====> Passive DATA channel requested by client 07:35:45.838750 DATA sockfilt for passive data channel starting... 07:35:45.840240 DATA sockfilt for passive data channel started (pid 111376) 07:35:45.840336 DATA sockfilt for passive data channel listens on port 37527 07:35:45.840372 > "229 Entering Passive Mode (|||37527|)[LF]" 07:35:45.840390 Client has been notified that DATA conn will be accepted on port 37527 07:35:45.840576 Client connects to port 37527 07:35:45.840597 ====> Client established passive DATA connection on port 37527 07:35:45.840654 < "TYPE I" 07:35:45.840679 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.840843 < "SIZE verifiedserver" 07:35:45.840881 > "213 17[CR][LF]" 07:35:45.841045 < "RETR verifiedserver" 07:35:45.841078 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.841134 =====> Closing passive DATA connection... 07:35:45.841145 Server disconnects passive DATA connection 07:35:45.841205 Server disconnected passive DATA connection 07:35:45.841224 DATA sockfilt for passive data channel quits (pid 111376) 07:35:45.841396 DATA sockfilt for passive data channel quit (pid 111376) 07:35:45.841417 =====> Closed passive DATA connection 07:35:45.841436 > "226 File transfer complete[CR][LF]" 07:35:45.887015 < "QUIT" 07:35:45.887062 > "221 bye bye baby[CR][LF]" 07:35:45.887196 MAIN sockfilt said DISC 07:35:45.887241 ====> Client disconnected 07:35:45.887320 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.683641 ====> Client connect 07:35:45.683879 Received DATA (on stdin) 07:35:45.683893 > 160 bytes data, server => client 07:35:45.683904 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.683913 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.683922 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.683992 < 16 bytes data, client => server 07:35:45.684009 'USER anonymous\r\n' 07:35:45.684125 Received DATA (on stdin) 07:35:45.684136 > 33 bytes data, server => client 07:35:45.684145 '331 We are happy you popped in!\r\n' 07:35:45.684190 < 22 bytes data, client => server 07:35:45.684200 'PASS ftp@example.com\r\n' 07:35:45.684279 Received DATA (on stdin) 07:35:45.684289 > 30 bytes data, server => client 07:35:45.684298 '230 Welcome you silly person\r\n' 07:35:45.684343 < 5 bytes data, client => server 07:35:45.684352 'PWD\r\n' 07:35:45.684513 Received DATA (on stdin) 07:35:45.684530 > 30 bytes data, server => client 07:35:45.684541 '257 "/" is current directory\r\n' 07:35:45.684627 < 6 bytes data, client => server 07:35:45.684639 'EPSV\r\n' 07:35:45.686369 Received DATA (onCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind716 ../src/curl -q --output log/20/curl716.out --include --trace-ascii log/20/trace716 --trace-config all --trace-time http://hohoho.example.com:99/716 -x socks5://AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:b@127.0.0.1:46277 > log/20/stdout716 2> log/20/stderr716 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind713 ../src/curl -q --output log/15/curl713.out --include --trace-ascii log/15/trace713 --trace-config all --trace-time ftp://ftp.example.com/713 --connect-to ::127.0.0.1:46295 --proxy socks5://127.0.0.1:42875 > log/15/stdout713 2> log/15/stderr713 stdin) 07:35:45.686390 > 38 bytes data, server => client 07:35:45.686400 '229 Entering Passive Mode (|||37527|)\n' 07:35:45.686539 < 8 bytes data, client => server 07:35:45.686550 'TYPE I\r\n' 07:35:45.686664 Received DATA (on stdin) 07:35:45.686678 > 33 bytes data, server => client 07:35:45.686688 '200 I modify TYPE as you wanted\r\n' 07:35:45.686747 < 21 bytes data, client => server 07:35:45.686758 'SIZE verifiedserver\r\n' 07:35:45.686866 Received DATA (on stdin) 07:35:45.686878 > 8 bytes data, server => client 07:35:45.686885 '213 17\r\n' 07:35:45.686938 < 21 bytes data, client => server 07:35:45.686952 'RETR verifiedserver\r\n' 07:35:45.687127 Received DATA (on stdin) 07:35:45.687137 > 29 bytes data, server => client 07:35:45.687146 '150 Binary junk (17 bytes).\r\n' 07:35:45.687418 Received DATA (on stdin) 07:35:45.687427 > 28 bytes data, server => client 07:35:45.687435 '226 File transfer complete\r\n' 07:35:45.732820 < 6 bytes data, client => server 07:35:45.732846 'QUIT\r\n' 07:35:45.733053 Received DATA (on stdin) 07:35:45.733065 > 18 bytes data, server => client 07:35:45.733076 '221 bye bye baby\r\n' 07:35:45.733138 ====> Client disconnect 07:35:45.733308 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.686066 Running IPv4 version 07:35:45.686118 Listening on port 37527 07:35:45.686154 Wrote pid 111376 to log/13/server/ftp_sockdata.pid 07:35:45.686171 Received PING (on stdin) 07:35:45.686248 Received PORT (on stdin) 07:35:45.686508 ====> Client connect 07:35:45.687072 Received DATA (on stdin) 07:35:45.687089 > 17 bytes data, server => client 07:35:45.687099 'WE ROOLZ: 87629\r\n' 07:35:45.687123 Received DISC (on stdin) 07:35:45.687136 ====> Client forcibly disconnected 07:35:45.687218 Received QUIT (on stdin) 07:35:45.687233 quits 07:35:45.687276 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 711 === End of file server.cmd === Start of file socks_server.log 07:35:45.737449 Running IPv4 version 07:35:45.737494 Listening on port 39791 07:35:45.737522 Wrote pid 111416 to log/13/server/socks_server.pid 07:35:45.737543 Wrote port 39791 to log/13/server/socks_server.port === End of file socks_server.log === Start of file valgrind711 ==112510== ==112510== Process terminating with default action of signal 4 (SIGILL) ==112510== Illegal opcode at address 0x4003082 ==112510== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112510== by 0x4003082: main (tool_main.c:234) === End of file valgrind711 startnew: ./server/servers socksd --port 0 --pidfile log/20/server/socks_server.pid --portfile log/20/server/socks_server.port --reqfile log/20/socksd-request.log --logfile log/20/socks_server.log --backend 127.0.0.1 --config log/20/server.cmd RUN: SOCKS server is now running PID 111418 * pid socks => 111418 111418 test 0716...[SOCKS5 proxy with too long user name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind716 ../src/curl -q --output log/20/curl716.out --include --trace-ascii log/20/trace716 --trace-config all --trace-time http://hohoho.example.com:99/716 -x socks5://AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:b@127.0.0.1:46277 > log/20/stdout716 2> log/20/stderr716 curl returned 132, when expecting 97 716: exit FAILED == Contents of files in the log/20/ dir after test 716 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind716 ../src/curl -q --output log/20/curl716.out --include --trace-ascii log/20/trace716 --trace-config all --trace-time http://hohoho.example.com:99/716 -x socks5://AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:b@127.0.0.1:46277 > log/20/stdout716 2> log/20/stderr716 === End of file commands.log === Start of file server.cmd method 2 Testnum 716 === End of file server.cmd === Start of file socks_server.log 07:35:45.740662 Running IPv4 version 07:35:45.740711 Listening on port 46277 07:35:45.740736 Wrote pid 111418 to log/20/server/socks_server.pid 07:35:45.740757 Wrote port 46277 to log/20/server/socks_server.port === End of file socks_server.log === Start of file valgrind716 ==112519== ==112519== Process terminating with default action of signal 4 (SIGILL) ==112519== Illegal opcode at address 0x4003082 ==112519== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112519== by 0x4003082: main (tool_main.c:234) === End of file valgrind716 startnew: ./server/servers socksd --port 0 --pidfile log/15/server/socks_server.pid --portfile log/15/server/socks_server.port --reqfile log/15/socksd-request.log --logfile log/15/socks_server.log --backend 127.0.0.1 --config log/15/server.cmd RUN: SOCKS server is now running PID 111420 * pid socks => 111420 111420 test 0713...[FTP fetch with --proxy set to socks5:// and with --connect-to] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind713 ../src/curl -q --output log/15/curl713.out --include --trace-ascii log/15/trace713 --trace-config all --trace-time ftp://ftp.example.com/713 --connect-to ::127.0.0.1:46295 --proxy socks5://127.0.0.1:42875 > log/15/stdout713 2> log/15/stderr713 713: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 713 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind713 ../src/curl -q --output log/15/curl713.out --include --trace-ascii log/15/trace713 --trace-config all --trace-time ftp://ftp.example.com/713 --connect-to ::127.0.0.1:46295 --proxy socks5://127.0.0.1:42875 > log/15/stdout713 2> log/15/stderr713 === End of file commands.log === Start of file ftp_server.log 07:35:45.849718 ====> Client connect 07:35:45.849849 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.850136 < "USER anonymous" 07:35:45.850171 > "331 We are happy you popped in![CR][LF]" 07:35:45.850311 < "PASS ftp@example.com" 07:35:45.850337 > "230 Welcome you silly person[CR][LF]" 07:35:45.850467 < "PWD" 07:35:45.850489 > "257 "/" is current directory[CR][LF]" 07:35:45.850683 < "EPSV" 07:35:45.850705 ====> Passive DATA channel requested by client 07:35:45.850717 DATA sockfilt for passive data channel starting... 07:35:45.852524 DATA sockfilt for passive data channel started (pid 111397) 07:35:45.852612 DATA sockfilt for passive data channel listens on port 35705 07:35:45.852643 > "229 Entering Passive Mode (|||35705|)[LF]" 07:35:45.852656 Client has been notified that DATA conn will be accepted on port 35705 07:35:45.852818 Client connects to port 35705 07:35:45.852862 ====> Client established passive DATA connection on port 35705 07:35:45.852950 < "TYPE I" 07:35:45.852986 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.853108 < "SIZE verifiedserver" 07:35:45.853135 > "213 17[CR][LF]" 07:35:45.853268 < "RETR verifiedserver" 07:35:45.853294 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.853475 =====> Closing passive DATA connection... 07:35:45.853490 Server disconnects passive DATA conneCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind730 ../src/curl -q --output log/11/curl730.out --include --trace-ascii log/11/trace730 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:41173/foo/bar ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout730 2> log/11/stderr730 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind732 ../src/curl -q --output log/16/curl732.out --include --trace-ascii log/16/trace732 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46739 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b" > log/16/stdout732 2> log/16/stderr732 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test745.pl /startdir/src/curl/tests/.. > log/15/stdout745 2> log/15/stderr745 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind734 ../src/curl -q --output log/10/curl734.out --include --trace-ascii log/10/trace734 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:34851/some/path "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/10/stdout734 2> log/10/stderr734 ction 07:35:45.853543 Server disconnected passive DATA connection 07:35:45.853556 DATA sockfilt for passive data channel quits (pid 111397) 07:35:45.853766 DATA sockfilt for passive data channel quit (pid 111397) 07:35:45.853783 =====> Closed passive DATA connection 07:35:45.853803 > "226 File transfer complete[CR][LF]" 07:35:45.900213 < "QUIT" 07:35:45.900255 > "221 bye bye baby[CR][LF]" 07:35:45.900801 MAIN sockfilt said DISC 07:35:45.900840 ====> Client disconnected 07:35:45.900894 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.695577 ====> Client connect 07:35:45.695839 Received DATA (on stdin) 07:35:45.695852 > 160 bytes data, server => client 07:35:45.695860 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.695867 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.695874 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.695953 < 16 bytes data, client => server 07:35:45.695972 'USER anonymous\r\n' 07:35:45.696160 Received DATA (on stdin) 07:35:45.696172 > 33 bytes data, server => client 07:35:45.696182 '331 We are happy you popped in!\r\n' 07:35:45.696227 < 22 bytes data, client => server 07:35:45.696239 'PASS ftp@example.com\r\n' 07:35:45.696322 Received DATA (on stdin) 07:35:45.696334 > 30 bytes data, server => client 07:35:45.696343 '230 Welcome you silly person\r\n' 07:35:45.696386 < 5 bytes data, client => server 07:35:45.696394 'PWD\r\n' 07:35:45.696481 Received DATA (on stdin) 07:35:45.696505 > 30 bytes data, server => client 07:35:45.696520 '257 "/" is current directory\r\n' 07:35:45.696588 < 6 bytes data, client => server 07:35:45.696601 'EPSV\r\n' 07:35:45.698638 Received DATA (on stdin) 07:35:45.698647 > 38 bytes data, server => client 07:35:45.698655 '229 Entering Passive Mode (|||35705|)\n' 07:35:45.698743 < 8 bytes data, client => server 07:35:45.698753 'TYPE I\r\n' 07:35:45.698962 Received DATA (on stdin) 07:35:45.698981 > 33 bytes data, server => client 07:35:45.698990 '200 I modify TYPE as you wanted\r\n' 07:35:45.699040 < 21 bytes data, client => server 07:35:45.699049 'SIZE verifiedserver\r\n' 07:35:45.699116 Received DATA (on stdin) 07:35:45.699126 > 8 bytes data, server => client 07:35:45.699133 '213 17\r\n' 07:35:45.699189 < 21 bytes data, client => server 07:35:45.699198 'RETR verifiedserver\r\n' 07:35:45.699271 Received DATA (on stdin) 07:35:45.699279 > 29 bytes data, server => client 07:35:45.699287 '150 Binary junk (17 bytes).\r\n' 07:35:45.699784 Received DATA (on stdin) 07:35:45.699794 > 28 bytes data, server => client 07:35:45.699802 '226 File transfer complete\r\n' 07:35:45.746061 < 6 bytes data, client => server 07:35:45.746079 'QUIT\r\n' 07:35:45.746239 Received DATA (on stdin) 07:35:45.746248 > 18 bytes data, server => client 07:35:45.746255 '221 bye bye baby\r\n' 07:35:45.746730 ====> Client disconnect 07:35:45.746875 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.698375 Running IPv4 version 07:35:45.698422 Listening on port 35705 07:35:45.698450 Wrote pid 111397 to log/15/server/ftp_sockdata.pid 07:35:45.698463 Received PING (on stdin) 07:35:45.698527 Received PORT (on stdin) 07:35:45.698739 ====> Client connect 07:35:45.699394 Received DATA (on stdin) 07:35:45.699406 > 17 bytes data, server => client 07:35:45.699414 'WE ROOLZ: 79835\r\n' 07:35:45.699472 Received DISC (on stdin) 07:35:45.699481 ====> Client forcibly disconnected 07:35:45.699539 Received QUIT (on stdin) 07:35:45.699546 quits 07:35:45.699585 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 713 === End of file server.cmd === Start of file socks_server.log 07:35:45.749928 Running IPv4 version 07:35:45.749969 Listening on port 42875 07:35:45.749993 Wrote pid 111420 to log/15/server/socks_server.pid 07:35:45.750013 Wrote port 42875 to log/15/server/socks_server.port === End of file socks_server.log === Start of file valgrind713 ==112555== ==112555== Process terminating with default action of signal 4 (SIGILL) ==112555== Illegal opcode at address 0x4003082 ==112555== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112555== by 0x4003082: main (tool_main.c:234) === End of file valgrind713 test 0730...[IPFS arg gateway with path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind730 ../src/curl -q --output log/11/curl730.out --include --trace-ascii log/11/trace730 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:41173/foo/bar ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout730 2> log/11/stderr730 730: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 730 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind730 ../src/curl -q --output log/11/curl730.out --include --trace-ascii log/11/trace730 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:41173/foo/bar ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/11/stdout730 2> log/11/stderr730 === End of file commands.log === Start of file http_server.log 07:35:46.803851 ====> Client connect 07:35:46.803883 accept_connection 3 returned 4 07:35:46.803898 accept_connection 3 returned 0 07:35:46.803912 Read 93 bytes 07:35:46.803921 Process 93 bytes request 07:35:46.803933 Got request: GET /verifiedserver HTTP/1.1 07:35:46.803941 Are-we-friendly question received 07:35:46.803964 Wrote request (93 bytes) input to log/11/server.input 07:35:46.803980 Identifying ourselves as friends 07:35:46.804029 Response sent (56 bytes) and written to log/11/server.response 07:35:46.804038 special request received, no persistency 07:35:46.804046 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 730 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind730 ==112836== ==112836== Process terminating with default action of signal 4 (SIGILL) ==112836== Illegal opcode at address 0x4003082 ==112836== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112836== by 0x4003082: main (tool_main.c:234) === End of file valgrind730 test 0732...[IPFS with path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind732 ../src/curl -q --output log/16/curl732.out --include --trace-ascii log/16/trace732 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46739 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b" > log/16/stdout732 2> log/16/stderr732 732: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 732 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind732 ../src/curl -q --output log/16/curl732.out --includCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind717 ../src/curl -q --output log/2/curl717.out --include --trace-ascii log/2/trace717 --trace-config all --trace-time http://127.0.0.1:1/717 -x socks5://uz3r:p4ssworm@127.0.0.1:35217 > log/2/stdout717 2> log/2/stderr717 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind719 ../src/curl -q --output log/6/curl719.out --include --trace-ascii log/6/trace719 --trace-config all --trace-time http://[2200::33]:35775/719 --proxy socks5h://127.0.0.1:36891 > log/6/stdout719 2> log/6/stderr719 e --trace-ascii log/16/trace732 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:46739 "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b" > log/16/stdout732 2> log/16/stderr732 === End of file commands.log === Start of file http_server.log 07:35:46.812108 ====> Client connect 07:35:46.812134 accept_connection 3 returned 4 07:35:46.812147 accept_connection 3 returned 0 07:35:46.812159 Read 93 bytes 07:35:46.812166 Process 93 bytes request 07:35:46.812175 Got request: GET /verifiedserver HTTP/1.1 07:35:46.812182 Are-we-friendly question received 07:35:46.812200 Wrote request (93 bytes) input to log/16/server.input 07:35:46.812213 Identifying ourselves as friends 07:35:46.812254 Response sent (56 bytes) and written to log/16/server.response 07:35:46.812262 special request received, no persistency 07:35:46.812268 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 732 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind732 ==112849== ==112849== Process terminating with default action of signal 4 (SIGILL) ==112849== Illegal opcode at address 0x4003082 ==112849== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112849== by 0x4003082: main (tool_main.c:234) === End of file valgrind732 test 0734...[IPFS with path, query args and gateway with path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind734 ../src/curl -q --output log/10/curl734.out --include --trace-ascii log/10/trace734 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:34851/some/path "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/10/stdout734 2> log/10/stderr734 734: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 734 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind734 ../src/curl -q --output log/10/curl734.out --include --trace-ascii log/10/trace734 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:34851/some/path "ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb" > log/10/stdout734 2> log/10/stderr734 === End of file commands.log === Start of file http_server.log 07:35:46.822154 ====> Client connect 07:35:46.822191 accept_connection 3 returned 4 07:35:46.822207 accept_connection 3 returned 0 07:35:46.822223 Read 93 bytes 07:35:46.822233 Process 93 bytes request 07:35:46.822246 Got request: GET /verifiedserver HTTP/1.1 07:35:46.822254 Are-we-friendly question received 07:35:46.822290 Wrote request (93 bytes) input to log/10/server.input 07:35:46.822305 Identifying ourselves as friends 07:35:46.822375 Response sent (56 bytes) and written to log/10/server.response 07:35:46.822386 special request received, no persistency 07:35:46.822396 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 734 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind734 ==112890== ==112890== Process terminating with default action of signal 4 (SIGILL) ==112890== Illegal opcode at address 0x4003082 ==112890== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112890== by 0x4003082: main (tool_main.c:234) === End of file valgrind734 * starts no server test 0745...[Verify that typecheck-gcc and curl.h are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test745.pl /startdir/src/curl/tests/.. > log/15/stdout745 2> log/15/stderr745 valgrind SKIPPED s------e--- OK (715 out of 1707, remaining: 01:21, took 0.016s, duration: 00:58) startnew: ./server/servers socksd --port 0 --pidfile log/2/server/socks_server.pid --portfile log/2/server/socks_server.port --reqfile log/2/socksd-request.log --logfile log/2/socks_server.log --backend 127.0.0.1 --config log/2/server.cmd RUN: SOCKS server is now running PID 111472 * pid socks => 111472 111472 test 0717...[SOCKS5 proxy auth] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind717 ../src/curl -q --output log/2/curl717.out --include --trace-ascii log/2/trace717 --trace-config all --trace-time http://127.0.0.1:1/717 -x socks5://uz3r:p4ssworm@127.0.0.1:35217 > log/2/stdout717 2> log/2/stderr717 717: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 717 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind717 ../src/curl -q --output log/2/curl717.out --include --trace-ascii log/2/trace717 --trace-config all --trace-time http://127.0.0.1:1/717 -x socks5://uz3r:p4ssworm@127.0.0.1:35217 > log/2/stdout717 2> log/2/stderr717 === End of file commands.log === Start of file http_server.log 07:35:46.895644 ====> Client connect 07:35:46.895677 accept_connection 3 returned 4 07:35:46.895691 accept_connection 3 returned 0 07:35:46.895703 Read 93 bytes 07:35:46.895711 Process 93 bytes request 07:35:46.895722 Got request: GET /verifiedserver HTTP/1.1 07:35:46.895730 Are-we-friendly question received 07:35:46.895752 Wrote request (93 bytes) input to log/2/server.input 07:35:46.895766 Identifying ourselves as friends 07:35:46.895813 Response sent (56 bytes) and written to log/2/server.response 07:35:46.895821 special request received, no persistency 07:35:46.895829 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd method 2 user uz3r password p4ssworm backendport 45457 Testnum 717 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file socks_server.log 07:35:46.874267 Running IPv4 version 07:35:46.874314 Listening on port 35217 07:35:46.874340 Wrote pid 111472 to log/2/server/soCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind720 ../src/curl -q --output log/19/curl720.out --include --trace-ascii log/19/trace720 --trace-config all --trace-time http://12.34.56.78:33487/720 --proxy socks5h://127.0.0.1:41475 > log/19/stdout720 2> log/19/stderr720 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind721 ../src/curl -q --output log/18/curl721.out --include --trace-ascii log/18/trace721 --trace-config all --trace-time http://this.is.a.host.name:45825/721 --proxy socks5h://127.0.0.1:35687 > log/18/stdout721 2> log/18/stderr721 cks_server.pid 07:35:46.874361 Wrote port 35217 to log/2/server/socks_server.port === End of file socks_server.log === Start of file valgrind717 ==113100== ==113100== Process terminating with default action of signal 4 (SIGILL) ==113100== Illegal opcode at address 0x4003082 ==113100== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113100== by 0x4003082: main (tool_main.c:234) === End of file valgrind717 startnew: ./server/servers socksd --port 0 --pidfile log/6/server/socks_server.pid --portfile log/6/server/socks_server.port --reqfile log/6/socksd-request.log --logfile log/6/socks_server.log --backend 127.0.0.1 --config log/6/server.cmd RUN: SOCKS server is now running PID 111503 * pid socks => 111503 111503 test 0719...[HTTP GET with IPv6 numerical via SOCKS5h] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind719 ../src/curl -q --output log/6/curl719.out --include --trace-ascii log/6/trace719 --trace-config all --trace-time http://[2200::33]:35775/719 --proxy socks5h://127.0.0.1:36891 > log/6/stdout719 2> log/6/stderr719 719: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 719 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind719 ../src/curl -q --output log/6/curl719.out --include --trace-ascii log/6/trace719 --trace-config all --trace-time http://[2200::33]:35775/719 --proxy socks5h://127.0.0.1:36891 > log/6/stdout719 2> log/6/stderr719 === End of file commands.log === Start of file http_server.log 07:35:45.896575 ====> Client connect 07:35:45.896611 accept_connection 3 returned 4 07:35:45.896629 accept_connection 3 returned 0 07:35:45.896644 Read 93 bytes 07:35:45.896654 Process 93 bytes request 07:35:45.896666 Got request: GET /verifiedserver HTTP/1.1 07:35:45.896675 Are-we-friendly question received 07:35:45.896701 Wrote request (93 bytes) input to log/6/server.input 07:35:45.896717 Identifying ourselves as friends 07:35:45.896769 Response sent (56 bytes) and written to log/6/server.response 07:35:45.896776 special request received, no persistency 07:35:45.896782 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 719 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file socks_server.log 07:35:46.900125 Running IPv4 version 07:35:46.900169 Listening on port 36891 07:35:46.900195 Wrote pid 111503 to log/6/server/socks_server.pid 07:35:46.900221 Wrote port 36891 to log/6/server/socks_server.port === End of file socks_server.log === Start of file valgrind719 ==113103== ==113103== Process terminating with default action of signal 4 (SIGILL) ==113103== Illegal opcode at address 0x4003082 ==113103== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113103== by 0x4003082: main (tool_main.c:234) === End of file valgrind719 startnew: ./server/servers socksd --port 0 --pidfile log/19/server/socks_server.pid --portfile log/19/server/socks_server.port --reqfile log/19/socksd-request.log --logfile log/19/socks_server.log --backend 127.0.0.1 --config log/19/server.cmd RUN: SOCKS server is now running PID 111582 * pid socks => 111582 111582 test 0720...[HTTP GET with IPv4 numerical via SOCKS5h] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind720 ../src/curl -q --output log/19/curl720.out --include --trace-ascii log/19/trace720 --trace-config all --trace-time http://12.34.56.78:33487/720 --proxy socks5h://127.0.0.1:41475 > log/19/stdout720 2> log/19/stderr720 720: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 720 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind720 ../src/curl -q --output log/19/curl720.out --include --trace-ascii log/19/trace720 --trace-config all --trace-time http://12.34.56.78:33487/720 --proxy socks5h://127.0.0.1:41475 > log/19/stdout720 2> log/19/stderr720 === End of file commands.log === Start of file http_server.log 07:35:45.932590 ====> Client connect 07:35:45.932613 accept_connection 3 returned 4 07:35:45.932632 accept_connection 3 returned 0 07:35:45.932645 Read 93 bytes 07:35:45.932653 Process 93 bytes request 07:35:45.932663 Got request: GET /verifiedserver HTTP/1.1 07:35:45.932669 Are-we-friendly question received 07:35:45.932686 Wrote request (93 bytes) input to log/19/server.input 07:35:45.932698 Identifying ourselves as friends 07:35:45.932736 Response sent (56 bytes) and written to log/19/server.response 07:35:45.932743 special request received, no persistency 07:35:45.932749 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 720 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file socks_server.log 07:35:46.936782 Running IPv4 version 07:35:46.936822 Listening on port 41475 07:35:46.936847 Wrote pid 111582 to log/19/server/socks_server.pid 07:35:46.936867 Wrote port 41475 to log/19/server/socks_server.port === End of file socks_server.log === Start of file valgrind720 ==113189== ==113189== Process terminating with default action of signal 4 (SIGILL) ==113189== Illegal opcode at address 0x4003082 ==113189== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113189== by 0x4003082: main (tool_main.c:234) === End of file valgrind720 startnew: ./server/servers socksd --port 0 --pidfile log/18/server/socks_server.pid --portfile log/18/server/socks_server.port --reqfile log/18/socksd-request.log --logfile log/18/socks_server.log --backend 127.0.0.1 --config log/18/server.cmd RUN: SOCKS server is now running PID 111583 * pid socks => 111583 111583 test 0721...[HTTP GET with host name using SOCKS5h] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind721 ../src/curl -q --output log/18/curl721.out --include --trace-ascii log/18/trace721 --trace-config all --trace-time http://this.is.a.host.name:45825/721 --proxy socks5h://127.0.0.1:35687 > log/18/stdout721 2> log/18/stderr721 721: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 721 === Start of fiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind736 ../src/curl -q --output log/14/curl736.out --include --trace-ascii log/14/trace736 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/14/stdout736 2> log/14/stderr736 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind737 ../src/curl -q --output log/21/curl737.out --include --trace-ascii log/21/trace737 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/21/stdout737 2> log/21/stderr737 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind738 ../src/curl -q --output log/4/curl738.out --include --trace-ascii log/4/trace738 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/4/stdout738 2> log/4/stderr738 le commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind721 ../src/curl -q --output log/18/curl721.out --include --trace-ascii log/18/trace721 --trace-config all --trace-time http://this.is.a.host.name:45825/721 --proxy socks5h://127.0.0.1:35687 > log/18/stdout721 2> log/18/stderr721 === End of file commands.log === Start of file http_server.log 07:35:45.938918 ====> Client connect 07:35:45.938939 accept_connection 3 returned 4 07:35:45.938950 accept_connection 3 returned 0 07:35:45.938959 Read 93 bytes 07:35:45.938966 Process 93 bytes request 07:35:45.938974 Got request: GET /verifiedserver HTTP/1.1 07:35:45.938980 Are-we-friendly question received 07:35:45.938996 Wrote request (93 bytes) input to log/18/server.input 07:35:45.939008 Identifying ourselves as friends 07:35:45.939045 Response sent (56 bytes) and written to log/18/server.response 07:35:45.939052 special request received, no persistency 07:35:45.939058 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 721 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file socks_server.log 07:35:46.942959 Running IPv4 version 07:35:46.943005 Listening on port 35687 07:35:46.943037 Wrote pid 111583 to log/18/server/socks_server.pid 07:35:46.943058 Wrote port 35687 to log/18/server/socks_server.port === End of file socks_server.log === Start of file valgrind721 ==113207== ==113207== Process terminating with default action of signal 4 (SIGILL) ==113207== Illegal opcode at address 0x4003082 ==113207== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113207== by 0x4003082: main (tool_main.c:234) === End of file valgrind721 setenv IPFS_PATH = log/14/.ipfs test 0736...[IPFS with IPFS_PATH set, no trailing slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind736 ../src/curl -q --output log/14/curl736.out --include --trace-ascii log/14/trace736 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/14/stdout736 2> log/14/stderr736 736: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 736 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind736 ../src/curl -q --output log/14/curl736.out --include --trace-ascii log/14/trace736 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/14/stdout736 2> log/14/stderr736 === End of file commands.log === Start of file http_server.log 07:35:47.074465 ====> Client connect 07:35:47.074499 accept_connection 3 returned 4 07:35:47.074514 accept_connection 3 returned 0 07:35:47.074528 Read 93 bytes 07:35:47.074537 Process 93 bytes request 07:35:47.074550 Got request: GET /verifiedserver HTTP/1.1 07:35:47.074559 Are-we-friendly question received 07:35:47.074584 Wrote request (93 bytes) input to log/14/server.input 07:35:47.074599 Identifying ourselves as friends 07:35:47.074650 Response sent (56 bytes) and written to log/14/server.response 07:35:47.074659 special request received, no persistency 07:35:47.074668 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 736 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind736 ==113383== ==113383== Process terminating with default action of signal 4 (SIGILL) ==113383== Illegal opcode at address 0x4003082 ==113383== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113383== by 0x4003082: main (tool_main.c:234) === End of file valgrind736 setenv IPFS_PATH = log/4/.ipfs/ test 0738...[IPFS with IPFS_PATH, no gateway file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind738 ../src/curl -q --output log/4/curl738.out --include --trace-ascii log/4/trace738 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/4/stdout738 2> log/4/stderr738 curl returned 132, when expecting 37 738: exit FAILED == Contents of files in the log/4/ dir after test 738 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind738 ../src/curl -q --output log/4/curl738.out --include --trace-ascii log/4/trace738 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/4/stdout738 2> log/4/stderr738 === End of file commands.log === Start of file http_server.log 07:35:47.076488 ====> Client connect 07:35:47.076513 accept_connection 3 returned 4 07:35:47.076526 accept_connection 3 returned 0 07:35:47.076536 Read 93 bytes 07:35:47.076544 Process 93 bytes request 07:35:47.076553 Got request: GET /verifiedserver HTTP/1.1 07:35:47.076560 Are-we-friendly question received 07:35:47.076578 Wrote request (93 bytes) input to log/4/server.input 07:35:47.076591 Identifying ourselves as friends 07:35:47.076634 Response sent (56 bytes) and written to log/4/server.response 07:35:47.076642 special request received, no persistency 07:35:47.076649 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 738 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind738 ==113384== ==113384== Process terminating with default action of signal 4 (SIGILL) ==113384== Illegal opcode at address 0x4003082 ==113384== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113384== by 0x4003082: main (tool_main.c:234) === End of file valgrind738 setenv IPFS_PATH = log/21/.ipfs/ test 0737...[IPFS with IPFS_PATH set, with trailing slash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressioCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind739 ../src/curl -q --output log/7/curl739.out --include --trace-ascii log/7/trace739 --trace-config all --trace-time --ipfs-gateway "http://127.0.0.1:39077/some/path?biz=baz" "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/7/stdout739 2> log/7/stderr739 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind735 ../src/curl -q --output log/1/curl735.out --include --trace-ascii log/1/trace735 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:38941/some/path "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/1/stdout735 2> log/1/stderr735 ns=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind737 ../src/curl -q --output log/21/curl737.out --include --trace-ascii log/21/trace737 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/21/stdout737 2> log/21/stderr737 737: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 737 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind737 ../src/curl -q --output log/21/curl737.out --include --trace-ascii log/21/trace737 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/21/stdout737 2> log/21/stderr737 === End of file commands.log === Start of file http_server.log 07:35:47.075830 ====> Client connect 07:35:47.075856 accept_connection 3 returned 4 07:35:47.075869 accept_connection 3 returned 0 07:35:47.075879 Read 93 bytes 07:35:47.075887 Process 93 bytes request 07:35:47.075896 Got request: GET /verifiedserver HTTP/1.1 07:35:47.075903 Are-we-friendly question received 07:35:47.075924 Wrote request (93 bytes) input to log/21/server.input 07:35:47.075936 Identifying ourselves as friends 07:35:47.076116 Response sent (56 bytes) and written to log/21/server.response 07:35:47.076136 special request received, no persistency 07:35:47.076146 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 737 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind737 ==113387== ==113387== Process terminating with default action of signal 4 (SIGILL) ==113387== Illegal opcode at address 0x4003082 ==113387== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113387== by 0x4003082: main (tool_main.c:234) === End of file valgrind737 test 0739...[IPNS path and query args for gateway and IPFS url (malformed gateway url)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind739 ../src/curl -q --output log/7/curl739.out --include --trace-ascii log/7/trace739 --trace-config all --trace-time --ipfs-gateway "http://127.0.0.1:39077/some/path?biz=baz" "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/7/stdout739 2> log/7/stderr739 curl returned 132, when expecting 3 739: exit FAILED == Contents of files in the log/7/ dir after test 739 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind739 ../src/curl -q --output log/7/curl739.out --include --trace-ascii log/7/trace739 --trace-config all --trace-time --ipfs-gateway "http://127.0.0.1:39077/some/path?biz=baz" "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/7/stdout739 2> log/7/stderr739 === End of file commands.log === Start of file http_server.log 07:35:47.076482 ====> Client connect 07:35:47.076514 accept_connection 3 returned 4 07:35:47.076530 accept_connection 3 returned 0 07:35:47.076543 Read 93 bytes 07:35:47.076553 Process 93 bytes request 07:35:47.076563 Got request: GET /verifiedserver HTTP/1.1 07:35:47.076572 Are-we-friendly question received 07:35:47.076598 Wrote request (93 bytes) input to log/7/server.input 07:35:47.076613 Identifying ourselves as friends 07:35:47.076673 Response sent (56 bytes) and written to log/7/server.response 07:35:47.076682 special request received, no persistency 07:35:47.076691 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 739 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind739 ==113380== ==113380== Process terminating with default action of signal 4 (SIGILL) ==113380== Illegal opcode at address 0x4003082 ==113380== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113380== by 0x4003082: main (tool_main.c:234) === End of file valgrind739 test 0735...[IPNS with path, query args and gateway with path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind735 ../src/curl -q --output log/1/curl735.out --include --trace-ascii log/1/trace735 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:38941/some/path "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/1/stdout735 2> log/1/stderr735 735: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 735 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind735 ../src/curl -q --output log/1/curl735.out --include --trace-ascii log/1/trace735 --trace-config all --trace-time --ipfs-gateway http://127.0.0.1:38941/some/path "ipns://fancy.tld/a/b?foo=bar&aaa=bbb" > log/1/stdout735 2> log/1/stderr735 === End of file commands.log === Start of file http_server.log 07:35:47.075465 ====> Client connect 07:35:47.075499 accept_connection 3 returned 4 07:35:47.075514 accept_connection 3 returned 0 07:35:47.075526 Read 93 bytes 07:35:47.075536 Process 93 bytes request 07:35:47.075546 Got request: GET /verifiedserver HTTP/1.1 07:35:47.075555 Are-we-friendly question received 07:35:47.075587 Wrote request (93 bytes) input to log/1/server.input 07:35:47.075602 Identifying ourselves as friends 07:35:47.075653 Response sent (56 bytes) and written to log/1/server.response 07:35:47.075661 special request received, no persistency 07:35:47.075670 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 735 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind735 ==113388== ==113388== Process terminating with default action of signal 4 (SIGILL) ==113388== Illegal opcode at address 0x4003082 ==113388== at 0x4003082: UnknownInlinedFun CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind746 ../src/curl -q --output log/11/curl746.out --include --trace-ascii log/11/trace746 --trace-config all --trace-time http://neverused.example/ -m 22222242222222222 > log/11/stdout746 2> log/11/stderr746 (string_fortified.h:59) ==113388== by 0x4003082: main (tool_main.c:234) === End of file valgrind735 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind743 ../src/curl -q --output log/13/curl743.out --include --trace-ascii log/13/trace743 --trace-config all --trace-time http://127.0.0.1:33627/743 -K log/13/config > log/13/stdout743 2> log/13/stderr743 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind742 ../src/curl -q --output log/3/curl742.out --include --trace-ascii log/3/trace742 --trace-config all --trace-time http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:42345 -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@127.0.0.1:45955 > log/3/stdout742 2> log/3/stderr742 * starts no server test 0746...[too large numerical value passed to -m] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind746 ../src/curl -q --output log/11/curl746.out --include --trace-ascii log/11/trace746 --trace-config all --trace-time http://neverused.example/ -m 22222242222222222 > log/11/stdout746 2> log/11/stderr746 746: stderr FAILED: --- log/11/check-expected 2025-07-18 07:35:47.940445938 +0000 +++ log/11/check-generated 2025-07-18 07:35:47.940445938 +0000 @@ -1,2 +0,0 @@ -curl: option -m: expected a proper numerical parameter[CR][LF] -curl: try 'curl --help' for more information[CR][LF] == Contents of files in the log/11/ dir after test 746 === Start of file check-expected curl: option -m: expected a proper numerical parameter[CR][LF] curl: try 'curl --help' for more information[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind746 ../src/curl -q --output log/11/curl746.out --include --trace-ascii log/11/trace746 --trace-config all --trace-time http://neverused.example/ -m 22222242222222222 > log/11/stdout746 2> log/11/stderr746 === End of file commands.log === Start of file server.cmd Testnum 746 === End of file server.cmd === Start of file valgrind746 ==113734== ==113734== Process terminating with default action of signal 4 (SIGILL) ==113734== Illegal opcode at address 0x4003082 ==113734== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113734== by 0x4003082: main (tool_main.c:234) === End of file valgrind746 test 0743...[--config with a 127 byte line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind743 ../src/curl -q --output log/13/curl743.out --include --trace-ascii log/13/trace743 --trace-config all --trace-time http://127.0.0.1:33627/743 -K log/13/config > log/13/stdout743 2> log/13/stderr743 743: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 743 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind743 ../src/curl -q --output log/13/curl743.out --include --trace-ascii log/13/trace743 --trace-config all --trace-time http://127.0.0.1:33627/743 -K log/13/config > log/13/stdout743 2> log/13/stderr743 === End of file commands.log === Start of file config -A pointless data = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" === End of file config === Start of file http_server.log 07:35:47.303529 ====> Client connect 07:35:47.303559 accept_connection 3 returned 4 07:35:47.303576 accept_connection 3 returned 0 07:35:47.303589 Read 93 bytes 07:35:47.303598 Process 93 bytes request 07:35:47.303607 Got request: GET /verifiedserver HTTP/1.1 07:35:47.303615 Are-we-friendly question received 07:35:47.303634 Wrote request (93 bytes) input to log/13/server.input 07:35:47.303646 Identifying ourselves as friends 07:35:47.303710 Response sent (56 bytes) and written to log/13/server.response 07:35:47.303720 special request received, no persistency 07:35:47.303728 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 743 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind743 ==113776== ==113776== Process terminating with default action of signal 4 (SIGILL) ==113776== Illegal opcode at address 0x4003082 ==113776== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113776== by 0x4003082: main (tool_main.c:234) === End of file valgrind743 test 0742...[SOCKS5-hostname with max length credentials and max host name length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind742 ../src/curl -q --output log/3/curl742.out --include --trace-ascii log/3/trace742 --trace-config all --trace-time http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:42345 -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@127.0.0.1:45955 > log/3/stdout742 2> log/3/stderr742 742: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 742 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind742 ../src/curl -q --output log/3/curl742.out --include --trace-ascii log/3/trace742 --trace-config all --trace-time http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:42345 -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@127.0.0.1:45955 > log/3/stdout742 2> log/3/stderr742 === End of file commands.log === Start of file http_server.log 07:35:47.300941 ====> Client connect 07:35:47.300973 accept_connection 3 returned 4 07:35:47.300988 accept_connection 3 returned 0 07:35:47.301000 Read 93 bytes 07:35:47.301009 Process 93 bytes request 07:35:47.301022 Got request: GET /verifiedserver HTTP/1.1 07:35:47.301030 Are-we-friendly question received 07:35:47.301054 Wrote request (93 bytes) input to log/3/server.input 07:35:47.301069 Identifying ourselves as friends 07:35:47.301119 Response sent (56 bytes) and written to log/3/server.response 07:35:47.301128 special request received, no persistency 07:35:47.301136 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind744 ../src/curl -q --output log/20/curl744.out --include --trace-ascii log/20/trace744 --trace-config all --trace-time http://foo.host:37169/744 -p --proxy1.0 127.0.0.1:39205 -A "" --netrc-file log/20/netrc744 > log/20/stdout744 2> log/20/stderr744 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind749 ../src/curl -q --output log/10/curl749.out --include --trace-ascii log/10/trace749 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:34851 --proxytunnel -sS > log/10/stdout749 2> log/10/stderr749 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind748 ../src/curl -q --output log/15/curl748.out --include --trace-ascii log/15/trace748 --trace-config all --trace-time -K log/15/cmd > log/15/stdout748 2> log/15/stderr748 GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd method 2 user aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa password bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb backendport 42345 Testnum 742 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind742 ==113758== ==113758== Process terminating with default action of signal 4 (SIGILL) ==113758== Illegal opcode at address 0x4003082 ==113758== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113758== by 0x4003082: main (tool_main.c:234) === End of file valgrind742 test 0744...[--netrc-file with a 127 byte line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind744 ../src/curl -q --output log/20/curl744.out --include --trace-ascii log/20/trace744 --trace-config all --trace-time http://foo.host:37169/744 -p --proxy1.0 127.0.0.1:39205 -A "" --netrc-file log/20/netrc744 > log/20/stdout744 2> log/20/stderr744 744: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 744 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind744 ../src/curl -q --output log/20/curl744.out --include --trace-ascii log/20/trace744 --trace-config all --trace-time http://foo.host:37169/744 -p --proxy1.0 127.0.0.1:39205 -A "" --netrc-file log/20/netrc744 > log/20/stdout744 2> log/20/stderr744 === End of file commands.log === Start of file http2_server.log 07:35:47.330220 ====> Client connect 07:35:47.330254 accept_connection 3 returned 4 07:35:47.330268 accept_connection 3 returned 0 07:35:47.330279 Read 93 bytes 07:35:47.330289 Process 93 bytes request 07:35:47.330299 Got request: GET /verifiedserver HTTP/1.1 07:35:47.330306 Are-we-friendly question received 07:35:47.330334 Wrote request (93 bytes) input to log/20/proxy.input 07:35:47.330349 Identifying ourselves as friends 07:35:47.330401 Response sent (56 bytes) and written to log/20/proxy.response 07:35:47.330411 special request received, no persistency 07:35:47.330418 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:39205... * Connected to 127.0.0.1 (127.0.0.1) port 39205 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39205 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78734 === End of file http2_verify.out === Start of file http_server.log 07:35:47.309160 ====> Client connect 07:35:47.309196 accept_connection 3 returned 4 07:35:47.309212 accept_connection 3 returned 0 07:35:47.309227 Read 93 bytes 07:35:47.309236 Process 93 bytes request 07:35:47.309247 Got request: GET /verifiedserver HTTP/1.1 07:35:47.309256 Are-we-friendly question received 07:35:47.309282 Wrote request (93 bytes) input to log/20/server.input 07:35:47.309396 Identifying ourselves as friends 07:35:47.309467 Response sent (56 bytes) and written to log/20/server.response 07:35:47.309476 special request received, no persistency 07:35:47.309484 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file netrc744 machine foo.host login foo password baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar === End of file netrc744 === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78734 === End of file proxy.response === Start of file server.cmd Testnum 744 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind744 ==114013== ==114013== Process terminating with default action of signal 4 (SIGILL) ==114013== Illegal opcode at address 0x4003082 ==114013== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114013== by 0x4003082: main (tool_main.c:234) === End of file valgrind744 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind747 ../src/curl -q --output log/16/curl747.out --include --trace-ascii log/16/trace747 --trace-config all --trace-time http://127.0.0.1:46739/747 > log/16/stdout747 2> log/16/stderr747 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind752 ../src/curl -q --output log/19/curl752.out --include --trace-ascii log/19/trace752 --trace-config all --trace-time http://127.0.0.1:33487/752 -f --retry 1 > log/19/stdout752 2> log/19/stderr752 test 0749...[HTTP CONNECT with proxy returning 400 and closing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind749 ../src/curl -q --output log/10/curl749.out --include --trace-ascii log/10/trace749 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:34851 --proxytunnel -sS > log/10/stdout749 2> log/10/stderr749 749: stderr FAILED: --- log/10/check-expected 2025-07-18 07:35:47.970445938 +0000 +++ log/10/check-generated 2025-07-18 07:35:47.970445938 +0000 @@ -1 +0,0 @@ -curl: (56) CONNECT tunnel failed, response 400[CR][LF] == Contents of files in the log/10/ dir after test 749 === Start of file check-expected curl: (56) CONNECT tunnel failed, response 400[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind749 ../src/curl -q --output log/10/curl749.out --include --trace-ascii log/10/trace749 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:34851 --proxytunnel -sS > log/10/stdout749 2> log/10/stderr749 === End of file commands.log === Start of file http_server.log 07:35:47.328192 ====> Client connect 07:35:47.328227 accept_connection 3 returned 4 07:35:47.328244 accept_connection 3 returned 0 07:35:47.328257 Read 93 bytes 07:35:47.328266 Process 93 bytes request 07:35:47.328277 Got request: GET /verifiedserver HTTP/1.1 07:35:47.328285 Are-we-friendly question received 07:35:47.328309 Wrote request (93 bytes) input to log/10/server.input 07:35:47.328323 Identifying ourselves as friends 07:35:47.328386 Response sent (56 bytes) and written to log/10/server.response 07:35:47.328397 special request received, no persistency 07:35:47.328405 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 749 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind749 ==113974== ==113974== Process terminating with default action of signal 4 (SIGILL) ==113974== Illegal opcode at address 0x4003082 ==113974== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113974== by 0x4003082: main (tool_main.c:234) === End of file valgrind749 * starts no server test 0748...[A --config file that uses -h and no URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind748 ../src/curl -q --output log/15/curl748.out --include --trace-ascii log/15/trace748 --trace-config all --trace-time -K log/15/cmd > log/15/stdout748 2> log/15/stderr748 curl returned 132, when expecting 2 748: exit FAILED == Contents of files in the log/15/ dir after test 748 === Start of file cmd -h all === End of file cmd === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind748 ../src/curl -q --output log/15/curl748.out --include --trace-ascii log/15/trace748 --trace-config all --trace-time -K log/15/cmd > log/15/stdout748 2> log/15/stderr748 === End of file commands.log === Start of file server.cmd Testnum 748 === End of file server.cmd === Start of file valgrind748 ==113763== ==113763== Process terminating with default action of signal 4 (SIGILL) ==113763== Illegal opcode at address 0x4003082 ==113763== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113763== by 0x4003082: main (tool_main.c:234) === End of file valgrind748 test 0747...[Reject too many HTTP response headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind747 ../src/curl -q --output log/16/curl747.out --include --trace-ascii log/16/trace747 --trace-config all --trace-time http://127.0.0.1:46739/747 > log/16/stdout747 2> log/16/stderr747 747: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 747 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind747 ../src/curl -q --output log/16/curl747.out --include --trace-ascii log/16/trace747 --trace-config all --trace-time http://127.0.0.1:46739/747 > log/16/stdout747 2> log/16/stderr747 === End of file commands.log === Start of file http_server.log 07:35:47.325880 ====> Client connect 07:35:47.325913 accept_connection 3 returned 4 07:35:47.325929 accept_connection 3 returned 0 07:35:47.325942 Read 93 bytes 07:35:47.325952 Process 93 bytes request 07:35:47.325975 Got request: GET /verifiedserver HTTP/1.1 07:35:47.325984 Are-we-friendly question received 07:35:47.326007 Wrote request (93 bytes) input to log/16/server.input 07:35:47.326023 Identifying ourselves as friends 07:35:47.326086 Response sent (56 bytes) and written to log/16/server.response 07:35:47.326096 special request received, no persistency 07:35:47.326105 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 747 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind747 ==114112== ==114112== Process terminating with default action of signal 4 (SIGILL) ==114112== Illegal opcode at address 0x4003082 ==114112== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114112== by 0x4003082: main (tool_main.c:234) === End of file valgrind747 test 0752...[--retry and -f on a HTTP 404 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind752 ../src/curl -q --output log/19/curl752.out --include --trace-ascii log/19/trace752 --trace-config all --trace-time http://127.0.0.1:33487/752 -f --retry 1 > log/19/stdout752 2> log/19/stderr752 752: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 752 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind752 ../src/curl -q --output log/19/curl752.out --include --trace-ascii log/19/trace752 --trace-config all --trace-time http://127.0.0.1:33487/752 -f --retry 1 > log/19/stdout752 2> log/19/stderr752 === End of file commands.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind750 ../src/curl -q --output log/2/curl750.out --include --trace-ascii log/2/trace750 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:45457 --proxytunnel -sS > log/2/stdout750 2> log/2/stderr750 log === Start of file http_server.log 07:35:47.424295 ====> Client connect 07:35:47.424325 accept_connection 3 returned 4 07:35:47.424340 accept_connection 3 returned 0 07:35:47.424353 Read 93 bytes 07:35:47.424362 Process 93 bytes request 07:35:47.424372 Got request: GET /verifiedserver HTTP/1.1 07:35:47.424381 Are-we-friendly question received 07:35:47.424404 Wrote request (93 bytes) input to log/19/server.input 07:35:47.424419 Identifying ourselves as friends 07:35:47.424470 Response sent (56 bytes) and written to log/19/server.response 07:35:47.424480 special request received, no persistency 07:35:47.424488 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 752 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind752 ==114281== ==114281== Process terminating with default action of signal 4 (SIGILL) ==114281== Illegal opcode at address 0x4003082 ==114281== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114281== by 0x4003082: main (tool_main.c:234) === End of file valgrind752 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind754 ../src/curl -q --output log/18/curl754.out --include --trace-ascii log/18/trace754 --trace-config all --trace-time ftp://127.0.0.1:33107/path/ -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/18/stdout754 2> log/18/stderr754 test 0750...[HTTP CONNECT with proxy returning just HTML and closing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind750 ../src/curl -q --output log/2/curl750.out --include --trace-ascii log/2/trace750 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:45457 --proxytunnel -sS > log/2/stdout750 2> log/2/stderr750 750: stderr FAILED: --- log/2/check-expected 2025-07-18 07:35:48.053779273 +0000 +++ log/2/check-generated 2025-07-18 07:35:48.053779273 +0000 @@ -1 +0,0 @@ -curl: (43) Invalid response header[CR][LF] == Contents of files in the log/2/ dir after test 750 === Start of file check-expected curl: (43) Invalid response header[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind750 ../src/curl -q --output log/2/curl750.out --include --trace-ascii log/2/trace750 --trace-config all --trace-time http://test.example --proxy http://127.0.0.1:45457 --proxytunnel -sS > log/2/stdout750 2> log/2/stderr750 === End of file commands.log === Start of file http_server.log 07:35:47.423450 ====> Client connect 07:35:47.423482 accept_connection 3 returned 4 07:35:47.423497 accept_connection 3 returned 0 07:35:47.423514 Read 93 bytes 07:35:47.423523 Process 93 bytes request 07:35:47.423535 Got request: GET /verifiedserver HTTP/1.1 07:35:47.423544 Are-we-friendly question received 07:35:47.423569 Wrote request (93 bytes) input to log/2/server.input 07:35:47.423584 Identifying ourselves as friends 07:35:47.423639 Response sent (56 bytes) and written to log/2/server.response 07:35:47.423648 special request received, no persistency 07:35:47.423657 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 750 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind750 ==114278== ==114278== Process terminating with default action of signal 4 (SIGILL) ==114278== Illegal opcode at address 0x4003082 ==114278== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114278== by 0x4003082: main (tool_main.c:234) === End of file valgrind750 test 0754...[FTP list with quote ops] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind754 ../src/curl -q --output log/18/curl754.out --include --trace-ascii log/18/trace754 --trace-config all --trace-time ftp://127.0.0.1:33107/path/ -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/18/stdout754 2> log/18/stderr754 754: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 754 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind754 ../src/curl -q --output log/18/curl754.out --include --trace-ascii log/18/trace754 --trace-config all --trace-time ftp://127.0.0.1:33107/path/ -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" > log/18/stdout754 2> log/18/stderr754 === End of file commands.log === Start of file ftp_server.log 07:35:47.585663 ====> Client connect 07:35:47.585776 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:47.585976 < "USER anonymous" 07:35:47.586002 > "331 We are happy you popped in![CR][LF]" 07:35:47.586806 < "PASS ftp@example.com" 07:35:47.586831 > "230 Welcome you silly person[CR][LF]" 07:35:47.586973 < "PWD" 07:35:47.587000 > "257 "/" is current directory[CR][LF]" 07:35:47.587148 < "EPSV" 07:35:47.587172 ====> Passive DATA channel requested by client 07:35:47.587184 DATA sockfilt for passive data channel starting... 07:35:47.588725 DATA sockfilt for passive data channel started (pid 114274) 07:35:47.588895 DATA sockfilt for passive data channel listens on port 32827 07:35:47.588954 > "229 Entering Passive Mode (|||32827|)[LF]" 07:35:47.588972 Client has been notified that DATA conn will be accepted on port 32827 07:35:47.589334 Client connects to port 32827 07:35:47.589367 ====> Client established passive DATA connection on port 32827 07:35:47.589430 < "TYPE I" 07:35:47.589455 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:47.589596 < "SIZE verifiedserver" 07:35:47.589627 > "213 17[CR][LF]" 07:35:47.589793 < "RETR verifiedserver" 07:35:47.589827 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:47.589891 =====> Closing passive DATA connection... 07:35:47.589906 Server disconnects passive DATA connection 07:35:47.590094 Server disconnected passive DATA connection 07:35:47.590115 DATA sockfilt for passive data channel quits (pid 114274) 07:35:47.590295 DATA sockfilt for passive data channel quit (pid 114274) 07:35:47.590316 =====> Closed passive DATA connection 07:35:47.590336 > "226 File transfer complete[CR][LF]" 07:35:47.636398 < "QUIT" 07:35:47.636468 > "221 bye bye baby[CR][LF]" 07:35:47.638639 MAIN sockfilt said DISC 07:35:47.638705 ====> Client disconnected 07:35:47.638785 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:47.431275 ====> Client connect 07:35:47.431766 Received DATA (on stdin) 07:35:47.431778 > 160 bytes data, server => client 07:35:47.431787 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:47.431795 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:47.431802 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:47.431853 < 16 bytes data, client => server 07:35:47.431862 'USER anonymous\r\n' 07:35:47.432638 Received DATA (on stdin) 07:35:47.432650 > 33 bytes data, server => client 07:35:47.432659 '331 We are happy you popped in!\r\n' 07:35:47.432704 < 22 bytes data, client => server 07:35:47.432715 'PASS ftp@example.com\r\n' 07:35:47.432816 Received DATA (on stdin) 07:35:47.432827 > 30 bytes data, server => client 07:35:47.432837 '230 Welcome you silly person\r\n' 07:35:47.432882 < 5 bytes data, client => server 07:35:47.432893 'PWD\r\n' 07:35:47.432983 Received DATA (on stdin) 07:35:47.432993 > 30 bytes data, server => client 07:35:47.433003 '257 "/" is current directory\r\n' 07:35:47.433053 < 6 bytes data, client => server 07:35:47.433066 'EPSV\r\n' 07:35:47.435109 Received DATA (on stdin) 07:35:47.435126 > 38 bytes data, server => client 07:35:47.435137 '229 Entering Passive Mode (|||32827|)\n' 07:35:47.435267 < 8 bytes data, client => server 07:35:47.435278 'TYPE I\r\n' 07:35:47.435441 Received DATA (on stdin) 07:35:47.435452 > 33 bytes data, server => client 07:35:47.435462 '200 I modify TYPE as you wanted\r\n' 07:35:47.435505 < 21 bytes data, client => server 07:35:47.435516 'SIZE verifiedserver\r\n' 07:35:47.435612 Received DATA (on stdin) 07:35:47.435636 > 8 bytes data, server => client 07:35:47.435647 '213 17\r\n' 07:35:47.435722 < 21 bytes data, client => server 07:35:47.435734 'RETR verifiedserver\r\n' 07:35:47.435894 Received DATA (on stdin) 07:35:47.435908 > 29 bytes data, server => client 07:35:47.43CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind785 ../src/curl -q --output log/21/curl785.out --include --trace-ascii log/21/trace785 --trace-config all --trace-time http://127.0.0.1:41087/785 --variable "name[5-]@log/21/in785" --expand-data '{{name}}' > log/21/stdout785 2> log/21/stderr785 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind784 ../src/curl -q --output log/14/curl784.out --include --trace-ascii log/14/trace784 --trace-config all --trace-time http://127.0.0.1:37963/784 --variable "name[5-15]@log/14/in784" --expand-data '{{name}}' > log/14/stdout784 2> log/14/stderr784 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind786 ../src/curl -q --output log/4/curl786.out --include --trace-ascii log/4/trace786 --trace-config all --trace-time http://127.0.0.1:33235/786 --variable "name[5-15]@-" --expand-data '{{name}}' log/4/stdout786 2> log/4/stderr786 5919 '150 Binary junk (17 bytes).\r\n' 07:35:47.436318 Received DATA (on stdin) 07:35:47.436329 > 28 bytes data, server => client 07:35:47.436337 '226 File transfer complete\r\n' 07:35:47.482177 < 6 bytes data, client => server 07:35:47.484167 'QUIT\r\n' 07:35:47.484186 Received DATA (on stdin) 07:35:47.484195 > 18 bytes data, server => client 07:35:47.484202 '221 bye bye baby\r\n' 07:35:47.484557 ====> Client disconnect 07:35:47.484779 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:47.434552 Running IPv4 version 07:35:47.434606 Listening on port 32827 07:35:47.434638 Wrote pid 114274 to log/18/server/ftp_sockdata.pid 07:35:47.434655 Received PING (on stdin) 07:35:47.434749 Received PORT (on stdin) 07:35:47.435237 ====> Client connect 07:35:47.435947 Received DATA (on stdin) 07:35:47.435967 > 17 bytes data, server => client 07:35:47.435977 'WE ROOLZ: 82311\r\n' 07:35:47.436020 Received DISC (on stdin) 07:35:47.436032 ====> Client forcibly disconnected 07:35:47.436104 Received QUIT (on stdin) 07:35:47.436115 quits 07:35:47.436172 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY FAIL 500 this might not be a failure Testnum 754 === End of file server.cmd === Start of file valgrind754 ==114393== ==114393== Process terminating with default action of signal 4 (SIGILL) ==114393== Illegal opcode at address 0x4003082 ==114393== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114393== by 0x4003082: main (tool_main.c:234) === End of file valgrind754 test 0785...[--variable with a file byte range without end] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind785 ../src/curl -q --output log/21/curl785.out --include --trace-ascii log/21/trace785 --trace-config all --trace-time http://127.0.0.1:41087/785 --variable "name[5-]@log/21/in785" --expand-data '{{name}}' > log/21/stdout785 2> log/21/stderr785 785: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 785 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind785 ../src/curl -q --output log/21/curl785.out --include --trace-ascii log/21/trace785 --trace-config all --trace-time http://127.0.0.1:41087/785 --variable "name[5-]@log/21/in785" --expand-data '{{name}}' > log/21/stdout785 2> log/21/stderr785 === End of file commands.log === Start of file http_server.log 07:35:47.604131 ====> Client connect 07:35:47.604191 accept_connection 3 returned 4 07:35:47.604209 accept_connection 3 returned 0 07:35:47.604222 Read 93 bytes 07:35:47.604232 Process 93 bytes request 07:35:47.604243 Got request: GET /verifiedserver HTTP/1.1 07:35:47.604252 Are-we-friendly question received 07:35:47.604277 Wrote request (93 bytes) input to log/21/server.input 07:35:47.604294 Identifying ourselves as friends 07:35:47.604348 Response sent (56 bytes) and written to log/21/server.response 07:35:47.604358 special request received, no persistency 07:35:47.604367 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file in785 On the first Monday of the month of April, 1625, the market town of Meung === End of file in785 === Start of file server.cmd Testnum 785 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind785 ==114528== ==114528== Process terminating with default action of signal 4 (SIGILL) ==114528== Illegal opcode at address 0x4003082 ==114528== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114528== by 0x4003082: main (tool_main.c:234) === End of file valgrind785 test 0784...[--variable with a file byte range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind784 ../src/curl -q --output log/14/curl784.out --include --trace-ascii log/14/trace784 --trace-config all --trace-time http://127.0.0.1:37963/784 --variable "name[5-15]@log/14/in784" --expand-data '{{name}}' > log/14/stdout784 2> log/14/stderr784 784: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 784 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind784 ../src/curl -q --output log/14/curl784.out --include --trace-ascii log/14/trace784 --trace-config all --trace-time http://127.0.0.1:37963/784 --variable "name[5-15]@log/14/in784" --expand-data '{{name}}' > log/14/stdout784 2> log/14/stderr784 === End of file commands.log === Start of file http_server.log 07:35:47.603099 ====> Client connect 07:35:47.603135 accept_connection 3 returned 4 07:35:47.603152 accept_connection 3 returned 0 07:35:47.603166 Read 93 bytes 07:35:47.603175 Process 93 bytes request 07:35:47.603189 Got request: GET /verifiedserver HTTP/1.1 07:35:47.603198 Are-we-friendly question received 07:35:47.603224 Wrote request (93 bytes) input to log/14/server.input 07:35:47.603240 Identifying ourselves as friends 07:35:47.603296 Response sent (56 bytes) and written to log/14/server.response 07:35:47.603306 special request received, no persistency 07:35:47.603315 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file in784 On the first Monday of the month of April, 1625, the market town of Meung === End of file in784 === Start of file server.cmd Testnum 784 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind784 ==114526== ==114526== Process terminating with default action of signal 4 (SIGILL) ==114526== Illegal opcode at address 0x4003082 ==114526== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114526== by 0x4003082: main (tool_main.c:234) === End of file valgrind784 test 0786...[--variable with a file byte range, reading from stdin] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind786 ../src/curl -q --output log/4/curl786.out --include --trace-ascii log/4/trace786 --trace-config all --trace-time http://127.0.0.1:33235/786 --variable "name[5-15]@-" --expand-data '{{name}}' log/4/stdout786 2> log/4/stderr786 786: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == ConteCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind787 ../src/curl -q --output log/7/curl787.out --include --trace-ascii log/7/trace787 --trace-config all --trace-time http://127.0.0.1:39077/787 --variable "name[15-14]@&LOGDIR/fooo" --expand-data '{{name}}' > log/7/stdout787 2> log/7/stderr787 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind788 ../src/curl -q --output log/1/curl788.out --include --trace-ascii log/1/trace788 --trace-config all --trace-time http://127.0.0.1:38941/788 --variable "name[15-15]@log/1/in788" --expand-data '{{name}}' > log/1/stdout788 2> log/1/stderr788 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind728 ../src/curl -q --output log/24/curl728.out --include --trace-ascii log/24/trace728 --trace-config all --trace-time --no-progress-meter --location --proxy socks5h://127.0.0.1:43309 http://127.0.0.1:38675/728 > log/24/stdout728 2> log/24/stderr728 nts of files in the log/4/ dir after test 786 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind786 ../src/curl -q --output log/4/curl786.out --include --trace-ascii log/4/trace786 --trace-config all --trace-time http://127.0.0.1:33235/786 --variable "name[5-15]@-" --expand-data '{{name}}' log/4/stdout786 2> log/4/stderr786 === End of file commands.log === Start of file http_server.log 07:35:47.605697 ====> Client connect 07:35:47.605728 accept_connection 3 returned 4 07:35:47.605743 accept_connection 3 returned 0 07:35:47.605755 Read 93 bytes 07:35:47.605764 Process 93 bytes request 07:35:47.605776 Got request: GET /verifiedserver HTTP/1.1 07:35:47.605785 Are-we-friendly question received 07:35:47.605807 Wrote request (93 bytes) input to log/4/server.input 07:35:47.605822 Identifying ourselves as friends 07:35:47.605870 Response sent (56 bytes) and written to log/4/server.response 07:35:47.605879 special request received, no persistency 07:35:47.605888 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 786 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stdin-for-786 On the first Monday of the month of April, 1625, the market town of Meung === End of file stdin-for-786 === Start of file valgrind786 ==114529== ==114529== Process terminating with default action of signal 4 (SIGILL) ==114529== Illegal opcode at address 0x4003082 ==114529== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114529== by 0x4003082: main (tool_main.c:234) === End of file valgrind786 test 0787...[--variable with a file byte range, bad range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind787 ../src/curl -q --output log/7/curl787.out --include --trace-ascii log/7/trace787 --trace-config all --trace-time http://127.0.0.1:39077/787 --variable "name[15-14]@&LOGDIR/fooo" --expand-data '{{name}}' > log/7/stdout787 2> log/7/stderr787 curl returned 132, when expecting 2 787: exit FAILED == Contents of files in the log/7/ dir after test 787 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind787 ../src/curl -q --output log/7/curl787.out --include --trace-ascii log/7/trace787 --trace-config all --trace-time http://127.0.0.1:39077/787 --variable "name[15-14]@&LOGDIR/fooo" --expand-data '{{name}}' > log/7/stdout787 2> log/7/stderr787 === End of file commands.log === Start of file http_server.log 07:35:47.606983 ====> Client connect 07:35:47.607015 accept_connection 3 returned 4 07:35:47.607030 accept_connection 3 returned 0 07:35:47.607043 Read 93 bytes 07:35:47.607053 Process 93 bytes request 07:35:47.607064 Got request: GET /verifiedserver HTTP/1.1 07:35:47.607074 Are-we-friendly question received 07:35:47.607099 Wrote request (93 bytes) input to log/7/server.input 07:35:47.607114 Identifying ourselves as friends 07:35:47.607169 Response sent (56 bytes) and written to log/7/server.response 07:35:47.607179 special request received, no persistency 07:35:47.607187 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 787 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind787 ==114532== ==114532== Process terminating with default action of signal 4 (SIGILL) ==114532== Illegal opcode at address 0x4003082 ==114532== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114532== by 0x4003082: main (tool_main.c:234) === End of file valgrind787 test 0788...[--variable with a file and single-byte byte range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind788 ../src/curl -q --output log/1/curl788.out --include --trace-ascii log/1/trace788 --trace-config all --trace-time http://127.0.0.1:38941/788 --variable "name[15-15]@log/1/in788" --expand-data '{{name}}' > log/1/stdout788 2> log/1/stderr788 788: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 788 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind788 ../src/curl -q --output log/1/curl788.out --include --trace-ascii log/1/trace788 --trace-config all --trace-time http://127.0.0.1:38941/788 --variable "name[15-15]@log/1/in788" --expand-data '{{name}}' > log/1/stdout788 2> log/1/stderr788 === End of file commands.log === Start of file http_server.log 07:35:47.610568 ====> Client connect 07:35:47.610622 accept_connection 3 returned 4 07:35:47.610638 accept_connection 3 returned 0 07:35:47.610651 Read 93 bytes 07:35:47.610660 Process 93 bytes request 07:35:47.610670 Got request: GET /verifiedserver HTTP/1.1 07:35:47.610679 Are-we-friendly question received 07:35:47.610701 Wrote request (93 bytes) input to log/1/server.input 07:35:47.610716 Identifying ourselves as friends 07:35:47.610764 Response sent (56 bytes) and written to log/1/server.response 07:35:47.610773 special request received, no persistency 07:35:47.610781 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file in788 On the first Monday of the month of April, 1625, the market town of Meung === End of file in788 === Start of file server.cmd Testnum 788 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind788 ==114557== ==114557== Process terminating with default action of signal 4 (SIGILL) ==114557== Illegal opcode at address 0x4003082 ==114557== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114557== by 0x4003082: main (tool_main.c:234) === End of file valgrind788 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind729 ../src/curl -q --output log/9/curl729.out --include --trace-ascii log/9/trace729 --trace-config all --trace-time http://fake --limit-rate 1 -x socks4a://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@127.0.0.1:44909 > log/9/stdout729 2> log/9/stderr729 startnew: ./server/servers socksd --port 0 --pidfile log/24/server/socks_server.pid --portfile log/24/server/socks_server.port --reqfile log/24/socksd-request.log --logfile log/24/socks_server.log --backend 127.0.0.1 --config log/24/server.cmd RUN: SOCKS server is now running PID 112502 * pid socks => 112502 112502 test 0728...[SOCKS5h with HTTP redirect to hostname too long] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind728 ../src/curl -q --output log/24/curl728.out --include --trace-ascii log/24/trace728 --trace-config all --trace-time --no-progress-meter --location --proxy socks5h://127.0.0.1:43309 http://127.0.0.1:38675/728 > log/24/stdout728 2> log/24/stderr728 728: stderr FAILED: --- log/24/check-expected 2025-07-18 07:35:48.313779280 +0000 +++ log/24/check-generated 2025-07-18 07:35:48.313779280 +0000 @@ -1 +0,0 @@ -curl: (97) SOCKS5: the destination hostname is too long to be resolved remotely by the proxy.[CR][LF] == Contents of files in the log/24/ dir after test 728 === Start of file check-expected curl: (97) SOCKS5: the destination hostname is too long to be resolved remotely by the proxy.[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind728 ../src/curl -q --output log/24/curl728.out --include --trace-ascii log/24/trace728 --trace-config all --trace-time --no-progress-meter --location --proxy socks5h://127.0.0.1:43309 http://127.0.0.1:38675/728 > log/24/stdout728 2> log/24/stderr728 === End of file commands.log === Start of file http_server.log 07:35:46.696644 ====> Client connect 07:35:46.696675 accept_connection 3 returned 4 07:35:46.696691 accept_connection 3 returned 0 07:35:46.696705 Read 93 bytes 07:35:46.696714 Process 93 bytes request 07:35:46.696727 Got request: GET /verifiedserver HTTP/1.1 07:35:46.696736 Are-we-friendly question received 07:35:46.696760 Wrote request (93 bytes) input to log/24/server.input 07:35:46.696775 Identifying ourselves as friends 07:35:46.696839 Response sent (56 bytes) and written to log/24/server.response 07:35:46.696850 special request received, no persistency 07:35:46.696859 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 728 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file socks_server.log 07:35:46.702616 Running IPv4 version 07:35:46.702684 Listening on port 43309 07:35:46.702722 Wrote pid 112502 to log/24/server/socks_server.pid 07:35:46.702750 Wrote port 43309 to log/24/server/socks_server.port === End of file socks_server.log === Start of file valgrind728 ==114776== ==114776== Process terminating with default action of signal 4 (SIGILL) ==114776== Illegal opcode at address 0x4003082 ==114776== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114776== by 0x4003082: main (tool_main.c:234) === End of file valgrind728 startnew: ./server/servers socksd --port 0 --pidfile log/9/server/socks_server.pid --portfile log/9/server/socks_server.port --reqfile log/9/socksd-request.log --logfile log/9/socks_server.log --backend 127.0.0.1 --config log/9/server.cmd RUN: SOCKS server is now running PID 112504 * pid socks => 112504 112504 test 0729...[SOCKS4 with very long proxy user name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind729 ../src/curl -q --output log/9/curl729.out --include --trace-ascii log/9/trace729 --trace-config all --trace-time http://fake --limit-rate 1 -x socks4a://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@127.0.0.1:44909 > log/9/stdout729 2> log/9/stderr729 curl returned 132, when expecting 97 729: exit FAILED == Contents of files in the log/9/ dir after test 729 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind729 ../src/curl -q --output log/9/curl729.out --include --trace-ascii log/9/trace729 --trace-config all --trace-time http://fake --limit-rate 1 -x socks4a://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa@127.0.0.1:44909 > log/9/stdout729 2> log/9/stderr729 === End of file commands.log === Start of file http_server.log 07:35:46.700838 ====> Client connect 07:35:46.700868 accept_connection 3 returned 4 07:35:46.700883 accept_connection 3 returned 0 07:35:46.700896 Read 93 bytes 07:35:46.700904 Process 93 bytes request 07:35:46.700914 Got request: GET /verifiedserver HTTP/1.1 07:35:46.700923 Are-we-friendly question received 07:35:46.700946 Wrote request (93 bytes) input to log/9/server.input 07:35:46.700961 Identifying ourselves as friends 07:35:46.701010 Response sent (56 bytes) and written to log/9/server.response 07:35:46.701019 special request received, no persistency 07:35:46.701027 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_veCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind751 ./libtest/libtests lib751 - > log/6/stdout751 2> log/6/stderr751 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind715 ../src/curl -q --output log/22/curl715.out --include --trace-ascii log/22/trace715 --trace-config all --trace-time ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:42651 --proxytunnel --proxy 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout715 2> log/22/stderr715 rify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 729 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file socks_server.log 07:35:46.705608 Running IPv4 version 07:35:46.705653 Listening on port 44909 07:35:46.705683 Wrote pid 112504 to log/9/server/socks_server.pid 07:35:46.705705 Wrote port 44909 to log/9/server/socks_server.port === End of file socks_server.log === Start of file valgrind729 ==114777== ==114777== Process terminating with default action of signal 4 (SIGILL) ==114777== Illegal opcode at address 0x4003082 ==114777== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114777== by 0x4003082: main (tool_main.c:234) === End of file valgrind729 * starts no server test 0751...[multi - add many easy handles] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind751 ./libtest/libtests lib751 - > log/6/stdout751 2> log/6/stderr751 libtests returned 132, when expecting 0 751: exit FAILED == Contents of files in the log/6/ dir after test 751 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind751 ./libtest/libtests lib751 - > log/6/stdout751 2> log/6/stderr751 === End of file commands.log === Start of file server.cmd Testnum 751 === End of file server.cmd === Start of file stderr751 URL: - === End of file stderr751 === Start of file valgrind751 ==114206== ==114206== Process terminating with default action of signal 4 (SIGILL) ==114206== Illegal opcode at address 0x518AA97 ==114206== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==114206== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==114206== by 0x518AA97: Curl_multi_handle (multi.c:236) ==114206== by 0x40209BD: test_lib751.lto_priv.0 (lib751.c:44) ==114206== by 0x4003443: main (first.c:167) ==114206== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x533CFA5: __tsearch (tsearch.c:337) ==114206== by 0x533CFA5: tsearch (tsearch.c:290) ==114206== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==114206== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==114206== by 0x524F3F0: add_alias (gconv_conf.c:178) ==114206== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==114206== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==114206== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== ==114206== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x533CFA5: __tsearch (tsearch.c:337) ==114206== by 0x533CFA5: tsearch (tsearch.c:290) ==114206== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==114206== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==114206== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== ==114206== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==114206== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==114206== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==114206== by 0x40209BD: test_lib751.lto_priv.0 (lib751.c:44) ==114206== by 0x4003443: main (first.c:167) ==114206== ==114206== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==114206== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==114206== by 0x524F3F0: add_alias (gconv_conf.c:178) ==114206== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==114206== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==114206== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== ==114206== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==114206== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==114206== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== ==114206== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x533CFA5: __tsearch (tsearch.c:337) ==114206== by 0x533CFA5: tsearch (tsearch.c:290) ==114206== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==114206== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==114206== by 0x524F3F0: add_alias (gconv_conf.c:178) ==114206== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==114206== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==114206== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== ==114206== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==114206== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==114206== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==114206== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==114206== by 0x524F3F0: add_alias (gconv_conf.c:178) ==114206== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==114206== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==114206== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==114206== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==114206== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==114206== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==114206== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==114206== by 0x525A142: setlocale (setlocale.c:337) ==114206== by 0x400336E: main (first.c:123) ==114206== === End of file valgrind751 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/22/server/http2_server.pid" --logfile "log/22/http2_server.log" --logdir "log/22" --portfile log/22/server/http2_server.port --config log/22/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 111423 port 45245 * pid http-proxy => 111423 111423 startnew: ./server/servers socksd --port 0 --pidfile log/22/server/socks_server.pid --portfile log/22/server/socks_server.port --reqfile log/22/socksd-request.log --logfile log/22/socks_server.log --backend 127.0.0.1 --config log/22/server.cmd RUN: SOCKS server is now running PID 112611 * pid socks => 112611 112611 test 0715...[FTP fetch with --preproxy, --proxy and --connect-to] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind715 ../src/curl -q --output log/22/curl715.out --include --trace-ascii log/22/trace715 --trace-config all --trace-time ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:42651 --proxytunnel --proxy 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout715 2> log/22/stderr715 715: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 715 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind715 ../src/curl -q --output log/22/curl715.out --include --trace-ascii log/22/trace715 --trace-config all --trace-time ftp://ftp.example.com.715/715 --connect-to ::connect.example.com.715:42651 --proxytunnel --proxy 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout715 2> log/22/stderr715 === End of file commands.log === Start of file ftp_server.log 07:35:45.871139 ====> Client connect 07:35:45.871258 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:45.871448 < "USER anonymous" 07:35:45.871472 > "331 We are happy you popped in![CR][LF]" 07:35:45.871576 < "PASS ftp@example.com" 07:35:45.871594 > "230 Welcome you silly person[CR][LF]" 07:35:45.871690 < "PWD" 07:35:45.871709 > "257 "/" is current directory[CR][LF]" 07:35:45.871806 < "EPSV" 07:35:45.871822 ====> Passive DATA channel requested by client 07:35:45.871831 DATA sockfilt for passive data channel starting... 07:35:45.873016 DATA sockfilt for passive data channel started (pid 111415) 07:35:45.873083 DATA sockfilt for passive data channel listens on port 42471 07:35:45.873106 > "229 Entering Passive Mode (|||42471|)[LF]" 07:35:45.873117 Client has been notified that DATA conn will be accepted on port 42471 07:35:45.873238 Client connects to port 42471 07:35:45.873258 ====> Client established passive DATA connection on port 42471 07:35:45.873333 < "TYPE I" 07:35:45.873352 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:45.873451 < "SIZE verifiedserver" 07:35:45.873473 > "213 17[CR][LF]" 07:35:45.873566 < "RETR verifiedserver" 07:35:45.873586 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:45.873643 =====> Closing passive DATA connection... 07:35:45.873653 Server disconnects passive DATA connection 07:35:45.873800 Server disconnected passive DATA connection 07:35:45.873819 DATA sockfilt for passive data channel quits (pid 111415) 07:35:45.873954 DATA sockfilt for passive data channel quit (pid 111415) 07:35:45.873971 =====> Closed passive DATA connection 07:35:45.873987 > "226 File transfer complete[CR][LF]" 07:35:45.916960 < "QUIT" 07:35:45.917007 > "221 bye bye baby[CR][LF]" 07:35:45.917153 MAIN sockfilt said DISC 07:35:45.917175 ====> Client disconnected 07:35:45.917245 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:45.717032 ====> Client connect 07:35:45.717246 Received DATA (on stdin) 07:35:45.717255 > 160 bytes data, server => client 07:35:45.717264 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:45.717271 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:45.717277 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:45.717326 < 16 bytes data, client => server 07:35:45.717334 'USER anonymous\r\n' 07:35:45.717452 Received DATA (on stdin) 07:35:45.717460 > 33 bytes data, server => client 07:35:45.717467 '331 We are happy you popped in!\r\n' 07:35:45.717500 < 22 bytes data, client => server 07:35:45.717508 'PASS ftp@example.com\r\n' 07:35:45.717573 Received DATA (on stdin) 07:35:45.717581 > 30 bytes data, server => client 07:35:45.717588 '230 Welcome you silly person\r\n' 07:35:45.717618 < 5 bytes data, client => server 07:35:45.717625 'PWD\r\n' 07:35:45.717687 Received DATA (on stdin) 07:35:45.717694 > 30 bytes data, server => client 07:35:45.717701 '257 "/" is current directory\r\n' 07:35:45.717736 < 6 bytes data, client => server 07:35:45.717743 'EPSV\r\n' 07:35:45.719099 Received DATA (on stdin) 07:35:45.719108 > 38 bytes data, server => client 07:35:45.719115 '229 Entering Passive Mode (|||42471|)\n' 07:35:45.719247 < 8 bytes data, client => server 07:35:45.719255 'TYPE I\r\n' 07:35:45.719331 Received DATA (on stdin) 07:35:45.719339 > 33 bytes data, server => client 07:35:45.719346 '200 I modify TYPE as you wanted\r\n' 07:35:45.719378 < 21 bytes data, client => server 07:35:45.719386 'SIZE verifiedserver\r\n' 07:35:45.719452 Received DATA (on stdin) 07:35:45.719459 > 8 bytes data, server => client 07:35:45.719466 '213 17\r\n' 07:35:45.719495 < 21 bytes data, client => server 07:35:45.719503 'RETR verifiedserver\r\n' 07:35:45.719633 Received DATA (on stdin) 07:35:45.719641 > 29 bytes data, server => client 07:35:45.719648 '150 Binary junk (17 bytes).\r\n' 07:35:45.719967 Received DATA (on stdin) 07:35:45.719976 > 28 bytes data, server => client 07:35:45.719983 '226 File transfer complete\r\n' 07:35:45.762777 < 6 bytes data, client => server 07:35:45.762801 'QUIT\r\n' 07:35:45.762996 Received DATA (on stdin) 07:35:45.763007 > 18 bytes data, server => client 07:35:45.763016 '221 bye bye baby\r\n' 07:35:45.763096 ====> Client disconnect 07:35:45.763227 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:45.718811 Running IPv4 version 07:35:45.718848 Listening on port 42471 07:35:45.718871 Wrote pid 111415 to log/22/server/ftp_sockdata.pid 07:35:45.718957 Received PING (on stdin) 07:35:45.719009 Received PORT (on stdin) 07:35:45.719183 ====> Client connect 07:35:45.719665 Received DATA (on stdin) 07:35:45.719674 > 17 bytes data, server => client 07:35:45.719682 'WE ROOLZ: 79849\r\n' 07:35:45.719696 Received DISC (on stdin) 07:35:45.719704 ====> Client forcibly disconnected 07:35:45.719804 Received QUIT (on stdin) 07:35:45.719812 quits 07:35:45.719850 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http2_server.log 07:35:45.778762 Run as proxy, CONNECT to host 127.0.0.1 07:35:45.778846 Running HTTP IPv4 version on port 45245 07:35:45.778873 Wrote pid 111423 to log/22/server/http2_server.pid 07:35:45.778893 Wrote port 45245 to log/22/server/http2_server.port === End of file http2_server.log === Start of file server.cmd Testnum 715 === End of file server.cmd === Start of file socks_server.log 07:35:46.767804 Running IPv4 version 07:35:46.767858 Listening on port 34771 07:35:46.767885 Wrote pid 112611 to log/22/server/socks_server.pid 07:35:46.767906 Wrote port 34771 to log/22/server/socks_server.port === End of file socks_server.log === Start of file valgrind715 ==114879== ==114879== Process terminating with default action of signal 4 (SIGILL) ==114879== Illegal opcode at address 0x4003082 ==114879== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114879== by 0x4003082: main CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind725 ../src/curl -q --output log/12/curl725.out --include --trace-ascii log/12/trace725 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout725 2> log/12/stderr725 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind789 ../src/curl -q --output log/11/curl789.out --include --trace-ascii log/11/trace789 --trace-config all --trace-time http://127.0.0.1:41173/789 --variable "name[75-85]@log/11/in789" --expand-data '{{name}}' > log/11/stdout789 2> log/11/stderr789 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind791 ../src/curl -q --output log/3/curl791.out --include --trace-ascii log/3/trace791 --trace-config all --trace-time http://127.0.0.1:42345/791 --variable "name[10-30]=0123456789abcdef" --expand-data '{{name}}' > log/3/stdout791 2> log/3/stderr791 (tool_main.c:234) === End of file valgrind715 setenv HOME = /startdir/src/build-curl/tests/log/12 test 0725...[IPFS with malformed gateway URL from gateway file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind725 ../src/curl -q --output log/12/curl725.out --include --trace-ascii log/12/trace725 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout725 2> log/12/stderr725 curl returned 132, when expecting 3 725: exit FAILED == Contents of files in the log/12/ dir after test 725 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind725 ../src/curl -q --output log/12/curl725.out --include --trace-ascii log/12/trace725 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/12/stdout725 2> log/12/stderr725 === End of file commands.log === Start of file http_server.log 07:35:46.309331 ====> Client connect 07:35:46.309353 accept_connection 3 returned 4 07:35:46.309365 accept_connection 3 returned 0 07:35:46.309374 Read 93 bytes 07:35:46.309381 Process 93 bytes request 07:35:46.309389 Got request: GET /verifiedserver HTTP/1.1 07:35:46.309395 Are-we-friendly question received 07:35:46.309411 Wrote request (93 bytes) input to log/12/server.input 07:35:46.309422 Identifying ourselves as friends 07:35:46.309460 Response sent (56 bytes) and written to log/12/server.response 07:35:46.309467 special request received, no persistency 07:35:46.309473 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 725 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind725 ==111809== ==111809== Process terminating with default action of signal 4 (SIGILL) ==111809== Illegal opcode at address 0x4003082 ==111809== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111809== by 0x4003082: main (tool_main.c:234) === End of file valgrind725 test 0789...[--variable with a file and byte range out of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind789 ../src/curl -q --output log/11/curl789.out --include --trace-ascii log/11/trace789 --trace-config all --trace-time http://127.0.0.1:41173/789 --variable "name[75-85]@log/11/in789" --expand-data '{{name}}' > log/11/stdout789 2> log/11/stderr789 789: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 789 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind789 ../src/curl -q --output log/11/curl789.out --include --trace-ascii log/11/trace789 --trace-config all --trace-time http://127.0.0.1:41173/789 --variable "name[75-85]@log/11/in789" --expand-data '{{name}}' > log/11/stdout789 2> log/11/stderr789 === End of file commands.log === Start of file http_server.log 07:35:47.821769 ====> Client connect 07:35:47.821804 accept_connection 3 returned 4 07:35:47.821820 accept_connection 3 returned 0 07:35:47.821834 Read 93 bytes 07:35:47.821843 Process 93 bytes request 07:35:47.821857 Got request: GET /verifiedserver HTTP/1.1 07:35:47.821866 Are-we-friendly question received 07:35:47.821892 Wrote request (93 bytes) input to log/11/server.input 07:35:47.821907 Identifying ourselves as friends 07:35:47.821958 Response sent (56 bytes) and written to log/11/server.response 07:35:47.821967 special request received, no persistency 07:35:47.821975 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file in789 On the first Monday of the month of April, 1625, the market town of Meung === End of file in789 === Start of file server.cmd Testnum 789 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind789 ==114993== ==114993== Process terminating with default action of signal 4 (SIGILL) ==114993== Illegal opcode at address 0x4003082 ==114993== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==114993== by 0x4003082: main (tool_main.c:234) === End of file valgrind789 test 0791...[--variable with a byte range using plain assign, out of range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind791 ../src/curl -q --output log/3/curl791.out --include --trace-ascii log/3/trace791 --trace-config all --trace-time http://127.0.0.1:42345/791 --variable "name[10-30]=0123456789abcdef" --expand-data '{{name}}' > log/3/stdout791 2> log/3/stderr791 791: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 791 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind791 ../src/curl -q --output log/3/curl791.out --include --trace-ascii log/3/trace791 --trace-config all --trace-time http://127.0.0.1:42345/791 --variable "name[10-30]=0123456789abcdef" --expand-data '{{name}}' > log/3/stdout791 2> log/3/stderr791 === End of file commands.log === Start of file http_server.log 07:35:47.832798 ====> Client connect 07:35:47.832838 accept_connection 3 returned 4 07:35:47.832852 accept_connection 3 returned 0 07:35:47.832864 Read 93 bytes 07:35:47.832874 Process 93 bytes request 07:35:47.832885 Got request: GET /verifiedserver HTTP/1.1 07:35:47.832893 Are-we-friendly question received 07:35:47.832917 Wrote request (93 bytes) input to log/3/server.input 07:35:47.832932 Identifying ourselves as friends 07:35:47.832990 Response sent (56 bytes) and written to log/3/server.response 07:35:47.832999 special request received, no persistency 07:35:47.833006 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind790 ../src/curl -q --output log/13/curl790.out --include --trace-ascii log/13/trace790 --trace-config all --trace-time http://127.0.0.1:33627/790 --variable "name[5-9]=0123456789abcdef" --expand-data '{{name}}' > log/13/stdout790 2> log/13/stderr790 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind792 ../src/curl -q --output log/20/curl792.out --include --trace-ascii log/20/trace792 --trace-config all --trace-time --netrc --netrc-file log/20/netrc792 ftp://127.0.0.1:45671/792 > log/20/stdout792 2> log/20/stderr792 erver.cmd Testnum 791 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind791 ==115018== ==115018== Process terminating with default action of signal 4 (SIGILL) ==115018== Illegal opcode at address 0x4003082 ==115018== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115018== by 0x4003082: main (tool_main.c:234) === End of file valgrind791 test 0790...[--variable with a byte range using plain assign] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind790 ../src/curl -q --output log/13/curl790.out --include --trace-ascii log/13/trace790 --trace-config all --trace-time http://127.0.0.1:33627/790 --variable "name[5-9]=0123456789abcdef" --expand-data '{{name}}' > log/13/stdout790 2> log/13/stderr790 790: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 790 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind790 ../src/curl -q --output log/13/curl790.out --include --trace-ascii log/13/trace790 --trace-config all --trace-time http://127.0.0.1:33627/790 --variable "name[5-9]=0123456789abcdef" --expand-data '{{name}}' > log/13/stdout790 2> log/13/stderr790 === End of file commands.log === Start of file http_server.log 07:35:47.832008 ====> Client connect 07:35:47.832036 accept_connection 3 returned 4 07:35:47.832049 accept_connection 3 returned 0 07:35:47.832059 Read 93 bytes 07:35:47.832068 Process 93 bytes request 07:35:47.832080 Got request: GET /verifiedserver HTTP/1.1 07:35:47.832089 Are-we-friendly question received 07:35:47.832113 Wrote request (93 bytes) input to log/13/server.input 07:35:47.832127 Identifying ourselves as friends 07:35:47.832177 Response sent (56 bytes) and written to log/13/server.response 07:35:47.832186 special request received, no persistency 07:35:47.832194 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 790 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind790 ==115023== ==115023== Process terminating with default action of signal 4 (SIGILL) ==115023== Illegal opcode at address 0x4003082 ==115023== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115023== by 0x4003082: main (tool_main.c:234) === End of file valgrind790 test 0792...[.netrc with embedded NULL byte] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind792 ../src/curl -q --output log/20/curl792.out --include --trace-ascii log/20/trace792 --trace-config all --trace-time --netrc --netrc-file log/20/netrc792 ftp://127.0.0.1:45671/792 > log/20/stdout792 2> log/20/stderr792 792: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 792 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind792 ../src/curl -q --output log/20/curl792.out --include --trace-ascii log/20/trace792 --trace-config all --trace-time --netrc --netrc-file log/20/netrc792 ftp://127.0.0.1:45671/792 > log/20/stdout792 2> log/20/stderr792 === End of file commands.log === Start of file ftp_server.log 07:35:47.998111 ====> Client connect 07:35:47.998273 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:48.000177 < "USER anonymous" 07:35:48.000216 > "331 We are happy you popped in![CR][LF]" 07:35:48.000376 < "PASS ftp@example.com" 07:35:48.000403 > "230 Welcome you silly person[CR][LF]" 07:35:48.000539 < "PWD" 07:35:48.000567 > "257 "/" is current directory[CR][LF]" 07:35:48.000705 < "EPSV" 07:35:48.000725 ====> Passive DATA channel requested by client 07:35:48.000737 DATA sockfilt for passive data channel starting... 07:35:48.002337 DATA sockfilt for passive data channel started (pid 115034) 07:35:48.002487 DATA sockfilt for passive data channel listens on port 38767 07:35:48.002555 > "229 Entering Passive Mode (|||38767|)[LF]" 07:35:48.002572 Client has been notified that DATA conn will be accepted on port 38767 07:35:48.002815 Client connects to port 38767 07:35:48.002842 ====> Client established passive DATA connection on port 38767 07:35:48.002922 < "TYPE I" 07:35:48.002951 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:48.003099 < "SIZE verifiedserver" 07:35:48.003131 > "213 17[CR][LF]" 07:35:48.003257 < "RETR verifiedserver" 07:35:48.003284 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:48.003364 =====> Closing passive DATA connection... 07:35:48.003381 Server disconnects passive DATA connection 07:35:48.003434 Server disconnected passive DATA connection 07:35:48.003450 DATA sockfilt for passive data channel quits (pid 115034) 07:35:48.003703 DATA sockfilt for passive data channel quit (pid 115034) 07:35:48.003734 =====> Closed passive DATA connection 07:35:48.003762 > "226 File transfer complete[CR][LF]" 07:35:48.047075 < "QUIT" 07:35:48.047131 > "221 bye bye baby[CR][LF]" 07:35:48.047382 MAIN sockfilt said DISC 07:35:48.047429 ====> Client disconnected 07:35:48.047499 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:47.843564 ====> Client connect 07:35:47.844360 Received DATA (on stdin) 07:35:47.844387 > 160 bytes data, server => client 07:35:47.844400 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:47.844411 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:47.844421 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:47.846022 < 16 bytes data, client => server 07:35:47.846037 'USER anonymous\r\n' 07:35:47.846204 Received DATA (on stdin) 07:35:47.846216 > 33 bytes data, server => client 07:35:47.846226 '331 We are happy you popped in!\r\n' 07:35:47.846281 < 22 bytes data, client => server 07:35:47.846292 'PASS ftp@example.com\r\n' 07:35:47.846387 Received DATA (on stdin) 07:35:47.846399 > 30 bytes data, server => client 07:35:47.846409 '230 Welcome you silly person\r\n' 07:35:47.846452 < 5 bytes data, client => server 07:35:47.846462 'PWD\r\n' 07:35:47.846550 Received DATA (on stdin) 07:35:47.846560 > 30 bytes data, server => client 07:35:47.846570 '257 "/" is current directory\r\n' 07:35:47.846619 < 6 bytes data, client => server 07:35:47.846629 'EPSV\r\n' 07:35:47.848565 Received DATA (on stdin) 07:35:47.848581 > 38 bytes data, server => client 07:35:47.848591 '229 Entering Passive Mode (|||38767|)\n' 07:35:47.848750 < 8 bytes data, client => server 07:35:47.848762 'TYPE I\r\n' 07:35:47.848937 Received DATA (on stdin) 07:35:47.848949 > 33 bytes data, server => client 07:35:47.848959 '200 I modify TYPE as you wanted\r\n' 07:35:47.849006 < 21 bytes data, client => server 07:35:47.849017 'SIZE verifiedserver\r\n' 07:35:47.8491CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind793 ../src/curl -q --output log/15/curl793.out --include --trace-ascii log/15/trace793 --trace-config all --trace-time --netrc --netrc-file log/15/netrc793 ftp://127.0.0.1:46295/793 > log/15/stdout793 2> log/15/stderr793 15 Received DATA (on stdin) 07:35:47.849126 > 8 bytes data, server => client 07:35:47.849135 '213 17\r\n' 07:35:47.849181 < 21 bytes data, client => server 07:35:47.849192 'RETR verifiedserver\r\n' 07:35:47.849287 Received DATA (on stdin) 07:35:47.849319 > 29 bytes data, server => client 07:35:47.849332 '150 Binary junk (17 bytes).\r\n' 07:35:47.849762 Received DATA (on stdin) 07:35:47.849784 > 28 bytes data, server => client 07:35:47.849796 '226 File transfer complete\r\n' 07:35:47.892875 < 6 bytes data, client => server 07:35:47.892904 'QUIT\r\n' 07:35:47.893129 Received DATA (on stdin) 07:35:47.893162 > 18 bytes data, server => client 07:35:47.893174 '221 bye bye baby\r\n' 07:35:47.893307 ====> Client disconnect 07:35:47.893414 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:47.848149 Running IPv4 version 07:35:47.848208 Listening on port 38767 07:35:47.848246 Wrote pid 115034 to log/20/server/ftp_sockdata.pid 07:35:47.848266 Received PING (on stdin) 07:35:47.848351 Received PORT (on stdin) 07:35:47.848717 ====> Client connect 07:35:47.849307 Received DATA (on stdin) 07:35:47.849321 > 17 bytes data, server => client 07:35:47.849333 'WE ROOLZ: 88588\r\n' 07:35:47.849368 Received DISC (on stdin) 07:35:47.849379 ====> Client forcibly disconnected 07:35:47.849436 Received QUIT (on stdin) 07:35:47.849446 quits 07:35:47.849510 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc792 machine 127.0.0.1 login username password hello === End of file netrc792 === Start of file server.cmd Testnum 792 === End of file server.cmd === Start of file valgrind792 ==115170== ==115170== Process terminating with default action of signal 4 (SIGILL) ==115170== Illegal opcode at address 0x4003082 ==115170== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115170== by 0x4003082: main (tool_main.c:234) === End of file valgrind792 test 0793...[.netrc with embedded NULL byte, with quoted token] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind793 ../src/curl -q --output log/15/curl793.out --include --trace-ascii log/15/trace793 --trace-config all --trace-time --netrc --netrc-file log/15/netrc793 ftp://127.0.0.1:46295/793 > log/15/stdout793 2> log/15/stderr793 793: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 793 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind793 ../src/curl -q --output log/15/curl793.out --include --trace-ascii log/15/trace793 --trace-config all --trace-time --netrc --netrc-file log/15/netrc793 ftp://127.0.0.1:46295/793 > log/15/stdout793 2> log/15/stderr793 === End of file commands.log === Start of file ftp_server.log 07:35:48.005806 ====> Client connect 07:35:48.005945 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:48.006210 < "USER anonymous" 07:35:48.006257 > "331 We are happy you popped in![CR][LF]" 07:35:48.006433 < "PASS ftp@example.com" 07:35:48.006460 > "230 Welcome you silly person[CR][LF]" 07:35:48.006574 < "PWD" 07:35:48.006617 > "257 "/" is current directory[CR][LF]" 07:35:48.006958 < "EPSV" 07:35:48.006989 ====> Passive DATA channel requested by client 07:35:48.007001 DATA sockfilt for passive data channel starting... 07:35:48.008679 DATA sockfilt for passive data channel started (pid 115062) 07:35:48.008840 DATA sockfilt for passive data channel listens on port 33125 07:35:48.008887 > "229 Entering Passive Mode (|||33125|)[LF]" 07:35:48.008904 Client has been notified that DATA conn will be accepted on port 33125 07:35:48.009110 Client connects to port 33125 07:35:48.009136 ====> Client established passive DATA connection on port 33125 07:35:48.009242 < "TYPE I" 07:35:48.009270 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:48.009494 < "SIZE verifiedserver" 07:35:48.009548 > "213 17[CR][LF]" 07:35:48.009728 < "RETR verifiedserver" 07:35:48.009769 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:48.009849 =====> Closing passive DATA connection... 07:35:48.009868 Server disconnects passive DATA connection 07:35:48.010029 Server disconnected passive DATA connection 07:35:48.010059 DATA sockfilt for passive data channel quits (pid 115062) 07:35:48.010277 DATA sockfilt for passive data channel quit (pid 115062) 07:35:48.010303 =====> Closed passive DATA connection 07:35:48.010328 > "226 File transfer complete[CR][LF]" 07:35:48.050591 < "QUIT" 07:35:48.050641 > "221 bye bye baby[CR][LF]" 07:35:48.052703 MAIN sockfilt said DISC 07:35:48.052752 ====> Client disconnected 07:35:48.052831 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:47.851688 ====> Client connect 07:35:47.851939 Received DATA (on stdin) 07:35:47.851953 > 160 bytes data, server => client 07:35:47.851964 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:47.851975 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:47.851985 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:47.852044 < 16 bytes data, client => server 07:35:47.852055 'USER anonymous\r\n' 07:35:47.852250 Received DATA (on stdin) 07:35:47.852267 > 33 bytes data, server => client 07:35:47.852278 '331 We are happy you popped in!\r\n' 07:35:47.852340 < 22 bytes data, client => server 07:35:47.852351 'PASS ftp@example.com\r\n' 07:35:47.852428 Received DATA (on stdin) 07:35:47.852447 > 30 bytes data, server => client 07:35:47.852459 '230 Welcome you silly person\r\n' 07:35:47.852510 < 5 bytes data, client => server 07:35:47.852523 'PWD\r\n' 07:35:47.852604 Received DATA (on stdin) 07:35:47.852615 > 30 bytes data, server => client 07:35:47.852628 '257 "/" is current directory\r\n' 07:35:47.852825 < 6 bytes data, client => server 07:35:47.852844 'EPSV\r\n' 07:35:47.854895 Received DATA (on stdin) 07:35:47.854910 > 38 bytes data, server => client 07:35:47.854922 '229 Entering Passive Mode (|||33125|)\n' 07:35:47.855133 < 8 bytes data, client => server 07:35:47.855145 'TYPE I\r\n' 07:35:47.855255 Received DATA (on stdin) 07:35:47.855267 > 33 bytes data, server => client 07:35:47.855278 '200 I modify TYPE as you wanted\r\n' 07:35:47.855350 < 21 bytes data, client => server 07:35:47.855373 'SIZE verifiedserver\r\n' 07:35:47.855544 Received DATA (on stdin) 07:35:47.855558 > 8 bytes data, server => client 07:35:47.855569 '213 17\r\n' 07:35:47.855623 < 21 bytes data, client => server 07:35:47.855638 'RETR verifiedserver\r\n' 07:35:47.855858 Received DATA (on stdin) 07:35:47.855873 > 29 bytes data, server => client 07:35:47.855885 '150 Binary junk (17 bytes).\r\n' 07:35:47.856314 Received DATA (on stdin) 07:35:47.856326 > 28 bytes data, server => client 07:35:47.856335 '226 File transfer complete\r\n' 07:35:47.896376 < 6 bytes data, client => server 07:35:47.896402 'QUIT\r\n' 07:35:47.896632 Received DATA (on stdin) 07:35:47.896644 > 18 bytes data, server => client 07:35:47.896655 '221 bye bye baby\r\n' 07:35:47.896774 ====> Client disconnect 07:35:47.898818 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:48.854277 Running IPv4 version 07:35:48.854334 Listening on port 33125 07:35:48.854375 Wrote pid 115062 to log/15/server/ftp_sockdata.pid 07:35:48.854605 Received PING (on stdin) 07:35:48.854703 Received PORT (on stdin) 07:35:48.855045 ====> Client connect 07:35:48.855770 Received DATA (on stdin) 07:35:48.855788 > 17 bytes data, server => client 07:35:48.855798 'WE ROOLZ: 79835\r\n' 07:35:48.855857 Received DISC (on stdin) 07:35:48.855873 ====> Client forcibly disconnected 07:35CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind724 ../src/curl -q --output log/8/curl724.out --include --trace-ascii log/8/trace724 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout724 2> log/8/stderr724 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind805 ../src/curl -q --output log/14/curl805.out --include --trace-ascii log/14/trace805 --trace-config all --trace-time imap://127.0.0.1:34685/805 -T log/14/upload805 -u user:secret > log/14/stdout805 2> log/14/stderr805 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind819 ../src/curl -q --output log/8/curl819.out --include --trace-ascii log/8/trace819 --trace-config all --trace-time 'imap://127.0.0.1:38013/819/;MAILINDEX=1' -u user:secret > log/8/stdout819 2> log/8/stderr819 :48.856048 Received QUIT (on stdin) 07:35:48.856062 quits 07:35:48.856115 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc793 machine 127.0.0.1 login username "password" hello === End of file netrc793 === Start of file server.cmd Testnum 793 === End of file server.cmd === Start of file valgrind793 ==115227== ==115227== Process terminating with default action of signal 4 (SIGILL) ==115227== Illegal opcode at address 0x4003082 ==115227== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115227== by 0x4003082: main (tool_main.c:234) === End of file valgrind793 setenv HOME = /startdir/src/build-curl/tests/log/8 test 0724...[IPFS with gateway URL from gateway file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind724 ../src/curl -q --output log/8/curl724.out --include --trace-ascii log/8/trace724 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout724 2> log/8/stderr724 724: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 724 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind724 ../src/curl -q --output log/8/curl724.out --include --trace-ascii log/8/trace724 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/8/stdout724 2> log/8/stderr724 === End of file commands.log === Start of file http_server.log 07:35:46.302334 ====> Client connect 07:35:46.302358 accept_connection 3 returned 4 07:35:46.302369 accept_connection 3 returned 0 07:35:46.302378 Read 93 bytes 07:35:46.302385 Process 93 bytes request 07:35:46.302395 Got request: GET /verifiedserver HTTP/1.1 07:35:46.302401 Are-we-friendly question received 07:35:46.302418 Wrote request (93 bytes) input to log/8/server.input 07:35:46.302429 Identifying ourselves as friends 07:35:46.302467 Response sent (56 bytes) and written to log/8/server.response 07:35:46.302474 special request received, no persistency 07:35:46.302480 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 724 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind724 ==111800== ==111800== Process terminating with default action of signal 4 (SIGILL) ==111800== Illegal opcode at address 0x4003082 ==111800== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==111800== by 0x4003082: main (tool_main.c:234) === End of file valgrind724 test 0805...[IMAP APPEND message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind805 ../src/curl -q --output log/14/curl805.out --include --trace-ascii log/14/trace805 --trace-config all --trace-time imap://127.0.0.1:34685/805 -T log/14/upload805 -u user:secret > log/14/stdout805 2> log/14/stderr805 805: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 805 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind805 ../src/curl -q --output log/14/curl805.out --include --trace-ascii log/14/trace805 --trace-config all --trace-time imap://127.0.0.1:34685/805 -T log/14/upload805 -u user:secret > log/14/stdout805 2> log/14/stderr805 === End of file commands.log === Start of file imap_server.log 07:35:48.318940 ====> Client connect 07:35:48.319094 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:48.319405 < "A001 CAPABILITY" 07:35:48.319461 > "A001 BAD Command[CR][LF]" 07:35:48.319637 < "A002 LIST "verifiedserver" *" 07:35:48.319665 LIST_imap got "verifiedserver" * 07:35:48.319690 > "* LIST () "/" "WE ROOLZ: 108215"[CR][LF]" 07:35:48.319706 > "A002 OK LIST Completed[CR][LF]" 07:35:48.319719 return proof we are we 07:35:48.360246 < "A003 LOGOUT" 07:35:48.360288 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:48.360301 > "A003 OK LOGOUT completed[CR][LF]" 07:35:48.360413 MAIN sockfilt said DISC 07:35:48.360428 ====> Client disconnected 07:35:48.360481 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.164811 ====> Client connect 07:35:48.165096 Received DATA (on stdin) 07:35:48.165112 > 178 bytes data, server => client 07:35:48.165123 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:48.165135 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:48.165145 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:48.165154 'rve\r\n' 07:35:48.165228 < 17 bytes data, client => server 07:35:48.165242 'A001 CAPABILITY\r\n' 07:35:48.165455 Received DATA (on stdin) 07:35:48.165473 > 18 bytes data, server => client 07:35:48.165484 'A001 BAD Command\r\n' 07:35:48.165553 < 30 bytes data, client => server 07:35:48.165572 'A002 LIST "verifiedserver" *\r\n' 07:35:48.165705 Received DATA (on stdin) 07:35:48.165719 > 34 bytes data, server => client 07:35:48.165729 '* LIST () "/" "WE ROOLZ: 108215"\r\n' 07:35:48.165755 Received DATA (on stdin) 07:35:48.165792 > 24 bytes data, server => client 07:35:48.165826 'A002 OK LIST Completed\r\n' 07:35:48.206093 < 13 bytes data, client => server 07:35:48.206112 'A003 LOGOUT\r\n' 07:35:48.206282 Received DATA (on stdin) 07:35:48.206291 > 36 bytes data, server => client 07:35:48.206299 '* BYE curl IMAP server signing off\r\n' 07:35:48.206316 Received DATA (on stdin) 07:35:48.206323 > 26 bytes data, server => client 07:35:48.206331 'A003 OK LOGOUT completed\r\n' 07:35:48.206357 ====> Client disconnect 07:35:48.206462 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 805 === End of file server.cmd === Start of file upload805 Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) From: Fred Foobar Subject: afternoon meeting To: joe@example.com Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Hello Joe, do you think we can meet at 3:30 tomorrow? === End of file upload805 === Start of file valgrind805 ==115322== ==115322== Process terminating with default action of signal 4 (SIGILL) ==115322== Illegal opcode at address 0x4003082 ==115322== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115322== by 0x4003082: main (tool_main.c:234) === End of file valgrind805 test 0819...[IMAP plain authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind819 ../src/curl -q --output log/8/curl819.out --include --trace-ascii log/8/trace819 --trace-config all --trace-time 'imap://127.0.0.1:38013/819/;MAILINDEX=1' -u user:secret > log/8/stdouCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind820 ../src/curl -q --output log/14/curl820.out --include --trace-ascii log/14/trace820 --trace-config all --trace-time 'imap://127.0.0.1:34685/820/;MAILINDEX=1' -u user:secret > log/14/stdout820 2> log/14/stderr820 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind799 ../src/curl -q --output log/10/curl799.out --include --trace-ascii log/10/trace799 --trace-config all --trace-time 'imap://127.0.0.1:42263/799/;MAILINDEX=1' -u user:secret --login-options AUTH=+LOGIN > log/10/stdout799 2> log/10/stderr799 t819 2> log/8/stderr819 819: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 819 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind819 ../src/curl -q --output log/8/curl819.out --include --trace-ascii log/8/trace819 --trace-config all --trace-time 'imap://127.0.0.1:38013/819/;MAILINDEX=1' -u user:secret > log/8/stdout819 2> log/8/stderr819 === End of file commands.log === Start of file imap_server.log 07:35:48.750495 ====> Client connect 07:35:48.750600 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:48.750867 < "A001 CAPABILITY" 07:35:48.750891 > "A001 BAD Command[CR][LF]" 07:35:48.750997 < "A002 LIST "verifiedserver" *" 07:35:48.751016 LIST_imap got "verifiedserver" * 07:35:48.751031 > "* LIST () "/" "WE ROOLZ: 108619"[CR][LF]" 07:35:48.751041 > "A002 OK LIST Completed[CR][LF]" 07:35:48.751049 return proof we are we 07:35:48.793766 < "A003 LOGOUT" 07:35:48.793809 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:48.793828 > "A003 OK LOGOUT completed[CR][LF]" 07:35:48.793977 MAIN sockfilt said DISC 07:35:48.794000 ====> Client disconnected 07:35:48.794066 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.596394 ====> Client connect 07:35:48.596660 Received DATA (on stdin) 07:35:48.596672 > 178 bytes data, server => client 07:35:48.596680 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:48.596688 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:48.596695 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:48.596700 'rve\r\n' 07:35:48.596747 < 17 bytes data, client => server 07:35:48.596755 'A001 CAPABILITY\r\n' 07:35:48.596871 Received DATA (on stdin) 07:35:48.596879 > 18 bytes data, server => client 07:35:48.596885 'A001 BAD Command\r\n' 07:35:48.596919 < 30 bytes data, client => server 07:35:48.596926 'A002 LIST "verifiedserver" *\r\n' 07:35:48.597026 Received DATA (on stdin) 07:35:48.597033 > 34 bytes data, server => client 07:35:48.597040 '* LIST () "/" "WE ROOLZ: 108619"\r\n' 07:35:48.597053 Received DATA (on stdin) 07:35:48.597059 > 24 bytes data, server => client 07:35:48.597065 'A002 OK LIST Completed\r\n' 07:35:48.639611 < 13 bytes data, client => server 07:35:48.639637 'A003 LOGOUT\r\n' 07:35:48.639814 Received DATA (on stdin) 07:35:48.639827 > 36 bytes data, server => client 07:35:48.639839 '* BYE curl IMAP server signing off\r\n' 07:35:48.639862 Received DATA (on stdin) 07:35:48.639872 > 26 bytes data, server => client 07:35:48.639884 'A003 OK LOGOUT completed\r\n' 07:35:48.639915 ====> Client disconnect 07:35:48.640043 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTHENTICATE + REPLY AHVzZXIAc2VjcmV0 A002 OK AUTHENTICATE completed Testnum 819 === End of file server.cmd === Start of file valgrind819 ==115423== ==115423== Process terminating with default action of signal 4 (SIGILL) ==115423== Illegal opcode at address 0x4003082 ==115423== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115423== by 0x4003082: main (tool_main.c:234) === End of file valgrind819 test 0820...[IMAP login authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind820 ../src/curl -q --output log/14/curl820.out --include --trace-ascii log/14/trace820 --trace-config all --trace-time 'imap://127.0.0.1:34685/820/;MAILINDEX=1' -u user:secret > log/14/stdout820 2> log/14/stderr820 820: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 820 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind820 ../src/curl -q --output log/14/curl820.out --include --trace-ascii log/14/trace820 --trace-config all --trace-time 'imap://127.0.0.1:34685/820/;MAILINDEX=1' -u user:secret > log/14/stdout820 2> log/14/stderr820 === End of file commands.log === Start of file imap_server.log 07:35:48.755710 ====> Client connect 07:35:48.755806 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:48.755986 < "A001 CAPABILITY" 07:35:48.756009 > "A001 BAD Command[CR][LF]" 07:35:48.756108 < "A002 LIST "verifiedserver" *" 07:35:48.756125 LIST_imap got "verifiedserver" * 07:35:48.756140 > "* LIST () "/" "WE ROOLZ: 108215"[CR][LF]" 07:35:48.756150 > "A002 OK LIST Completed[CR][LF]" 07:35:48.756158 return proof we are we 07:35:48.797029 < "A003 LOGOUT" 07:35:48.797082 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:48.797102 > "A003 OK LOGOUT completed[CR][LF]" 07:35:48.797695 MAIN sockfilt said DISC 07:35:48.797713 ====> Client disconnected 07:35:48.797752 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.601610 ====> Client connect 07:35:48.601792 Received DATA (on stdin) 07:35:48.601801 > 178 bytes data, server => client 07:35:48.601809 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:48.601816 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:48.601822 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:48.601828 'rve\r\n' 07:35:48.601871 < 17 bytes data, client => server 07:35:48.601879 'A001 CAPABILITY\r\n' 07:35:48.601988 Received DATA (on stdin) 07:35:48.601995 > 18 bytes data, server => client 07:35:48.602002 'A001 BAD Command\r\n' 07:35:48.602035 < 30 bytes data, client => server 07:35:48.602041 'A002 LIST "verifiedserver" *\r\n' 07:35:48.602135 Received DATA (on stdin) 07:35:48.602142 > 34 bytes data, server => client 07:35:48.602149 '* LIST () "/" "WE ROOLZ: 108215"\r\n' 07:35:48.602161 Received DATA (on stdin) 07:35:48.602167 > 24 bytes data, server => client 07:35:48.602174 'A002 OK LIST Completed\r\n' 07:35:48.642888 < 13 bytes data, client => server 07:35:48.642936 'A003 LOGOUT\r\n' 07:35:48.643086 Received DATA (on stdin) 07:35:48.643111 > 36 bytes data, server => client 07:35:48.643122 '* BYE curl IMAP server signing off\r\n' 07:35:48.643142 Received DATA (on stdin) 07:35:48.643150 > 26 bytes data, server => client 07:35:48.643156 'A003 OK LOGOUT completed\r\n' 07:35:48.643641 ====> Client disconnect 07:35:48.643729 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH LOGIN REPLY AUTHENTICATE + VXNlcm5hbWU6 REPLY dXNlcg== + UGFzc3dvcmQ6 REPLY c2VjcmV0 A002 OK AUTHENTICATE completed Testnum 820 === End of file server.cmd === Start of file valgrind820 ==115427== ==115427== Process terminating with default action of signal 4 (SIGILL) ==115427== Illegal opcode at address 0x4003082 ==115427== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115427== by 0x4003082: main (tool_main.c:234) === End of file valgrind820 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/imap_server.pid" --logfile "log/10/imap_server.log" --logdir "log/10" --portfile "log/10/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42263 (log/10/server/imap_server.port) RUN: IMAP server is PID 114987 port 42263 * pid imap => 114987 114987 test 0799...[IMAP with -CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind800 ../src/curl -q --output log/16/curl800.out --include --trace-ascii log/16/trace800 --trace-config all --trace-time 'imap://127.0.0.1:37765/800/;MAILINDEX=1' -u '"user:sec"ret{' > log/16/stdout800 2> log/16/stderr800 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind740 ../src/curl -q --output log/23/curl740.out --include --trace-ascii log/23/trace740 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/23/stdout740 2> log/23/stderr740 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind801 ../src/curl -q --output log/19/curl801.out --include --trace-ascii log/19/trace801 --trace-config all --trace-time 'imap://127.0.0.1:39567/801/;MAILINDEX=123/;SECTION=1' -u user:secret > log/19/stdout801 2> log/19/stderr801 -login-options 'AUTH=+LOGIN'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind799 ../src/curl -q --output log/10/curl799.out --include --trace-ascii log/10/trace799 --trace-config all --trace-time 'imap://127.0.0.1:42263/799/;MAILINDEX=1' -u user:secret --login-options AUTH=+LOGIN > log/10/stdout799 2> log/10/stderr799 799: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 799 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind799 ../src/curl -q --output log/10/curl799.out --include --trace-ascii log/10/trace799 --trace-config all --trace-time 'imap://127.0.0.1:42263/799/;MAILINDEX=1' -u user:secret --login-options AUTH=+LOGIN > log/10/stdout799 2> log/10/stderr799 === End of file commands.log === Start of file imap_server.log 07:35:48.021260 IMAP server listens on port IPv4/42263 07:35:48.021324 logged pid 114987 in log/10/server/imap_server.pid 07:35:48.021345 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.867022 Running IPv4 version 07:35:48.867088 Listening on port 42263 07:35:48.867118 Wrote pid 115107 to log/10/server/imap_sockfilt.pid 07:35:48.867140 Wrote port 42263 to log/10/server/imap_server.port 07:35:48.867155 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY LOGIN A002 OK LOGIN completed Testnum 799 === End of file server.cmd === Start of file valgrind799 ==115523== ==115523== Process terminating with default action of signal 4 (SIGILL) ==115523== Illegal opcode at address 0x4003082 ==115523== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115523== by 0x4003082: main (tool_main.c:234) === End of file valgrind799 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/16/server/imap_server.pid" --logfile "log/16/imap_server.log" --logdir "log/16" --portfile "log/16/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37765 (log/16/server/imap_server.port) RUN: IMAP server is PID 115100 port 37765 * pid imap => 115100 115100 test 0800...[IMAP FETCH message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind800 ../src/curl -q --output log/16/curl800.out --include --trace-ascii log/16/trace800 --trace-config all --trace-time 'imap://127.0.0.1:37765/800/;MAILINDEX=1' -u '"user:sec"ret{' > log/16/stdout800 2> log/16/stderr800 800: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 800 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind800 ../src/curl -q --output log/16/curl800.out --include --trace-ascii log/16/trace800 --trace-config all --trace-time 'imap://127.0.0.1:37765/800/;MAILINDEX=1' -u '"user:sec"ret{' > log/16/stdout800 2> log/16/stderr800 === End of file commands.log === Start of file imap_server.log 07:35:48.050662 IMAP server listens on port IPv4/37765 07:35:48.050731 logged pid 115100 in log/16/server/imap_server.pid 07:35:48.050749 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.896369 Running IPv4 version 07:35:48.896442 Listening on port 37765 07:35:48.896473 Wrote pid 115165 to log/16/server/imap_sockfilt.pid 07:35:48.896495 Wrote port 37765 to log/16/server/imap_server.port 07:35:48.896583 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 800 === End of file server.cmd === Start of file valgrind800 ==115572== ==115572== Process terminating with default action of signal 4 (SIGILL) ==115572== Illegal opcode at address 0x4003082 ==115572== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115572== by 0x4003082: main (tool_main.c:234) === End of file valgrind800 setenv HOME = /startdir/src/build-curl/tests/log/23 test 0740...[IPFS with gateway URL from multiline gateway file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind740 ../src/curl -q --output log/23/curl740.out --include --trace-ascii log/23/trace740 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/23/stdout740 2> log/23/stderr740 740: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 740 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind740 ../src/curl -q --output log/23/curl740.out --include --trace-ascii log/23/trace740 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/23/stdout740 2> log/23/stderr740 === End of file commands.log === Start of file http_server.log 07:35:47.278597 ====> Client connect 07:35:47.278633 accept_connection 3 returned 4 07:35:47.278649 accept_connection 3 returned 0 07:35:47.278662 Read 93 bytes 07:35:47.278672 Process 93 bytes request 07:35:47.278685 Got request: GET /verifiedserver HTTP/1.1 07:35:47.278694 Are-we-friendly question received 07:35:47.278729 Wrote request (93 bytes) input to log/23/server.input 07:35:47.278745 Identifying ourselves as friends 07:35:47.278799 Response sent (56 bytes) and written to log/23/server.response 07:35:47.278809 special request received, no persistency 07:35:47.278818 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 740 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind740 ==113684== ==113684== Process terminating with default action of signal 4 (SIGILL) ==113684== Illegal opcode at address 0x4003082 ==113684== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113684== by 0x4003082: main (tool_main.c:234) === End of file valgrind740 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/19/server/imap_server.pid" --logfile "log/19/imap_server.log" --logdir "log/19" --portfile "log/19/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39567 (log/19/server/imap_server.port) RUN: IMAP server is PID 115166 port 39567 * pid imap => 115166 115166 test 0801...[IMAP FETCH message by MAILINDEX and SECTION] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind801 ../src/curl -q --output log/19/curl801.out CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind802 ../src/curl -q --output log/2/curl802.out --include --trace-ascii log/2/trace802 --trace-config all --trace-time 'imap://127.0.0.1:40327/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret > log/2/stdout802 2> log/2/stderr802 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind803 ../src/curl -q --output log/18/curl803.out --include --trace-ascii log/18/trace803 --trace-config all --trace-time 'imap://127.0.0.1:45183/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret > log/18/stdout803 2> log/18/stderr803 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind804 ../src/curl -q --output log/21/curl804.out --include --trace-ascii log/21/trace804 --trace-config all --trace-time 'imap://127.0.0.1:41463/804/;MAILINDEX=123/;SECTION=1' 'imap://127.0.0.1:41463/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret > log/21/stdout804 2> log/21/stderr804 --include --trace-ascii log/19/trace801 --trace-config all --trace-time 'imap://127.0.0.1:39567/801/;MAILINDEX=123/;SECTION=1' -u user:secret > log/19/stdout801 2> log/19/stderr801 801: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 801 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind801 ../src/curl -q --output log/19/curl801.out --include --trace-ascii log/19/trace801 --trace-config all --trace-time 'imap://127.0.0.1:39567/801/;MAILINDEX=123/;SECTION=1' -u user:secret > log/19/stdout801 2> log/19/stderr801 === End of file commands.log === Start of file imap_server.log 07:35:48.084323 IMAP server listens on port IPv4/39567 07:35:48.084403 logged pid 115166 in log/19/server/imap_server.pid 07:35:48.084425 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.930039 Running IPv4 version 07:35:48.930134 Listening on port 39567 07:35:48.930179 Wrote pid 115200 to log/19/server/imap_sockfilt.pid 07:35:48.930209 Wrote port 39567 to log/19/server/imap_server.port 07:35:48.930226 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 801 === End of file server.cmd === Start of file valgrind801 ==115621== ==115621== Process terminating with default action of signal 4 (SIGILL) ==115621== Illegal opcode at address 0x4003082 ==115621== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115621== by 0x4003082: main (tool_main.c:234) === End of file valgrind801 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/2/server/imap_server.pid" --logfile "log/2/imap_server.log" --logdir "log/2" --portfile "log/2/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40327 (log/2/server/imap_server.port) RUN: IMAP server is PID 115183 port 40327 * pid imap => 115183 115183 test 0802...[IMAP SELECT UIDVALIDITY Success] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind802 ../src/curl -q --output log/2/curl802.out --include --trace-ascii log/2/trace802 --trace-config all --trace-time 'imap://127.0.0.1:40327/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret > log/2/stdout802 2> log/2/stderr802 802: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 802 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind802 ../src/curl -q --output log/2/curl802.out --include --trace-ascii log/2/trace802 --trace-config all --trace-time 'imap://127.0.0.1:40327/802;UIDVALIDITY=3857529045/;MAILINDEX=123/;SECTION=TEXT' -u user:secret > log/2/stdout802 2> log/2/stderr802 === End of file commands.log === Start of file imap_server.log 07:35:48.099573 IMAP server listens on port IPv4/40327 07:35:48.099649 logged pid 115183 in log/2/server/imap_server.pid 07:35:48.099670 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.945232 Running IPv4 version 07:35:48.945305 Listening on port 40327 07:35:48.945341 Wrote pid 115221 to log/2/server/imap_sockfilt.pid 07:35:48.945378 Wrote port 40327 to log/2/server/imap_server.port 07:35:48.945484 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 802 === End of file server.cmd === Start of file valgrind802 ==115658== ==115658== Process terminating with default action of signal 4 (SIGILL) ==115658== Illegal opcode at address 0x4003082 ==115658== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115658== by 0x4003082: main (tool_main.c:234) === End of file valgrind802 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/18/server/imap_server.pid" --logfile "log/18/imap_server.log" --logdir "log/18" --portfile "log/18/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 45183 (log/18/server/imap_server.port) RUN: IMAP server is PID 115283 port 45183 * pid imap => 115283 115283 test 0803...[IMAP SELECT UIDVALIDITY Failure] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind803 ../src/curl -q --output log/18/curl803.out --include --trace-ascii log/18/trace803 --trace-config all --trace-time 'imap://127.0.0.1:45183/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret > log/18/stdout803 2> log/18/stderr803 803: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 803 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind803 ../src/curl -q --output log/18/curl803.out --include --trace-ascii log/18/trace803 --trace-config all --trace-time 'imap://127.0.0.1:45183/803;UIDVALIDITY=12345/;MAILINDEX=123' -u user:secret > log/18/stdout803 2> log/18/stderr803 === End of file commands.log === Start of file imap_server.log 07:35:48.210615 IMAP server listens on port IPv4/45183 07:35:48.210696 logged pid 115283 in log/18/server/imap_server.pid 07:35:48.210720 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.056333 Running IPv4 version 07:35:48.056423 Listening on port 45183 07:35:48.056464 Wrote pid 115285 to log/18/server/imap_sockfilt.pid 07:35:48.056493 Wrote port 45183 to log/18/server/imap_server.port 07:35:48.056512 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 803 === End of file server.cmd === Start of file valgrind803 ==115724== ==115724== Process terminating with default action of signal 4 (SIGILL) ==115724== Illegal opcode at address 0x4003082 ==115724== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115724== by 0x4003082: main (tool_main.c:234) === End of file valgrind803 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/21/server/imap_server.pid" --logfile "log/21/imap_server.log" --logdir "log/21" --portfile "log/21/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41463 (log/21/server/imap_server.port) RUN: IMAP server is PID 115291 port 41463 * pid imap => 115291 115291 test 0804...[IMAP doesn't perform SELECT if re-using the same mailbox] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind804 ../src/curl -q --output log/21/curl804.out --include --trace-ascii log/21/trace804 --trace-config all --trace-time 'imap://127.0.0.1:41463/804/;MAILINDEX=123/;SECTION=1' 'imap://127.0.0.1:41463/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret > log/21/stdout804 2> log/21/stderr804 804: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 804 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind821 ../src/curl -q --output log/8/curl821.out --include --trace-ascii log/8/trace821 --trace-config all --trace-time 'imap://127.0.0.1:38013/821/;MAILINDEX=1' -u user:secret > log/8/stdout821 2> log/8/stderr821 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind822 ../src/curl -q --output log/14/curl822.out --include --trace-ascii log/14/trace822 --trace-config all --trace-time 'imap://127.0.0.1:34685/822/;MAILINDEX=1' -u testuser:testpass > log/14/stdout822 2> log/14/stderr822 6 --log-file=log/21/valgrind804 ../src/curl -q --output log/21/curl804.out --include --trace-ascii log/21/trace804 --trace-config all --trace-time 'imap://127.0.0.1:41463/804/;MAILINDEX=123/;SECTION=1' 'imap://127.0.0.1:41463/804/;MAILINDEX=456/;SECTION=2.3' -u user:secret > log/21/stdout804 2> log/21/stderr804 === End of file commands.log === Start of file imap_server.log 07:35:48.305513 IMAP server listens on port IPv4/41463 07:35:48.305585 logged pid 115291 in log/21/server/imap_server.pid 07:35:48.305608 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.151273 Running IPv4 version 07:35:48.151341 Listening on port 41463 07:35:48.151378 Wrote pid 115297 to log/21/server/imap_sockfilt.pid 07:35:48.151404 Wrote port 41463 to log/21/server/imap_server.port 07:35:48.151420 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 804 === End of file server.cmd === Start of file valgrind804 ==115826== ==115826== Process terminating with default action of signal 4 (SIGILL) ==115826== Illegal opcode at address 0x4003082 ==115826== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115826== by 0x4003082: main (tool_main.c:234) === End of file valgrind804 test 0821...[IMAP CRAM-MD5 authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind821 ../src/curl -q --output log/8/curl821.out --include --trace-ascii log/8/trace821 --trace-config all --trace-time 'imap://127.0.0.1:38013/821/;MAILINDEX=1' -u user:secret > log/8/stdout821 2> log/8/stderr821 821: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 821 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind821 ../src/curl -q --output log/8/curl821.out --include --trace-ascii log/8/trace821 --trace-config all --trace-time 'imap://127.0.0.1:38013/821/;MAILINDEX=1' -u user:secret > log/8/stdout821 2> log/8/stderr821 === End of file commands.log === Start of file imap_server.log 07:35:49.216817 ====> Client connect 07:35:49.216947 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.217162 < "A001 CAPABILITY" 07:35:49.217186 > "A001 BAD Command[CR][LF]" 07:35:49.217300 < "A002 LIST "verifiedserver" *" 07:35:49.217320 LIST_imap got "verifiedserver" * 07:35:49.217336 > "* LIST () "/" "WE ROOLZ: 108619"[CR][LF]" 07:35:49.217348 > "A002 OK LIST Completed[CR][LF]" 07:35:49.217357 return proof we are we 07:35:49.263552 < "A003 LOGOUT" 07:35:49.263583 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.263600 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.264220 MAIN sockfilt said DISC 07:35:49.264238 ====> Client disconnected 07:35:49.264280 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.062699 ====> Client connect 07:35:49.062937 Received DATA (on stdin) 07:35:49.062949 > 178 bytes data, server => client 07:35:49.062958 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.062966 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.062973 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.062982 'rve\r\n' 07:35:49.063036 < 17 bytes data, client => server 07:35:49.063045 'A001 CAPABILITY\r\n' 07:35:49.063166 Received DATA (on stdin) 07:35:49.063175 > 18 bytes data, server => client 07:35:49.063182 'A001 BAD Command\r\n' 07:35:49.063220 < 30 bytes data, client => server 07:35:49.063228 'A002 LIST "verifiedserver" *\r\n' 07:35:49.063336 Received DATA (on stdin) 07:35:49.063344 > 34 bytes data, server => client 07:35:49.063353 '* LIST () "/" "WE ROOLZ: 108619"\r\n' 07:35:49.063367 Received DATA (on stdin) 07:35:49.063375 > 24 bytes data, server => client 07:35:49.063382 'A002 OK LIST Completed\r\n' 07:35:49.109420 < 13 bytes data, client => server 07:35:49.109445 'A003 LOGOUT\r\n' 07:35:49.109585 Received DATA (on stdin) 07:35:49.109597 > 36 bytes data, server => client 07:35:49.109608 '* BYE curl IMAP server signing off\r\n' 07:35:49.109630 Received DATA (on stdin) 07:35:49.109640 > 26 bytes data, server => client 07:35:49.109650 'A003 OK LOGOUT completed\r\n' 07:35:49.110165 ====> Client disconnect 07:35:49.110260 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 REPLY AUTHENTICATE + PDE5NzIuOTg3NjU0MzIxQGN1cmw+ REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== A002 OK AUTHENTICATE completed Testnum 821 === End of file server.cmd === Start of file valgrind821 ==115804== ==115804== Process terminating with default action of signal 4 (SIGILL) ==115804== Illegal opcode at address 0x4003082 ==115804== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115804== by 0x4003082: main (tool_main.c:234) === End of file valgrind821 test 0822...[IMAP NTLM authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind822 ../src/curl -q --output log/14/curl822.out --include --trace-ascii log/14/trace822 --trace-config all --trace-time 'imap://127.0.0.1:34685/822/;MAILINDEX=1' -u testuser:testpass > log/14/stdout822 2> log/14/stderr822 822: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 822 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind822 ../src/curl -q --output log/14/curl822.out --include --trace-ascii log/14/trace822 --trace-config all --trace-time 'imap://127.0.0.1:34685/822/;MAILINDEX=1' -u testuser:testpass > log/14/stdout822 2> log/14/stderr822 === End of file commands.log === Start of file imap_server.log 07:35:49.216801 ====> Client connect 07:35:49.216934 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.217173 < "A001 CAPABILITY" 07:35:49.217196 > "A001 BAD Command[CR][LF]" 07:35:49.217310 < "A002 LIST "verifiedserver" *" 07:35:49.217328 LIST_imap got "verifiedserver" * 07:35:49.217344 > "* LIST () "/" "WE ROOLZ: 108215"[CR][LF]" 07:35:49.217356 > "A002 OK LIST Completed[CR][LF]" 07:35:49.217366 return proof we are we 07:35:49.263584 < "A003 LOGOUT" 07:35:49.263629 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.263647 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.264194 MAIN sockfilt said DISC 07:35:49.264212 ====> Client disconnected 07:35:49.264260 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.062699 ====> Client connect 07:35:49.062928 Received DATA (on stdin) 07:35:49.062944 > 178 bytes data, server => client 07:35:49.062952 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.062960 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.062968 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.062974 'rve\r\n' 07:35:49.063049 < 17 bytes data, client => server 07:35:49.063058 'A001 CAPABILITY\r\n' 07:35:49.063176 Received DATA (on stdin) 07:35:49.063185 > 18 bytes data, server => client 07:35:49.063193 'A001 BAD Command\r\n' 07:35:49.063231 < 30 bytes data, client => server 07:35:49.063239 'A002 LIST "verifiedserver" *\CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind806 ../src/curl -q --output log/4/curl806.out --include --trace-ascii log/4/trace806 --trace-config all --trace-time imap://127.0.0.1:33365/806 -u user:secret > log/4/stdout806 2> log/4/stderr806 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind808 ../src/curl -q --output log/1/curl808.out --include --trace-ascii log/1/trace808 --trace-config all --trace-time imap://127.0.0.1:40395 -u user:secret -X 'EXAMINE 808' > log/1/stdout808 2> log/1/stderr808 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind809 ../src/curl -q --output log/24/curl809.out --include --trace-ascii log/24/trace809 --trace-config all --trace-time imap://127.0.0.1:38951 -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)' > log/24/stdout809 2> log/24/stderr809 r\n' 07:35:49.063344 Received DATA (on stdin) 07:35:49.063352 > 34 bytes data, server => client 07:35:49.063360 '* LIST () "/" "WE ROOLZ: 108215"\r\n' 07:35:49.063374 Received DATA (on stdin) 07:35:49.063381 > 24 bytes data, server => client 07:35:49.063389 'A002 OK LIST Completed\r\n' 07:35:49.109430 < 13 bytes data, client => server 07:35:49.109454 'A003 LOGOUT\r\n' 07:35:49.109633 Received DATA (on stdin) 07:35:49.109644 > 36 bytes data, server => client 07:35:49.109655 '* BYE curl IMAP server signing off\r\n' 07:35:49.109677 Received DATA (on stdin) 07:35:49.109687 > 26 bytes data, server => client 07:35:49.109697 'A003 OK LOGOUT completed\r\n' 07:35:49.110140 ====> Client disconnect 07:35:49.110238 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH NTLM REPLY AUTHENTICATE + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= A002 OK AUTHENTICATE completed Testnum 822 === End of file server.cmd === Start of file valgrind822 ==115805== ==115805== Process terminating with default action of signal 4 (SIGILL) ==115805== Illegal opcode at address 0x4003082 ==115805== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115805== by 0x4003082: main (tool_main.c:234) === End of file valgrind822 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/4/server/imap_server.pid" --logfile "log/4/imap_server.log" --logdir "log/4" --portfile "log/4/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33365 (log/4/server/imap_server.port) RUN: IMAP server is PID 115304 port 33365 * pid imap => 115304 115304 test 0806...[IMAP LIST mailbox] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind806 ../src/curl -q --output log/4/curl806.out --include --trace-ascii log/4/trace806 --trace-config all --trace-time imap://127.0.0.1:33365/806 -u user:secret > log/4/stdout806 2> log/4/stderr806 806: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 806 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind806 ../src/curl -q --output log/4/curl806.out --include --trace-ascii log/4/trace806 --trace-config all --trace-time imap://127.0.0.1:33365/806 -u user:secret > log/4/stdout806 2> log/4/stderr806 === End of file commands.log === Start of file imap_server.log 07:35:48.342915 IMAP server listens on port IPv4/33365 07:35:48.342980 logged pid 115304 in log/4/server/imap_server.pid 07:35:48.342999 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.188703 Running IPv4 version 07:35:48.188758 Listening on port 33365 07:35:48.188792 Wrote pid 115316 to log/4/server/imap_sockfilt.pid 07:35:48.188817 Wrote port 33365 to log/4/server/imap_server.port 07:35:48.188833 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 806 === End of file server.cmd === Start of file valgrind806 ==115951== ==115951== Process terminating with default action of signal 4 (SIGILL) ==115951== Illegal opcode at address 0x4003082 ==115951== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115951== by 0x4003082: main (tool_main.c:234) === End of file valgrind806 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/1/server/imap_server.pid" --logfile "log/1/imap_server.log" --logdir "log/1" --portfile "log/1/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40395 (log/1/server/imap_server.port) RUN: IMAP server is PID 115310 port 40395 * pid imap => 115310 115310 test 0808...[IMAP EXAMINE mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind808 ../src/curl -q --output log/1/curl808.out --include --trace-ascii log/1/trace808 --trace-config all --trace-time imap://127.0.0.1:40395 -u user:secret -X 'EXAMINE 808' > log/1/stdout808 2> log/1/stderr808 808: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 808 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind808 ../src/curl -q --output log/1/curl808.out --include --trace-ascii log/1/trace808 --trace-config all --trace-time imap://127.0.0.1:40395 -u user:secret -X 'EXAMINE 808' > log/1/stdout808 2> log/1/stderr808 === End of file commands.log === Start of file imap_server.log 07:35:48.345660 IMAP server listens on port IPv4/40395 07:35:48.345721 logged pid 115310 in log/1/server/imap_server.pid 07:35:48.345741 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.191425 Running IPv4 version 07:35:48.191479 Listening on port 40395 07:35:48.191512 Wrote pid 115317 to log/1/server/imap_sockfilt.pid 07:35:48.191536 Wrote port 40395 to log/1/server/imap_server.port 07:35:48.191553 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 808 === End of file server.cmd === Start of file valgrind808 ==115973== ==115973== Process terminating with default action of signal 4 (SIGILL) ==115973== Illegal opcode at address 0x4003082 ==115973== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115973== by 0x4003082: main (tool_main.c:234) === End of file valgrind808 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/24/server/imap_server.pid" --logfile "log/24/imap_server.log" --logdir "log/24" --portfile "log/24/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38951 (log/24/server/imap_server.port) RUN: IMAP server is PID 115313 port 38951 * pid imap => 115313 115313 test 0809...[IMAP mailbox STATUS (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind809 ../src/curl -q --output log/24/curl809.out --include --trace-ascii log/24/trace809 --trace-config all --trace-time imap://127.0.0.1:38951 -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)' > log/24/stdout809 2> log/24/stderr809 809: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 809 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind809 ../src/curl -q --output log/24/curl809.out --include --trace-ascii log/24/trace809 --trace-config all --trace-time imap://127.0.0.1:38951 -u user:secret -X 'STATUS 809 (UIDNEXT MESSAGES)' > log/24/stdout809 2> log/24/stderr809 === End of file commands.log === Start of file imap_server.log 07:35:48.355237 IMACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind810 ../src/curl -q --output log/9/curl810.out --include --trace-ascii log/9/trace810 --trace-config all --trace-time imap://127.0.0.1:38357/810?NEW -u user:secret > log/9/stdout810 2> log/9/stderr810 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind807 ../src/curl -q --output log/7/curl807.out --include --trace-ascii log/7/trace807 --trace-config all --trace-time imap://127.0.0.1:43237 -u user:secret -X 'LSUB "807" *' > log/7/stdout807 2> log/7/stderr807 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind811 ../src/curl -q --output log/6/curl811.out --include --trace-ascii log/6/trace811 --trace-config all --trace-time imap://127.0.0.1:43523 -u user:secret -X 'CREATE 811' > log/6/stdout811 2> log/6/stderr811 P server listens on port IPv4/38951 07:35:48.355290 logged pid 115313 in log/24/server/imap_server.pid 07:35:48.355306 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.201047 Running IPv4 version 07:35:48.201093 Listening on port 38951 07:35:48.201122 Wrote pid 115320 to log/24/server/imap_sockfilt.pid 07:35:48.201143 Wrote port 38951 to log/24/server/imap_server.port 07:35:48.201157 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 809 === End of file server.cmd === Start of file valgrind809 ==116016== ==116016== Process terminating with default action of signal 4 (SIGILL) ==116016== Illegal opcode at address 0x4003082 ==116016== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116016== by 0x4003082: main (tool_main.c:234) === End of file valgrind809 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/9/server/imap_server.pid" --logfile "log/9/imap_server.log" --logdir "log/9" --portfile "log/9/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38357 (log/9/server/imap_server.port) RUN: IMAP server is PID 115314 port 38357 * pid imap => 115314 115314 test 0810...[IMAP SEARCH for NEW messages] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind810 ../src/curl -q --output log/9/curl810.out --include --trace-ascii log/9/trace810 --trace-config all --trace-time imap://127.0.0.1:38357/810?NEW -u user:secret > log/9/stdout810 2> log/9/stderr810 810: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 810 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind810 ../src/curl -q --output log/9/curl810.out --include --trace-ascii log/9/trace810 --trace-config all --trace-time imap://127.0.0.1:38357/810?NEW -u user:secret > log/9/stdout810 2> log/9/stderr810 === End of file commands.log === Start of file imap_server.log 07:35:48.354335 IMAP server listens on port IPv4/38357 07:35:48.354393 logged pid 115314 in log/9/server/imap_server.pid 07:35:48.354409 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.200035 Running IPv4 version 07:35:48.200108 Listening on port 38357 07:35:48.200151 Wrote pid 115319 to log/9/server/imap_sockfilt.pid 07:35:48.200182 Wrote port 38357 to log/9/server/imap_server.port 07:35:48.200260 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 810 === End of file server.cmd === Start of file valgrind810 ==116023== ==116023== Process terminating with default action of signal 4 (SIGILL) ==116023== Illegal opcode at address 0x4003082 ==116023== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116023== by 0x4003082: main (tool_main.c:234) === End of file valgrind810 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/7/server/imap_server.pid" --logfile "log/7/imap_server.log" --logdir "log/7" --portfile "log/7/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 43237 (log/7/server/imap_server.port) RUN: IMAP server is PID 115309 port 43237 * pid imap => 115309 115309 test 0807...[IMAP LSUB mailbox] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind807 ../src/curl -q --output log/7/curl807.out --include --trace-ascii log/7/trace807 --trace-config all --trace-time imap://127.0.0.1:43237 -u user:secret -X 'LSUB "807" *' > log/7/stdout807 2> log/7/stderr807 807: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 807 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind807 ../src/curl -q --output log/7/curl807.out --include --trace-ascii log/7/trace807 --trace-config all --trace-time imap://127.0.0.1:43237 -u user:secret -X 'LSUB "807" *' > log/7/stdout807 2> log/7/stderr807 === End of file commands.log === Start of file imap_server.log 07:35:48.341830 IMAP server listens on port IPv4/43237 07:35:48.341884 logged pid 115309 in log/7/server/imap_server.pid 07:35:48.341901 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.187629 Running IPv4 version 07:35:48.187686 Listening on port 43237 07:35:48.187713 Wrote pid 115315 to log/7/server/imap_sockfilt.pid 07:35:48.187734 Wrote port 43237 to log/7/server/imap_server.port 07:35:48.187749 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 807 === End of file server.cmd === Start of file valgrind807 ==115956== ==115956== Process terminating with default action of signal 4 (SIGILL) ==115956== Illegal opcode at address 0x4003082 ==115956== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==115956== by 0x4003082: main (tool_main.c:234) === End of file valgrind807 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/6/server/imap_server.pid" --logfile "log/6/imap_server.log" --logdir "log/6" --portfile "log/6/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 43523 (log/6/server/imap_server.port) RUN: IMAP server is PID 115318 port 43523 * pid imap => 115318 115318 test 0811...[IMAP CREATE mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind811 ../src/curl -q --output log/6/curl811.out --include --trace-ascii log/6/trace811 --trace-config all --trace-time imap://127.0.0.1:43523 -u user:secret -X 'CREATE 811' > log/6/stdout811 2> log/6/stderr811 811: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 811 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind811 ../src/curl -q --output log/6/curl811.out --include --trace-ascii log/6/trace811 --trace-config all --trace-time imap://127.0.0.1:43523 -u user:secret -X 'CREATE 811' > log/6/stdout811 2> log/6/stderr811 === End of file commands.log === Start of file imap_server.log 07:35:48.375208 IMAP server listens on port IPv4/43523 07:35:48.375320 logged pid 115318 in log/6/server/imap_server.pid 07:35:48.375344 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.221004 Running IPv4 version 07:35:48.221057 Listening on port 43523 07:35:48.221084 Wrote pid 115329 to log/6/server/imap_sockfilt.pid 07:35:48.221106 Wrote port 43523 to log/6/server/imap_server.port 07:35:48.221120 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 811 === End of file server.cmd === Start of file valgrind811 ==116167== ==116167== Process terminating with default action of signal 4 (SIGILL) ==116167== Illegal opcode at address 0x4003082 ==116167== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116167== by 0x4003082: main (tool_main.c:234) === End of filCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind812 ../src/curl -q --output log/22/curl812.out --include --trace-ascii log/22/trace812 --trace-config all --trace-time imap://127.0.0.1:42985 -u user:secret -X 'DELETE 812' > log/22/stdout812 2> log/22/stderr812 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind813 ../src/curl -q --output log/12/curl813.out --include --trace-ascii log/12/trace813 --trace-config all --trace-time imap://127.0.0.1:34029 -u user:secret -X 'RENAME 666 813' > log/12/stdout813 2> log/12/stderr813 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind815 ../src/curl -q --output log/3/curl815.out --include --trace-ascii log/3/trace815 --trace-config all --trace-time imap://127.0.0.1:37763/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:37763/815 -X CLOSE -u user:secret > log/3/stdout815 2> log/3/stderr815 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind814 ../src/curl -q --output log/11/curl814.out --include --trace-ascii log/11/trace814 --trace-config all --trace-time imap://127.0.0.1:39479/814 -u user:secret -X 'CHECK' > log/11/stdout814 2> log/11/stderr814 e valgrind811 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/22/server/imap_server.pid" --logfile "log/22/imap_server.log" --logdir "log/22" --portfile "log/22/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42985 (log/22/server/imap_server.port) RUN: IMAP server is PID 115327 port 42985 * pid imap => 115327 115327 test 0812...[IMAP DELETE mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind812 ../src/curl -q --output log/22/curl812.out --include --trace-ascii log/22/trace812 --trace-config all --trace-time imap://127.0.0.1:42985 -u user:secret -X 'DELETE 812' > log/22/stdout812 2> log/22/stderr812 812: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 812 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind812 ../src/curl -q --output log/22/curl812.out --include --trace-ascii log/22/trace812 --trace-config all --trace-time imap://127.0.0.1:42985 -u user:secret -X 'DELETE 812' > log/22/stdout812 2> log/22/stderr812 === End of file commands.log === Start of file imap_server.log 07:35:48.398305 IMAP server listens on port IPv4/42985 07:35:48.398368 logged pid 115327 in log/22/server/imap_server.pid 07:35:48.398387 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.244095 Running IPv4 version 07:35:48.244140 Listening on port 42985 07:35:48.244168 Wrote pid 115369 to log/22/server/imap_sockfilt.pid 07:35:48.244191 Wrote port 42985 to log/22/server/imap_server.port 07:35:48.244211 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 812 === End of file server.cmd === Start of file valgrind812 ==116240== ==116240== Process terminating with default action of signal 4 (SIGILL) ==116240== Illegal opcode at address 0x4003082 ==116240== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116240== by 0x4003082: main (tool_main.c:234) === End of file valgrind812 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/12/server/imap_server.pid" --logfile "log/12/imap_server.log" --logdir "log/12" --portfile "log/12/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34029 (log/12/server/imap_server.port) RUN: IMAP server is PID 115376 port 34029 * pid imap => 115376 115376 test 0813...[IMAP RENAME mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind813 ../src/curl -q --output log/12/curl813.out --include --trace-ascii log/12/trace813 --trace-config all --trace-time imap://127.0.0.1:34029 -u user:secret -X 'RENAME 666 813' > log/12/stdout813 2> log/12/stderr813 813: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 813 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind813 ../src/curl -q --output log/12/curl813.out --include --trace-ascii log/12/trace813 --trace-config all --trace-time imap://127.0.0.1:34029 -u user:secret -X 'RENAME 666 813' > log/12/stdout813 2> log/12/stderr813 === End of file commands.log === Start of file imap_server.log 07:35:48.431734 IMAP server listens on port IPv4/34029 07:35:48.431795 logged pid 115376 in log/12/server/imap_server.pid 07:35:48.431815 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.277518 Running IPv4 version 07:35:48.277566 Listening on port 34029 07:35:48.277602 Wrote pid 115381 to log/12/server/imap_sockfilt.pid 07:35:48.277623 Wrote port 34029 to log/12/server/imap_server.port 07:35:48.277638 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 813 === End of file server.cmd === Start of file valgrind813 ==116325== ==116325== Process terminating with default action of signal 4 (SIGILL) ==116325== Illegal opcode at address 0x4003082 ==116325== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116325== by 0x4003082: main (tool_main.c:234) === End of file valgrind813 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/3/server/imap_server.pid" --logfile "log/3/imap_server.log" --logdir "log/3" --portfile "log/3/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37763 (log/3/server/imap_server.port) RUN: IMAP server is PID 115379 port 37763 * pid imap => 115379 115379 test 0815...[IMAP STORE - delete message (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind815 ../src/curl -q --output log/3/curl815.out --include --trace-ascii log/3/trace815 --trace-config all --trace-time imap://127.0.0.1:37763/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:37763/815 -X CLOSE -u user:secret > log/3/stdout815 2> log/3/stderr815 815: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 815 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind815 ../src/curl -q --output log/3/curl815.out --include --trace-ascii log/3/trace815 --trace-config all --trace-time imap://127.0.0.1:37763/815 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:37763/815 -X CLOSE -u user:secret > log/3/stdout815 2> log/3/stderr815 === End of file commands.log === Start of file imap_server.log 07:35:48.445672 IMAP server listens on port IPv4/37763 07:35:48.445732 logged pid 115379 in log/3/server/imap_server.pid 07:35:48.445758 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.291471 Running IPv4 version 07:35:48.291514 Listening on port 37763 07:35:48.291540 Wrote pid 115383 to log/3/server/imap_sockfilt.pid 07:35:48.291561 Wrote port 37763 to log/3/server/imap_server.port 07:35:48.291577 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 815 === End of file server.cmd === Start of file valgrind815 ==116367== ==116367== Process terminating with default action of signal 4 (SIGILL) ==116367== Illegal opcode at address 0x4003082 ==116367== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116367== by 0x4003082: main (tool_main.c:234) === End of file valgrind815 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/imap_server.pid" --logfile "log/11/imap_server.log" --logdir "log/11" --portfile "log/11/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39479 (log/11/server/imap_server.port) RUN: IMAP server is PID 115377 port 39479 * pid imap => 115377 115377 test 0814...[IMAP CHECK mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curlCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind816 ../src/curl -q --output log/13/curl816.out --include --trace-ascii log/13/trace816 --trace-config all --trace-time imap://127.0.0.1:32839/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:32839/816 -X EXPUNGE -u user:secret > log/13/stdout816 2> log/13/stderr816 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind824 ../src/curl -q --output log/10/curl824.out --include --trace-ascii log/10/trace824 --trace-config all --trace-time 'imap://127.0.0.1:42263/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/10/stdout824 2> log/10/stderr824 /tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind814 ../src/curl -q --output log/11/curl814.out --include --trace-ascii log/11/trace814 --trace-config all --trace-time imap://127.0.0.1:39479/814 -u user:secret -X 'CHECK' > log/11/stdout814 2> log/11/stderr814 814: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 814 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind814 ../src/curl -q --output log/11/curl814.out --include --trace-ascii log/11/trace814 --trace-config all --trace-time imap://127.0.0.1:39479/814 -u user:secret -X 'CHECK' > log/11/stdout814 2> log/11/stderr814 === End of file commands.log === Start of file imap_server.log 07:35:48.437386 IMAP server listens on port IPv4/39479 07:35:48.437447 logged pid 115377 in log/11/server/imap_server.pid 07:35:48.437464 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.283184 Running IPv4 version 07:35:48.283228 Listening on port 39479 07:35:48.283256 Wrote pid 115382 to log/11/server/imap_sockfilt.pid 07:35:48.283278 Wrote port 39479 to log/11/server/imap_server.port 07:35:48.283295 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 814 === End of file server.cmd === Start of file valgrind814 ==116327== ==116327== Process terminating with default action of signal 4 (SIGILL) ==116327== Illegal opcode at address 0x4003082 ==116327== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116327== by 0x4003082: main (tool_main.c:234) === End of file valgrind814 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/13/server/imap_server.pid" --logfile "log/13/imap_server.log" --logdir "log/13" --portfile "log/13/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 32839 (log/13/server/imap_server.port) RUN: IMAP server is PID 115380 port 32839 * pid imap => 115380 115380 test 0816...[IMAP STORE - delete message with confirmation (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind816 ../src/curl -q --output log/13/curl816.out --include --trace-ascii log/13/trace816 --trace-config all --trace-time imap://127.0.0.1:32839/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:32839/816 -X EXPUNGE -u user:secret > log/13/stdout816 2> log/13/stderr816 816: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 816 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind816 ../src/curl -q --output log/13/curl816.out --include --trace-ascii log/13/trace816 --trace-config all --trace-time imap://127.0.0.1:32839/816 -X 'STORE 123 +Flags \Deleted' -u user:secret -: imap://127.0.0.1:32839/816 -X EXPUNGE -u user:secret > log/13/stdout816 2> log/13/stderr816 === End of file commands.log === Start of file imap_server.log 07:35:48.448646 IMAP server listens on port IPv4/32839 07:35:48.448743 logged pid 115380 in log/13/server/imap_server.pid 07:35:48.448767 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.294430 Running IPv4 version 07:35:48.294475 Listening on port 32839 07:35:48.294501 Wrote pid 115384 to log/13/server/imap_sockfilt.pid 07:35:48.294521 Wrote port 32839 to log/13/server/imap_server.port 07:35:48.294535 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 816 === End of file server.cmd === Start of file valgrind816 ==116384== ==116384== Process terminating with default action of signal 4 (SIGILL) ==116384== Illegal opcode at address 0x4003082 ==116384== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116384== by 0x4003082: main (tool_main.c:234) === End of file valgrind816 test 0824...[IMAP OAuth 2.0 (XOAUTH2) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind824 ../src/curl -q --output log/10/curl824.out --include --trace-ascii log/10/trace824 --trace-config all --trace-time 'imap://127.0.0.1:42263/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/10/stdout824 2> log/10/stderr824 824: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 824 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind824 ../src/curl -q --output log/10/curl824.out --include --trace-ascii log/10/trace824 --trace-config all --trace-time 'imap://127.0.0.1:42263/824/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/10/stdout824 2> log/10/stderr824 === End of file commands.log === Start of file imap_server.log 07:35:49.423720 ====> Client connect 07:35:49.423867 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.424131 < "A001 CAPABILITY" 07:35:49.424166 > "A001 BAD Command[CR][LF]" 07:35:49.424484 < "A002 LIST "verifiedserver" *" 07:35:49.424511 LIST_imap got "verifiedserver" * 07:35:49.424533 > "* LIST () "/" "WE ROOLZ: 114987"[CR][LF]" 07:35:49.424547 > "A002 OK LIST Completed[CR][LF]" 07:35:49.424558 return proof we are we 07:35:49.467178 < "A003 LOGOUT" 07:35:49.467241 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.467259 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.467453 MAIN sockfilt said DISC 07:35:49.467479 ====> Client disconnected 07:35:49.467565 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.269611 ====> Client connect 07:35:50.269860 Received DATA (on stdin) 07:35:50.269873 > 178 bytes data, server => client 07:35:50.269884 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.269894 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.269903 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.269911 'rve\r\n' 07:35:50.269977 < 17 bytes data, client => server 07:35:50.269987 'A001 CAPABILITY\r\n' 07:35:50.270277 Received DATA (on stdin) 07:35:50.270303 > 18 bytes data, server => client 07:35:50.270314 'A001 BAD Command\r\n' 07:35:50.270403 < 30 bytes data, client => server 07:35:50.270414 'A002 LIST "verifiedserver" *\r\n' 07:35:50.270542 Received DATA (on stdin) 07:35:50.270556 > 34 bytes data, server => client 07:35:50.270567 '* LIST () "/" "WE ROOLZ: 114987"\r\n' 07:35:50.270588 Received DATA (on stdin) 07:35:50.270597 > 24 bytes data, server => client 07:35:50.270606 'A002 OK LIST Completed\r\n' 07:35:50.312970 < 13 bytes data, client => server 07:35:50.312997 'A003 LOGOUT\r\n' 07:35:50.313216 Received DATA (on stdin) 07:35:50.313246 > 36 bytes data, server => client 07:35:50.313257 '* BYE curl IMAP server signing off\r\n' 07:35:50.313284 Received DATA (on stdin) 07:35:50.313293 > 26 bytes data, server => client 07:35:50.313303 'A003 OK LOGOUT completed\r\n' 07:35:50.313380 ====> Client disconnect 07:35:50.313550 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH XOAUTH2CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind828 ../src/curl -q --output log/2/curl828.out --include --trace-ascii log/2/trace828 --trace-config all --trace-time 'imap://127.0.0.1:40327/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout828 2> log/2/stderr828 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind825 ../src/curl -q --output log/16/curl825.out --include --trace-ascii log/16/trace825 --trace-config all --trace-time 'imap://127.0.0.1:37765/825/;MAILINDEX=1' -u user:secret > log/16/stdout825 2> log/16/stderr825 REPLY AUTHENTICATE + REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB A002 OK AUTHENTICATE completed Testnum 824 === End of file server.cmd === Start of file valgrind824 ==116573== ==116573== Process terminating with default action of signal 4 (SIGILL) ==116573== Illegal opcode at address 0x4003082 ==116573== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116573== by 0x4003082: main (tool_main.c:234) === End of file valgrind824 test 0828...[IMAP OAuth 2.0 (XOAUTH2) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind828 ../src/curl -q --output log/2/curl828.out --include --trace-ascii log/2/trace828 --trace-config all --trace-time 'imap://127.0.0.1:40327/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout828 2> log/2/stderr828 828: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 828 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind828 ../src/curl -q --output log/2/curl828.out --include --trace-ascii log/2/trace828 --trace-config all --trace-time 'imap://127.0.0.1:40327/828/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout828 2> log/2/stderr828 === End of file commands.log === Start of file imap_server.log 07:35:49.452580 ====> Client connect 07:35:49.452727 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.453008 < "A001 CAPABILITY" 07:35:49.453051 > "A001 BAD Command[CR][LF]" 07:35:49.453201 < "A002 LIST "verifiedserver" *" 07:35:49.453233 LIST_imap got "verifiedserver" * 07:35:49.453259 > "* LIST () "/" "WE ROOLZ: 115183"[CR][LF]" 07:35:49.453276 > "A002 OK LIST Completed[CR][LF]" 07:35:49.453288 return proof we are we 07:35:49.496995 < "A003 LOGOUT" 07:35:49.497062 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.497079 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.498374 MAIN sockfilt said DISC 07:35:49.498418 ====> Client disconnected 07:35:49.498554 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.298468 ====> Client connect 07:35:50.298713 Received DATA (on stdin) 07:35:50.298737 > 178 bytes data, server => client 07:35:50.298747 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.298755 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.298762 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.298769 'rve\r\n' 07:35:50.298832 < 17 bytes data, client => server 07:35:50.298845 'A001 CAPABILITY\r\n' 07:35:50.299037 Received DATA (on stdin) 07:35:50.299048 > 18 bytes data, server => client 07:35:50.299057 'A001 BAD Command\r\n' 07:35:50.299104 < 30 bytes data, client => server 07:35:50.299115 'A002 LIST "verifiedserver" *\r\n' 07:35:50.299269 Received DATA (on stdin) 07:35:50.299289 > 34 bytes data, server => client 07:35:50.299305 '* LIST () "/" "WE ROOLZ: 115183"\r\n' 07:35:50.299343 Received DATA (on stdin) 07:35:50.299353 > 24 bytes data, server => client 07:35:50.299363 'A002 OK LIST Completed\r\n' 07:35:50.342803 < 13 bytes data, client => server 07:35:50.342844 'A003 LOGOUT\r\n' 07:35:50.343069 Received DATA (on stdin) 07:35:50.343090 > 36 bytes data, server => client 07:35:50.343101 '* BYE curl IMAP server signing off\r\n' 07:35:50.343134 Received DATA (on stdin) 07:35:50.343143 > 26 bytes data, server => client 07:35:50.343153 'A003 OK LOGOUT completed\r\n' 07:35:50.344268 ====> Client disconnect 07:35:50.344430 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH XOAUTH2 CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 828 === End of file server.cmd === Start of file valgrind828 ==116647== ==116647== Process terminating with default action of signal 4 (SIGILL) ==116647== Illegal opcode at address 0x4003082 ==116647== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116647== by 0x4003082: main (tool_main.c:234) === End of file valgrind828 test 0825...[IMAP plain authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind825 ../src/curl -q --output log/16/curl825.out --include --trace-ascii log/16/trace825 --trace-config all --trace-time 'imap://127.0.0.1:37765/825/;MAILINDEX=1' -u user:secret > log/16/stdout825 2> log/16/stderr825 825: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 825 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind825 ../src/curl -q --output log/16/curl825.out --include --trace-ascii log/16/trace825 --trace-config all --trace-time 'imap://127.0.0.1:37765/825/;MAILINDEX=1' -u user:secret > log/16/stdout825 2> log/16/stderr825 === End of file commands.log === Start of file imap_server.log 07:35:49.432012 ====> Client connect 07:35:49.432173 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.432575 < "A001 CAPABILITY" 07:35:49.432626 > "A001 BAD Command[CR][LF]" 07:35:49.432753 < "A002 LIST "verifiedserver" *" 07:35:49.432794 LIST_imap got "verifiedserver" * 07:35:49.432822 > "* LIST () "/" "WE ROOLZ: 115100"[CR][LF]" 07:35:49.432838 > "A002 OK LIST Completed[CR][LF]" 07:35:49.432851 return proof we are we 07:35:49.474357 < "A003 LOGOUT" 07:35:49.474407 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.474423 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.474759 MAIN sockfilt said DISC 07:35:49.474800 ====> Client disconnected 07:35:49.474860 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.277897 ====> Client connect 07:35:50.278170 Received DATA (on stdin) 07:35:50.278185 > 178 bytes data, server => client 07:35:50.278197 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.278208 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.278218 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.278227 'rve\r\n' 07:35:50.278319 < 17 bytes data, client => server 07:35:50.278342 'A001 CAPABILITY\r\n' 07:35:50.278592 Received DATA (on stdin) 07:35:50.278610 > 18 bytes data, server => client 07:35:50.278621 'A001 BAD Command\r\n' 07:35:50.278673 < 30 bytes data, client => server 07:35:50.278687 'A002 LIST "verifiedserver" *\r\n' 07:35:50.278835 Received DATA (on stdin) 07:35:50.278848 > 34 bytes data, server => client 07:35:50.278859 '* LIST () "/" "WE ROOLZ: 115100"\r\n' 07:35:50.278880 Received DATA (on stdin) 07:35:50.278889 > 24 bytes data, server => client 07:35:50.278899 'A002 OK LIST Completed\r\n' 07:35:50.320173 < 13 bytes data, client => server 07:35:50.320196 'A003 LOGOUT\r\n' 07:35:50.320406 Received DATA (on stdin) 07:35:50.320417 > 36 bytes data, server => client 07:35:50.320427 '* BYE curl IMAP server signing off\r\n' 07:35:50.320451 Received DATA (on stdin) 07:35:50.320460 > 26 bytes data, server => client 07:35:50.320469 'A003 OK LOGOUT completed\r\n' 07:35:50.320674 ====> Client disconnect 07:35:50.320846 Received ACKD (on stdin) === End of file imap_sockfilt.log === CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind827 ../src/curl -q --output log/19/curl827.out --include --trace-ascii log/19/trace827 --trace-config all --trace-time 'imap://127.0.0.1:39567/827/;MAILINDEX=1' -u testuser:testpass > log/19/stdout827 2> log/19/stderr827 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind817 ../src/curl -q --output log/20/curl817.out --include --trace-ascii log/20/trace817 --trace-config all --trace-time imap://127.0.0.1:46243 -u user:secret -X 'COPY 123 817' > log/20/stdout817 2> log/20/stderr817 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind818 ../src/curl -q --output log/15/curl818.out --include --trace-ascii log/15/trace818 --trace-config all --trace-time imap://127.0.0.1:42959 -X NOOP -u user:secret > log/15/stdout818 2> log/15/stderr818 Start of file server.cmd AUTH PLAIN CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 825 === End of file server.cmd === Start of file valgrind825 ==116589== ==116589== Process terminating with default action of signal 4 (SIGILL) ==116589== Illegal opcode at address 0x4003082 ==116589== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116589== by 0x4003082: main (tool_main.c:234) === End of file valgrind825 test 0827...[IMAP NTLM authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind827 ../src/curl -q --output log/19/curl827.out --include --trace-ascii log/19/trace827 --trace-config all --trace-time 'imap://127.0.0.1:39567/827/;MAILINDEX=1' -u testuser:testpass > log/19/stdout827 2> log/19/stderr827 827: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 827 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind827 ../src/curl -q --output log/19/curl827.out --include --trace-ascii log/19/trace827 --trace-config all --trace-time 'imap://127.0.0.1:39567/827/;MAILINDEX=1' -u testuser:testpass > log/19/stdout827 2> log/19/stderr827 === End of file commands.log === Start of file imap_server.log 07:35:49.449824 ====> Client connect 07:35:49.449997 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.450364 < "A001 CAPABILITY" 07:35:49.450412 > "A001 BAD Command[CR][LF]" 07:35:49.450585 < "A002 LIST "verifiedserver" *" 07:35:49.450620 LIST_imap got "verifiedserver" * 07:35:49.450653 > "* LIST () "/" "WE ROOLZ: 115166"[CR][LF]" 07:35:49.450670 > "A002 OK LIST Completed[CR][LF]" 07:35:49.450683 return proof we are we 07:35:49.497224 < "A003 LOGOUT" 07:35:49.497309 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.497329 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.498373 MAIN sockfilt said DISC 07:35:49.498419 ====> Client disconnected 07:35:49.498555 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.295710 ====> Client connect 07:35:50.296038 Received DATA (on stdin) 07:35:50.296062 > 178 bytes data, server => client 07:35:50.296075 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.296085 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.296095 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.296104 'rve\r\n' 07:35:50.296172 < 17 bytes data, client => server 07:35:50.296188 'A001 CAPABILITY\r\n' 07:35:50.296398 Received DATA (on stdin) 07:35:50.296409 > 18 bytes data, server => client 07:35:50.296418 'A001 BAD Command\r\n' 07:35:50.296465 < 30 bytes data, client => server 07:35:50.296475 'A002 LIST "verifiedserver" *\r\n' 07:35:50.296619 Received DATA (on stdin) 07:35:50.296629 > 34 bytes data, server => client 07:35:50.296640 '* LIST () "/" "WE ROOLZ: 115166"\r\n' 07:35:50.296656 Received DATA (on stdin) 07:35:50.296666 > 24 bytes data, server => client 07:35:50.296674 'A002 OK LIST Completed\r\n' 07:35:50.342994 < 13 bytes data, client => server 07:35:50.343016 'A003 LOGOUT\r\n' 07:35:50.343316 Received DATA (on stdin) 07:35:50.343329 > 36 bytes data, server => client 07:35:50.343343 '* BYE curl IMAP server signing off\r\n' 07:35:50.343367 Received DATA (on stdin) 07:35:50.343377 > 26 bytes data, server => client 07:35:50.343387 'A003 OK LOGOUT completed\r\n' 07:35:50.344285 ====> Client disconnect 07:35:50.344418 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH NTLM CAPA SASL-IR REPLY AUTHENTICATE + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= A002 OK AUTHENTICATE completed Testnum 827 === End of file server.cmd === Start of file valgrind827 ==116652== ==116652== Process terminating with default action of signal 4 (SIGILL) ==116652== Illegal opcode at address 0x4003082 ==116652== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116652== by 0x4003082: main (tool_main.c:234) === End of file valgrind827 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/20/server/imap_server.pid" --logfile "log/20/imap_server.log" --logdir "log/20" --portfile "log/20/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 46243 (log/20/server/imap_server.port) RUN: IMAP server is PID 115386 port 46243 * pid imap => 115386 115386 test 0817...[IMAP COPY message to mailbox (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind817 ../src/curl -q --output log/20/curl817.out --include --trace-ascii log/20/trace817 --trace-config all --trace-time imap://127.0.0.1:46243 -u user:secret -X 'COPY 123 817' > log/20/stdout817 2> log/20/stderr817 817: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 817 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind817 ../src/curl -q --output log/20/curl817.out --include --trace-ascii log/20/trace817 --trace-config all --trace-time imap://127.0.0.1:46243 -u user:secret -X 'COPY 123 817' > log/20/stdout817 2> log/20/stderr817 === End of file commands.log === Start of file imap_server.log 07:35:48.561373 IMAP server listens on port IPv4/46243 07:35:48.561430 logged pid 115386 in log/20/server/imap_server.pid 07:35:48.561445 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.407184 Running IPv4 version 07:35:48.407227 Listening on port 46243 07:35:48.407253 Wrote pid 115388 to log/20/server/imap_sockfilt.pid 07:35:48.407272 Wrote port 46243 to log/20/server/imap_server.port 07:35:48.407286 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 817 === End of file server.cmd === Start of file valgrind817 ==116768== ==116768== Process terminating with default action of signal 4 (SIGILL) ==116768== Illegal opcode at address 0x4003082 ==116768== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116768== by 0x4003082: main (tool_main.c:234) === End of file valgrind817 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/15/server/imap_server.pid" --logfile "log/15/imap_server.log" --logdir "log/15" --portfile "log/15/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42959 (log/15/server/imap_server.port) RUN: IMAP server is PID 115387 port 42959 * pid imap => 115387 115387 test 0818...[IMAP NOOP (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind818 ../src/curl -q --output log/15/curl818.out --include --trace-ascii log/15/trace818 --trace-configCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind829 ../src/curl -q --output log/18/curl829.out --include --trace-ascii log/18/trace829 --trace-config all --trace-time imap://127.0.0.1:45183/%0d%0a/829 > log/18/stdout829 2> log/18/stderr829 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind741 ../src/curl -q --output log/17/curl741.out --include --trace-ascii log/17/trace741 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/17/stdout741 2> log/17/stderr741 all --trace-time imap://127.0.0.1:42959 -X NOOP -u user:secret > log/15/stdout818 2> log/15/stderr818 818: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 818 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind818 ../src/curl -q --output log/15/curl818.out --include --trace-ascii log/15/trace818 --trace-config all --trace-time imap://127.0.0.1:42959 -X NOOP -u user:secret > log/15/stdout818 2> log/15/stderr818 === End of file commands.log === Start of file imap_server.log 07:35:48.563879 IMAP server listens on port IPv4/42959 07:35:48.563934 logged pid 115387 in log/15/server/imap_server.pid 07:35:48.563949 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:48.409666 Running IPv4 version 07:35:48.409722 Listening on port 42959 07:35:48.409749 Wrote pid 115389 to log/15/server/imap_sockfilt.pid 07:35:48.409769 Wrote port 42959 to log/15/server/imap_server.port 07:35:48.409782 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 818 === End of file server.cmd === Start of file valgrind818 ==116786== ==116786== Process terminating with default action of signal 4 (SIGILL) ==116786== Illegal opcode at address 0x4003082 ==116786== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116786== by 0x4003082: main (tool_main.c:234) === End of file valgrind818 test 0829...[IMAP with URL-encoded CR LF in the URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind829 ../src/curl -q --output log/18/curl829.out --include --trace-ascii log/18/trace829 --trace-config all --trace-time imap://127.0.0.1:45183/%0d%0a/829 > log/18/stdout829 2> log/18/stderr829 curl returned 132, when expecting 3 829: exit FAILED == Contents of files in the log/18/ dir after test 829 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind829 ../src/curl -q --output log/18/curl829.out --include --trace-ascii log/18/trace829 --trace-config all --trace-time imap://127.0.0.1:45183/%0d%0a/829 > log/18/stdout829 2> log/18/stderr829 === End of file commands.log === Start of file imap_server.log 07:35:49.650029 ====> Client connect 07:35:49.650265 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.650584 < "A001 CAPABILITY" 07:35:49.650619 > "A001 BAD Command[CR][LF]" 07:35:49.650744 < "A002 LIST "verifiedserver" *" 07:35:49.650770 LIST_imap got "verifiedserver" * 07:35:49.650795 > "* LIST () "/" "WE ROOLZ: 115283"[CR][LF]" 07:35:49.650811 > "A002 OK LIST Completed[CR][LF]" 07:35:49.650823 return proof we are we 07:35:49.696824 < "A003 LOGOUT" 07:35:49.696879 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.696893 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.697926 MAIN sockfilt said DISC 07:35:49.697977 ====> Client disconnected 07:35:49.698068 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.494769 ====> Client connect 07:35:49.496268 Received DATA (on stdin) 07:35:49.496291 > 178 bytes data, server => client 07:35:49.496303 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.496314 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.496325 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.496334 'rve\r\n' 07:35:49.496428 < 17 bytes data, client => server 07:35:49.496449 'A001 CAPABILITY\r\n' 07:35:49.496590 Received DATA (on stdin) 07:35:49.496604 > 18 bytes data, server => client 07:35:49.496614 'A001 BAD Command\r\n' 07:35:49.496667 < 30 bytes data, client => server 07:35:49.496681 'A002 LIST "verifiedserver" *\r\n' 07:35:49.496808 Received DATA (on stdin) 07:35:49.496822 > 34 bytes data, server => client 07:35:49.496833 '* LIST () "/" "WE ROOLZ: 115283"\r\n' 07:35:49.496856 Received DATA (on stdin) 07:35:49.496865 > 24 bytes data, server => client 07:35:49.496875 'A002 OK LIST Completed\r\n' 07:35:49.539456 < 13 bytes data, client => server 07:35:49.539501 'A003 LOGOUT\r\n' 07:35:49.542853 Received DATA (on stdin) 07:35:49.542876 > 36 bytes data, server => client 07:35:49.542887 '* BYE curl IMAP server signing off\r\n' 07:35:49.542929 Received DATA (on stdin) 07:35:49.542939 > 26 bytes data, server => client 07:35:49.542948 'A003 OK LOGOUT completed\r\n' 07:35:49.543840 ====> Client disconnect 07:35:49.544055 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 829 === End of file server.cmd === Start of file valgrind829 ==116904== ==116904== Process terminating with default action of signal 4 (SIGILL) ==116904== Illegal opcode at address 0x4003082 ==116904== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==116904== by 0x4003082: main (tool_main.c:234) === End of file valgrind829 setenv HOME = /startdir/src/build-curl/tests/log/17 test 0741...[IPFS malformed gw URL from multiline gateway file, first line no url] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind741 ../src/curl -q --output log/17/curl741.out --include --trace-ascii log/17/trace741 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/17/stdout741 2> log/17/stderr741 curl returned 132, when expecting 3 741: exit FAILED == Contents of files in the log/17/ dir after test 741 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind741 ../src/curl -q --output log/17/curl741.out --include --trace-ascii log/17/trace741 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/17/stdout741 2> log/17/stderr741 === End of file commands.log === Start of file http_server.log 07:35:47.289342 ====> Client connect 07:35:47.289635 accept_connection 3 returned 4 07:35:47.289654 accept_connection 3 returned 0 07:35:47.289668 Read 93 bytes 07:35:47.289678 Process 93 bytes request 07:35:47.289691 Got request: GET /verifiedserver HTTP/1.1 07:35:47.289700 Are-we-friendly question received 07:35:47.289727 Wrote request (93 bytes) input to log/17/server.input 07:35:47.289743 Identifying ourselves as friends 07:35:47.289804 Response sent (56 bytes) and written to log/17/server.response 07:35:47.289814 special request received, no persistency 07:35:47.289824 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 741 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind741 ==113711== ==113711== Process terminating with default action of signal 4 (SIGILL) ==113711== Illegal opcode at address 0x4003082 ==113711== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind830 ../src/curl -q --output log/21/curl830.out --include --trace-ascii log/21/trace830 --trace-config all --trace-time 'imap://127.0.0.1:41463/830/;MAILINDEX=1' -u user:secret > log/21/stdout830 2> log/21/stderr830 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind831 ../src/curl -q --output log/8/curl831.out --include --trace-ascii log/8/trace831 --trace-config all --trace-time 'imap://127.0.0.1:38013/831/;MAILINDEX=1' -u testuser:testpass > log/8/stdout831 2> log/8/stderr831 at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==113711== by 0x4003082: main (tool_main.c:234) === End of file valgrind741 test 0830...[IMAP CRAM-MD5 graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind830 ../src/curl -q --output log/21/curl830.out --include --trace-ascii log/21/trace830 --trace-config all --trace-time 'imap://127.0.0.1:41463/830/;MAILINDEX=1' -u user:secret > log/21/stdout830 2> log/21/stderr830 830: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 830 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind830 ../src/curl -q --output log/21/curl830.out --include --trace-ascii log/21/trace830 --trace-config all --trace-time 'imap://127.0.0.1:41463/830/;MAILINDEX=1' -u user:secret > log/21/stdout830 2> log/21/stderr830 === End of file commands.log === Start of file imap_server.log 07:35:49.803587 ====> Client connect 07:35:49.803756 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.804008 < "A001 CAPABILITY" 07:35:49.804040 > "A001 BAD Command[CR][LF]" 07:35:49.804171 < "A002 LIST "verifiedserver" *" 07:35:49.804196 LIST_imap got "verifiedserver" * 07:35:49.804220 > "* LIST () "/" "WE ROOLZ: 115291"[CR][LF]" 07:35:49.804235 > "A002 OK LIST Completed[CR][LF]" 07:35:49.804246 return proof we are we 07:35:49.847322 < "A003 LOGOUT" 07:35:49.847374 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.847390 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.847951 MAIN sockfilt said DISC 07:35:49.847987 ====> Client disconnected 07:35:49.848057 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.649463 ====> Client connect 07:35:49.649731 Received DATA (on stdin) 07:35:49.649756 > 178 bytes data, server => client 07:35:49.649768 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.649779 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.649789 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.649798 'rve\r\n' 07:35:49.649871 < 17 bytes data, client => server 07:35:49.649886 'A001 CAPABILITY\r\n' 07:35:49.650024 Received DATA (on stdin) 07:35:49.650036 > 18 bytes data, server => client 07:35:49.650046 'A001 BAD Command\r\n' 07:35:49.650098 < 30 bytes data, client => server 07:35:49.650114 'A002 LIST "verifiedserver" *\r\n' 07:35:49.650228 Received DATA (on stdin) 07:35:49.650239 > 34 bytes data, server => client 07:35:49.650249 '* LIST () "/" "WE ROOLZ: 115291"\r\n' 07:35:49.650267 Received DATA (on stdin) 07:35:49.650276 > 24 bytes data, server => client 07:35:49.650286 'A002 OK LIST Completed\r\n' 07:35:49.693148 < 13 bytes data, client => server 07:35:49.693172 'A003 LOGOUT\r\n' 07:35:49.693343 Received DATA (on stdin) 07:35:49.693363 > 36 bytes data, server => client 07:35:49.693375 '* BYE curl IMAP server signing off\r\n' 07:35:49.693401 Received DATA (on stdin) 07:35:49.693423 > 26 bytes data, server => client 07:35:49.693433 'A003 OK LOGOUT completed\r\n' 07:35:49.693876 ====> Client disconnect 07:35:49.694062 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 CAPA LOGINDISABLED REPLY AUTHENTICATE + Rubbish REPLY * A002 NO AUTH exchange cancelled by client Testnum 830 === End of file server.cmd === Start of file valgrind830 ==117029== ==117029== Process terminating with default action of signal 4 (SIGILL) ==117029== Illegal opcode at address 0x4003082 ==117029== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117029== by 0x4003082: main (tool_main.c:234) === End of file valgrind830 test 0831...[IMAP NTLM graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind831 ../src/curl -q --output log/8/curl831.out --include --trace-ascii log/8/trace831 --trace-config all --trace-time 'imap://127.0.0.1:38013/831/;MAILINDEX=1' -u testuser:testpass > log/8/stdout831 2> log/8/stderr831 831: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 831 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind831 ../src/curl -q --output log/8/curl831.out --include --trace-ascii log/8/trace831 --trace-config all --trace-time 'imap://127.0.0.1:38013/831/;MAILINDEX=1' -u testuser:testpass > log/8/stdout831 2> log/8/stderr831 === End of file commands.log === Start of file imap_server.log 07:35:49.804381 ====> Client connect 07:35:49.804499 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.804804 < "A001 CAPABILITY" 07:35:49.804840 > "A001 BAD Command[CR][LF]" 07:35:49.805010 < "A002 LIST "verifiedserver" *" 07:35:49.805036 LIST_imap got "verifiedserver" * 07:35:49.805061 > "* LIST () "/" "WE ROOLZ: 108619"[CR][LF]" 07:35:49.805077 > "A002 OK LIST Completed[CR][LF]" 07:35:49.805088 return proof we are we 07:35:49.847784 < "A003 LOGOUT" 07:35:49.847830 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.847846 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.848161 MAIN sockfilt said DISC 07:35:49.848187 ====> Client disconnected 07:35:49.848248 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.650265 ====> Client connect 07:35:49.650489 Received DATA (on stdin) 07:35:49.650500 > 178 bytes data, server => client 07:35:49.650509 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.650517 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.650525 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.650532 'rve\r\n' 07:35:49.650590 < 17 bytes data, client => server 07:35:49.650599 'A001 CAPABILITY\r\n' 07:35:49.650814 Received DATA (on stdin) 07:35:49.650831 > 18 bytes data, server => client 07:35:49.650841 'A001 BAD Command\r\n' 07:35:49.650905 < 30 bytes data, client => server 07:35:49.650916 'A002 LIST "verifiedserver" *\r\n' 07:35:49.651070 Received DATA (on stdin) 07:35:49.651081 > 34 bytes data, server => client 07:35:49.651091 '* LIST () "/" "WE ROOLZ: 108619"\r\n' 07:35:49.651110 Received DATA (on stdin) 07:35:49.651119 > 24 bytes data, server => client 07:35:49.651128 'A002 OK LIST Completed\r\n' 07:35:49.693624 < 13 bytes data, client => server 07:35:49.693645 'A003 LOGOUT\r\n' 07:35:49.693829 Received DATA (on stdin) 07:35:49.693840 > 36 bytes data, server => client 07:35:49.693850 '* BYE curl IMAP server signing off\r\n' 07:35:49.693873 Received DATA (on stdin) 07:35:49.693882 > 26 bytes data, server => client 07:35:49.693892 'A003 OK LOGOUT completed\r\n' 07:35:49.694102 ====> Client disconnect 07:35:49.694237 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH NTLM CAPA LOGINDISABLED REPLY AUTHENTICATE + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish REPLY * A002 NO AUTH exchange cancelled by client Testnum 831 === End of file server.cmd === Start of file valgrind831 ==117032== ==117032== Process terminating with default action of signal 4 (SIGILL) ==117032== Illegal opcodeCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind833 ../src/curl -q --output log/14/curl833.out --include --trace-ascii log/14/trace833 --trace-config all --trace-time 'imap://127.0.0.1:34685/833/;MAILINDEX=1' -u user:secret > log/14/stdout833 2> log/14/stderr833 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind837 ../src/curl -q --output log/1/curl837.out --include --trace-ascii log/1/trace837 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:40395/837/;MAILINDEX=1' > log/1/stdout837 2> log/1/stderr837 at address 0x4003082 ==117032== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117032== by 0x4003082: main (tool_main.c:234) === End of file valgrind831 test 0833...[IMAP CRAM-MD5 authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind833 ../src/curl -q --output log/14/curl833.out --include --trace-ascii log/14/trace833 --trace-config all --trace-time 'imap://127.0.0.1:34685/833/;MAILINDEX=1' -u user:secret > log/14/stdout833 2> log/14/stderr833 833: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 833 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind833 ../src/curl -q --output log/14/curl833.out --include --trace-ascii log/14/trace833 --trace-config all --trace-time 'imap://127.0.0.1:34685/833/;MAILINDEX=1' -u user:secret > log/14/stdout833 2> log/14/stderr833 === End of file commands.log === Start of file imap_server.log 07:35:49.807442 ====> Client connect 07:35:49.807582 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.808242 < "A001 CAPABILITY" 07:35:49.808339 > "A001 BAD Command[CR][LF]" 07:35:49.808551 < "A002 LIST "verifiedserver" *" 07:35:49.808587 LIST_imap got "verifiedserver" * 07:35:49.808615 > "* LIST () "/" "WE ROOLZ: 108215"[CR][LF]" 07:35:49.808631 > "A002 OK LIST Completed[CR][LF]" 07:35:49.808642 return proof we are we 07:35:49.850694 < "A003 LOGOUT" 07:35:49.850752 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.850772 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.851215 MAIN sockfilt said DISC 07:35:49.851277 ====> Client disconnected 07:35:49.851351 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.653319 ====> Client connect 07:35:49.653583 Received DATA (on stdin) 07:35:49.653603 > 178 bytes data, server => client 07:35:49.653615 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.653626 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.653636 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.653645 'rve\r\n' 07:35:49.653711 < 17 bytes data, client => server 07:35:49.653730 'A001 CAPABILITY\r\n' 07:35:49.654323 Received DATA (on stdin) 07:35:49.654336 > 18 bytes data, server => client 07:35:49.654344 'A001 BAD Command\r\n' 07:35:49.654402 < 30 bytes data, client => server 07:35:49.654421 'A002 LIST "verifiedserver" *\r\n' 07:35:49.654626 Received DATA (on stdin) 07:35:49.654637 > 34 bytes data, server => client 07:35:49.654647 '* LIST () "/" "WE ROOLZ: 108215"\r\n' 07:35:49.654666 Received DATA (on stdin) 07:35:49.654675 > 24 bytes data, server => client 07:35:49.654686 'A002 OK LIST Completed\r\n' 07:35:49.696496 < 13 bytes data, client => server 07:35:49.696521 'A003 LOGOUT\r\n' 07:35:49.696903 Received DATA (on stdin) 07:35:49.696919 > 36 bytes data, server => client 07:35:49.696930 '* BYE curl IMAP server signing off\r\n' 07:35:49.696954 Received DATA (on stdin) 07:35:49.696964 > 26 bytes data, server => client 07:35:49.696974 'A003 OK LOGOUT completed\r\n' 07:35:49.697121 ====> Client disconnect 07:35:49.697344 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 PLAIN REPLY "AUTHENTICATE CRAM-MD5" + Rubbish REPLY * A002 NO AUTH exchange cancelled by client REPLY "AUTHENTICATE PLAIN" + REPLY AHVzZXIAc2VjcmV0 A003 OK AUTHENTICATE completed Testnum 833 === End of file server.cmd === Start of file valgrind833 ==117058== ==117058== Process terminating with default action of signal 4 (SIGILL) ==117058== Illegal opcode at address 0x4003082 ==117058== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117058== by 0x4003082: main (tool_main.c:234) === End of file valgrind833 test 0837...[IMAP external authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind837 ../src/curl -q --output log/1/curl837.out --include --trace-ascii log/1/trace837 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:40395/837/;MAILINDEX=1' > log/1/stdout837 2> log/1/stderr837 837: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 837 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind837 ../src/curl -q --output log/1/curl837.out --include --trace-ascii log/1/trace837 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:40395/837/;MAILINDEX=1' > log/1/stdout837 2> log/1/stderr837 === End of file commands.log === Start of file imap_server.log 07:35:49.855286 ====> Client connect 07:35:49.855426 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.855697 < "A001 CAPABILITY" 07:35:49.855730 > "A001 BAD Command[CR][LF]" 07:35:49.855865 < "A002 LIST "verifiedserver" *" 07:35:49.855890 LIST_imap got "verifiedserver" * 07:35:49.855910 > "* LIST () "/" "WE ROOLZ: 115310"[CR][LF]" 07:35:49.855924 > "A002 OK LIST Completed[CR][LF]" 07:35:49.855935 return proof we are we 07:35:49.900275 < "A003 LOGOUT" 07:35:49.900334 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.900352 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.900603 MAIN sockfilt said DISC 07:35:49.900659 ====> Client disconnected 07:35:49.900727 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.701178 ====> Client connect 07:35:49.701419 Received DATA (on stdin) 07:35:49.701433 > 178 bytes data, server => client 07:35:49.701444 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.701455 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.701464 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.701473 'rve\r\n' 07:35:49.701535 < 17 bytes data, client => server 07:35:49.701547 'A001 CAPABILITY\r\n' 07:35:49.701713 Received DATA (on stdin) 07:35:49.701724 > 18 bytes data, server => client 07:35:49.701733 'A001 BAD Command\r\n' 07:35:49.701777 < 30 bytes data, client => server 07:35:49.701787 'A002 LIST "verifiedserver" *\r\n' 07:35:49.701916 Received DATA (on stdin) 07:35:49.701926 > 34 bytes data, server => client 07:35:49.701935 '* LIST () "/" "WE ROOLZ: 115310"\r\n' 07:35:49.701951 Received DATA (on stdin) 07:35:49.701960 > 24 bytes data, server => client 07:35:49.701969 'A002 OK LIST Completed\r\n' 07:35:49.746101 < 13 bytes data, client => server 07:35:49.746123 'A003 LOGOUT\r\n' 07:35:49.746322 Received DATA (on stdin) 07:35:49.746340 > 36 bytes data, server => client 07:35:49.746375 '* BYE curl IMAP server signing off\r\n' 07:35:49.746417 Received DATA (on stdin) 07:35:49.746427 > 26 bytes data, server => client 07:35:49.746438 'A003 OK LOGOUT completed\r\n' 07:35:49.746491 ====> Client disconnect 07:35:49.747084 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTHENTICATE + REPLY dXNlcg== A002 OK AUTHENTICATE completed Testnum 837 === End of file server.cmd === Start of file valgrind837 ==117256== ==117256== Process terminating with default action of signaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind834 ../src/curl -q --output log/4/curl834.out --include --trace-ascii log/4/trace834 --trace-config all --trace-time 'imap://127.0.0.1:33365/834/;MAILINDEX=1' -u user:secret > log/4/stdout834 2> log/4/stderr834 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind840 ../src/curl -q --output log/7/curl840.out --include --trace-ascii log/7/trace840 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:43237/840/;MAILINDEX=1' > log/7/stdout840 2> log/7/stderr840 l 4 (SIGILL) ==117256== Illegal opcode at address 0x4003082 ==117256== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117256== by 0x4003082: main (tool_main.c:234) === End of file valgrind837 test 0834...[IMAP NTLM authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind834 ../src/curl -q --output log/4/curl834.out --include --trace-ascii log/4/trace834 --trace-config all --trace-time 'imap://127.0.0.1:33365/834/;MAILINDEX=1' -u user:secret > log/4/stdout834 2> log/4/stderr834 834: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 834 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind834 ../src/curl -q --output log/4/curl834.out --include --trace-ascii log/4/trace834 --trace-config all --trace-time 'imap://127.0.0.1:33365/834/;MAILINDEX=1' -u user:secret > log/4/stdout834 2> log/4/stderr834 === End of file commands.log === Start of file imap_server.log 07:35:49.832686 ====> Client connect 07:35:49.832874 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.833425 < "A001 CAPABILITY" 07:35:49.833463 > "A001 BAD Command[CR][LF]" 07:35:49.833634 < "A002 LIST "verifiedserver" *" 07:35:49.833662 LIST_imap got "verifiedserver" * 07:35:49.833690 > "* LIST () "/" "WE ROOLZ: 115304"[CR][LF]" 07:35:49.833706 > "A002 OK LIST Completed[CR][LF]" 07:35:49.833718 return proof we are we 07:35:49.880254 < "A003 LOGOUT" 07:35:49.880308 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.880327 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.880479 MAIN sockfilt said DISC 07:35:49.880501 ====> Client disconnected 07:35:49.880573 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.678273 ====> Client connect 07:35:49.678885 Received DATA (on stdin) 07:35:49.678912 > 178 bytes data, server => client 07:35:49.678925 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.678937 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.678948 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.678956 'rve\r\n' 07:35:49.679275 < 17 bytes data, client => server 07:35:49.679302 'A001 CAPABILITY\r\n' 07:35:49.679450 Received DATA (on stdin) 07:35:49.679463 > 18 bytes data, server => client 07:35:49.679474 'A001 BAD Command\r\n' 07:35:49.679530 < 30 bytes data, client => server 07:35:49.679544 'A002 LIST "verifiedserver" *\r\n' 07:35:49.679672 Received DATA (on stdin) 07:35:49.679695 > 34 bytes data, server => client 07:35:49.679707 '* LIST () "/" "WE ROOLZ: 115304"\r\n' 07:35:49.680233 Received DATA (on stdin) 07:35:49.680249 > 24 bytes data, server => client 07:35:49.680260 'A002 OK LIST Completed\r\n' 07:35:49.726107 < 13 bytes data, client => server 07:35:49.726125 'A003 LOGOUT\r\n' 07:35:49.726314 Received DATA (on stdin) 07:35:49.726328 > 36 bytes data, server => client 07:35:49.726340 '* BYE curl IMAP server signing off\r\n' 07:35:49.726365 Received DATA (on stdin) 07:35:49.726375 > 26 bytes data, server => client 07:35:49.726385 'A003 OK LOGOUT completed\r\n' 07:35:49.726421 ====> Client disconnect 07:35:49.726560 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH NTLM PLAIN REPLY "AUTHENTICATE NTLM" + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish REPLY * A002 NO AUTH exchange cancelled by client REPLY "AUTHENTICATE PLAIN" + REPLY AHVzZXIAc2VjcmV0 A003 OK AUTHENTICATE completed Testnum 834 === End of file server.cmd === Start of file valgrind834 ==117213== ==117213== Process terminating with default action of signal 4 (SIGILL) ==117213== Illegal opcode at address 0x4003082 ==117213== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117213== by 0x4003082: main (tool_main.c:234) === End of file valgrind834 test 0840...[IMAP external authentication with initial response without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind840 ../src/curl -q --output log/7/curl840.out --include --trace-ascii log/7/trace840 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:43237/840/;MAILINDEX=1' > log/7/stdout840 2> log/7/stderr840 840: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 840 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind840 ../src/curl -q --output log/7/curl840.out --include --trace-ascii log/7/trace840 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:43237/840/;MAILINDEX=1' > log/7/stdout840 2> log/7/stderr840 === End of file commands.log === Start of file imap_server.log 07:35:49.881671 ====> Client connect 07:35:49.881832 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.882173 < "A001 CAPABILITY" 07:35:49.882206 > "A001 BAD Command[CR][LF]" 07:35:49.882389 < "A002 LIST "verifiedserver" *" 07:35:49.882417 LIST_imap got "verifiedserver" * 07:35:49.882439 > "* LIST () "/" "WE ROOLZ: 115309"[CR][LF]" 07:35:49.882454 > "A002 OK LIST Completed[CR][LF]" 07:35:49.882466 return proof we are we 07:35:49.923682 < "A003 LOGOUT" 07:35:49.923744 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.923765 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.924128 MAIN sockfilt said DISC 07:35:49.924177 ====> Client disconnected 07:35:49.924238 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.727570 ====> Client connect 07:35:49.727830 Received DATA (on stdin) 07:35:49.727845 > 178 bytes data, server => client 07:35:49.727858 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.727873 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.727883 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.727892 'rve\r\n' 07:35:49.728009 < 17 bytes data, client => server 07:35:49.728026 'A001 CAPABILITY\r\n' 07:35:49.728207 Received DATA (on stdin) 07:35:49.728225 > 18 bytes data, server => client 07:35:49.728235 'A001 BAD Command\r\n' 07:35:49.728287 < 30 bytes data, client => server 07:35:49.728298 'A002 LIST "verifiedserver" *\r\n' 07:35:49.728448 Received DATA (on stdin) 07:35:49.728458 > 34 bytes data, server => client 07:35:49.728467 '* LIST () "/" "WE ROOLZ: 115309"\r\n' 07:35:49.728486 Received DATA (on stdin) 07:35:49.728494 > 24 bytes data, server => client 07:35:49.728503 'A002 OK LIST Completed\r\n' 07:35:49.769454 < 13 bytes data, client => server 07:35:49.769482 'A003 LOGOUT\r\n' 07:35:49.769751 Received DATA (on stdin) 07:35:49.769765 > 36 bytes data, server => client 07:35:49.769776 '* BYE curl IMAP server signing off\r\n' 07:35:49.769801 Received DATA (on stdin) 07:35:49.769812 > 26 bytes data, server => client 07:35:49.769823 'A003 OK LOGOUT completed\r\n' 07:35:49.770024 ====> Client disconnect 07:35:49.770501 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH EXTERNAL CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 840 === End of file server.cmd ===CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind841 ../src/curl -q --output log/6/curl841.out --include --trace-ascii log/6/trace841 --trace-config all --trace-time imap://127.0.0.1:43523/841/ -u user:secret -X 'FETCH 123 BODY[1]' > log/6/stdout841 2> log/6/stderr841 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind839 ../src/curl -q --output log/9/curl839.out --include --trace-ascii log/9/trace839 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:38357/839/;MAILINDEX=1' > log/9/stdout839 2> log/9/stderr839 Start of file valgrind840 ==117327== ==117327== Process terminating with default action of signal 4 (SIGILL) ==117327== Illegal opcode at address 0x4003082 ==117327== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117327== by 0x4003082: main (tool_main.c:234) === End of file valgrind840 test 0841...[IMAP custom request doesn't check continuation data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind841 ../src/curl -q --output log/6/curl841.out --include --trace-ascii log/6/trace841 --trace-config all --trace-time imap://127.0.0.1:43523/841/ -u user:secret -X 'FETCH 123 BODY[1]' > log/6/stdout841 2> log/6/stderr841 841: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 841 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind841 ../src/curl -q --output log/6/curl841.out --include --trace-ascii log/6/trace841 --trace-config all --trace-time imap://127.0.0.1:43523/841/ -u user:secret -X 'FETCH 123 BODY[1]' > log/6/stdout841 2> log/6/stderr841 === End of file commands.log === Start of file imap_server.log 07:35:49.884566 ====> Client connect 07:35:49.884715 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.884997 < "A001 CAPABILITY" 07:35:49.885046 > "A001 BAD Command[CR][LF]" 07:35:49.885401 < "A002 LIST "verifiedserver" *" 07:35:49.885431 LIST_imap got "verifiedserver" * 07:35:49.885456 > "* LIST () "/" "WE ROOLZ: 115318"[CR][LF]" 07:35:49.885472 > "A002 OK LIST Completed[CR][LF]" 07:35:49.885484 return proof we are we 07:35:49.930295 < "A003 LOGOUT" 07:35:49.930346 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.930364 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.930641 MAIN sockfilt said DISC 07:35:49.930665 ====> Client disconnected 07:35:49.930720 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.730464 ====> Client connect 07:35:49.730709 Received DATA (on stdin) 07:35:49.730723 > 178 bytes data, server => client 07:35:49.730734 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.730744 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.730753 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.730761 'rve\r\n' 07:35:49.730826 < 17 bytes data, client => server 07:35:49.730841 'A001 CAPABILITY\r\n' 07:35:49.731037 Received DATA (on stdin) 07:35:49.731054 > 18 bytes data, server => client 07:35:49.731063 'A001 BAD Command\r\n' 07:35:49.731121 < 30 bytes data, client => server 07:35:49.731139 'A002 LIST "verifiedserver" *\r\n' 07:35:49.731424 Received DATA (on stdin) 07:35:49.731438 > 34 bytes data, server => client 07:35:49.731449 '* LIST () "/" "WE ROOLZ: 115318"\r\n' 07:35:49.731470 Received DATA (on stdin) 07:35:49.731480 > 24 bytes data, server => client 07:35:49.731601 'A002 OK LIST Completed\r\n' 07:35:49.776149 < 13 bytes data, client => server 07:35:49.776292 'A003 LOGOUT\r\n' 07:35:49.776319 Received DATA (on stdin) 07:35:49.776329 > 36 bytes data, server => client 07:35:49.776339 '* BYE curl IMAP server signing off\r\n' 07:35:49.776361 Received DATA (on stdin) 07:35:49.776369 > 26 bytes data, server => client 07:35:49.776377 'A003 OK LOGOUT completed\r\n' 07:35:49.776579 ====> Client disconnect 07:35:49.776704 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 841 === End of file server.cmd === Start of file valgrind841 ==117350== ==117350== Process terminating with default action of signal 4 (SIGILL) ==117350== Illegal opcode at address 0x4003082 ==117350== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117350== by 0x4003082: main (tool_main.c:234) === End of file valgrind841 test 0839...[IMAP external authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind839 ../src/curl -q --output log/9/curl839.out --include --trace-ascii log/9/trace839 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:38357/839/;MAILINDEX=1' > log/9/stdout839 2> log/9/stderr839 839: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 839 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind839 ../src/curl -q --output log/9/curl839.out --include --trace-ascii log/9/trace839 --trace-config all --trace-time 'imap://user;AUTH=EXTERNAL@127.0.0.1:38357/839/;MAILINDEX=1' > log/9/stdout839 2> log/9/stderr839 === End of file commands.log === Start of file imap_server.log 07:35:49.879345 ====> Client connect 07:35:49.879498 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.879817 < "A001 CAPABILITY" 07:35:49.879854 > "A001 BAD Command[CR][LF]" 07:35:49.880069 < "A002 LIST "verifiedserver" *" 07:35:49.880097 LIST_imap got "verifiedserver" * 07:35:49.880121 > "* LIST () "/" "WE ROOLZ: 115314"[CR][LF]" 07:35:49.880141 > "A002 OK LIST Completed[CR][LF]" 07:35:49.880152 return proof we are we 07:35:49.923680 < "A003 LOGOUT" 07:35:49.923740 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.923758 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.924102 MAIN sockfilt said DISC 07:35:49.924140 ====> Client disconnected 07:35:49.924213 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.725218 ====> Client connect 07:35:49.725497 Received DATA (on stdin) 07:35:49.725512 > 178 bytes data, server => client 07:35:49.725524 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.725535 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.725545 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.725553 'rve\r\n' 07:35:49.725621 < 17 bytes data, client => server 07:35:49.725635 'A001 CAPABILITY\r\n' 07:35:49.725842 Received DATA (on stdin) 07:35:49.725865 > 18 bytes data, server => client 07:35:49.725876 'A001 BAD Command\r\n' 07:35:49.725952 < 30 bytes data, client => server 07:35:49.725978 'A002 LIST "verifiedserver" *\r\n' 07:35:49.726135 Received DATA (on stdin) 07:35:49.726147 > 34 bytes data, server => client 07:35:49.726157 '* LIST () "/" "WE ROOLZ: 115314"\r\n' 07:35:49.726176 Received DATA (on stdin) 07:35:49.726187 > 24 bytes data, server => client 07:35:49.726198 'A002 OK LIST Completed\r\n' 07:35:49.769485 < 13 bytes data, client => server 07:35:49.769511 'A003 LOGOUT\r\n' 07:35:49.769743 Received DATA (on stdin) 07:35:49.769756 > 36 bytes data, server => client 07:35:49.769767 '* BYE curl IMAP server signing off\r\n' 07:35:49.769788 Received DATA (on stdin) 07:35:49.769798 > 26 bytes data, server => client 07:35:49.769808 'A003 OK LOGOUT completed\r\n' 07:35:49.770004 ====> Client disconnect 07:35:49.770196 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH EXTERNAL CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 839 === End of file server.cmd === Start of file valgrind839 ==117326== ==117326== Process terminating with default action of signal 4 (SIGILL) ==117326== IllCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind838 ../src/curl -q --output log/24/curl838.out --include --trace-ascii log/24/trace838 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:38951/838/;MAILINDEX=1' > log/24/stdout838 2> log/24/stderr838 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind842 ../src/curl -q --output log/22/curl842.out --include --trace-ascii log/22/trace842 --trace-config all --trace-time 'imap://127.0.0.1:42985/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout842 2> log/22/stderr842 egal opcode at address 0x4003082 ==117326== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117326== by 0x4003082: main (tool_main.c:234) === End of file valgrind839 test 0838...[IMAP external authentication without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind838 ../src/curl -q --output log/24/curl838.out --include --trace-ascii log/24/trace838 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:38951/838/;MAILINDEX=1' > log/24/stdout838 2> log/24/stderr838 838: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 838 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind838 ../src/curl -q --output log/24/curl838.out --include --trace-ascii log/24/trace838 --trace-config all --trace-time 'imap://;AUTH=EXTERNAL@127.0.0.1:38951/838/;MAILINDEX=1' > log/24/stdout838 2> log/24/stderr838 === End of file commands.log === Start of file imap_server.log 07:35:49.879298 ====> Client connect 07:35:49.879470 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.879819 < "A001 CAPABILITY" 07:35:49.879893 > "A001 BAD Command[CR][LF]" 07:35:49.880147 < "A002 LIST "verifiedserver" *" 07:35:49.880177 LIST_imap got "verifiedserver" * 07:35:49.880204 > "* LIST () "/" "WE ROOLZ: 115313"[CR][LF]" 07:35:49.880220 > "A002 OK LIST Completed[CR][LF]" 07:35:49.880234 return proof we are we 07:35:49.927144 < "A003 LOGOUT" 07:35:49.927193 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.927217 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.927656 MAIN sockfilt said DISC 07:35:49.927682 ====> Client disconnected 07:35:49.927739 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.725174 ====> Client connect 07:35:49.725469 Received DATA (on stdin) 07:35:49.725484 > 178 bytes data, server => client 07:35:49.725495 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.725509 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.725519 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.725528 'rve\r\n' 07:35:49.725614 < 17 bytes data, client => server 07:35:49.725640 'A001 CAPABILITY\r\n' 07:35:49.725884 Received DATA (on stdin) 07:35:49.725897 > 18 bytes data, server => client 07:35:49.725907 'A001 BAD Command\r\n' 07:35:49.726027 < 30 bytes data, client => server 07:35:49.726046 'A002 LIST "verifiedserver" *\r\n' 07:35:49.726257 Received DATA (on stdin) 07:35:49.726278 > 34 bytes data, server => client 07:35:49.726290 '* LIST () "/" "WE ROOLZ: 115313"\r\n' 07:35:49.726316 Received DATA (on stdin) 07:35:49.726328 > 24 bytes data, server => client 07:35:49.726339 'A002 OK LIST Completed\r\n' 07:35:49.772752 < 13 bytes data, client => server 07:35:49.773150 'A003 LOGOUT\r\n' 07:35:49.773175 Received DATA (on stdin) 07:35:49.773187 > 36 bytes data, server => client 07:35:49.773198 '* BYE curl IMAP server signing off\r\n' 07:35:49.773224 Received DATA (on stdin) 07:35:49.773235 > 26 bytes data, server => client 07:35:49.773245 'A003 OK LOGOUT completed\r\n' 07:35:49.773586 ====> Client disconnect 07:35:49.773724 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTHENTICATE + REPLY = A002 OK AUTHENTICATE completed Testnum 838 === End of file server.cmd === Start of file valgrind838 ==117336== ==117336== Process terminating with default action of signal 4 (SIGILL) ==117336== Illegal opcode at address 0x4003082 ==117336== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117336== by 0x4003082: main (tool_main.c:234) === End of file valgrind838 test 0842...[IMAP OAuth 2.0 (OAUTHBEARER) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind842 ../src/curl -q --output log/22/curl842.out --include --trace-ascii log/22/trace842 --trace-config all --trace-time 'imap://127.0.0.1:42985/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout842 2> log/22/stderr842 842: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 842 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind842 ../src/curl -q --output log/22/curl842.out --include --trace-ascii log/22/trace842 --trace-config all --trace-time 'imap://127.0.0.1:42985/842/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout842 2> log/22/stderr842 === End of file commands.log === Start of file imap_server.log 07:35:49.936971 ====> Client connect 07:35:49.937112 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.937397 < "A001 CAPABILITY" 07:35:49.937433 > "A001 BAD Command[CR][LF]" 07:35:49.937591 < "A002 LIST "verifiedserver" *" 07:35:49.937620 LIST_imap got "verifiedserver" * 07:35:49.937646 > "* LIST () "/" "WE ROOLZ: 115327"[CR][LF]" 07:35:49.937664 > "A002 OK LIST Completed[CR][LF]" 07:35:49.937677 return proof we are we 07:35:49.980542 < "A003 LOGOUT" 07:35:49.980605 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:49.980624 > "A003 OK LOGOUT completed[CR][LF]" 07:35:49.980768 MAIN sockfilt said DISC 07:35:49.980792 ====> Client disconnected 07:35:49.981006 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.782867 ====> Client connect 07:35:49.783108 Received DATA (on stdin) 07:35:49.783122 > 178 bytes data, server => client 07:35:49.783134 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.783145 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.783155 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.783164 'rve\r\n' 07:35:49.783236 < 17 bytes data, client => server 07:35:49.783248 'A001 CAPABILITY\r\n' 07:35:49.783419 Received DATA (on stdin) 07:35:49.783431 > 18 bytes data, server => client 07:35:49.783442 'A001 BAD Command\r\n' 07:35:49.783492 < 30 bytes data, client => server 07:35:49.783504 'A002 LIST "verifiedserver" *\r\n' 07:35:49.783659 Received DATA (on stdin) 07:35:49.783671 > 34 bytes data, server => client 07:35:49.783680 '* LIST () "/" "WE ROOLZ: 115327"\r\n' 07:35:49.783703 Received DATA (on stdin) 07:35:49.783713 > 24 bytes data, server => client 07:35:49.783723 'A002 OK LIST Completed\r\n' 07:35:49.826336 < 13 bytes data, client => server 07:35:49.826361 'A003 LOGOUT\r\n' 07:35:49.826611 Received DATA (on stdin) 07:35:49.826624 > 36 bytes data, server => client 07:35:49.826634 '* BYE curl IMAP server signing off\r\n' 07:35:49.826655 Received DATA (on stdin) 07:35:49.826664 > 26 bytes data, server => client 07:35:49.826674 'A003 OK LOGOUT completed\r\n' 07:35:49.826708 ====> Client disconnect 07:35:49.826917 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTHENTICATE + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9NDI5ODUBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= A002 OK AUTHENTICATE completed Testnum 842 === End of file server.cmd === Start of file valgrind842 ==117608== ==117608== ProcesCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind843 ../src/curl -q --output log/12/curl843.out --include --trace-ascii log/12/trace843 --trace-config all --trace-time 'imap://127.0.0.1:34029/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/12/stdout843 2> log/12/stderr843 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind845 ../src/curl -q --output log/11/curl845.out --include --trace-ascii log/11/trace845 --trace-config all --trace-time 'imap://127.0.0.1:39479/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout845 2> log/11/stderr845 s terminating with default action of signal 4 (SIGILL) ==117608== Illegal opcode at address 0x4003082 ==117608== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117608== by 0x4003082: main (tool_main.c:234) === End of file valgrind842 test 0843...[IMAP OAuth 2.0 (OAUTHBEARER) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind843 ../src/curl -q --output log/12/curl843.out --include --trace-ascii log/12/trace843 --trace-config all --trace-time 'imap://127.0.0.1:34029/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/12/stdout843 2> log/12/stderr843 843: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 843 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind843 ../src/curl -q --output log/12/curl843.out --include --trace-ascii log/12/trace843 --trace-config all --trace-time 'imap://127.0.0.1:34029/843/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/12/stdout843 2> log/12/stderr843 === End of file commands.log === Start of file imap_server.log 07:35:49.964399 ====> Client connect 07:35:49.964616 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.964951 < "A001 CAPABILITY" 07:35:49.964988 > "A001 BAD Command[CR][LF]" 07:35:49.965155 < "A002 LIST "verifiedserver" *" 07:35:49.965192 LIST_imap got "verifiedserver" * 07:35:49.965222 > "* LIST () "/" "WE ROOLZ: 115376"[CR][LF]" 07:35:49.965240 > "A002 OK LIST Completed[CR][LF]" 07:35:49.965252 return proof we are we 07:35:50.006973 < "A003 LOGOUT" 07:35:50.007031 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.007051 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.007941 MAIN sockfilt said DISC 07:35:50.007996 ====> Client disconnected 07:35:50.008075 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.810261 ====> Client connect 07:35:49.810612 Received DATA (on stdin) 07:35:49.810626 > 178 bytes data, server => client 07:35:49.810635 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.810644 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.810652 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.810659 'rve\r\n' 07:35:49.810737 < 17 bytes data, client => server 07:35:49.810750 'A001 CAPABILITY\r\n' 07:35:49.810976 Received DATA (on stdin) 07:35:49.810988 > 18 bytes data, server => client 07:35:49.810997 'A001 BAD Command\r\n' 07:35:49.811054 < 30 bytes data, client => server 07:35:49.811065 'A002 LIST "verifiedserver" *\r\n' 07:35:49.811236 Received DATA (on stdin) 07:35:49.811249 > 34 bytes data, server => client 07:35:49.811260 '* LIST () "/" "WE ROOLZ: 115376"\r\n' 07:35:49.811282 Received DATA (on stdin) 07:35:49.811293 > 24 bytes data, server => client 07:35:49.811303 'A002 OK LIST Completed\r\n' 07:35:49.852792 < 13 bytes data, client => server 07:35:49.852817 'A003 LOGOUT\r\n' 07:35:49.853026 Received DATA (on stdin) 07:35:49.853055 > 36 bytes data, server => client 07:35:49.853068 '* BYE curl IMAP server signing off\r\n' 07:35:49.853099 Received DATA (on stdin) 07:35:49.853109 > 26 bytes data, server => client 07:35:49.853119 'A003 OK LOGOUT completed\r\n' 07:35:49.853854 ====> Client disconnect 07:35:49.854064 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed Testnum 843 === End of file server.cmd === Start of file valgrind843 ==117671== ==117671== Process terminating with default action of signal 4 (SIGILL) ==117671== Illegal opcode at address 0x4003082 ==117671== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117671== by 0x4003082: main (tool_main.c:234) === End of file valgrind843 test 0845...[IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind845 ../src/curl -q --output log/11/curl845.out --include --trace-ascii log/11/trace845 --trace-config all --trace-time 'imap://127.0.0.1:39479/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout845 2> log/11/stderr845 845: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 845 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind845 ../src/curl -q --output log/11/curl845.out --include --trace-ascii log/11/trace845 --trace-config all --trace-time 'imap://127.0.0.1:39479/845/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout845 2> log/11/stderr845 === End of file commands.log === Start of file imap_server.log 07:35:49.974482 ====> Client connect 07:35:49.974678 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.974955 < "A001 CAPABILITY" 07:35:49.974996 > "A001 BAD Command[CR][LF]" 07:35:49.975230 < "A002 LIST "verifiedserver" *" 07:35:49.975260 LIST_imap got "verifiedserver" * 07:35:49.975286 > "* LIST () "/" "WE ROOLZ: 115377"[CR][LF]" 07:35:49.975303 > "A002 OK LIST Completed[CR][LF]" 07:35:49.975315 return proof we are we 07:35:50.020646 < "A003 LOGOUT" 07:35:50.020748 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.020777 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.021001 MAIN sockfilt said DISC 07:35:50.021027 ====> Client disconnected 07:35:50.021089 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.820253 ====> Client connect 07:35:49.820644 Received DATA (on stdin) 07:35:49.820670 > 178 bytes data, server => client 07:35:49.820683 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.820694 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.820705 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.820714 'rve\r\n' 07:35:49.820805 < 17 bytes data, client => server 07:35:49.820817 'A001 CAPABILITY\r\n' 07:35:49.821067 Received DATA (on stdin) 07:35:49.821080 > 18 bytes data, server => client 07:35:49.821090 'A001 BAD Command\r\n' 07:35:49.821149 < 30 bytes data, client => server 07:35:49.821161 'A002 LIST "verifiedserver" *\r\n' 07:35:49.821254 Received DATA (on stdin) 07:35:49.821264 > 34 bytes data, server => client 07:35:49.821274 '* LIST () "/" "WE ROOLZ: 115377"\r\n' 07:35:49.821291 Received DATA (on stdin) 07:35:49.821620 > 24 bytes data, server => client 07:35:49.821635 'A002 OK LIST Completed\r\n' 07:35:49.866241 < 13 bytes data, client => server 07:35:49.866419 'A003 LOGOUT\r\n' 07:35:49.866721 Received DATA (on stdin) 07:35:49.866739 > 36 bytes data, server => client 07:35:49.866750 '* BYE curl IMAP server signing off\r\n' 07:35:49.866771 Received DATA (on stdin) 07:35:49.866780 > 26 bytes data, server => client 07:35:49.866790 'A003 OK LOGOUT completed\r\n' 07:35:49.866937 ====> Client disconnect 07:35:49.867317 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER CAPA SASL-IR REPLY AUTHENTICATE + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind846 ../src/curl -q --output log/13/curl846.out --include --trace-ascii log/13/trace846 --trace-config all --trace-time 'imap://127.0.0.1:32839/846/;MAILINDEX=1' -u notused:still-provided > log/13/stdout846 2> log/13/stderr846 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind844 ../src/curl -q --output log/3/curl844.out --include --trace-ascii log/3/trace844 --trace-config all --trace-time 'imap://127.0.0.1:37763/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout844 2> log/3/stderr844 vcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0= REPLY AQ== A002 NO Authentication failed Testnum 845 === End of file server.cmd === Start of file valgrind845 ==117716== ==117716== Process terminating with default action of signal 4 (SIGILL) ==117716== Illegal opcode at address 0x4003082 ==117716== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117716== by 0x4003082: main (tool_main.c:234) === End of file valgrind845 test 0846...[IMAP PREAUTH response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind846 ../src/curl -q --output log/13/curl846.out --include --trace-ascii log/13/trace846 --trace-config all --trace-time 'imap://127.0.0.1:32839/846/;MAILINDEX=1' -u notused:still-provided > log/13/stdout846 2> log/13/stderr846 846: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 846 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind846 ../src/curl -q --output log/13/curl846.out --include --trace-ascii log/13/trace846 --trace-config all --trace-time 'imap://127.0.0.1:32839/846/;MAILINDEX=1' -u notused:still-provided > log/13/stdout846 2> log/13/stderr846 === End of file commands.log === Start of file imap_server.log 07:35:49.987147 ====> Client connect 07:35:49.987505 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.987888 < "A001 CAPABILITY" 07:35:49.987924 > "A001 BAD Command[CR][LF]" 07:35:49.988090 < "A002 LIST "verifiedserver" *" 07:35:49.988119 LIST_imap got "verifiedserver" * 07:35:49.988142 > "* LIST () "/" "WE ROOLZ: 115380"[CR][LF]" 07:35:49.988159 > "A002 OK LIST Completed[CR][LF]" 07:35:49.988172 return proof we are we 07:35:50.033826 < "A003 LOGOUT" 07:35:50.033882 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.033902 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.034372 MAIN sockfilt said DISC 07:35:50.034414 ====> Client disconnected 07:35:50.034505 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.832767 ====> Client connect 07:35:49.833313 Received DATA (on stdin) 07:35:49.833331 > 178 bytes data, server => client 07:35:49.833343 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.833354 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.833364 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.833373 'rve\r\n' 07:35:49.833436 < 17 bytes data, client => server 07:35:49.833448 'A001 CAPABILITY\r\n' 07:35:49.833911 Received DATA (on stdin) 07:35:49.833923 > 18 bytes data, server => client 07:35:49.833934 'A001 BAD Command\r\n' 07:35:49.833987 < 30 bytes data, client => server 07:35:49.834000 'A002 LIST "verifiedserver" *\r\n' 07:35:49.834155 Received DATA (on stdin) 07:35:49.834167 > 34 bytes data, server => client 07:35:49.834178 '* LIST () "/" "WE ROOLZ: 115380"\r\n' 07:35:49.834199 Received DATA (on stdin) 07:35:49.834208 > 24 bytes data, server => client 07:35:49.834218 'A002 OK LIST Completed\r\n' 07:35:49.879630 < 13 bytes data, client => server 07:35:49.879656 'A003 LOGOUT\r\n' 07:35:49.879888 Received DATA (on stdin) 07:35:49.879901 > 36 bytes data, server => client 07:35:49.879911 '* BYE curl IMAP server signing off\r\n' 07:35:49.879936 Received DATA (on stdin) 07:35:49.879946 > 26 bytes data, server => client 07:35:49.879957 'A003 OK LOGOUT completed\r\n' 07:35:49.880286 ====> Client disconnect 07:35:49.880483 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd REPLY welcome * PREAUTH ready to serve already REPLY CAPABILITY * CAPABILITY IMAP4REV1 I18NLEVEL=1 LITERAL+ IDLE UIDPLUS NAMESPACE CHILDREN MAILBOX-REFERRALS BINARY UNSELECT ESEARCH WITHIN SCAN SORT THREAD=REFERENCES THREAD=ORDEREDSUBJECT MULTIAPPEND SASL-IR LOGIN-REFERRALS STARTTLS LOGINDISABLED\r\nA001 OK CAPABILITY completed Testnum 846 === End of file server.cmd === Start of file valgrind846 ==117764== ==117764== Process terminating with default action of signal 4 (SIGILL) ==117764== Illegal opcode at address 0x4003082 ==117764== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117764== by 0x4003082: main (tool_main.c:234) === End of file valgrind846 test 0844...[IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind844 ../src/curl -q --output log/3/curl844.out --include --trace-ascii log/3/trace844 --trace-config all --trace-time 'imap://127.0.0.1:37763/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout844 2> log/3/stderr844 844: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 844 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind844 ../src/curl -q --output log/3/curl844.out --include --trace-ascii log/3/trace844 --trace-config all --trace-time 'imap://127.0.0.1:37763/844/;MAILINDEX=1' -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/3/stdout844 2> log/3/stderr844 === End of file commands.log === Start of file imap_server.log 07:35:49.965349 ====> Client connect 07:35:49.965557 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:49.965875 < "A001 CAPABILITY" 07:35:49.965937 > "A001 BAD Command[CR][LF]" 07:35:49.966145 < "A002 LIST "verifiedserver" *" 07:35:49.966173 LIST_imap got "verifiedserver" * 07:35:49.966197 > "* LIST () "/" "WE ROOLZ: 115379"[CR][LF]" 07:35:49.966212 > "A002 OK LIST Completed[CR][LF]" 07:35:49.966224 return proof we are we 07:35:50.010260 < "A003 LOGOUT" 07:35:50.010316 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.010389 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.010739 MAIN sockfilt said DISC 07:35:50.010770 ====> Client disconnected 07:35:50.010826 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.811204 ====> Client connect 07:35:49.811558 Received DATA (on stdin) 07:35:49.811574 > 178 bytes data, server => client 07:35:49.811587 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:49.811598 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:49.811608 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:49.811617 'rve\r\n' 07:35:49.811690 < 17 bytes data, client => server 07:35:49.811702 'A001 CAPABILITY\r\n' 07:35:49.811929 Received DATA (on stdin) 07:35:49.811947 > 18 bytes data, server => client 07:35:49.811957 'A001 BAD Command\r\n' 07:35:49.812049 < 30 bytes data, client => server 07:35:49.812059 'A002 LIST "verifiedserver" *\r\n' 07:35:49.812205 Received DATA (on stdin) 07:35:49.812215 > 34 bytes data, server => client 07:35:49.812225 '* LIST () "/" "WE ROOLZ: 115379"\r\n' 07:35:49.812243 Received DATA (on stdin) 07:35:49.812251 > 24 bytes data, server => client 07:35:49.812260 'A002 OK LIST Completed\r\n' 07:35:49.856096 < 13 bytes data, client => server 07:35:49.856138 'A003 LOGOUT\r\n' 07:35:49.856299 Received DATA (on stdin) 07:35:49.856317 > 36 bytes data, server => client 07:35:49.856333 'CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind848 ../src/curl -q --output log/2/curl848.out --include --trace-ascii log/2/trace848 --trace-config all --trace-time 'imap://127.0.0.1:40327/848/;MAILINDEX=1' -u user:secret --sasl-authzid shared-mailbox > log/2/stdout848 2> log/2/stderr848 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind849 ../src/curl -q --output log/16/curl849.out --include --trace-ascii log/16/trace849 --trace-config all --trace-time 'imap://127.0.0.1:37765/849/;MAILINDEX=1' -u kurt:xipj3plmq --sasl-authzid ursel > log/16/stdout849 2> log/16/stderr849 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind847 ../src/curl -q --output log/10/curl847.out --include --trace-ascii log/10/trace847 --trace-config all --trace-time 'imap://127.0.0.1:42263/847/;UID=1' -u '"user:sec"ret{' > log/10/stdout847 2> log/10/stderr847 * BYE curl IMAP server signing off\r\n' 07:35:49.856358 Received DATA (on stdin) 07:35:49.856368 > 26 bytes data, server => client 07:35:49.856378 'A003 OK LOGOUT completed\r\n' 07:35:49.856656 ====> Client disconnect 07:35:49.856813 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTHENTICATE + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9Mzc3NjMBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= A002 NO Authentication failed Testnum 844 === End of file server.cmd === Start of file valgrind844 ==117678== ==117678== Process terminating with default action of signal 4 (SIGILL) ==117678== Illegal opcode at address 0x4003082 ==117678== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117678== by 0x4003082: main (tool_main.c:234) === End of file valgrind844 test 0848...[IMAP plain authentication with alternative authorization identity] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind848 ../src/curl -q --output log/2/curl848.out --include --trace-ascii log/2/trace848 --trace-config all --trace-time 'imap://127.0.0.1:40327/848/;MAILINDEX=1' -u user:secret --sasl-authzid shared-mailbox > log/2/stdout848 2> log/2/stderr848 848: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 848 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind848 ../src/curl -q --output log/2/curl848.out --include --trace-ascii log/2/trace848 --trace-config all --trace-time 'imap://127.0.0.1:40327/848/;MAILINDEX=1' -u user:secret --sasl-authzid shared-mailbox > log/2/stdout848 2> log/2/stderr848 === End of file commands.log === Start of file imap_server.log 07:35:50.010370 ====> Client connect 07:35:50.010496 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:50.011037 < "A001 CAPABILITY" 07:35:50.011074 > "A001 BAD Command[CR][LF]" 07:35:50.011399 < "A002 LIST "verifiedserver" *" 07:35:50.011440 LIST_imap got "verifiedserver" * 07:35:50.011470 > "* LIST () "/" "WE ROOLZ: 115183"[CR][LF]" 07:35:50.011488 > "A002 OK LIST Completed[CR][LF]" 07:35:50.011500 return proof we are we 07:35:50.053989 < "A003 LOGOUT" 07:35:50.054052 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.054069 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.054644 MAIN sockfilt said DISC 07:35:50.054689 ====> Client disconnected 07:35:50.054772 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.856254 ====> Client connect 07:35:50.856490 Received DATA (on stdin) 07:35:50.856504 > 178 bytes data, server => client 07:35:50.856515 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.856543 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.856554 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.856570 'rve\r\n' 07:35:50.856890 < 17 bytes data, client => server 07:35:50.856904 'A001 CAPABILITY\r\n' 07:35:50.857065 Received DATA (on stdin) 07:35:50.857087 > 18 bytes data, server => client 07:35:50.857097 'A001 BAD Command\r\n' 07:35:50.857237 < 30 bytes data, client => server 07:35:50.857258 'A002 LIST "verifiedserver" *\r\n' 07:35:50.857486 Received DATA (on stdin) 07:35:50.857499 > 34 bytes data, server => client 07:35:50.857510 '* LIST () "/" "WE ROOLZ: 115183"\r\n' 07:35:50.857531 Received DATA (on stdin) 07:35:50.857541 > 24 bytes data, server => client 07:35:50.857552 'A002 OK LIST Completed\r\n' 07:35:50.899762 < 13 bytes data, client => server 07:35:50.899876 'A003 LOGOUT\r\n' 07:35:50.900055 Received DATA (on stdin) 07:35:50.900066 > 36 bytes data, server => client 07:35:50.900077 '* BYE curl IMAP server signing off\r\n' 07:35:50.900102 Received DATA (on stdin) 07:35:50.900112 > 26 bytes data, server => client 07:35:50.900122 'A003 OK LOGOUT completed\r\n' 07:35:50.900557 ====> Client disconnect 07:35:50.900761 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTHENTICATE + REPLY c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= A002 OK AUTHENTICATE completed Testnum 848 === End of file server.cmd === Start of file valgrind848 ==117873== ==117873== Process terminating with default action of signal 4 (SIGILL) ==117873== Illegal opcode at address 0x4003082 ==117873== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117873== by 0x4003082: main (tool_main.c:234) === End of file valgrind848 test 0849...[IMAP plain auth with alt authorization identity (Not authorized)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind849 ../src/curl -q --output log/16/curl849.out --include --trace-ascii log/16/trace849 --trace-config all --trace-time 'imap://127.0.0.1:37765/849/;MAILINDEX=1' -u kurt:xipj3plmq --sasl-authzid ursel > log/16/stdout849 2> log/16/stderr849 849: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 849 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind849 ../src/curl -q --output log/16/curl849.out --include --trace-ascii log/16/trace849 --trace-config all --trace-time 'imap://127.0.0.1:37765/849/;MAILINDEX=1' -u kurt:xipj3plmq --sasl-authzid ursel > log/16/stdout849 2> log/16/stderr849 === End of file commands.log === Start of file imap_server.log 07:35:50.030968 ====> Client connect 07:35:50.031101 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:50.031465 < "A001 CAPABILITY" 07:35:50.031508 > "A001 BAD Command[CR][LF]" 07:35:50.031659 < "A002 LIST "verifiedserver" *" 07:35:50.031683 LIST_imap got "verifiedserver" * 07:35:50.031704 > "* LIST () "/" "WE ROOLZ: 115100"[CR][LF]" 07:35:50.031720 > "A002 OK LIST Completed[CR][LF]" 07:35:50.031731 return proof we are we 07:35:50.077070 < "A003 LOGOUT" 07:35:50.077123 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.077141 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.077737 MAIN sockfilt said DISC 07:35:50.077782 ====> Client disconnected 07:35:50.077861 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.876842 ====> Client connect 07:35:50.877097 Received DATA (on stdin) 07:35:50.877111 > 178 bytes data, server => client 07:35:50.877122 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.877132 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.877141 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.877149 'rve\r\n' 07:35:50.877271 < 17 bytes data, client => server 07:35:50.877294 'A001 CAPABILITY\r\n' 07:35:50.877494 Received DATA (on stdin) 07:35:50.877505 > 18 bytes data, server => client 07:35:50.877515 'A001 BAD Command\r\n' 07:35:50.877565 < 30 bytes data, client => server 07:35:50.877576 'A002 LIST "verifiedserver" *\r\n' 07:35:50.877713 Received DATA (on stdin) 07:35:50.877724 > 34 bytes data, server => client 07:35:50.877733 '* LIST () "/" "WE ROOLZ: 115100"\r\n' 07:35:50.877751 Received DATA (on stdin) 07:35:50.877760 > 24 bytes data, server => client 07:35:50.877770 'A002 OK LIST Completed\r\n' 07:35:50.9CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind826 ../src/curl -q --output log/23/curl826.out --include --trace-ascii log/23/trace826 --trace-config all --trace-time 'imap://127.0.0.1:35397/826/;MAILINDEX=1' -u user:secret > log/23/stdout826 2> log/23/stderr826 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind857 ../src/curl -q --output log/14/curl857.out --include --trace-ascii log/14/trace857 --trace-config all --trace-time pop3://127.0.0.1:37517/857 -u user:secret > log/14/stdout857 2> log/14/stderr857 22879 < 13 bytes data, client => server 07:35:50.922914 'A003 LOGOUT\r\n' 07:35:50.923128 Received DATA (on stdin) 07:35:50.923140 > 36 bytes data, server => client 07:35:50.923151 '* BYE curl IMAP server signing off\r\n' 07:35:50.923171 Received DATA (on stdin) 07:35:50.923181 > 26 bytes data, server => client 07:35:50.923191 'A003 OK LOGOUT completed\r\n' 07:35:50.923654 ====> Client disconnect 07:35:50.923850 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTHENTICATE + REPLY dXJzZWwAa3VydAB4aXBqM3BsbXE= A002 NO Not authorized Testnum 849 === End of file server.cmd === Start of file valgrind849 ==117958== ==117958== Process terminating with default action of signal 4 (SIGILL) ==117958== Illegal opcode at address 0x4003082 ==117958== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117958== by 0x4003082: main (tool_main.c:234) === End of file valgrind849 test 0847...[IMAP FETCH message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind847 ../src/curl -q --output log/10/curl847.out --include --trace-ascii log/10/trace847 --trace-config all --trace-time 'imap://127.0.0.1:42263/847/;UID=1' -u '"user:sec"ret{' > log/10/stdout847 2> log/10/stderr847 847: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 847 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind847 ../src/curl -q --output log/10/curl847.out --include --trace-ascii log/10/trace847 --trace-config all --trace-time 'imap://127.0.0.1:42263/847/;UID=1' -u '"user:sec"ret{' > log/10/stdout847 2> log/10/stderr847 === End of file commands.log === Start of file imap_server.log 07:35:50.007721 ====> Client connect 07:35:50.007843 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:50.008110 < "A001 CAPABILITY" 07:35:50.008145 > "A001 BAD Command[CR][LF]" 07:35:50.008302 < "A002 LIST "verifiedserver" *" 07:35:50.008328 LIST_imap got "verifiedserver" * 07:35:50.008392 > "* LIST () "/" "WE ROOLZ: 114987"[CR][LF]" 07:35:50.008412 > "A002 OK LIST Completed[CR][LF]" 07:35:50.008424 return proof we are we 07:35:50.052057 < "A003 LOGOUT" 07:35:50.052114 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:50.052132 > "A003 OK LOGOUT completed[CR][LF]" 07:35:50.052522 MAIN sockfilt said DISC 07:35:50.052549 ====> Client disconnected 07:35:50.052630 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:50.853599 ====> Client connect 07:35:50.853835 Received DATA (on stdin) 07:35:50.853849 > 178 bytes data, server => client 07:35:50.853861 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.853873 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.853883 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:50.853892 'rve\r\n' 07:35:50.853953 < 17 bytes data, client => server 07:35:50.853965 'A001 CAPABILITY\r\n' 07:35:50.854130 Received DATA (on stdin) 07:35:50.854142 > 18 bytes data, server => client 07:35:50.854152 'A001 BAD Command\r\n' 07:35:50.854202 < 30 bytes data, client => server 07:35:50.854214 'A002 LIST "verifiedserver" *\r\n' 07:35:50.854561 Received DATA (on stdin) 07:35:50.854578 > 34 bytes data, server => client 07:35:50.854589 '* LIST () "/" "WE ROOLZ: 114987"\r\n' 07:35:50.854610 Received DATA (on stdin) 07:35:50.854620 > 24 bytes data, server => client 07:35:50.854630 'A002 OK LIST Completed\r\n' 07:35:50.896583 < 13 bytes data, client => server 07:35:50.896619 'A003 LOGOUT\r\n' 07:35:50.898118 Received DATA (on stdin) 07:35:50.898132 > 36 bytes data, server => client 07:35:50.898142 '* BYE curl IMAP server signing off\r\n' 07:35:50.898166 Received DATA (on stdin) 07:35:50.898176 > 26 bytes data, server => client 07:35:50.898185 'A003 OK LOGOUT completed\r\n' 07:35:50.898457 ====> Client disconnect 07:35:50.898613 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 847 === End of file server.cmd === Start of file valgrind847 ==117847== ==117847== Process terminating with default action of signal 4 (SIGILL) ==117847== Illegal opcode at address 0x4003082 ==117847== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==117847== by 0x4003082: main (tool_main.c:234) === End of file valgrind847 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/23/server/imap_server.pid" --logfile "log/23/imap_server.log" --logdir "log/23" --portfile "log/23/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 35397 (log/23/server/imap_server.port) RUN: IMAP server is PID 116309 port 35397 * pid imap => 116309 116309 test 0826...[IMAP login authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind826 ../src/curl -q --output log/23/curl826.out --include --trace-ascii log/23/trace826 --trace-config all --trace-time 'imap://127.0.0.1:35397/826/;MAILINDEX=1' -u user:secret > log/23/stdout826 2> log/23/stderr826 826: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 826 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind826 ../src/curl -q --output log/23/curl826.out --include --trace-ascii log/23/trace826 --trace-config all --trace-time 'imap://127.0.0.1:35397/826/;MAILINDEX=1' -u user:secret > log/23/stdout826 2> log/23/stderr826 === End of file commands.log === Start of file imap_server.log 07:35:49.449181 IMAP server listens on port IPv4/35397 07:35:49.449268 logged pid 116309 in log/23/server/imap_server.pid 07:35:49.449297 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:49.294892 Running IPv4 version 07:35:49.294974 Listening on port 35397 07:35:49.295011 Wrote pid 116471 to log/23/server/imap_sockfilt.pid 07:35:49.295040 Wrote port 35397 to log/23/server/imap_server.port 07:35:49.295062 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd AUTH LOGIN CAPA SASL-IR REPLY AUTHENTICATE + UGFzc3dvcmQ6 REPLY c2VjcmV0 A002 OK AUTHENTICATE completed Testnum 826 === End of file server.cmd === Start of file valgrind826 ==118074== ==118074== Process terminating with default action of signal 4 (SIGILL) ==118074== Illegal opcode at address 0x4003082 ==118074== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118074== by 0x4003082: main (tool_main.c:234) === End of file valgrind826 test 0857...[POP3 RETR message with dot-prefixed line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind857 ../src/curl -q --output log/14/curl857.out --include --trace-ascii log/14/trace857 --trace-config all --trace-time pop3://127.0.0.1:37517/857 -u user:secret > log/14/stdout857 2> log/14/stderr857 857: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 857 === Start of file commands.log ../libtool --mCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind731 ../src/curl -q --output log/5/curl731.out --include --trace-ascii log/5/trace731 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout731 2> log/5/stderr731 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind874 ../src/curl -q --output log/14/curl874.out --include --trace-ascii log/14/trace874 --trace-config all --trace-time pop3://127.0.0.1:37517/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/14/stdout874 2> log/14/stderr874 ode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind857 ../src/curl -q --output log/14/curl857.out --include --trace-ascii log/14/trace857 --trace-config all --trace-time pop3://127.0.0.1:37517/857 -u user:secret > log/14/stdout857 2> log/14/stderr857 === End of file commands.log === Start of file pop3_server.log 07:35:50.451706 ====> Client connect 07:35:50.451840 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:50.452286 < "CAPA" 07:35:50.452339 > "-ERR Unrecognized command[CR][LF]" 07:35:50.452656 < "RETR verifiedserver" 07:35:50.452703 return proof we are we 07:35:50.452737 > "+OK Mail transfer starts[CR][LF]" 07:35:50.452757 > "WE ROOLZ: 100636[CR][LF]" 07:35:50.452774 > ".[CR][LF]" 07:35:50.493625 < "QUIT" 07:35:50.493674 > "+OK curl POP3 server signing off[CR][LF]" 07:35:50.493932 MAIN sockfilt said DISC 07:35:50.493961 ====> Client disconnected 07:35:50.494010 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.297598 ====> Client connect 07:35:50.297831 Received DATA (on stdin) 07:35:50.297842 > 178 bytes data, server => client 07:35:50.297851 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:50.297859 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.297867 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:50.297874 've \r\n' 07:35:50.298068 < 6 bytes data, client => server 07:35:50.298091 'CAPA\r\n' 07:35:50.298306 Received DATA (on stdin) 07:35:50.298318 > 27 bytes data, server => client 07:35:50.298327 '-ERR Unrecognized command\r\n' 07:35:50.298386 < 21 bytes data, client => server 07:35:50.298398 'RETR verifiedserver\r\n' 07:35:50.298762 Received DATA (on stdin) 07:35:50.298775 > 26 bytes data, server => client 07:35:50.298787 '+OK Mail transfer starts\r\n' 07:35:50.298814 Received DATA (on stdin) 07:35:50.298826 > 18 bytes data, server => client 07:35:50.298837 'WE ROOLZ: 100636\r\n' 07:35:50.298849 Received DATA (on stdin) 07:35:50.298860 > 3 bytes data, server => client 07:35:50.298870 '.\r\n' 07:35:50.339470 < 6 bytes data, client => server 07:35:50.339492 'QUIT\r\n' 07:35:50.339639 Received DATA (on stdin) 07:35:50.339652 > 34 bytes data, server => client 07:35:50.339662 '+OK curl POP3 server signing off\r\n' 07:35:50.339857 ====> Client disconnect 07:35:50.340035 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 857 === End of file server.cmd === Start of file valgrind857 ==118151== ==118151== Process terminating with default action of signal 4 (SIGILL) ==118151== Illegal opcode at address 0x4003082 ==118151== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118151== by 0x4003082: main (tool_main.c:234) === End of file valgrind857 setenv HOME = /startdir/src/build-curl/tests/log/5 test 0731...[IPFS with gateway URL and path from gateway file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind731 ../src/curl -q --output log/5/curl731.out --include --trace-ascii log/5/trace731 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout731 2> log/5/stderr731 731: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 731 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind731 ../src/curl -q --output log/5/curl731.out --include --trace-ascii log/5/trace731 --trace-config all --trace-time ipfs://bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u > log/5/stdout731 2> log/5/stderr731 === End of file commands.log === Start of file http_server.log 07:35:46.807844 ====> Client connect 07:35:46.807878 accept_connection 3 returned 4 07:35:46.807893 accept_connection 3 returned 0 07:35:46.807907 Read 93 bytes 07:35:46.807916 Process 93 bytes request 07:35:46.807929 Got request: GET /verifiedserver HTTP/1.1 07:35:46.807937 Are-we-friendly question received 07:35:46.807960 Wrote request (93 bytes) input to log/5/server.input 07:35:46.807975 Identifying ourselves as friends 07:35:46.808026 Response sent (56 bytes) and written to log/5/server.response 07:35:46.808035 special request received, no persistency 07:35:46.808044 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 731 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind731 ==112837== ==112837== Process terminating with default action of signal 4 (SIGILL) ==112837== Illegal opcode at address 0x4003082 ==112837== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==112837== by 0x4003082: main (tool_main.c:234) === End of file valgrind731 test 0874...[POP3 OAuth 2.0 (XOAUTH2) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind874 ../src/curl -q --output log/14/curl874.out --include --trace-ascii log/14/trace874 --trace-config all --trace-time pop3://127.0.0.1:37517/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/14/stdout874 2> log/14/stderr874 874: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 874 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind874 ../src/curl -q --output log/14/curl874.out --include --trace-ascii log/14/trace874 --trace-config all --trace-time pop3://127.0.0.1:37517/874 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/14/stdout874 2> log/14/stderr874 === End of file commands.log === Start of file pop3_server.log 07:35:50.849694 ====> Client connect 07:35:50.849827 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:50.850099 < "CAPA" 07:35:50.850127 > "-ERR Unrecognized command[CR][LF]" 07:35:50.850246 < "RETR verifiedserver" 07:35:50.850261 return proof we are we 07:35:50.850274 > "+OK Mail transfer starts[CR][LF]" 07:35:50.850284 > "WE ROOLZ: 100636[CR][LF]" 07:35:50.850293 > ".[CR][LF]" 07:35:50.893770 < "QUIT" 07:35:50.893811 > "+OK curl POP3 server signing off[CR][LF]" 07:35:50.893921 MAIN sockfilt said DISC 07:35:50.893940 ====> Client disconnected 07:35:50.894015 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.695605 ====> Client connect 07:35:50.695826 Received DATA (on stdin) 07:35:50.695845 > 178 bytes data, server => client 07:35:50.695857 ' _ _ ____ _ \r\n ___| | | | _ CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind850 ../src/curl -q --output log/19/curl850.out --include --trace-ascii log/19/trace850 --trace-config all --trace-time pop3://127.0.0.1:39035/850 -u user:secret > log/19/stdout850 2> log/19/stderr850 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind851 ../src/curl -q --output log/20/curl851.out --include --trace-ascii log/20/trace851 --trace-config all --trace-time pop3://127.0.0.1:34103/851 -l -u user:secret > log/20/stdout851 2> log/20/stderr851 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind852 ../src/curl -q --output log/15/curl852.out --include --trace-ascii log/15/trace852 --trace-config all --trace-time pop3://127.0.0.1:46261/852 -l -u user:secret > log/15/stdout852 2> log/15/stderr852 \| | \r\n ' 07:35:50.695867 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:50.695877 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:50.695886 've \r\n' 07:35:50.695957 < 6 bytes data, client => server 07:35:50.695974 'CAPA\r\n' 07:35:50.696107 Received DATA (on stdin) 07:35:50.696115 > 27 bytes data, server => client 07:35:50.696122 '-ERR Unrecognized command\r\n' 07:35:50.696157 < 21 bytes data, client => server 07:35:50.696164 'RETR verifiedserver\r\n' 07:35:50.696271 Received DATA (on stdin) 07:35:50.696278 > 26 bytes data, server => client 07:35:50.696285 '+OK Mail transfer starts\r\n' 07:35:50.696299 Received DATA (on stdin) 07:35:50.696305 > 18 bytes data, server => client 07:35:50.696311 'WE ROOLZ: 100636\r\n' 07:35:50.696319 Received DATA (on stdin) 07:35:50.696325 > 3 bytes data, server => client 07:35:50.696331 '.\r\n' 07:35:50.739597 < 6 bytes data, client => server 07:35:50.739626 'QUIT\r\n' 07:35:50.739796 Received DATA (on stdin) 07:35:50.739807 > 34 bytes data, server => client 07:35:50.739817 '+OK curl POP3 server signing off\r\n' 07:35:50.739866 ====> Client disconnect 07:35:50.739997 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH +OK Login successful Testnum 874 === End of file server.cmd === Start of file valgrind874 ==118235== ==118235== Process terminating with default action of signal 4 (SIGILL) ==118235== Illegal opcode at address 0x4003082 ==118235== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118235== by 0x4003082: main (tool_main.c:234) === End of file valgrind874 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/19/server/pop3_server.pid" --logfile "log/19/pop3_server.log" --logdir "log/19" --portfile "log/19/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39035 (log/19/server/pop3_server.port) RUN: POP3 server is PID 117679 port 39035 * pid pop3 => 117679 117679 test 0850...[POP3 RETR message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind850 ../src/curl -q --output log/19/curl850.out --include --trace-ascii log/19/trace850 --trace-config all --trace-time pop3://127.0.0.1:39035/850 -u user:secret > log/19/stdout850 2> log/19/stderr850 850: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 850 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind850 ../src/curl -q --output log/19/curl850.out --include --trace-ascii log/19/trace850 --trace-config all --trace-time pop3://127.0.0.1:39035/850 -u user:secret > log/19/stdout850 2> log/19/stderr850 === End of file commands.log === Start of file pop3_server.log 07:35:50.064238 POP3 server listens on port IPv4/39035 07:35:50.064316 logged pid 117679 in log/19/server/pop3_server.pid 07:35:50.064338 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.909979 Running IPv4 version 07:35:50.910043 Listening on port 39035 07:35:50.910082 Wrote pid 117839 to log/19/server/pop3_sockfilt.pid 07:35:50.910117 Wrote port 39035 to log/19/server/pop3_server.port 07:35:50.910135 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 850 === End of file server.cmd === Start of file valgrind850 ==118288== ==118288== Process terminating with default action of signal 4 (SIGILL) ==118288== Illegal opcode at address 0x4003082 ==118288== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118288== by 0x4003082: main (tool_main.c:234) === End of file valgrind850 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/20/server/pop3_server.pid" --logfile "log/20/pop3_server.log" --logdir "log/20" --portfile "log/20/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34103 (log/20/server/pop3_server.port) RUN: POP3 server is PID 117829 port 34103 * pid pop3 => 117829 117829 test 0851...[POP3 LIST one message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind851 ../src/curl -q --output log/20/curl851.out --include --trace-ascii log/20/trace851 --trace-config all --trace-time pop3://127.0.0.1:34103/851 -l -u user:secret > log/20/stdout851 2> log/20/stderr851 851: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 851 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind851 ../src/curl -q --output log/20/curl851.out --include --trace-ascii log/20/trace851 --trace-config all --trace-time pop3://127.0.0.1:34103/851 -l -u user:secret > log/20/stdout851 2> log/20/stderr851 === End of file commands.log === Start of file pop3_server.log 07:35:50.098315 POP3 server listens on port IPv4/34103 07:35:50.098414 logged pid 117829 in log/20/server/pop3_server.pid 07:35:50.098438 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.943924 Running IPv4 version 07:35:50.944020 Listening on port 34103 07:35:50.944062 Wrote pid 117978 to log/20/server/pop3_sockfilt.pid 07:35:50.944092 Wrote port 34103 to log/20/server/pop3_server.port 07:35:50.944182 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd # include the '.\r\n' 3-byte trailer to end the transfer properly REPLY LIST +OK 851 100\r\n. Testnum 851 === End of file server.cmd === Start of file valgrind851 ==118337== ==118337== Process terminating with default action of signal 4 (SIGILL) ==118337== Illegal opcode at address 0x4003082 ==118337== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118337== by 0x4003082: main (tool_main.c:234) === End of file valgrind851 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/15/server/pop3_server.pid" --logfile "log/15/pop3_server.log" --logdir "log/15" --portfile "log/15/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 46261 (log/15/server/pop3_server.port) RUN: POP3 server is PID 117855 port 46261 * pid pop3 => 117855 117855 test 0852...[POP3 LIST invalid message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind852 ../src/curl -q --output log/15/curl852.out --include --trace-ascii log/15/trace852 --trace-config all --trace-time pop3://127.0.0.1:46261/852 -l -u user:secret > log/15/stdout852 2> log/15/stderr852 852: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 852 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind852 ../src/curl -q --output log/15/curl852.out --include --trace-ascii log/15/trace852 --trace-config all --trace-time pop3://127.0.0.1:46261/852 -l -u user:secret > log/15/stdout852 2> log/15/stderr852 === End of file commands.log === Start of file pop3_serCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind853 ../src/curl -q --output log/18/curl853.out --include --trace-ascii log/18/trace853 --trace-config all --trace-time pop3://127.0.0.1:33413/ -u user:secret > log/18/stdout853 2> log/18/stderr853 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind854 ../src/curl -q --output log/17/curl854.out --include --trace-ascii log/17/trace854 --trace-config all --trace-time pop3://127.0.0.1:33359/ -u user:secret > log/17/stdout854 2> log/17/stderr854 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind876 ../src/curl -q --output log/14/curl876.out --include --trace-ascii log/14/trace876 --trace-config all --trace-time pop3://127.0.0.1:37517/876 -u user:secret > log/14/stdout876 2> log/14/stderr876 ver.log 07:35:50.102390 POP3 server listens on port IPv4/46261 07:35:50.102463 logged pid 117855 in log/15/server/pop3_server.pid 07:35:50.102484 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.948146 Running IPv4 version 07:35:50.948206 Listening on port 46261 07:35:50.948249 Wrote pid 118000 to log/15/server/pop3_sockfilt.pid 07:35:50.948279 Wrote port 46261 to log/15/server/pop3_server.port 07:35:50.948296 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY LIST -ERR no such message Testnum 852 === End of file server.cmd === Start of file valgrind852 ==118349== ==118349== Process terminating with default action of signal 4 (SIGILL) ==118349== Illegal opcode at address 0x4003082 ==118349== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118349== by 0x4003082: main (tool_main.c:234) === End of file valgrind852 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/18/server/pop3_server.pid" --logfile "log/18/pop3_server.log" --logdir "log/18" --portfile "log/18/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33413 (log/18/server/pop3_server.port) RUN: POP3 server is PID 118066 port 33413 * pid pop3 => 118066 118066 test 0853...[POP3 LIST messages from *SLOW* server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind853 ../src/curl -q --output log/18/curl853.out --include --trace-ascii log/18/trace853 --trace-config all --trace-time pop3://127.0.0.1:33413/ -u user:secret > log/18/stdout853 2> log/18/stderr853 853: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 853 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind853 ../src/curl -q --output log/18/curl853.out --include --trace-ascii log/18/trace853 --trace-config all --trace-time pop3://127.0.0.1:33413/ -u user:secret > log/18/stdout853 2> log/18/stderr853 === End of file commands.log === Start of file pop3_server.log 07:35:50.276408 POP3 server listens on port IPv4/33413 07:35:50.276480 logged pid 118066 in log/18/server/pop3_server.pid 07:35:50.276499 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.122158 Running IPv4 version 07:35:50.122225 Listening on port 33413 07:35:50.122268 Wrote pid 118067 to log/18/server/pop3_sockfilt.pid 07:35:50.122299 Wrote port 33413 to log/18/server/pop3_server.port 07:35:50.122316 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd SLOWDOWN Testnum 853 === End of file server.cmd === Start of file valgrind853 ==118438== ==118438== Process terminating with default action of signal 4 (SIGILL) ==118438== Illegal opcode at address 0x4003082 ==118438== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118438== by 0x4003082: main (tool_main.c:234) === End of file valgrind853 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/17/server/pop3_server.pid" --logfile "log/17/pop3_server.log" --logdir "log/17" --portfile "log/17/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33359 (log/17/server/pop3_server.port) RUN: POP3 server is PID 118068 port 33359 * pid pop3 => 118068 118068 test 0854...[POP3 LIST no messages available] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind854 ../src/curl -q --output log/17/curl854.out --include --trace-ascii log/17/trace854 --trace-config all --trace-time pop3://127.0.0.1:33359/ -u user:secret > log/17/stdout854 2> log/17/stderr854 854: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 854 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind854 ../src/curl -q --output log/17/curl854.out --include --trace-ascii log/17/trace854 --trace-config all --trace-time pop3://127.0.0.1:33359/ -u user:secret > log/17/stdout854 2> log/17/stderr854 === End of file commands.log === Start of file pop3_server.log 07:35:50.312400 POP3 server listens on port IPv4/33359 07:35:50.312489 logged pid 118068 in log/17/server/pop3_server.pid 07:35:50.312516 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.158095 Running IPv4 version 07:35:50.158181 Listening on port 33359 07:35:50.158222 Wrote pid 118069 to log/17/server/pop3_sockfilt.pid 07:35:50.158252 Wrote port 33359 to log/17/server/pop3_server.port 07:35:50.158275 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY LIST +OK but no messages\r\n. Testnum 854 === End of file server.cmd === Start of file valgrind854 ==118495== ==118495== Process terminating with default action of signal 4 (SIGILL) ==118495== Illegal opcode at address 0x4003082 ==118495== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118495== by 0x4003082: main (tool_main.c:234) === End of file valgrind854 test 0876...[POP3 CRAM-MD5 graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind876 ../src/curl -q --output log/14/curl876.out --include --trace-ascii log/14/trace876 --trace-config all --trace-time pop3://127.0.0.1:37517/876 -u user:secret > log/14/stdout876 2> log/14/stderr876 876: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 876 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind876 ../src/curl -q --output log/14/curl876.out --include --trace-ascii log/14/trace876 --trace-config all --trace-time pop3://127.0.0.1:37517/876 -u user:secret > log/14/stdout876 2> log/14/stderr876 === End of file commands.log === Start of file pop3_server.log 07:35:51.293252 ====> Client connect 07:35:51.293360 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.293556 < "CAPA" 07:35:51.293585 > "-ERR Unrecognized command[CR][LF]" 07:35:51.293696 < "RETR verifiedserver" 07:35:51.293713 return proof we are we 07:35:51.293725 > "+OK Mail transfer starts[CR][LF]" 07:35:51.293736 > "WE ROOLZ: 100636[CR][LF]" 07:35:51.293746 > ".[CR][LF]" 07:35:51.340240 < "QUIT" 07:35:51.340277 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.340631 MAIN sockfilt said DISC 07:35:51.340692 ====> Client disconnected 07:35:51.340766 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.139145 ====> Client connect 07:35:51.139348 Received DATA (on stdin) 07:35:51.139359 > 178 bytes data, server => client 07:35:51.139367 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.139374 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.139381 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind855 ../src/curl -q --output log/21/curl855.out --include --trace-ascii log/21/trace855 --trace-config all --trace-time pop3://127.0.0.1:34803/855 -u user:secret > log/21/stdout855 2> log/21/stderr855 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind856 ../src/curl -q --output log/8/curl856.out --include --trace-ascii log/8/trace856 --trace-config all --trace-time pop3://127.0.0.1:41293/856 -u user:wrong > log/8/stdout856 2> log/8/stderr856 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind863 ../src/curl -q --output log/24/curl863.out --include --trace-ascii log/24/trace863 --trace-config all --trace-time pop3://127.0.0.1:34283 -u user:secret -X RSET -I > log/24/stdout863 2> log/24/stderr863 07:35:51.139387 've \r\n' 07:35:51.139439 < 6 bytes data, client => server 07:35:51.139447 'CAPA\r\n' 07:35:51.139565 Received DATA (on stdin) 07:35:51.139573 > 27 bytes data, server => client 07:35:51.139580 '-ERR Unrecognized command\r\n' 07:35:51.139615 < 21 bytes data, client => server 07:35:51.139622 'RETR verifiedserver\r\n' 07:35:51.139723 Received DATA (on stdin) 07:35:51.139731 > 26 bytes data, server => client 07:35:51.139737 '+OK Mail transfer starts\r\n' 07:35:51.139751 Received DATA (on stdin) 07:35:51.139757 > 18 bytes data, server => client 07:35:51.139764 'WE ROOLZ: 100636\r\n' 07:35:51.139772 Received DATA (on stdin) 07:35:51.139778 > 3 bytes data, server => client 07:35:51.139784 '.\r\n' 07:35:51.186072 < 6 bytes data, client => server 07:35:51.186098 'QUIT\r\n' 07:35:51.186257 Received DATA (on stdin) 07:35:51.186265 > 34 bytes data, server => client 07:35:51.186272 '+OK curl POP3 server signing off\r\n' 07:35:51.186530 ====> Client disconnect 07:35:51.186753 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 REPLY AUTH + Rubbish REPLY * -ERR AUTH exchange cancelled by client Testnum 876 === End of file server.cmd === Start of file valgrind876 ==118552== ==118552== Process terminating with default action of signal 4 (SIGILL) ==118552== Illegal opcode at address 0x4003082 ==118552== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118552== by 0x4003082: main (tool_main.c:234) === End of file valgrind876 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/21/server/pop3_server.pid" --logfile "log/21/pop3_server.log" --logdir "log/21" --portfile "log/21/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34803 (log/21/server/pop3_server.port) RUN: POP3 server is PID 118070 port 34803 * pid pop3 => 118070 118070 test 0855...[POP3 RETR invalid message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind855 ../src/curl -q --output log/21/curl855.out --include --trace-ascii log/21/trace855 --trace-config all --trace-time pop3://127.0.0.1:34803/855 -u user:secret > log/21/stdout855 2> log/21/stderr855 855: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 855 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind855 ../src/curl -q --output log/21/curl855.out --include --trace-ascii log/21/trace855 --trace-config all --trace-time pop3://127.0.0.1:34803/855 -u user:secret > log/21/stdout855 2> log/21/stderr855 === End of file commands.log === Start of file pop3_server.log 07:35:50.424550 POP3 server listens on port IPv4/34803 07:35:50.424609 logged pid 118070 in log/21/server/pop3_server.pid 07:35:50.424626 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.270344 Running IPv4 version 07:35:50.270399 Listening on port 34803 07:35:50.270428 Wrote pid 118072 to log/21/server/pop3_sockfilt.pid 07:35:50.270450 Wrote port 34803 to log/21/server/pop3_server.port 07:35:50.270463 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY RETR -ERR no such message Testnum 855 === End of file server.cmd === Start of file valgrind855 ==118602== ==118602== Process terminating with default action of signal 4 (SIGILL) ==118602== Illegal opcode at address 0x4003082 ==118602== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118602== by 0x4003082: main (tool_main.c:234) === End of file valgrind855 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/8/server/pop3_server.pid" --logfile "log/8/pop3_server.log" --logdir "log/8" --portfile "log/8/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41293 (log/8/server/pop3_server.port) RUN: POP3 server is PID 118073 port 41293 * pid pop3 => 118073 118073 test 0856...[POP3 invalid login] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind856 ../src/curl -q --output log/8/curl856.out --include --trace-ascii log/8/trace856 --trace-config all --trace-time pop3://127.0.0.1:41293/856 -u user:wrong > log/8/stdout856 2> log/8/stderr856 856: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 856 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind856 ../src/curl -q --output log/8/curl856.out --include --trace-ascii log/8/trace856 --trace-config all --trace-time pop3://127.0.0.1:41293/856 -u user:wrong > log/8/stdout856 2> log/8/stderr856 === End of file commands.log === Start of file pop3_server.log 07:35:50.458027 POP3 server listens on port IPv4/41293 07:35:50.458128 logged pid 118073 in log/8/server/pop3_server.pid 07:35:50.458154 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.303760 Running IPv4 version 07:35:50.303817 Listening on port 41293 07:35:50.303857 Wrote pid 118127 to log/8/server/pop3_sockfilt.pid 07:35:50.303887 Wrote port 41293 to log/8/server/pop3_server.port 07:35:50.303907 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY PASS -ERR Login failure Testnum 856 === End of file server.cmd === Start of file valgrind856 ==118695== ==118695== Process terminating with default action of signal 4 (SIGILL) ==118695== Illegal opcode at address 0x4003082 ==118695== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118695== by 0x4003082: main (tool_main.c:234) === End of file valgrind856 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/24/server/pop3_server.pid" --logfile "log/24/pop3_server.log" --logdir "log/24" --portfile "log/24/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34283 (log/24/server/pop3_server.port) RUN: POP3 server is PID 118142 port 34283 * pid pop3 => 118142 118142 test 0863...[POP3 RSET (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind863 ../src/curl -q --output log/24/curl863.out --include --trace-ascii log/24/trace863 --trace-config all --trace-time pop3://127.0.0.1:34283 -u user:secret -X RSET -I > log/24/stdout863 2> log/24/stderr863 863: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 863 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind863 ../src/curl -q --output log/24/curl863.out --include --trace-ascii log/24/trace863 --trace-config all --trace-time pop3://127.0.0.1:34283 -u user:secret -X RSET -I > log/24/stdout863 2> log/24/stderr863 === End of file commands.log === Start of file pop3_server.log 07:35:50.498740 POP3 server listens on port IPv4/34283 07:35:50.498837 logged pid 118142 in log/24/server/pop3_server.pid 07:35:50.498860 Awaiting input === End of file pop3_seCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind864 ../src/curl -q --output log/22/curl864.out --include --trace-ascii log/22/trace864 --trace-config all --trace-time pop3://127.0.0.1:34541/864 -u user:secret > log/22/stdout864 2> log/22/stderr864 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind859 ../src/curl -q --output log/4/curl859.out --include --trace-ascii log/4/trace859 --trace-config all --trace-time pop3://127.0.0.1:44405 -u user:secret -X STAT -I > log/4/stdout859 2> log/4/stderr859 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind858 ../src/curl -q --output log/1/curl858.out --include --trace-ascii log/1/trace858 --trace-config all --trace-time pop3://127.0.0.1:39747/858 -u user:secret -X DELE -I > log/1/stdout858 2> log/1/stderr858 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind877 ../src/curl -q --output log/19/curl877.out --include --trace-ascii log/19/trace877 --trace-config all --trace-time pop3://127.0.0.1:39035/877 -u testuser:testpass > log/19/stdout877 2> log/19/stderr877 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind860 ../src/curl -q --output log/7/curl860.out --include --trace-ascii log/7/trace860 --trace-config all --trace-time pop3://127.0.0.1:37565 -u user:secret -X NOOP -I > log/7/stdout860 2> log/7/stderr860 rver.log === Start of file pop3_sockfilt.log 07:35:50.344261 Running IPv4 version 07:35:50.344320 Listening on port 34283 07:35:50.344346 Wrote pid 118149 to log/24/server/pop3_sockfilt.pid 07:35:50.344366 Wrote port 34283 to log/24/server/pop3_server.port 07:35:50.344608 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 863 === End of file server.cmd === Start of file valgrind863 ==118905== ==118905== Process terminating with default action of signal 4 (SIGILL) ==118905== Illegal opcode at address 0x4003082 ==118905== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118905== by 0x4003082: main (tool_main.c:234) === End of file valgrind863 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/22/server/pop3_server.pid" --logfile "log/22/pop3_server.log" --logdir "log/22" --portfile "log/22/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34541 (log/22/server/pop3_server.port) RUN: POP3 server is PID 118162 port 34541 * pid pop3 => 118162 118162 test 0864...[POP3 APOP authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind864 ../src/curl -q --output log/22/curl864.out --include --trace-ascii log/22/trace864 --trace-config all --trace-time pop3://127.0.0.1:34541/864 -u user:secret > log/22/stdout864 2> log/22/stderr864 864: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 864 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind864 ../src/curl -q --output log/22/curl864.out --include --trace-ascii log/22/trace864 --trace-config all --trace-time pop3://127.0.0.1:34541/864 -u user:secret > log/22/stdout864 2> log/22/stderr864 === End of file commands.log === Start of file pop3_server.log 07:35:50.537819 POP3 server listens on port IPv4/34541 07:35:50.537879 logged pid 118162 in log/22/server/pop3_server.pid 07:35:50.537896 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.383619 Running IPv4 version 07:35:50.383671 Listening on port 34541 07:35:50.383701 Wrote pid 118199 to log/22/server/pop3_sockfilt.pid 07:35:50.383723 Wrote port 34541 to log/22/server/pop3_server.port 07:35:50.383738 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd CAPA APOP REPLY welcome +OK curl POP3 server ready to serve <1972.987654321\@curl> Testnum 864 === End of file server.cmd === Start of file valgrind864 ==119191== ==119191== Process terminating with default action of signal 4 (SIGILL) ==119191== Illegal opcode at address 0x4003082 ==119191== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119191== by 0x4003082: main (tool_main.c:234) === End of file valgrind864 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/4/server/pop3_server.pid" --logfile "log/4/pop3_server.log" --logdir "log/4" --portfile "log/4/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 44405 (log/4/server/pop3_server.port) RUN: POP3 server is PID 118121 port 44405 * pid pop3 => 118121 118121 test 0859...[POP3 STAT (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind859 ../src/curl -q --output log/4/curl859.out --include --trace-ascii log/4/trace859 --trace-config all --trace-time pop3://127.0.0.1:44405 -u user:secret -X STAT -I > log/4/stdout859 2> log/4/stderr859 859: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 859 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind859 ../src/curl -q --output log/4/curl859.out --include --trace-ascii log/4/trace859 --trace-config all --trace-time pop3://127.0.0.1:44405 -u user:secret -X STAT -I > log/4/stdout859 2> log/4/stderr859 === End of file commands.log === Start of file pop3_server.log 07:35:50.484177 POP3 server listens on port IPv4/44405 07:35:50.484236 logged pid 118121 in log/4/server/pop3_server.pid 07:35:50.484253 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.329961 Running IPv4 version 07:35:50.330014 Listening on port 44405 07:35:50.330045 Wrote pid 118145 to log/4/server/pop3_sockfilt.pid 07:35:50.330068 Wrote port 44405 to log/4/server/pop3_server.port 07:35:50.330083 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 859 === End of file server.cmd === Start of file valgrind859 ==118759== ==118759== Process terminating with default action of signal 4 (SIGILL) ==118759== Illegal opcode at address 0x4003082 ==118759== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118759== by 0x4003082: main (tool_main.c:234) === End of file valgrind859 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/1/server/pop3_server.pid" --logfile "log/1/pop3_server.log" --logdir "log/1" --portfile "log/1/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39747 (log/1/server/pop3_server.port) RUN: POP3 server is PID 118115 port 39747 * pid pop3 => 118115 118115 test 0858...[POP3 DELE message (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind858 ../src/curl -q --output log/1/curl858.out --include --trace-ascii log/1/trace858 --trace-config all --trace-time pop3://127.0.0.1:39747/858 -u user:secret -X DELE -I > log/1/stdout858 2> log/1/stderr858 858: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 858 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind858 ../src/curl -q --output log/1/curl858.out --include --trace-ascii log/1/trace858 --trace-config all --trace-time pop3://127.0.0.1:39747/858 -u user:secret -X DELE -I > log/1/stdout858 2> log/1/stderr858 === End of file commands.log === Start of file pop3_server.log 07:35:50.479333 POP3 server listens on port IPv4/39747 07:35:50.479395 logged pid 118115 in log/1/server/pop3_server.pid 07:35:50.479414 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.325104 Running IPv4 version 07:35:50.325159 Listening on port 39747 07:35:50.325193 Wrote pid 118144 to log/1/server/pop3_sockfilt.pid 07:35:50.325217 Wrote port 39747 to log/1/server/pop3_server.port 07:35:50.325231 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 858 === End of file server.cmd === Start of file valgrind858 ==118745== ==118745== Process terminating with default action of signal 4 (SIGILL) ==118745== Illegal opcode at address 0x4003082 ==118745== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118745== by 0x4003082: main (tool_main.c:234) === End of file valgrind858 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind862 ../src/curl -q --output log/9/curl862.out --include --trace-ascii log/9/trace862 --trace-config all --trace-time pop3://127.0.0.1:37563 -u user:secret -X 'TOP 862 0' > log/9/stdout862 2> log/9/stderr862 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind861 ../src/curl -q --output log/6/curl861.out --include --trace-ascii log/6/trace861 --trace-config all --trace-time pop3://127.0.0.1:40149 -u user:secret -X UIDL > log/6/stdout861 2> log/6/stderr861 ir/src/curl/tests/ftpserver.pl --pidfile "log/7/server/pop3_server.pid" --logfile "log/7/pop3_server.log" --logdir "log/7" --portfile "log/7/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37565 (log/7/server/pop3_server.port) RUN: POP3 server is PID 118126 port 37565 * pid pop3 => 118126 118126 test 0860...[POP3 NOOP (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind860 ../src/curl -q --output log/7/curl860.out --include --trace-ascii log/7/trace860 --trace-config all --trace-time pop3://127.0.0.1:37565 -u user:secret -X NOOP -I > log/7/stdout860 2> log/7/stderr860 860: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 860 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind860 ../src/curl -q --output log/7/curl860.out --include --trace-ascii log/7/trace860 --trace-config all --trace-time pop3://127.0.0.1:37565 -u user:secret -X NOOP -I > log/7/stdout860 2> log/7/stderr860 === End of file commands.log === Start of file pop3_server.log 07:35:50.485062 POP3 server listens on port IPv4/37565 07:35:50.485118 logged pid 118126 in log/7/server/pop3_server.pid 07:35:50.485135 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.330807 Running IPv4 version 07:35:50.330844 Listening on port 37565 07:35:50.330868 Wrote pid 118147 to log/7/server/pop3_sockfilt.pid 07:35:50.330888 Wrote port 37565 to log/7/server/pop3_server.port 07:35:50.330983 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 860 === End of file server.cmd === Start of file valgrind860 ==118762== ==118762== Process terminating with default action of signal 4 (SIGILL) ==118762== Illegal opcode at address 0x4003082 ==118762== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118762== by 0x4003082: main (tool_main.c:234) === End of file valgrind860 test 0877...[POP3 NTLM graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind877 ../src/curl -q --output log/19/curl877.out --include --trace-ascii log/19/trace877 --trace-config all --trace-time pop3://127.0.0.1:39035/877 -u testuser:testpass > log/19/stdout877 2> log/19/stderr877 877: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 877 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind877 ../src/curl -q --output log/19/curl877.out --include --trace-ascii log/19/trace877 --trace-config all --trace-time pop3://127.0.0.1:39035/877 -u testuser:testpass > log/19/stdout877 2> log/19/stderr877 === End of file commands.log === Start of file pop3_server.log 07:35:51.415073 ====> Client connect 07:35:51.415195 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.415401 < "CAPA" 07:35:51.415430 > "-ERR Unrecognized command[CR][LF]" 07:35:51.415542 < "RETR verifiedserver" 07:35:51.415561 return proof we are we 07:35:51.415576 > "+OK Mail transfer starts[CR][LF]" 07:35:51.415589 > "WE ROOLZ: 117679[CR][LF]" 07:35:51.415599 > ".[CR][LF]" 07:35:51.456967 < "QUIT" 07:35:51.457016 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.457380 MAIN sockfilt said DISC 07:35:51.457401 ====> Client disconnected 07:35:51.457450 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:52.260965 ====> Client connect 07:35:52.261183 Received DATA (on stdin) 07:35:52.261194 > 178 bytes data, server => client 07:35:52.261202 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:52.261209 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:52.261216 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:52.261222 've \r\n' 07:35:52.261273 < 6 bytes data, client => server 07:35:52.261281 'CAPA\r\n' 07:35:52.261410 Received DATA (on stdin) 07:35:52.261419 > 27 bytes data, server => client 07:35:52.261426 '-ERR Unrecognized command\r\n' 07:35:52.261462 < 21 bytes data, client => server 07:35:52.261470 'RETR verifiedserver\r\n' 07:35:52.261578 Received DATA (on stdin) 07:35:52.261585 > 26 bytes data, server => client 07:35:52.261592 '+OK Mail transfer starts\r\n' 07:35:52.261606 Received DATA (on stdin) 07:35:52.261613 > 18 bytes data, server => client 07:35:52.261620 'WE ROOLZ: 117679\r\n' 07:35:52.261628 Received DATA (on stdin) 07:35:52.261635 > 3 bytes data, server => client 07:35:52.261641 '.\r\n' 07:35:52.302796 < 6 bytes data, client => server 07:35:52.302820 'QUIT\r\n' 07:35:52.303004 Received DATA (on stdin) 07:35:52.303016 > 34 bytes data, server => client 07:35:52.303026 '+OK curl POP3 server signing off\r\n' 07:35:52.303318 ====> Client disconnect 07:35:52.303431 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH NTLM REPLY AUTH + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish REPLY * -ERR AUTH exchange cancelled by client Testnum 877 === End of file server.cmd === Start of file valgrind877 ==118780== ==118780== Process terminating with default action of signal 4 (SIGILL) ==118780== Illegal opcode at address 0x4003082 ==118780== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118780== by 0x4003082: main (tool_main.c:234) === End of file valgrind877 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/9/server/pop3_server.pid" --logfile "log/9/pop3_server.log" --logdir "log/9" --portfile "log/9/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37563 (log/9/server/pop3_server.port) RUN: POP3 server is PID 118132 port 37563 * pid pop3 => 118132 118132 test 0862...[POP3 retrieve message header (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind862 ../src/curl -q --output log/9/curl862.out --include --trace-ascii log/9/trace862 --trace-config all --trace-time pop3://127.0.0.1:37563 -u user:secret -X 'TOP 862 0' > log/9/stdout862 2> log/9/stderr862 862: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 862 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind862 ../src/curl -q --output log/9/curl862.out --include --trace-ascii log/9/trace862 --trace-config all --trace-time pop3://127.0.0.1:37563 -u user:secret -X 'TOP 862 0' > log/9/stdout862 2> log/9/stderr862 === End of file commands.log === Start of file pop3_server.log 07:35:50.489230 POP3 server listens on port IPv4/37563 07:35:50.489295 logged pid 118132 in log/9/server/pop3_server.pid 07:35:50.489338 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.334925 Running IPv4 version 07:35:50.334998 Listening on port 37563 07:35:50.335061 Wrote pid 118148 tCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind880 ../src/curl -q --output log/15/curl880.out --include --trace-ascii log/15/trace880 --trace-config all --trace-time pop3://127.0.0.1:46261/880 -u user:secret > log/15/stdout880 2> log/15/stderr880 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind879 ../src/curl -q --output log/20/curl879.out --include --trace-ascii log/20/trace879 --trace-config all --trace-time pop3://127.0.0.1:34103/879 -u user:secret > log/20/stdout879 2> log/20/stderr879 o log/9/server/pop3_sockfilt.pid 07:35:50.335120 Wrote port 37563 to log/9/server/pop3_server.port 07:35:50.335140 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd CAPA TOP USER Testnum 862 === End of file server.cmd === Start of file valgrind862 ==118789== ==118789== Process terminating with default action of signal 4 (SIGILL) ==118789== Illegal opcode at address 0x4003082 ==118789== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118789== by 0x4003082: main (tool_main.c:234) === End of file valgrind862 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/6/server/pop3_server.pid" --logfile "log/6/pop3_server.log" --logdir "log/6" --portfile "log/6/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 40149 (log/6/server/pop3_server.port) RUN: POP3 server is PID 118131 port 40149 * pid pop3 => 118131 118131 test 0861...[POP3 UIDL (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind861 ../src/curl -q --output log/6/curl861.out --include --trace-ascii log/6/trace861 --trace-config all --trace-time pop3://127.0.0.1:40149 -u user:secret -X UIDL > log/6/stdout861 2> log/6/stderr861 861: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 861 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind861 ../src/curl -q --output log/6/curl861.out --include --trace-ascii log/6/trace861 --trace-config all --trace-time pop3://127.0.0.1:40149 -u user:secret -X UIDL > log/6/stdout861 2> log/6/stderr861 === End of file commands.log === Start of file pop3_server.log 07:35:50.484300 POP3 server listens on port IPv4/40149 07:35:50.484356 logged pid 118131 in log/6/server/pop3_server.pid 07:35:50.484372 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.330110 Running IPv4 version 07:35:50.330152 Listening on port 40149 07:35:50.330180 Wrote pid 118146 to log/6/server/pop3_sockfilt.pid 07:35:50.330201 Wrote port 40149 to log/6/server/pop3_server.port 07:35:50.330214 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd CAPA UIDL USER Testnum 861 === End of file server.cmd === Start of file valgrind861 ==118788== ==118788== Process terminating with default action of signal 4 (SIGILL) ==118788== Illegal opcode at address 0x4003082 ==118788== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118788== by 0x4003082: main (tool_main.c:234) === End of file valgrind861 test 0880...[POP3 NTLM authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind880 ../src/curl -q --output log/15/curl880.out --include --trace-ascii log/15/trace880 --trace-config all --trace-time pop3://127.0.0.1:46261/880 -u user:secret > log/15/stdout880 2> log/15/stderr880 880: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 880 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind880 ../src/curl -q --output log/15/curl880.out --include --trace-ascii log/15/trace880 --trace-config all --trace-time pop3://127.0.0.1:46261/880 -u user:secret > log/15/stdout880 2> log/15/stderr880 === End of file commands.log === Start of file pop3_server.log 07:35:51.418357 ====> Client connect 07:35:51.418470 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.418659 < "CAPA" 07:35:51.418687 > "-ERR Unrecognized command[CR][LF]" 07:35:51.418805 < "RETR verifiedserver" 07:35:51.418824 return proof we are we 07:35:51.418837 > "+OK Mail transfer starts[CR][LF]" 07:35:51.418850 > "WE ROOLZ: 117855[CR][LF]" 07:35:51.418860 > ".[CR][LF]" 07:35:51.461305 < "QUIT" 07:35:51.461369 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.461678 MAIN sockfilt said DISC 07:35:51.461726 ====> Client disconnected 07:35:51.461811 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:52.264256 ====> Client connect 07:35:52.264456 Received DATA (on stdin) 07:35:52.264466 > 178 bytes data, server => client 07:35:52.264474 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:52.264482 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:52.264489 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:52.264495 've \r\n' 07:35:52.264538 < 6 bytes data, client => server 07:35:52.264546 'CAPA\r\n' 07:35:52.264667 Received DATA (on stdin) 07:35:52.264682 > 27 bytes data, server => client 07:35:52.264690 '-ERR Unrecognized command\r\n' 07:35:52.264725 < 21 bytes data, client => server 07:35:52.264732 'RETR verifiedserver\r\n' 07:35:52.264838 Received DATA (on stdin) 07:35:52.264846 > 26 bytes data, server => client 07:35:52.264853 '+OK Mail transfer starts\r\n' 07:35:52.264866 Received DATA (on stdin) 07:35:52.264873 > 18 bytes data, server => client 07:35:52.264880 'WE ROOLZ: 117855\r\n' 07:35:52.264888 Received DATA (on stdin) 07:35:52.264894 > 3 bytes data, server => client 07:35:52.264901 '.\r\n' 07:35:52.307143 < 6 bytes data, client => server 07:35:52.307161 'QUIT\r\n' 07:35:52.307362 Received DATA (on stdin) 07:35:52.307384 > 34 bytes data, server => client 07:35:52.307395 '+OK curl POP3 server signing off\r\n' 07:35:52.307593 ====> Client disconnect 07:35:52.307798 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH NTLM PLAIN REPLY "AUTH NTLM" + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + Rubbish REPLY * -ERR AUTH exchange cancelled by client REPLY "AUTH PLAIN" + REPLY AHVzZXIAc2VjcmV0 +OK Login successful Testnum 880 === End of file server.cmd === Start of file valgrind880 ==118856== ==118856== Process terminating with default action of signal 4 (SIGILL) ==118856== Illegal opcode at address 0x4003082 ==118856== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118856== by 0x4003082: main (tool_main.c:234) === End of file valgrind880 test 0879...[POP3 CRAM-MD5 authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind879 ../src/curl -q --output log/20/curl879.out --include --trace-ascii log/20/trace879 --trace-config all --trace-time pop3://127.0.0.1:34103/879 -u user:secret > log/20/stdout879 2> log/20/stderr879 879: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 879 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind879 ../src/curl -q --output log/20/curl879.out --include --trace-ascii log/20/trace879 --trace-config all --trace-time pop3://127.0.0.1:34103/879 -u user:secret > log/20/stdout879 2> log/20/stderr879 === End of file commands.log === Start of file pop3_server.log 07:35:51.417605 ====> Client connect 07:35:51.417743 >CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind867 ../src/curl -q --output log/13/curl867.out --include --trace-ascii log/13/trace867 --trace-config all --trace-time pop3://127.0.0.1:33555/867 -u user:secret > log/13/stdout867 2> log/13/stderr867 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind865 ../src/curl -q --output log/12/curl865.out --include --trace-ascii log/12/trace865 --trace-config all --trace-time pop3://127.0.0.1:41423/865 -u user:secret > log/12/stdout865 2> log/12/stderr865 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind866 ../src/curl -q --output log/11/curl866.out --include --trace-ascii log/11/trace866 --trace-config all --trace-time pop3://127.0.0.1:35927/866 -u user:secret > log/11/stdout866 2> log/11/stderr866 " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.417949 < "CAPA" 07:35:51.417978 > "-ERR Unrecognized command[CR][LF]" 07:35:51.418096 < "RETR verifiedserver" 07:35:51.418115 return proof we are we 07:35:51.418129 > "+OK Mail transfer starts[CR][LF]" 07:35:51.418140 > "WE ROOLZ: 117829[CR][LF]" 07:35:51.418151 > ".[CR][LF]" 07:35:51.463728 < "QUIT" 07:35:51.463773 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.463998 MAIN sockfilt said DISC 07:35:51.464019 ====> Client disconnected 07:35:51.464074 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:52.263495 ====> Client connect 07:35:52.263741 Received DATA (on stdin) 07:35:52.263751 > 178 bytes data, server => client 07:35:52.263759 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:52.263767 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:52.263774 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:52.263780 've \r\n' 07:35:52.263825 < 6 bytes data, client => server 07:35:52.263833 'CAPA\r\n' 07:35:52.263957 Received DATA (on stdin) 07:35:52.263965 > 27 bytes data, server => client 07:35:52.263973 '-ERR Unrecognized command\r\n' 07:35:52.264016 < 21 bytes data, client => server 07:35:52.264024 'RETR verifiedserver\r\n' 07:35:52.264129 Received DATA (on stdin) 07:35:52.264137 > 26 bytes data, server => client 07:35:52.264144 '+OK Mail transfer starts\r\n' 07:35:52.264156 Received DATA (on stdin) 07:35:52.264163 > 18 bytes data, server => client 07:35:52.264170 'WE ROOLZ: 117829\r\n' 07:35:52.264178 Received DATA (on stdin) 07:35:52.264184 > 3 bytes data, server => client 07:35:52.264191 '.\r\n' 07:35:52.309597 < 6 bytes data, client => server 07:35:52.309620 'QUIT\r\n' 07:35:52.309756 Received DATA (on stdin) 07:35:52.309767 > 34 bytes data, server => client 07:35:52.309775 '+OK curl POP3 server signing off\r\n' 07:35:52.309937 ====> Client disconnect 07:35:52.310056 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 PLAIN REPLY "AUTH CRAM-MD5" + Rubbish REPLY * -ERR AUTH exchange cancelled by client REPLY "AUTH PLAIN" + REPLY AHVzZXIAc2VjcmV0 +OK Login successful Testnum 879 === End of file server.cmd === Start of file valgrind879 ==118855== ==118855== Process terminating with default action of signal 4 (SIGILL) ==118855== Illegal opcode at address 0x4003082 ==118855== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==118855== by 0x4003082: main (tool_main.c:234) === End of file valgrind879 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/13/server/pop3_server.pid" --logfile "log/13/pop3_server.log" --logdir "log/13" --portfile "log/13/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33555 (log/13/server/pop3_server.port) RUN: POP3 server is PID 118202 port 33555 * pid pop3 => 118202 118202 test 0867...[POP3 CRAM-MD5 authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind867 ../src/curl -q --output log/13/curl867.out --include --trace-ascii log/13/trace867 --trace-config all --trace-time pop3://127.0.0.1:33555/867 -u user:secret > log/13/stdout867 2> log/13/stderr867 867: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 867 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind867 ../src/curl -q --output log/13/curl867.out --include --trace-ascii log/13/trace867 --trace-config all --trace-time pop3://127.0.0.1:33555/867 -u user:secret > log/13/stdout867 2> log/13/stderr867 === End of file commands.log === Start of file pop3_server.log 07:35:50.572452 POP3 server listens on port IPv4/33555 07:35:50.572506 logged pid 118202 in log/13/server/pop3_server.pid 07:35:50.572525 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.418192 Running IPv4 version 07:35:50.418266 Listening on port 33555 07:35:50.418302 Wrote pid 118211 to log/13/server/pop3_sockfilt.pid 07:35:50.418332 Wrote port 33555 to log/13/server/pop3_server.port 07:35:50.418351 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 REPLY AUTH + PDE5NzIuOTg3NjU0MzIxQGN1cmw+ REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +OK Login successful Testnum 867 === End of file server.cmd === Start of file valgrind867 ==119250== ==119250== Process terminating with default action of signal 4 (SIGILL) ==119250== Illegal opcode at address 0x4003082 ==119250== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119250== by 0x4003082: main (tool_main.c:234) === End of file valgrind867 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/12/server/pop3_server.pid" --logfile "log/12/pop3_server.log" --logdir "log/12" --portfile "log/12/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41423 (log/12/server/pop3_server.port) RUN: POP3 server is PID 118200 port 41423 * pid pop3 => 118200 118200 test 0865...[POP3 plain authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind865 ../src/curl -q --output log/12/curl865.out --include --trace-ascii log/12/trace865 --trace-config all --trace-time pop3://127.0.0.1:41423/865 -u user:secret > log/12/stdout865 2> log/12/stderr865 865: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 865 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind865 ../src/curl -q --output log/12/curl865.out --include --trace-ascii log/12/trace865 --trace-config all --trace-time pop3://127.0.0.1:41423/865 -u user:secret > log/12/stdout865 2> log/12/stderr865 === End of file commands.log === Start of file pop3_server.log 07:35:50.568443 POP3 server listens on port IPv4/41423 07:35:50.568494 logged pid 118200 in log/12/server/pop3_server.pid 07:35:50.568510 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.414240 Running IPv4 version 07:35:50.414293 Listening on port 41423 07:35:50.414323 Wrote pid 118209 to log/12/server/pop3_sockfilt.pid 07:35:50.414345 Wrote port 41423 to log/12/server/pop3_server.port 07:35:50.414358 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTH + REPLY AHVzZXIAc2VjcmV0 +OK Login successful Testnum 865 === End of file server.cmd === Start of file valgrind865 ==119242== ==119242== Process terminating with default action of signal 4 (SIGILL) ==119242== Illegal opcode at address 0x4003082 ==119242== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119242== by 0x4003082: main (tool_main.c:234) === End of file valgrind865 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/pop3_server.pid" --logfile "log/11/pop3_server.log" --logdir "log/11" --portfile "log/11/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind870 ../src/curl -q --output log/2/curl870.out --include --trace-ascii log/2/trace870 --trace-config all --trace-time pop3://127.0.0.1:33921/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout870 2> log/2/stderr870 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind871 ../src/curl -q --output log/16/curl871.out --include --trace-ascii log/16/trace871 --trace-config all --trace-time pop3://127.0.0.1:42949/871 -u user:secret --sasl-ir > log/16/stdout871 2> log/16/stderr871 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind868 ../src/curl -q --output log/3/curl868.out --include --trace-ascii log/3/trace868 --trace-config all --trace-time pop3://127.0.0.1:33819/868 -u testuser:testpass > log/3/stdout868 2> log/3/stderr868 0.1" PINGPONG runs on port 35927 (log/11/server/pop3_server.port) RUN: POP3 server is PID 118201 port 35927 * pid pop3 => 118201 118201 test 0866...[POP3 login authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind866 ../src/curl -q --output log/11/curl866.out --include --trace-ascii log/11/trace866 --trace-config all --trace-time pop3://127.0.0.1:35927/866 -u user:secret > log/11/stdout866 2> log/11/stderr866 866: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 866 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind866 ../src/curl -q --output log/11/curl866.out --include --trace-ascii log/11/trace866 --trace-config all --trace-time pop3://127.0.0.1:35927/866 -u user:secret > log/11/stdout866 2> log/11/stderr866 === End of file commands.log === Start of file pop3_server.log 07:35:50.569917 POP3 server listens on port IPv4/35927 07:35:50.569979 logged pid 118201 in log/11/server/pop3_server.pid 07:35:50.570006 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.415714 Running IPv4 version 07:35:50.415754 Listening on port 35927 07:35:50.415781 Wrote pid 118210 to log/11/server/pop3_sockfilt.pid 07:35:50.415804 Wrote port 35927 to log/11/server/pop3_server.port 07:35:50.415818 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH LOGIN REPLY AUTH + VXNlcm5hbWU6 REPLY dXNlcg== + UGFzc3dvcmQ6 REPLY c2VjcmV0 +OK Login successful Testnum 866 === End of file server.cmd === Start of file valgrind866 ==119244== ==119244== Process terminating with default action of signal 4 (SIGILL) ==119244== Illegal opcode at address 0x4003082 ==119244== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119244== by 0x4003082: main (tool_main.c:234) === End of file valgrind866 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/2/server/pop3_server.pid" --logfile "log/2/pop3_server.log" --logdir "log/2" --portfile "log/2/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33921 (log/2/server/pop3_server.port) RUN: POP3 server is PID 118206 port 33921 * pid pop3 => 118206 118206 test 0870...[POP3 OAuth 2.0 (XOAUTH2) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind870 ../src/curl -q --output log/2/curl870.out --include --trace-ascii log/2/trace870 --trace-config all --trace-time pop3://127.0.0.1:33921/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout870 2> log/2/stderr870 870: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 870 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind870 ../src/curl -q --output log/2/curl870.out --include --trace-ascii log/2/trace870 --trace-config all --trace-time pop3://127.0.0.1:33921/870 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/2/stdout870 2> log/2/stderr870 === End of file commands.log === Start of file pop3_server.log 07:35:50.576897 POP3 server listens on port IPv4/33921 07:35:50.577001 logged pid 118206 in log/2/server/pop3_server.pid 07:35:50.577023 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.422580 Running IPv4 version 07:35:50.422622 Listening on port 33921 07:35:50.422706 Wrote pid 118214 to log/2/server/pop3_sockfilt.pid 07:35:50.422740 Wrote port 33921 to log/2/server/pop3_server.port 07:35:50.422772 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH + REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +OK Login successful Testnum 870 === End of file server.cmd === Start of file valgrind870 ==119270== ==119270== Process terminating with default action of signal 4 (SIGILL) ==119270== Illegal opcode at address 0x4003082 ==119270== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119270== by 0x4003082: main (tool_main.c:234) === End of file valgrind870 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/16/server/pop3_server.pid" --logfile "log/16/pop3_server.log" --logdir "log/16" --portfile "log/16/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42949 (log/16/server/pop3_server.port) RUN: POP3 server is PID 118207 port 42949 * pid pop3 => 118207 118207 test 0871...[POP3 plain authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind871 ../src/curl -q --output log/16/curl871.out --include --trace-ascii log/16/trace871 --trace-config all --trace-time pop3://127.0.0.1:42949/871 -u user:secret --sasl-ir > log/16/stdout871 2> log/16/stderr871 871: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 871 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind871 ../src/curl -q --output log/16/curl871.out --include --trace-ascii log/16/trace871 --trace-config all --trace-time pop3://127.0.0.1:42949/871 -u user:secret --sasl-ir > log/16/stdout871 2> log/16/stderr871 === End of file commands.log === Start of file pop3_server.log 07:35:50.576724 POP3 server listens on port IPv4/42949 07:35:50.576800 logged pid 118207 in log/16/server/pop3_server.pid 07:35:50.576820 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.422467 Running IPv4 version 07:35:50.422512 Listening on port 42949 07:35:50.422540 Wrote pid 118213 to log/16/server/pop3_sockfilt.pid 07:35:50.422560 Wrote port 42949 to log/16/server/pop3_server.port 07:35:50.422573 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTH +OK Login successful Testnum 871 === End of file server.cmd === Start of file valgrind871 ==119285== ==119285== Process terminating with default action of signal 4 (SIGILL) ==119285== Illegal opcode at address 0x4003082 ==119285== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119285== by 0x4003082: main (tool_main.c:234) === End of file valgrind871 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/3/server/pop3_server.pid" --logfile "log/3/pop3_server.log" --logdir "log/3" --portfile "log/3/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 33819 (log/3/server/pop3_server.port) RUN: POP3 server is PID 118204 port 33819 * pid pop3 => 118204 118204 test 0868...[POP3 NTLM authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind868 ../src/curl -q --output log/3/curl868.out --include --trace-ascii log/3/trace868 --trace-config all --trace-time pop3://127.0.0.1:33819/868 -u testuser:testpass > log/3/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind872 ../src/curl -q --output log/10/curl872.out --include --trace-ascii log/10/trace872 --trace-config all --trace-time pop3://127.0.0.1:41589/872 -u user:secret --sasl-ir > log/10/stdout872 2> log/10/stderr872 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind883 ../src/curl -q --output log/18/curl883.out --include --trace-ascii log/18/trace883 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:33413/883' > log/18/stdout883 2> log/18/stderr883 stdout868 2> log/3/stderr868 868: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 868 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind868 ../src/curl -q --output log/3/curl868.out --include --trace-ascii log/3/trace868 --trace-config all --trace-time pop3://127.0.0.1:33819/868 -u testuser:testpass > log/3/stdout868 2> log/3/stderr868 === End of file commands.log === Start of file pop3_server.log 07:35:50.575435 POP3 server listens on port IPv4/33819 07:35:50.575493 logged pid 118204 in log/3/server/pop3_server.pid 07:35:50.575512 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.421165 Running IPv4 version 07:35:50.421212 Listening on port 33819 07:35:50.421238 Wrote pid 118212 to log/3/server/pop3_sockfilt.pid 07:35:50.421259 Wrote port 33819 to log/3/server/pop3_server.port 07:35:50.421351 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH NTLM REPLY AUTH + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +OK Login successful Testnum 868 === End of file server.cmd === Start of file valgrind868 ==119258== ==119258== Process terminating with default action of signal 4 (SIGILL) ==119258== Illegal opcode at address 0x4003082 ==119258== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119258== by 0x4003082: main (tool_main.c:234) === End of file valgrind868 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/pop3_server.pid" --logfile "log/10/pop3_server.log" --logdir "log/10" --portfile "log/10/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41589 (log/10/server/pop3_server.port) RUN: POP3 server is PID 118208 port 41589 * pid pop3 => 118208 118208 test 0872...[POP3 login authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind872 ../src/curl -q --output log/10/curl872.out --include --trace-ascii log/10/trace872 --trace-config all --trace-time pop3://127.0.0.1:41589/872 -u user:secret --sasl-ir > log/10/stdout872 2> log/10/stderr872 872: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 872 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind872 ../src/curl -q --output log/10/curl872.out --include --trace-ascii log/10/trace872 --trace-config all --trace-time pop3://127.0.0.1:41589/872 -u user:secret --sasl-ir > log/10/stdout872 2> log/10/stderr872 === End of file commands.log === Start of file pop3_server.log 07:35:50.578923 POP3 server listens on port IPv4/41589 07:35:50.578979 logged pid 118208 in log/10/server/pop3_server.pid 07:35:50.578996 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.424737 Running IPv4 version 07:35:50.424779 Listening on port 41589 07:35:50.424804 Wrote pid 118215 to log/10/server/pop3_sockfilt.pid 07:35:50.424823 Wrote port 41589 to log/10/server/pop3_server.port 07:35:50.424836 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH LOGIN REPLY AUTH + UGFzc3dvcmQ6 REPLY c2VjcmV0 +OK Login successful Testnum 872 === End of file server.cmd === Start of file valgrind872 ==119283== ==119283== Process terminating with default action of signal 4 (SIGILL) ==119283== Illegal opcode at address 0x4003082 ==119283== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119283== by 0x4003082: main (tool_main.c:234) === End of file valgrind872 test 0883...[POP3 external authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind883 ../src/curl -q --output log/18/curl883.out --include --trace-ascii log/18/trace883 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:33413/883' > log/18/stdout883 2> log/18/stderr883 883: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 883 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind883 ../src/curl -q --output log/18/curl883.out --include --trace-ascii log/18/trace883 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:33413/883' > log/18/stdout883 2> log/18/stderr883 === End of file commands.log === Start of file pop3_server.log 07:35:51.676753 ====> Client connect 07:35:51.676930 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.677226 < "CAPA" 07:35:51.677262 > "-ERR Unrecognized command[CR][LF]" 07:35:51.677417 < "RETR verifiedserver" 07:35:51.677443 return proof we are we 07:35:51.677462 > "+OK Mail transfer starts[CR][LF]" 07:35:51.677479 > "WE ROOLZ: 118066[CR][LF]" 07:35:51.677495 > ".[CR][LF]" 07:35:51.722545 < "QUIT" 07:35:51.722594 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.723505 MAIN sockfilt said DISC 07:35:51.723535 ====> Client disconnected 07:35:51.723691 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.522570 ====> Client connect 07:35:51.522926 Received DATA (on stdin) 07:35:51.522940 > 178 bytes data, server => client 07:35:51.522952 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.522963 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.522973 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.522982 've \r\n' 07:35:51.523054 < 6 bytes data, client => server 07:35:51.523066 'CAPA\r\n' 07:35:51.523248 Received DATA (on stdin) 07:35:51.523259 > 27 bytes data, server => client 07:35:51.523270 '-ERR Unrecognized command\r\n' 07:35:51.523319 < 21 bytes data, client => server 07:35:51.523330 'RETR verifiedserver\r\n' 07:35:51.523478 Received DATA (on stdin) 07:35:51.523489 > 26 bytes data, server => client 07:35:51.523500 '+OK Mail transfer starts\r\n' 07:35:51.523519 Received DATA (on stdin) 07:35:51.523528 > 18 bytes data, server => client 07:35:51.523538 'WE ROOLZ: 118066\r\n' 07:35:51.523549 Received DATA (on stdin) 07:35:51.523558 > 3 bytes data, server => client 07:35:51.523568 '.\r\n' 07:35:51.568353 < 6 bytes data, client => server 07:35:51.568383 'QUIT\r\n' 07:35:51.568581 Received DATA (on stdin) 07:35:51.568592 > 34 bytes data, server => client 07:35:51.568602 '+OK curl POP3 server signing off\r\n' 07:35:51.569285 ====> Client disconnect 07:35:51.569550 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH + REPLY dXNlcg== +OK Login successful Testnum 883 === End of file server.cmd === StCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind884 ../src/curl -q --output log/17/curl884.out --include --trace-ascii log/17/trace884 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:33359/884' > log/17/stdout884 2> log/17/stderr884 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind873 ../src/curl -q --output log/23/curl873.out --include --trace-ascii log/23/trace873 --trace-config all --trace-time pop3://127.0.0.1:46867/873 -u testuser:testpass --sasl-ir > log/23/stdout873 2> log/23/stderr873 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind885 ../src/curl -q --output log/14/curl885.out --include --trace-ascii log/14/trace885 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:37517/885' --sasl-ir > log/14/stdout885 2> log/14/stderr885 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind875 ../src/curl -q --output log/5/curl875.out --include --trace-ascii log/5/trace875 --trace-config all --trace-time pop3://127.0.0.1:34653/%0d%0a/875 > log/5/stdout875 2> log/5/stderr875 art of file valgrind883 ==119635== ==119635== Process terminating with default action of signal 4 (SIGILL) ==119635== Illegal opcode at address 0x4003082 ==119635== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119635== by 0x4003082: main (tool_main.c:234) === End of file valgrind883 test 0884...[POP3 external authentication without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind884 ../src/curl -q --output log/17/curl884.out --include --trace-ascii log/17/trace884 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:33359/884' > log/17/stdout884 2> log/17/stderr884 884: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 884 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind884 ../src/curl -q --output log/17/curl884.out --include --trace-ascii log/17/trace884 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:33359/884' > log/17/stdout884 2> log/17/stderr884 === End of file commands.log === Start of file pop3_server.log 07:35:51.716089 ====> Client connect 07:35:51.716265 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.716545 < "CAPA" 07:35:51.716582 > "-ERR Unrecognized command[CR][LF]" 07:35:51.716740 < "RETR verifiedserver" 07:35:51.716767 return proof we are we 07:35:51.716786 > "+OK Mail transfer starts[CR][LF]" 07:35:51.716803 > "WE ROOLZ: 118068[CR][LF]" 07:35:51.716818 > ".[CR][LF]" 07:35:51.760574 < "QUIT" 07:35:51.760639 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.761474 MAIN sockfilt said DISC 07:35:51.761525 ====> Client disconnected 07:35:51.761615 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.561955 ====> Client connect 07:35:51.562259 Received DATA (on stdin) 07:35:51.562273 > 178 bytes data, server => client 07:35:51.562284 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.562295 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.562306 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.562315 've \r\n' 07:35:51.562381 < 6 bytes data, client => server 07:35:51.562392 'CAPA\r\n' 07:35:51.562566 Received DATA (on stdin) 07:35:51.562578 > 27 bytes data, server => client 07:35:51.562588 '-ERR Unrecognized command\r\n' 07:35:51.562643 < 21 bytes data, client => server 07:35:51.562654 'RETR verifiedserver\r\n' 07:35:51.562801 Received DATA (on stdin) 07:35:51.562811 > 26 bytes data, server => client 07:35:51.562822 '+OK Mail transfer starts\r\n' 07:35:51.562841 Received DATA (on stdin) 07:35:51.562850 > 18 bytes data, server => client 07:35:51.562860 'WE ROOLZ: 118068\r\n' 07:35:51.562871 Received DATA (on stdin) 07:35:51.562881 > 3 bytes data, server => client 07:35:51.562890 '.\r\n' 07:35:51.606348 < 6 bytes data, client => server 07:35:51.606390 'QUIT\r\n' 07:35:51.606630 Received DATA (on stdin) 07:35:51.606643 > 34 bytes data, server => client 07:35:51.606654 '+OK curl POP3 server signing off\r\n' 07:35:51.607376 ====> Client disconnect 07:35:51.607604 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH + REPLY = +OK Login successful Testnum 884 === End of file server.cmd === Start of file valgrind884 ==119682== ==119682== Process terminating with default action of signal 4 (SIGILL) ==119682== Illegal opcode at address 0x4003082 ==119682== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119682== by 0x4003082: main (tool_main.c:234) === End of file valgrind884 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/23/server/pop3_server.pid" --logfile "log/23/pop3_server.log" --logdir "log/23" --portfile "log/23/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 46867 (log/23/server/pop3_server.port) RUN: POP3 server is PID 118217 port 46867 * pid pop3 => 118217 118217 test 0873...[POP3 NTLM authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind873 ../src/curl -q --output log/23/curl873.out --include --trace-ascii log/23/trace873 --trace-config all --trace-time pop3://127.0.0.1:46867/873 -u testuser:testpass --sasl-ir > log/23/stdout873 2> log/23/stderr873 873: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 873 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind873 ../src/curl -q --output log/23/curl873.out --include --trace-ascii log/23/trace873 --trace-config all --trace-time pop3://127.0.0.1:46867/873 -u testuser:testpass --sasl-ir > log/23/stdout873 2> log/23/stderr873 === End of file commands.log === Start of file pop3_server.log 07:35:50.851654 POP3 server listens on port IPv4/46867 07:35:50.851713 logged pid 118217 in log/23/server/pop3_server.pid 07:35:50.851731 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.697457 Running IPv4 version 07:35:50.697500 Listening on port 46867 07:35:50.697525 Wrote pid 118233 to log/23/server/pop3_sockfilt.pid 07:35:50.697546 Wrote port 46867 to log/23/server/pop3_server.port 07:35:50.697560 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH NTLM REPLY AUTH + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +OK Login successful Testnum 873 === End of file server.cmd === Start of file valgrind873 ==119742== ==119742== Process terminating with default action of signal 4 (SIGILL) ==119742== Illegal opcode at address 0x4003082 ==119742== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119742== by 0x4003082: main (tool_main.c:234) === End of file valgrind873 test 0885...[POP3 external authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind885 ../src/curl -q --output log/14/curl885.out --include --trace-ascii log/14/trace885 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:37517/885' --sasl-ir > log/14/stdout885 2> log/14/stderr885 885: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 885 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind885 ../src/curl -q --output log/14/curl885.out --include --trace-ascii log/14/trace885 --trace-config all --trace-time 'pop3://user;AUTH=EXTERNAL@127.0.0.1:37517/885' --sasl-ir > log/14/stdout885 2> log/14/stderr885 ===CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind886 ../src/curl -q --output log/21/curl886.out --include --trace-ascii log/21/trace886 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:34803/886' --sasl-ir > log/21/stdout886 2> log/21/stderr886 End of file commands.log === Start of file pop3_server.log 07:35:51.847941 ====> Client connect 07:35:51.848105 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.848391 < "CAPA" 07:35:51.848426 > "-ERR Unrecognized command[CR][LF]" 07:35:51.848589 < "RETR verifiedserver" 07:35:51.848612 return proof we are we 07:35:51.848633 > "+OK Mail transfer starts[CR][LF]" 07:35:51.848788 > "WE ROOLZ: 100636[CR][LF]" 07:35:51.848807 > ".[CR][LF]" 07:35:51.893692 < "QUIT" 07:35:51.893749 > "+OK curl POP3 server signing off[CR][LF]" 07:35:51.894699 MAIN sockfilt said DISC 07:35:51.894728 ====> Client disconnected 07:35:51.894801 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.693584 ====> Client connect 07:35:51.694104 Received DATA (on stdin) 07:35:51.694120 > 178 bytes data, server => client 07:35:51.694132 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.694143 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.694154 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.694163 've \r\n' 07:35:51.694237 < 6 bytes data, client => server 07:35:51.694249 'CAPA\r\n' 07:35:51.694414 Received DATA (on stdin) 07:35:51.694427 > 27 bytes data, server => client 07:35:51.694438 '-ERR Unrecognized command\r\n' 07:35:51.694489 < 21 bytes data, client => server 07:35:51.694501 'RETR verifiedserver\r\n' 07:35:51.694654 Received DATA (on stdin) 07:35:51.694670 > 26 bytes data, server => client 07:35:51.694680 '+OK Mail transfer starts\r\n' 07:35:51.694793 Received DATA (on stdin) 07:35:51.694806 > 18 bytes data, server => client 07:35:51.694816 'WE ROOLZ: 100636\r\n' 07:35:51.694829 Received DATA (on stdin) 07:35:51.694838 > 3 bytes data, server => client 07:35:51.694848 '.\r\n' 07:35:51.739476 < 6 bytes data, client => server 07:35:51.739509 'QUIT\r\n' 07:35:51.739739 Received DATA (on stdin) 07:35:51.739752 > 34 bytes data, server => client 07:35:51.739764 '+OK curl POP3 server signing off\r\n' 07:35:51.740634 ====> Client disconnect 07:35:51.740790 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH +OK Login successful Testnum 885 === End of file server.cmd === Start of file valgrind885 ==119796== ==119796== Process terminating with default action of signal 4 (SIGILL) ==119796== Illegal opcode at address 0x4003082 ==119796== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119796== by 0x4003082: main (tool_main.c:234) === End of file valgrind885 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/5/server/pop3_server.pid" --logfile "log/5/pop3_server.log" --logdir "log/5" --portfile "log/5/server/pop3_server.port" --srcdir "/startdir/src/curl/tests" --proto pop3 --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34653 (log/5/server/pop3_server.port) RUN: POP3 server is PID 118284 port 34653 * pid pop3 => 118284 118284 test 0875...[POP3 with URL-encoded CR LF in the URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind875 ../src/curl -q --output log/5/curl875.out --include --trace-ascii log/5/trace875 --trace-config all --trace-time pop3://127.0.0.1:34653/%0d%0a/875 > log/5/stdout875 2> log/5/stderr875 curl returned 132, when expecting 3 875: exit FAILED == Contents of files in the log/5/ dir after test 875 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind875 ../src/curl -q --output log/5/curl875.out --include --trace-ascii log/5/trace875 --trace-config all --trace-time pop3://127.0.0.1:34653/%0d%0a/875 > log/5/stdout875 2> log/5/stderr875 === End of file commands.log === Start of file pop3_server.log 07:35:50.985208 POP3 server listens on port IPv4/34653 07:35:50.985270 logged pid 118284 in log/5/server/pop3_server.pid 07:35:50.985288 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:50.831007 Running IPv4 version 07:35:50.831053 Listening on port 34653 07:35:50.831082 Wrote pid 118285 to log/5/server/pop3_sockfilt.pid 07:35:50.831102 Wrote port 34653 to log/5/server/pop3_server.port 07:35:50.831116 Received PING (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 875 === End of file server.cmd === Start of file valgrind875 ==119880== ==119880== Process terminating with default action of signal 4 (SIGILL) ==119880== Illegal opcode at address 0x4003082 ==119880== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119880== by 0x4003082: main (tool_main.c:234) === End of file valgrind875 test 0886...[POP3 external authentication with initial response without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind886 ../src/curl -q --output log/21/curl886.out --include --trace-ascii log/21/trace886 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:34803/886' --sasl-ir > log/21/stdout886 2> log/21/stderr886 886: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 886 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind886 ../src/curl -q --output log/21/curl886.out --include --trace-ascii log/21/trace886 --trace-config all --trace-time 'pop3://;AUTH=EXTERNAL@127.0.0.1:34803/886' --sasl-ir > log/21/stdout886 2> log/21/stderr886 === End of file commands.log === Start of file pop3_server.log 07:35:51.955402 ====> Client connect 07:35:51.955580 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.956013 < "CAPA" 07:35:51.956073 > "-ERR Unrecognized command[CR][LF]" 07:35:51.956295 < "RETR verifiedserver" 07:35:51.956323 return proof we are we 07:35:51.956342 > "+OK Mail transfer starts[CR][LF]" 07:35:51.956360 > "WE ROOLZ: 118070[CR][LF]" 07:35:51.956375 > ".[CR][LF]" 07:35:52.000375 < "QUIT" 07:35:52.000440 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.000733 MAIN sockfilt said DISC 07:35:52.000761 ====> Client disconnected 07:35:52.000842 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.801237 ====> Client connect 07:35:51.801569 Received DATA (on stdin) 07:35:51.801638 > 178 bytes data, server => client 07:35:51.801653 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.801664 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.801675 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.801683 've \r\n' 07:35:51.801794 < 6 bytes data, client => server 07:35:51.801808 'CAPA\r\n' 07:35:51.802065 Received DATA (on stdin) 07:35:51.802083 > 27 bytes data, server => client 07:35:51.802094 '-ERR Unrecognized command\r\n' 07:35:51.802189 < 21 bytes data, client => server 07:35:51.802203 'RETR verifiedserver\r\n' 07:35:51.802359 Received DATA (on stdin) 07:35:51.802371 > 26 bytes data, server => client 07:35:51.802381 '+OK Mail transfer starts\r\n' 07:35:51.802402 Received DATA (on stdin) 07:35:51.802411 > 18 bytes data, server => client 07:35:51.802421 'WE ROOLZ: 118070\r\n' 07:35:51.802432 Received DATA (on stdin) 07:35:51.802440 > 3 bytes data, server CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind889 ../src/curl -q --output log/22/curl889.out --include --trace-ascii log/22/trace889 --trace-config all --trace-time pop3://127.0.0.1:34541/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout889 2> log/22/stderr889 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind888 ../src/curl -q --output log/24/curl888.out --include --trace-ascii log/24/trace888 --trace-config all --trace-time pop3://127.0.0.1:34283/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/24/stdout888 2> log/24/stderr888 => client 07:35:51.802449 '.\r\n' 07:35:51.846133 < 6 bytes data, client => server 07:35:51.846165 'QUIT\r\n' 07:35:51.846425 Received DATA (on stdin) 07:35:51.846440 > 34 bytes data, server => client 07:35:51.846451 '+OK curl POP3 server signing off\r\n' 07:35:51.846655 ====> Client disconnect 07:35:51.846827 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH +OK Login successful Testnum 886 === End of file server.cmd === Start of file valgrind886 ==119954== ==119954== Process terminating with default action of signal 4 (SIGILL) ==119954== Illegal opcode at address 0x4003082 ==119954== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119954== by 0x4003082: main (tool_main.c:234) === End of file valgrind886 test 0889...[POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind889 ../src/curl -q --output log/22/curl889.out --include --trace-ascii log/22/trace889 --trace-config all --trace-time pop3://127.0.0.1:34541/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout889 2> log/22/stderr889 889: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 889 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind889 ../src/curl -q --output log/22/curl889.out --include --trace-ascii log/22/trace889 --trace-config all --trace-time pop3://127.0.0.1:34541/889 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/22/stdout889 2> log/22/stderr889 === End of file commands.log === Start of file pop3_server.log 07:35:52.005206 ====> Client connect 07:35:52.005348 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.005602 < "CAPA" 07:35:52.005636 > "-ERR Unrecognized command[CR][LF]" 07:35:52.005777 < "RETR verifiedserver" 07:35:52.005802 return proof we are we 07:35:52.005821 > "+OK Mail transfer starts[CR][LF]" 07:35:52.005837 > "WE ROOLZ: 118162[CR][LF]" 07:35:52.005851 > ".[CR][LF]" 07:35:52.050428 < "QUIT" 07:35:52.050469 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.051005 MAIN sockfilt said DISC 07:35:52.051038 ====> Client disconnected 07:35:52.051093 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.851087 ====> Client connect 07:35:51.851342 Received DATA (on stdin) 07:35:51.851355 > 178 bytes data, server => client 07:35:51.851367 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.851377 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.851386 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.851395 've \r\n' 07:35:51.851454 < 6 bytes data, client => server 07:35:51.851464 'CAPA\r\n' 07:35:51.851619 Received DATA (on stdin) 07:35:51.851629 > 27 bytes data, server => client 07:35:51.851639 '-ERR Unrecognized command\r\n' 07:35:51.851684 < 21 bytes data, client => server 07:35:51.851694 'RETR verifiedserver\r\n' 07:35:51.851834 Received DATA (on stdin) 07:35:51.851845 > 26 bytes data, server => client 07:35:51.851854 '+OK Mail transfer starts\r\n' 07:35:51.851873 Received DATA (on stdin) 07:35:51.851881 > 18 bytes data, server => client 07:35:51.851891 'WE ROOLZ: 118162\r\n' 07:35:51.851902 Received DATA (on stdin) 07:35:51.851911 > 3 bytes data, server => client 07:35:51.851919 '.\r\n' 07:35:51.896259 < 6 bytes data, client => server 07:35:51.896281 'QUIT\r\n' 07:35:51.896557 Received DATA (on stdin) 07:35:51.896578 > 34 bytes data, server => client 07:35:51.896589 '+OK curl POP3 server signing off\r\n' 07:35:51.896934 ====> Client disconnect 07:35:51.897053 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9MzQ1NDEBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0 REPLY AQ== -ERR Authentication failed Testnum 889 === End of file server.cmd === Start of file valgrind889 ==120194== ==120194== Process terminating with default action of signal 4 (SIGILL) ==120194== Illegal opcode at address 0x4003082 ==120194== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120194== by 0x4003082: main (tool_main.c:234) === End of file valgrind889 test 0888...[POP3 OAuth 2.0 (OAUTHBEARER) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind888 ../src/curl -q --output log/24/curl888.out --include --trace-ascii log/24/trace888 --trace-config all --trace-time pop3://127.0.0.1:34283/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/24/stdout888 2> log/24/stderr888 888: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 888 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind888 ../src/curl -q --output log/24/curl888.out --include --trace-ascii log/24/trace888 --trace-config all --trace-time pop3://127.0.0.1:34283/888 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/24/stdout888 2> log/24/stderr888 === End of file commands.log === Start of file pop3_server.log 07:35:51.984545 ====> Client connect 07:35:51.984660 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.984862 < "CAPA" 07:35:51.984893 > "-ERR Unrecognized command[CR][LF]" 07:35:51.985058 < "RETR verifiedserver" 07:35:51.985087 return proof we are we 07:35:51.985107 > "+OK Mail transfer starts[CR][LF]" 07:35:51.985124 > "WE ROOLZ: 118142[CR][LF]" 07:35:51.985138 > ".[CR][LF]" 07:35:52.026999 < "QUIT" 07:35:52.027057 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.027979 MAIN sockfilt said DISC 07:35:52.028014 ====> Client disconnected 07:35:52.028089 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.830441 ====> Client connect 07:35:51.830648 Received DATA (on stdin) 07:35:51.830659 > 178 bytes data, server => client 07:35:51.830668 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.830676 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.830683 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.830690 've \r\n' 07:35:51.830744 < 6 bytes data, client => server 07:35:51.830757 'CAPA\r\n' 07:35:51.830875 Received DATA (on stdin) 07:35:51.830885 > 27 bytes data, server => client 07:35:51.830893 '-ERR Unrecognized command\r\n' 07:35:51.830944 < 21 bytes data, client => server 07:35:51.830963 'RETR verifiedserver\r\n' 07:35:51.831122 Received DATA (on stdin) 07:35:51.831134 > 26 bytes data, server => client 07:35:51.831143 '+OK Mail transfer starts\r\n' 07:35:51.831163 Received DATA (on stdin) 07:35:51.831172 > 18 bytes data, server => client 07:35:51.831182 'WE ROOLZ: 118142\r\n' 07:35:51.831193 Received DATA (on stdin) 07:35:51.831202 > 3 bytes data, server => client 07:35:51.831211 '.\r\n' 07:35:51.872819 < 6 bytes data, client => servCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind887 ../src/curl -q --output log/8/curl887.out --include --trace-ascii log/8/trace887 --trace-config all --trace-time pop3://127.0.0.1:41293/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/8/stdout887 2> log/8/stderr887 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind894 ../src/curl -q --output log/9/curl894.out --include --trace-ascii log/9/trace894 --trace-config all --trace-time pop3://user%0dFRIGGING_cmd:secret@127.0.0.1:37563/894 > log/9/stdout894 2> log/9/stderr894 er 07:35:51.872845 'QUIT\r\n' 07:35:51.873047 Received DATA (on stdin) 07:35:51.873060 > 34 bytes data, server => client 07:35:51.873072 '+OK curl POP3 server signing off\r\n' 07:35:51.873904 ====> Client disconnect 07:35:51.874079 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH +OK Login successful Testnum 888 === End of file server.cmd === Start of file valgrind888 ==120105== ==120105== Process terminating with default action of signal 4 (SIGILL) ==120105== Illegal opcode at address 0x4003082 ==120105== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120105== by 0x4003082: main (tool_main.c:234) === End of file valgrind888 test 0887...[POP3 OAuth 2.0 (OAUTHBEARER) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind887 ../src/curl -q --output log/8/curl887.out --include --trace-ascii log/8/trace887 --trace-config all --trace-time pop3://127.0.0.1:41293/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/8/stdout887 2> log/8/stderr887 887: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 887 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind887 ../src/curl -q --output log/8/curl887.out --include --trace-ascii log/8/trace887 --trace-config all --trace-time pop3://127.0.0.1:41293/887 -u user --oauth2-bearer mF_9.B5f-4.1JqM > log/8/stdout887 2> log/8/stderr887 === End of file commands.log === Start of file pop3_server.log 07:35:51.962296 ====> Client connect 07:35:51.962497 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:51.962746 < "CAPA" 07:35:51.962793 > "-ERR Unrecognized command[CR][LF]" 07:35:51.963013 < "RETR verifiedserver" 07:35:51.963046 return proof we are we 07:35:51.963069 > "+OK Mail transfer starts[CR][LF]" 07:35:51.963087 > "WE ROOLZ: 118073[CR][LF]" 07:35:51.963103 > ".[CR][LF]" 07:35:52.006961 < "QUIT" 07:35:52.007011 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.007930 MAIN sockfilt said DISC 07:35:52.007960 ====> Client disconnected 07:35:52.008102 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.806807 ====> Client connect 07:35:51.808457 Received DATA (on stdin) 07:35:51.808483 > 178 bytes data, server => client 07:35:51.808495 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.808505 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.808515 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.808523 've \r\n' 07:35:51.808595 < 6 bytes data, client => server 07:35:51.808613 'CAPA\r\n' 07:35:51.808785 Received DATA (on stdin) 07:35:51.808804 > 27 bytes data, server => client 07:35:51.808818 '-ERR Unrecognized command\r\n' 07:35:51.808891 < 21 bytes data, client => server 07:35:51.808911 'RETR verifiedserver\r\n' 07:35:51.809089 Received DATA (on stdin) 07:35:51.809101 > 26 bytes data, server => client 07:35:51.809111 '+OK Mail transfer starts\r\n' 07:35:51.809134 Received DATA (on stdin) 07:35:51.809144 > 18 bytes data, server => client 07:35:51.809153 'WE ROOLZ: 118073\r\n' 07:35:51.809165 Received DATA (on stdin) 07:35:51.809174 > 3 bytes data, server => client 07:35:51.809184 '.\r\n' 07:35:51.852788 < 6 bytes data, client => server 07:35:51.852813 'QUIT\r\n' 07:35:51.852998 Received DATA (on stdin) 07:35:51.853010 > 34 bytes data, server => client 07:35:51.853021 '+OK curl POP3 server signing off\r\n' 07:35:51.853855 ====> Client disconnect 07:35:51.853974 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH + REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9NDEyOTMBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= +OK Login successful Testnum 887 === End of file server.cmd === Start of file valgrind887 ==119968== ==119968== Process terminating with default action of signal 4 (SIGILL) ==119968== Illegal opcode at address 0x4003082 ==119968== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==119968== by 0x4003082: main (tool_main.c:234) === End of file valgrind887 test 0894...[POP3 with CR in username] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind894 ../src/curl -q --output log/9/curl894.out --include --trace-ascii log/9/trace894 --trace-config all --trace-time pop3://user%0dFRIGGING_cmd:secret@127.0.0.1:37563/894 > log/9/stdout894 2> log/9/stderr894 curl returned 132, when expecting 3 894: exit FAILED == Contents of files in the log/9/ dir after test 894 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind894 ../src/curl -q --output log/9/curl894.out --include --trace-ascii log/9/trace894 --trace-config all --trace-time pop3://user%0dFRIGGING_cmd:secret@127.0.0.1:37563/894 > log/9/stdout894 2> log/9/stderr894 === End of file commands.log === Start of file pop3_server.log 07:35:52.045302 ====> Client connect 07:35:52.045434 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.045658 < "CAPA" 07:35:52.045688 > "-ERR Unrecognized command[CR][LF]" 07:35:52.045809 < "RETR verifiedserver" 07:35:52.045829 return proof we are we 07:35:52.045844 > "+OK Mail transfer starts[CR][LF]" 07:35:52.045857 > "WE ROOLZ: 118132[CR][LF]" 07:35:52.045869 > ".[CR][LF]" 07:35:52.087173 < "QUIT" 07:35:52.087257 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.087411 MAIN sockfilt said DISC 07:35:52.087491 ====> Client disconnected 07:35:52.087573 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.891187 ====> Client connect 07:35:51.891424 Received DATA (on stdin) 07:35:51.891439 > 178 bytes data, server => client 07:35:51.891448 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.891457 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.891464 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.891471 've \r\n' 07:35:51.891524 < 6 bytes data, client => server 07:35:51.891533 'CAPA\r\n' 07:35:51.891670 Received DATA (on stdin) 07:35:51.891678 > 27 bytes data, server => client 07:35:51.891686 '-ERR Unrecognized command\r\n' 07:35:51.891725 < 21 bytes data, client => server 07:35:51.891734 'RETR verifiedserver\r\n' 07:35:51.891838 Received DATA (on stdin) 07:35:51.891856 > 26 bytes data, server => client 07:35:51.891868 '+OK Mail transfer starts\r\n' 07:35:51.891892 Received DATA (on stdin) 07:35:51.891902 > 18 bytes data, server => client 07:35:51.891912 'WE ROOLZ: 118132\r\n' 07:35:51.891924 Received DATA (on stdin) 07:35:51.891935 > 3 bytes data, server => client 07:35:51.891944 '.\r\n' 07:35:51.932971 < 6 bytes data, client => server 07:35:51.933002 'QUIT\r\n' 07:35:51.933245 Received DATA (on stdin) 07:35:51.933259 > 34 bytes data, server => client 07:35:51.933271 '+OK curl POP3 server signing off\r\n' 07:35:51.933340 ====> Client disconnect 07:35:51.933459 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 894 === End of file server.cmd === Start of file valgrind894 ==120279== ==120279== Process terminating with default action of signal CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind891 ../src/curl -q --output log/1/curl891.out --include --trace-ascii log/1/trace891 --trace-config all --trace-time pop3://127.0.0.1:39747/891 -u user:secret > log/1/stdout891 2> log/1/stderr891 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind895 ../src/curl -q --output log/6/curl895.out --include --trace-ascii log/6/trace895 --trace-config all --trace-time 'imap://127.0.0.1:43523/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=*' > log/6/stdout895 2> log/6/stderr895 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind890 ../src/curl -q --output log/4/curl890.out --include --trace-ascii log/4/trace890 --trace-config all --trace-time pop3://127.0.0.1:44405/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/4/stdout890 2> log/4/stderr890 4 (SIGILL) ==120279== Illegal opcode at address 0x4003082 ==120279== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120279== by 0x4003082: main (tool_main.c:234) === End of file valgrind894 test 0891...[POP3 with short authentication response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind891 ../src/curl -q --output log/1/curl891.out --include --trace-ascii log/1/trace891 --trace-config all --trace-time pop3://127.0.0.1:39747/891 -u user:secret > log/1/stdout891 2> log/1/stderr891 891: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 891 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind891 ../src/curl -q --output log/1/curl891.out --include --trace-ascii log/1/trace891 --trace-config all --trace-time pop3://127.0.0.1:39747/891 -u user:secret > log/1/stdout891 2> log/1/stderr891 === End of file commands.log === Start of file pop3_server.log 07:35:52.043530 ====> Client connect 07:35:52.043717 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.044009 < "CAPA" 07:35:52.044049 > "-ERR Unrecognized command[CR][LF]" 07:35:52.044187 < "RETR verifiedserver" 07:35:52.044212 return proof we are we 07:35:52.044233 > "+OK Mail transfer starts[CR][LF]" 07:35:52.044249 > "WE ROOLZ: 118115[CR][LF]" 07:35:52.044264 > ".[CR][LF]" 07:35:52.087061 < "QUIT" 07:35:52.087123 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.087249 MAIN sockfilt said DISC 07:35:52.087271 ====> Client disconnected 07:35:52.087358 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.889423 ====> Client connect 07:35:51.889722 Received DATA (on stdin) 07:35:51.889743 > 178 bytes data, server => client 07:35:51.889755 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.889766 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.889776 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.889785 've \r\n' 07:35:51.889867 < 6 bytes data, client => server 07:35:51.889883 'CAPA\r\n' 07:35:51.890036 Received DATA (on stdin) 07:35:51.890050 > 27 bytes data, server => client 07:35:51.890061 '-ERR Unrecognized command\r\n' 07:35:51.890109 < 21 bytes data, client => server 07:35:51.890122 'RETR verifiedserver\r\n' 07:35:51.890249 Received DATA (on stdin) 07:35:51.890263 > 26 bytes data, server => client 07:35:51.890273 '+OK Mail transfer starts\r\n' 07:35:51.890294 Received DATA (on stdin) 07:35:51.890304 > 18 bytes data, server => client 07:35:51.890313 'WE ROOLZ: 118115\r\n' 07:35:51.890325 Received DATA (on stdin) 07:35:51.890334 > 3 bytes data, server => client 07:35:51.890344 '.\r\n' 07:35:51.932925 < 6 bytes data, client => server 07:35:51.932954 'QUIT\r\n' 07:35:51.933110 Received DATA (on stdin) 07:35:51.933123 > 34 bytes data, server => client 07:35:51.933134 '+OK curl POP3 server signing off\r\n' 07:35:51.933187 ====> Client disconnect 07:35:51.933284 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH CRAM-MD5 REPLYLF AUTH + Testnum 891 === End of file server.cmd === Start of file valgrind891 ==120284== ==120284== Process terminating with default action of signal 4 (SIGILL) ==120284== Illegal opcode at address 0x4003082 ==120284== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120284== by 0x4003082: main (tool_main.c:234) === End of file valgrind891 test 0895...[IMAP with --login-options 'AUTH=*'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind895 ../src/curl -q --output log/6/curl895.out --include --trace-ascii log/6/trace895 --trace-config all --trace-time 'imap://127.0.0.1:43523/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=*' > log/6/stdout895 2> log/6/stderr895 895: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 895 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind895 ../src/curl -q --output log/6/curl895.out --include --trace-ascii log/6/trace895 --trace-config all --trace-time 'imap://127.0.0.1:43523/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=*' > log/6/stdout895 2> log/6/stderr895 === End of file commands.log === Start of file imap_server.log 07:35:52.045298 ====> Client connect 07:35:52.045422 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:52.045678 < "A001 CAPABILITY" 07:35:52.045708 > "A001 BAD Command[CR][LF]" 07:35:52.045884 < "A002 LIST "verifiedserver" *" 07:35:52.045913 LIST_imap got "verifiedserver" * 07:35:52.045937 > "* LIST () "/" "WE ROOLZ: 115318"[CR][LF]" 07:35:52.045953 > "A002 OK LIST Completed[CR][LF]" 07:35:52.045966 return proof we are we 07:35:52.090397 < "A003 LOGOUT" 07:35:52.090475 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:52.090494 > "A003 OK LOGOUT completed[CR][LF]" 07:35:52.090928 MAIN sockfilt said DISC 07:35:52.090968 ====> Client disconnected 07:35:52.091038 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:51.891187 ====> Client connect 07:35:51.891414 Received DATA (on stdin) 07:35:51.891426 > 178 bytes data, server => client 07:35:51.891437 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.891447 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.891457 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:51.891465 'rve\r\n' 07:35:51.891540 < 17 bytes data, client => server 07:35:51.891552 'A001 CAPABILITY\r\n' 07:35:51.891693 Received DATA (on stdin) 07:35:51.891704 > 18 bytes data, server => client 07:35:51.891714 'A001 BAD Command\r\n' 07:35:51.891765 < 30 bytes data, client => server 07:35:51.891780 'A002 LIST "verifiedserver" *\r\n' 07:35:51.891957 Received DATA (on stdin) 07:35:51.891980 > 34 bytes data, server => client 07:35:51.891992 '* LIST () "/" "WE ROOLZ: 115318"\r\n' 07:35:51.892017 Received DATA (on stdin) 07:35:51.892027 > 24 bytes data, server => client 07:35:51.892037 'A002 OK LIST Completed\r\n' 07:35:51.936251 < 13 bytes data, client => server 07:35:51.936295 'A003 LOGOUT\r\n' 07:35:51.936423 Received DATA (on stdin) 07:35:51.936441 > 36 bytes data, server => client 07:35:51.936452 '* BYE curl IMAP server signing off\r\n' 07:35:51.936475 Received DATA (on stdin) 07:35:51.936485 > 26 bytes data, server => client 07:35:51.936495 'A003 OK LOGOUT completed\r\n' 07:35:51.936525 ====> Client disconnect 07:35:51.938199 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 895 === End of file server.cmd === Start of file valgrind895 ==120294== ==120294== Process terminating with default action of signal 4 (SIGILL) ==120294== Illegal opcode at address 0x4003082 ==120294== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120294== by 0x4003082: main (tool_main.c:234) === End of file valgrind895 test 0890...[POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind896 ../src/curl -q --output log/15/curl896.out --include --trace-ascii log/15/trace896 --trace-config all --trace-time 'imap://127.0.0.1:42959/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=dummy' > log/15/stdout896 2> log/15/stderr896 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind893 ../src/curl -q --output log/7/curl893.out --include --trace-ascii log/7/trace893 --trace-config all --trace-time pop3://127.0.0.1:37565/893 -u kurt:xipj3plmq --sasl-authzid ursel > log/7/stdout893 2> log/7/stderr893 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind892 ../src/curl -q --output log/19/curl892.out --include --trace-ascii log/19/trace892 --trace-config all --trace-time pop3://127.0.0.1:39035/892 -u user:secret --sasl-authzid shared-mailbox > log/19/stdout892 2> log/19/stderr892 eak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind890 ../src/curl -q --output log/4/curl890.out --include --trace-ascii log/4/trace890 --trace-config all --trace-time pop3://127.0.0.1:44405/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/4/stdout890 2> log/4/stderr890 890: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 890 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind890 ../src/curl -q --output log/4/curl890.out --include --trace-ascii log/4/trace890 --trace-config all --trace-time pop3://127.0.0.1:44405/890 -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir > log/4/stdout890 2> log/4/stderr890 === End of file commands.log === Start of file pop3_server.log 07:35:52.034756 ====> Client connect 07:35:52.034956 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.035268 < "CAPA" 07:35:52.035306 > "-ERR Unrecognized command[CR][LF]" 07:35:52.035495 < "RETR verifiedserver" 07:35:52.035524 return proof we are we 07:35:52.035546 > "+OK Mail transfer starts[CR][LF]" 07:35:52.035563 > "WE ROOLZ: 118121[CR][LF]" 07:35:52.035578 > ".[CR][LF]" 07:35:52.080334 < "QUIT" 07:35:52.080395 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.080794 MAIN sockfilt said DISC 07:35:52.080822 ====> Client disconnected 07:35:52.080899 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.880627 ====> Client connect 07:35:51.880947 Received DATA (on stdin) 07:35:51.880972 > 178 bytes data, server => client 07:35:51.880984 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.880995 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.881005 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.881013 've \r\n' 07:35:51.881092 < 6 bytes data, client => server 07:35:51.881105 'CAPA\r\n' 07:35:51.881304 Received DATA (on stdin) 07:35:51.881318 > 27 bytes data, server => client 07:35:51.881329 '-ERR Unrecognized command\r\n' 07:35:51.881382 < 21 bytes data, client => server 07:35:51.881396 'RETR verifiedserver\r\n' 07:35:51.881562 Received DATA (on stdin) 07:35:51.881574 > 26 bytes data, server => client 07:35:51.881585 '+OK Mail transfer starts\r\n' 07:35:51.881607 Received DATA (on stdin) 07:35:51.881617 > 18 bytes data, server => client 07:35:51.881627 'WE ROOLZ: 118121\r\n' 07:35:51.881639 Received DATA (on stdin) 07:35:51.881649 > 3 bytes data, server => client 07:35:51.881658 '.\r\n' 07:35:51.926133 < 6 bytes data, client => server 07:35:51.926164 'QUIT\r\n' 07:35:51.926380 Received DATA (on stdin) 07:35:51.926390 > 34 bytes data, server => client 07:35:51.926403 '+OK curl POP3 server signing off\r\n' 07:35:51.926724 ====> Client disconnect 07:35:51.926824 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH + eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0 REPLY AQ== -ERR Authentication failed Testnum 890 === End of file server.cmd === Start of file valgrind890 ==120272== ==120272== Process terminating with default action of signal 4 (SIGILL) ==120272== Illegal opcode at address 0x4003082 ==120272== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120272== by 0x4003082: main (tool_main.c:234) === End of file valgrind890 test 0896...[IMAP with --login-options 'AUTH=dummy' (failing)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind896 ../src/curl -q --output log/15/curl896.out --include --trace-ascii log/15/trace896 --trace-config all --trace-time 'imap://127.0.0.1:42959/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=dummy' > log/15/stdout896 2> log/15/stderr896 curl returned 132, when expecting 3 896: exit FAILED == Contents of files in the log/15/ dir after test 896 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind896 ../src/curl -q --output log/15/curl896.out --include --trace-ascii log/15/trace896 --trace-config all --trace-time 'imap://127.0.0.1:42959/895/;MAILINDEX=1' -u '"user:sec"ret{' --login-options 'AUTH=dummy' > log/15/stdout896 2> log/15/stderr896 === End of file commands.log === Start of file imap_server.log 07:35:52.048777 ====> Client connect 07:35:52.048909 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:52.049185 < "A001 CAPABILITY" 07:35:52.049240 > "A001 BAD Command[CR][LF]" 07:35:52.049688 < "A002 LIST "verifiedserver" *" 07:35:52.049719 LIST_imap got "verifiedserver" * 07:35:52.049740 > "* LIST () "/" "WE ROOLZ: 115387"[CR][LF]" 07:35:52.049752 > "A002 OK LIST Completed[CR][LF]" 07:35:52.049761 return proof we are we 07:35:52.090415 < "A003 LOGOUT" 07:35:52.090510 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:52.090546 > "A003 OK LOGOUT completed[CR][LF]" 07:35:52.090653 MAIN sockfilt said DISC 07:35:52.090677 ====> Client disconnected 07:35:52.090759 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:51.894673 ====> Client connect 07:35:51.894897 Received DATA (on stdin) 07:35:51.894908 > 178 bytes data, server => client 07:35:51.894916 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.894926 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.894933 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:51.894939 'rve\r\n' 07:35:51.894989 < 17 bytes data, client => server 07:35:51.894997 'A001 CAPABILITY\r\n' 07:35:51.895241 Received DATA (on stdin) 07:35:51.895260 > 18 bytes data, server => client 07:35:51.895268 'A001 BAD Command\r\n' 07:35:51.895563 < 30 bytes data, client => server 07:35:51.895579 'A002 LIST "verifiedserver" *\r\n' 07:35:51.895741 Received DATA (on stdin) 07:35:51.895749 > 34 bytes data, server => client 07:35:51.895757 '* LIST () "/" "WE ROOLZ: 115387"\r\n' 07:35:51.895773 Received DATA (on stdin) 07:35:51.895780 > 24 bytes data, server => client 07:35:51.895788 'A002 OK LIST Completed\r\n' 07:35:51.936231 < 13 bytes data, client => server 07:35:51.936258 'A003 LOGOUT\r\n' 07:35:51.936435 Received DATA (on stdin) 07:35:51.936448 > 36 bytes data, server => client 07:35:51.936474 '* BYE curl IMAP server signing off\r\n' 07:35:51.936535 Received DATA (on stdin) 07:35:51.936548 > 26 bytes data, server => client 07:35:51.936558 'A003 OK LOGOUT completed\r\n' 07:35:51.936588 ====> Client disconnect 07:35:51.936744 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 896 === End of file server.cmd === Start of file valgrind896 ==120292== ==120292== Process terminating with default action of signal 4 (SIGILL) ==120292== Illegal opcode at address 0x4003082 ==120292== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120292== by 0x4003082: main (tool_main.c:234) === End of file valgrind896 test 0893...[POP3 plain auth with alt authorization identity (Not authorized)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind8CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind897 ../src/curl -q --output log/20/curl897.out --include --trace-ascii log/20/trace897 --trace-config all --trace-time 'imap://127.0.0.1:46243/897/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/20/head-897 > log/20/stdout897 2> log/20/stderr897 93 ../src/curl -q --output log/7/curl893.out --include --trace-ascii log/7/trace893 --trace-config all --trace-time pop3://127.0.0.1:37565/893 -u kurt:xipj3plmq --sasl-authzid ursel > log/7/stdout893 2> log/7/stderr893 893: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 893 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind893 ../src/curl -q --output log/7/curl893.out --include --trace-ascii log/7/trace893 --trace-config all --trace-time pop3://127.0.0.1:37565/893 -u kurt:xipj3plmq --sasl-authzid ursel > log/7/stdout893 2> log/7/stderr893 === End of file commands.log === Start of file pop3_server.log 07:35:52.046215 ====> Client connect 07:35:52.046360 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.046651 < "CAPA" 07:35:52.046732 > "-ERR Unrecognized command[CR][LF]" 07:35:52.046942 < "RETR verifiedserver" 07:35:52.046972 return proof we are we 07:35:52.046995 > "+OK Mail transfer starts[CR][LF]" 07:35:52.047011 > "WE ROOLZ: 118126[CR][LF]" 07:35:52.047024 > ".[CR][LF]" 07:35:52.090568 < "QUIT" 07:35:52.090628 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.091374 MAIN sockfilt said DISC 07:35:52.091405 ====> Client disconnected 07:35:52.091467 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:51.892108 ====> Client connect 07:35:51.892357 Received DATA (on stdin) 07:35:51.892372 > 178 bytes data, server => client 07:35:51.892383 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.892393 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.892403 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:51.892412 've \r\n' 07:35:51.892488 < 6 bytes data, client => server 07:35:51.892505 'CAPA\r\n' 07:35:51.892728 Received DATA (on stdin) 07:35:51.892743 > 27 bytes data, server => client 07:35:51.892752 '-ERR Unrecognized command\r\n' 07:35:51.892811 < 21 bytes data, client => server 07:35:51.892829 'RETR verifiedserver\r\n' 07:35:51.893008 Received DATA (on stdin) 07:35:51.893020 > 26 bytes data, server => client 07:35:51.893029 '+OK Mail transfer starts\r\n' 07:35:51.893048 Received DATA (on stdin) 07:35:51.893056 > 18 bytes data, server => client 07:35:51.893063 'WE ROOLZ: 118126\r\n' 07:35:51.893072 Received DATA (on stdin) 07:35:51.893079 > 3 bytes data, server => client 07:35:51.893086 '.\r\n' 07:35:51.936103 < 6 bytes data, client => server 07:35:51.936127 'QUIT\r\n' 07:35:51.936619 Received DATA (on stdin) 07:35:51.936634 > 34 bytes data, server => client 07:35:51.936645 '+OK curl POP3 server signing off\r\n' 07:35:51.937297 ====> Client disconnect 07:35:51.937450 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTH + REPLY dXJzZWwAa3VydAB4aXBqM3BsbXE= -ERR Not authorized Testnum 893 === End of file server.cmd === Start of file valgrind893 ==120298== ==120298== Process terminating with default action of signal 4 (SIGILL) ==120298== Illegal opcode at address 0x4003082 ==120298== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120298== by 0x4003082: main (tool_main.c:234) === End of file valgrind893 test 0892...[POP3 plain authentication with alternative authorization identity] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind892 ../src/curl -q --output log/19/curl892.out --include --trace-ascii log/19/trace892 --trace-config all --trace-time pop3://127.0.0.1:39035/892 -u user:secret --sasl-authzid shared-mailbox > log/19/stdout892 2> log/19/stderr892 892: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 892 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind892 ../src/curl -q --output log/19/curl892.out --include --trace-ascii log/19/trace892 --trace-config all --trace-time pop3://127.0.0.1:39035/892 -u user:secret --sasl-authzid shared-mailbox > log/19/stdout892 2> log/19/stderr892 === End of file commands.log === Start of file pop3_server.log 07:35:52.045307 ====> Client connect 07:35:52.045413 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:52.045918 < "CAPA" 07:35:52.045955 > "-ERR Unrecognized command[CR][LF]" 07:35:52.046188 < "RETR verifiedserver" 07:35:52.046224 return proof we are we 07:35:52.046251 > "+OK Mail transfer starts[CR][LF]" 07:35:52.046268 > "WE ROOLZ: 117679[CR][LF]" 07:35:52.046287 > ".[CR][LF]" 07:35:52.090529 < "QUIT" 07:35:52.090581 > "+OK curl POP3 server signing off[CR][LF]" 07:35:52.091974 MAIN sockfilt said DISC 07:35:52.092014 ====> Client disconnected 07:35:52.092097 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:52.891188 ====> Client connect 07:35:52.891402 Received DATA (on stdin) 07:35:52.891413 > 178 bytes data, server => client 07:35:52.891422 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:52.891430 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:52.891438 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:52.891445 've \r\n' 07:35:52.891778 < 6 bytes data, client => server 07:35:52.891800 'CAPA\r\n' 07:35:52.891944 Received DATA (on stdin) 07:35:52.891960 > 27 bytes data, server => client 07:35:52.891971 '-ERR Unrecognized command\r\n' 07:35:52.892032 < 21 bytes data, client => server 07:35:52.892045 'RETR verifiedserver\r\n' 07:35:52.892422 Received DATA (on stdin) 07:35:52.892442 > 26 bytes data, server => client 07:35:52.892454 '+OK Mail transfer starts\r\n' 07:35:52.892478 Received DATA (on stdin) 07:35:52.892489 > 18 bytes data, server => client 07:35:52.892500 'WE ROOLZ: 117679\r\n' 07:35:52.892512 Received DATA (on stdin) 07:35:52.892522 > 3 bytes data, server => client 07:35:52.892532 '.\r\n' 07:35:52.936340 < 6 bytes data, client => server 07:35:52.936357 'QUIT\r\n' 07:35:52.936552 Received DATA (on stdin) 07:35:52.936576 > 34 bytes data, server => client 07:35:52.936588 '+OK curl POP3 server signing off\r\n' 07:35:52.937294 ====> Client disconnect 07:35:52.938118 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd AUTH PLAIN REPLY AUTH + REPLY c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= +OK Login successful Testnum 892 === End of file server.cmd === Start of file valgrind892 ==120305== ==120305== Process terminating with default action of signal 4 (SIGILL) ==120305== Illegal opcode at address 0x4003082 ==120305== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120305== by 0x4003082: main (tool_main.c:234) === End of file valgrind892 test 0897...[IMAP and envelope meta data after body transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind897 ../src/curl -q --output log/20/curl897.out --include --trace-ascii log/20/trace897 --trace-config all --trace-time 'imap://127.0.0.1:46243/897/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/20/head-897 > log/20/stdout897 2> log/20/stderr897 897: protocol FAILED! There was no content at all in the file log/20/server.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind899 ../src/curl -q --output log/12/curl899.out --include --trace-ascii log/12/trace899 --trace-config all --trace-time http://first:secret@127.0.0.1:37285/899 -L > log/12/stdout899 2> log/12/stderr899 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind903 ../src/curl -q --output log/3/curl903.out --include --trace-ascii log/3/trace903 --trace-config all --trace-time smtp://127.0.0.1:38981/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/3/stdout903 2> log/3/stderr903 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind898 ../src/curl -q --output log/13/curl898.out --include --trace-ascii log/13/trace898 --trace-config all --trace-time -x http://127.0.0.1:33627 http://firsthost.com -L -H "Authorization: Basic am9lOnNlY3JldA==" -H "Cookie: userpwd=am9lOnNlY3JldA==" > log/13/stdout898 2> log/13/stderr898 input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 897 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind897 ../src/curl -q --output log/20/curl897.out --include --trace-ascii log/20/trace897 --trace-config all --trace-time 'imap://127.0.0.1:46243/897/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/20/head-897 > log/20/stdout897 2> log/20/stderr897 === End of file commands.log === Start of file imap_server.log 07:35:52.058406 ====> Client connect 07:35:52.058529 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:52.058773 < "A001 CAPABILITY" 07:35:52.058814 > "A001 BAD Command[CR][LF]" 07:35:52.058990 < "A002 LIST "verifiedserver" *" 07:35:52.059014 LIST_imap got "verifiedserver" * 07:35:52.059031 > "* LIST () "/" "WE ROOLZ: 115386"[CR][LF]" 07:35:52.059043 > "A002 OK LIST Completed[CR][LF]" 07:35:52.059052 return proof we are we 07:35:52.100520 < "A003 LOGOUT" 07:35:52.100576 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:52.100596 > "A003 OK LOGOUT completed[CR][LF]" 07:35:52.100776 MAIN sockfilt said DISC 07:35:52.100817 ====> Client disconnected 07:35:52.100885 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:51.904298 ====> Client connect 07:35:51.904517 Received DATA (on stdin) 07:35:51.904527 > 178 bytes data, server => client 07:35:51.904535 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:51.904542 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:51.904549 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:51.904556 'rve\r\n' 07:35:51.904606 < 17 bytes data, client => server 07:35:51.904614 'A001 CAPABILITY\r\n' 07:35:51.904802 Received DATA (on stdin) 07:35:51.904816 > 18 bytes data, server => client 07:35:51.904824 'A001 BAD Command\r\n' 07:35:51.904905 < 30 bytes data, client => server 07:35:51.904914 'A002 LIST "verifiedserver" *\r\n' 07:35:51.905020 Received DATA (on stdin) 07:35:51.905037 > 34 bytes data, server => client 07:35:51.905046 '* LIST () "/" "WE ROOLZ: 115386"\r\n' 07:35:51.905065 Received DATA (on stdin) 07:35:51.905072 > 24 bytes data, server => client 07:35:51.905079 'A002 OK LIST Completed\r\n' 07:35:51.946344 < 13 bytes data, client => server 07:35:51.946370 'A003 LOGOUT\r\n' 07:35:51.946563 Received DATA (on stdin) 07:35:51.946589 > 36 bytes data, server => client 07:35:51.946601 '* BYE curl IMAP server signing off\r\n' 07:35:51.946629 Received DATA (on stdin) 07:35:51.946639 > 26 bytes data, server => client 07:35:51.946649 'A003 OK LOGOUT completed\r\n' 07:35:51.946695 ====> Client disconnect 07:35:51.946875 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd POSTFETCH extra stuff sent in the envelope after the body Testnum 897 === End of file server.cmd === Start of file valgrind897 ==120397== ==120397== Process terminating with default action of signal 4 (SIGILL) ==120397== Illegal opcode at address 0x4003082 ==120397== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120397== by 0x4003082: main (tool_main.c:234) === End of file valgrind897 test 0899...[URL with credentials redirects to URL with different credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind899 ../src/curl -q --output log/12/curl899.out --include --trace-ascii log/12/trace899 --trace-config all --trace-time http://first:secret@127.0.0.1:37285/899 -L > log/12/stdout899 2> log/12/stderr899 899: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 899 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind899 ../src/curl -q --output log/12/curl899.out --include --trace-ascii log/12/trace899 --trace-config all --trace-time http://first:secret@127.0.0.1:37285/899 -L > log/12/stdout899 2> log/12/stderr899 === End of file commands.log === Start of file http_server.log 07:35:52.044342 ====> Client connect 07:35:52.044376 accept_connection 3 returned 4 07:35:52.044392 accept_connection 3 returned 0 07:35:52.044406 Read 93 bytes 07:35:52.044416 Process 93 bytes request 07:35:52.044430 Got request: GET /verifiedserver HTTP/1.1 07:35:52.044439 Are-we-friendly question received 07:35:52.044462 Wrote request (93 bytes) input to log/12/server.input 07:35:52.044479 Identifying ourselves as friends 07:35:52.044531 Response sent (56 bytes) and written to log/12/server.response 07:35:52.044542 special request received, no persistency 07:35:52.044551 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 899 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind899 ==120727== ==120727== Process terminating with default action of signal 4 (SIGILL) ==120727== Illegal opcode at address 0x4003082 ==120727== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120727== by 0x4003082: main (tool_main.c:234) === End of file valgrind899 test 0903...[SMTP plain authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind903 ../src/curl -q --output log/3/curl903.out --include --trace-ascii log/3/trace903 --trace-config all --trace-time smtp://127.0.0.1:38981/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/3/stdout903 2> log/3/stderr903 903: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 903 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind903 ../src/curl -q --output log/3/curl903.out --include --trace-ascii log/3/trace903 --trace-config all --trace-time smtp://127.0.0.1:38981/903 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/3/stdout903 2> log/3/stderr903 === End of file commands.log === Start of file server.cmd AUTH PLAIN REPLY AUTH 334 PLAIN supported REPLY AHVzZXIAc2VjcmV0 235 Authenticated Testnum 903 === End of file server.cmd === Start of file smtp_server.log 07:35:52.209355 ====> Client connect 07:35:52.209517 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.209799 < "EHLO verifiedserver" 07:35:52.209847 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.210017 < "HELP" 07:35:52.210053 > "214 WE ROOLZ: 108217[CR][LF]" 07:35:5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind910 ../src/curl -q --output log/5/curl910.out --include --trace-ascii log/5/trace910 --trace-config all --trace-time smtp://127.0.0.1:43997/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/5/stdout910 2> log/5/stderr910 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind912 ../src/curl -q --output log/22/curl912.out --include --trace-ascii log/22/trace912 --trace-config all --trace-time smtp://127.0.0.1:40991/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/22/test912.eml > log/22/stdout912 2> log/22/stderr912 2.210071 return proof we are we 07:35:52.210273 < "QUIT" 07:35:52.210303 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.210417 MAIN sockfilt said DISC 07:35:52.210442 ====> Client disconnected 07:35:52.210503 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.055237 ====> Client connect 07:35:52.055520 Received DATA (on stdin) 07:35:52.055536 > 160 bytes data, server => client 07:35:52.055548 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.055559 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.055570 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.055643 < 21 bytes data, client => server 07:35:52.055663 'EHLO verifiedserver\r\n' 07:35:52.055841 Received DATA (on stdin) 07:35:52.055856 > 53 bytes data, server => client 07:35:52.055868 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.055923 < 6 bytes data, client => server 07:35:52.055939 'HELP\r\n' 07:35:52.056058 Received DATA (on stdin) 07:35:52.056071 > 22 bytes data, server => client 07:35:52.056082 '214 WE ROOLZ: 108217\r\n' 07:35:52.056167 < 6 bytes data, client => server 07:35:52.056182 'QUIT\r\n' 07:35:52.056289 Received DATA (on stdin) 07:35:52.056302 > 35 bytes data, server => client 07:35:52.056312 '221 curl ESMTP server signing off\r\n' 07:35:52.056352 ====> Client disconnect 07:35:52.056496 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-903 mail body === End of file stdin-for-903 === Start of file valgrind903 ==120747== ==120747== Process terminating with default action of signal 4 (SIGILL) ==120747== Illegal opcode at address 0x4003082 ==120747== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120747== by 0x4003082: main (tool_main.c:234) === End of file valgrind903 test 0898...[HTTP with custom auth and cookies redirected to HTTP on a diff port] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind898 ../src/curl -q --output log/13/curl898.out --include --trace-ascii log/13/trace898 --trace-config all --trace-time -x http://127.0.0.1:33627 http://firsthost.com -L -H "Authorization: Basic am9lOnNlY3JldA==" -H "Cookie: userpwd=am9lOnNlY3JldA==" > log/13/stdout898 2> log/13/stderr898 898: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 898 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind898 ../src/curl -q --output log/13/curl898.out --include --trace-ascii log/13/trace898 --trace-config all --trace-time -x http://127.0.0.1:33627 http://firsthost.com -L -H "Authorization: Basic am9lOnNlY3JldA==" -H "Cookie: userpwd=am9lOnNlY3JldA==" > log/13/stdout898 2> log/13/stderr898 === End of file commands.log === Start of file http_server.log 07:35:52.038767 ====> Client connect 07:35:52.038803 accept_connection 3 returned 4 07:35:52.038821 accept_connection 3 returned 0 07:35:52.038836 Read 93 bytes 07:35:52.038846 Process 93 bytes request 07:35:52.038862 Got request: GET /verifiedserver HTTP/1.1 07:35:52.038905 Are-we-friendly question received 07:35:52.038943 Wrote request (93 bytes) input to log/13/server.input 07:35:52.038960 Identifying ourselves as friends 07:35:52.039021 Response sent (56 bytes) and written to log/13/server.response 07:35:52.039033 special request received, no persistency 07:35:52.039043 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 898 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind898 ==120725== ==120725== Process terminating with default action of signal 4 (SIGILL) ==120725== Illegal opcode at address 0x4003082 ==120725== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120725== by 0x4003082: main (tool_main.c:234) === End of file valgrind898 test 0910...[SMTP without terminating CRLF] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind910 ../src/curl -q --output log/5/curl910.out --include --trace-ascii log/5/trace910 --trace-config all --trace-time smtp://127.0.0.1:43997/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/5/stdout910 2> log/5/stderr910 910: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 910 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind910 ../src/curl -q --output log/5/curl910.out --include --trace-ascii log/5/trace910 --trace-config all --trace-time smtp://127.0.0.1:43997/910 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/5/stdout910 2> log/5/stderr910 === End of file commands.log === Start of file server.cmd Testnum 910 === End of file server.cmd === Start of file smtp_server.log 07:35:52.473695 ====> Client connect 07:35:52.473864 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.474141 < "EHLO verifiedserver" 07:35:52.474182 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.474332 < "HELP" 07:35:52.474356 > "214 WE ROOLZ: 108210[CR][LF]" 07:35:52.474367 return proof we are we 07:35:52.474520 < "QUIT" 07:35:52.474546 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.474968 MAIN sockfilt said DISC 07:35:52.475051 ====> Client disconnected 07:35:52.475112 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.319563 ====> Client connect 07:35:52.319863 Received DATA (on stdin) 07:35:52.319877 > 160 bytes data, server => client 07:35:52.319890 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.319900 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.319910 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.319977 < 21 bytes data, client => server 07:35:52.319990 'EHLO verifiedserver\r\n' 07:35:52.320169 Received DATA (on stdin) 07:35:52.320181 > 53 bytes data, server => client 07:35:52.320192 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.320241 < 6 bytes data, client => server 07:35:52.320252 'HELP\r\n' 07:35:52.320346 Received DATA (on stdin) 07:35:52.320355 > 22 bytes data, server => client 07:35:52.320363 '214 WE ROOLZ: 108210\r\n' 07:35:52.320423 < 6 bytes data, client => server 07:35:52.320432 'QUIT\r\n' 07:35:52.320528 Received DATA (on stdin) 07:35:52.320538 > 35 bytes data, server => client 07:35:52.320547 '221 curl ESMTP server signing off\r\n' 07:35:52.320744 ====> Client disconnect 07:35:52.321094 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-910 From: different To: another body === End of file stdin-for-910 === StCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind925 ../src/curl -q --output log/13/curl925.out --include --trace-ascii log/13/trace925 --trace-config all --trace-time smtp://127.0.0.1:38115/925 --mail-rcpt user@example.net > log/13/stdout925 2> log/13/stderr925 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind924 ../src/curl -q --output log/3/curl924.out --include --trace-ascii log/3/trace924 --trace-config all --trace-time smtp://127.0.0.1:38981/924 --mail-rcpt smith > log/3/stdout924 2> log/3/stderr924 art of file valgrind910 ==120912== ==120912== Process terminating with default action of signal 4 (SIGILL) ==120912== Illegal opcode at address 0x4003082 ==120912== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120912== by 0x4003082: main (tool_main.c:234) === End of file valgrind910 test 0912...[SMTP with SIZE support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind912 ../src/curl -q --output log/22/curl912.out --include --trace-ascii log/22/trace912 --trace-config all --trace-time smtp://127.0.0.1:40991/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/22/test912.eml > log/22/stdout912 2> log/22/stderr912 912: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 912 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind912 ../src/curl -q --output log/22/curl912.out --include --trace-ascii log/22/trace912 --trace-config all --trace-time smtp://127.0.0.1:40991/912 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/22/test912.eml > log/22/stdout912 2> log/22/stderr912 === End of file commands.log === Start of file server.cmd CAPA SIZE Testnum 912 === End of file server.cmd === Start of file smtp_server.log 07:35:52.515954 ====> Client connect 07:35:52.516097 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.516364 < "EHLO verifiedserver" 07:35:52.516404 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.516558 < "HELP" 07:35:52.516583 > "214 WE ROOLZ: 108298[CR][LF]" 07:35:52.516594 return proof we are we 07:35:52.516750 < "QUIT" 07:35:52.516773 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.516974 MAIN sockfilt said DISC 07:35:52.516996 ====> Client disconnected 07:35:52.517049 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.361837 ====> Client connect 07:35:52.362090 Received DATA (on stdin) 07:35:52.362104 > 160 bytes data, server => client 07:35:52.362116 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.362126 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.362136 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.362209 < 21 bytes data, client => server 07:35:52.362222 'EHLO verifiedserver\r\n' 07:35:52.362391 Received DATA (on stdin) 07:35:52.362403 > 53 bytes data, server => client 07:35:52.362413 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.362462 < 6 bytes data, client => server 07:35:52.362472 'HELP\r\n' 07:35:52.362572 Received DATA (on stdin) 07:35:52.362581 > 22 bytes data, server => client 07:35:52.362589 '214 WE ROOLZ: 108298\r\n' 07:35:52.362661 < 6 bytes data, client => server 07:35:52.362672 'QUIT\r\n' 07:35:52.362755 Received DATA (on stdin) 07:35:52.362764 > 35 bytes data, server => client 07:35:52.362773 '221 curl ESMTP server signing off\r\n' 07:35:52.362910 ====> Client disconnect 07:35:52.363008 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file test912.eml From: different To: another body === End of file test912.eml === Start of file valgrind912 ==120980== ==120980== Process terminating with default action of signal 4 (SIGILL) ==120980== Illegal opcode at address 0x4003082 ==120980== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==120980== by 0x4003082: main (tool_main.c:234) === End of file valgrind912 test 0925...[SMTP external VRFY] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind925 ../src/curl -q --output log/13/curl925.out --include --trace-ascii log/13/trace925 --trace-config all --trace-time smtp://127.0.0.1:38115/925 --mail-rcpt user@example.net > log/13/stdout925 2> log/13/stderr925 925: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 925 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind925 ../src/curl -q --output log/13/curl925.out --include --trace-ascii log/13/trace925 --trace-config all --trace-time smtp://127.0.0.1:38115/925 --mail-rcpt user@example.net > log/13/stdout925 2> log/13/stderr925 === End of file commands.log === Start of file server.cmd Testnum 925 === End of file server.cmd === Start of file smtp_server.log 07:35:52.752549 ====> Client connect 07:35:52.752663 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.752854 < "EHLO verifiedserver" 07:35:52.752883 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.753012 < "HELP" 07:35:52.753034 > "214 WE ROOLZ: 108218[CR][LF]" 07:35:52.753044 return proof we are we 07:35:52.753213 < "QUIT" 07:35:52.753231 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.753356 MAIN sockfilt said DISC 07:35:52.753374 ====> Client disconnected 07:35:52.753414 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.598435 ====> Client connect 07:35:52.598650 Received DATA (on stdin) 07:35:52.598659 > 160 bytes data, server => client 07:35:52.598667 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.598674 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.598681 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.598728 < 21 bytes data, client => server 07:35:52.598736 'EHLO verifiedserver\r\n' 07:35:52.598862 Received DATA (on stdin) 07:35:52.598870 > 53 bytes data, server => client 07:35:52.598877 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.598935 < 6 bytes data, client => server 07:35:52.598943 'HELP\r\n' 07:35:52.599021 Received DATA (on stdin) 07:35:52.599028 > 22 bytes data, server => client 07:35:52.599035 '214 WE ROOLZ: 108218\r\n' 07:35:52.599134 < 6 bytes data, client => server 07:35:52.599143 'QUIT\r\n' 07:35:52.599208 Received DATA (on stdin) 07:35:52.599216 > 35 bytes data, server => client 07:35:52.599222 '221 curl ESMTP server signing off\r\n' 07:35:52.599298 ====> Client disconnect 07:35:52.599392 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind925 ==121088== ==121088== Process terminating with default action of signal 4 (SIGILL) ==121088== Illegal opcode at address 0x4003082 ==121088== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121088== by 0x4003082: main (tool_main.c:234) === End of file valgrind925 test 0924...[SMTP ambiguous VRFY] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind924 ../src/curl -q --output log/3/curl924.out --include --trace-ascii log/3/trace924 --trace-config all --trace-time smtp://127.0.0.1:38981/924 --mail-rcpt smith > log/3/stdout924 2> log/3/stderr924 924: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 924 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind926 ../src/curl -q --output log/5/curl926.out --include --trace-ascii log/5/trace926 --trace-config all --trace-time smtp://127.0.0.1:43997/926 --mail-rcpt recipient > log/5/stdout926 2> log/5/stderr926 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind927 ../src/curl -q --output log/22/curl927.out --include --trace-ascii log/22/trace927 --trace-config all --trace-time smtp://127.0.0.1:40991/927 --mail-rcpt Friends -X EXPN > log/22/stdout927 2> log/22/stderr927 upp --num-callers=16 --log-file=log/3/valgrind924 ../src/curl -q --output log/3/curl924.out --include --trace-ascii log/3/trace924 --trace-config all --trace-time smtp://127.0.0.1:38981/924 --mail-rcpt smith > log/3/stdout924 2> log/3/stderr924 === End of file commands.log === Start of file server.cmd Testnum 924 === End of file server.cmd === Start of file smtp_server.log 07:35:52.753729 ====> Client connect 07:35:52.753827 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.754000 < "EHLO verifiedserver" 07:35:52.754025 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.754126 < "HELP" 07:35:52.754145 > "214 WE ROOLZ: 108217[CR][LF]" 07:35:52.754154 return proof we are we 07:35:52.754324 < "QUIT" 07:35:52.754361 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.754668 MAIN sockfilt said DISC 07:35:52.754699 ====> Client disconnected 07:35:52.754752 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.599242 ====> Client connect 07:35:52.599813 Received DATA (on stdin) 07:35:52.599823 > 160 bytes data, server => client 07:35:52.599831 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.599838 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.599844 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.599888 < 21 bytes data, client => server 07:35:52.599895 'EHLO verifiedserver\r\n' 07:35:52.600004 Received DATA (on stdin) 07:35:52.600012 > 53 bytes data, server => client 07:35:52.600019 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.600051 < 6 bytes data, client => server 07:35:52.600058 'HELP\r\n' 07:35:52.600130 Received DATA (on stdin) 07:35:52.600137 > 22 bytes data, server => client 07:35:52.600144 '214 WE ROOLZ: 108217\r\n' 07:35:52.600194 < 6 bytes data, client => server 07:35:52.600202 'QUIT\r\n' 07:35:52.600346 Received DATA (on stdin) 07:35:52.600359 > 35 bytes data, server => client 07:35:52.600367 '221 curl ESMTP server signing off\r\n' 07:35:52.600595 ====> Client disconnect 07:35:52.600736 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind924 ==121089== ==121089== Process terminating with default action of signal 4 (SIGILL) ==121089== Illegal opcode at address 0x4003082 ==121089== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121089== by 0x4003082: main (tool_main.c:234) === End of file valgrind924 test 0926...[SMTP unknown user VRFY] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind926 ../src/curl -q --output log/5/curl926.out --include --trace-ascii log/5/trace926 --trace-config all --trace-time smtp://127.0.0.1:43997/926 --mail-rcpt recipient > log/5/stdout926 2> log/5/stderr926 926: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 926 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind926 ../src/curl -q --output log/5/curl926.out --include --trace-ascii log/5/trace926 --trace-config all --trace-time smtp://127.0.0.1:43997/926 --mail-rcpt recipient > log/5/stdout926 2> log/5/stderr926 === End of file commands.log === Start of file server.cmd REPLY VRFY 550 Unknown user Testnum 926 === End of file server.cmd === Start of file smtp_server.log 07:35:52.900532 ====> Client connect 07:35:52.900640 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.900926 < "EHLO verifiedserver" 07:35:52.900965 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.901077 < "HELP" 07:35:52.901096 > "214 WE ROOLZ: 108210[CR][LF]" 07:35:52.901105 return proof we are we 07:35:52.901249 < "QUIT" 07:35:52.901267 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.901343 MAIN sockfilt said DISC 07:35:52.901360 ====> Client disconnected 07:35:52.901411 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.746429 ====> Client connect 07:35:52.746626 Received DATA (on stdin) 07:35:52.746638 > 160 bytes data, server => client 07:35:52.746646 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.746654 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.746661 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.746757 < 21 bytes data, client => server 07:35:52.746783 'EHLO verifiedserver\r\n' 07:35:52.746946 Received DATA (on stdin) 07:35:52.746955 > 53 bytes data, server => client 07:35:52.746963 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.747000 < 6 bytes data, client => server 07:35:52.747007 'HELP\r\n' 07:35:52.747082 Received DATA (on stdin) 07:35:52.747090 > 22 bytes data, server => client 07:35:52.747096 '214 WE ROOLZ: 108210\r\n' 07:35:52.747164 < 6 bytes data, client => server 07:35:52.747177 'QUIT\r\n' 07:35:52.747245 Received DATA (on stdin) 07:35:52.747252 > 35 bytes data, server => client 07:35:52.747259 '221 curl ESMTP server signing off\r\n' 07:35:52.747292 ====> Client disconnect 07:35:52.747390 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind926 ==121218== ==121218== Process terminating with default action of signal 4 (SIGILL) ==121218== Illegal opcode at address 0x4003082 ==121218== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121218== by 0x4003082: main (tool_main.c:234) === End of file valgrind926 test 0927...[SMTP mailing list EXPN (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind927 ../src/curl -q --output log/22/curl927.out --include --trace-ascii log/22/trace927 --trace-config all --trace-time smtp://127.0.0.1:40991/927 --mail-rcpt Friends -X EXPN > log/22/stdout927 2> log/22/stderr927 927: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 927 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind927 ../src/curl -q --output log/22/curl927.out --include --trace-ascii log/22/trace927 --trace-config all --trace-time smtp://127.0.0.1:40991/927 --mail-rcpt Friends -X EXPN > log/22/stdout927 2> log/22/stderr927 === End of file commands.log === Start of file server.cmd Testnum 927 === End of file server.cmd === Start of file smtp_server.log 07:35:52.900727 ====> Client connect 07:35:52.900851 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:52.901036 < "EHLO verifiedserver" 07:35:52.901062 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:52.901167 < "HELP" 07:35:52.901187 > "214 WE ROOLZ: 108298[CR][LF]" 07:35:52.901195 return proof we are we 07:35:52.901323 < "QUIT" 07:35:52.901341 > "221 curl ESMTP server signing off[CR][LF]" 07:35:52.901940 MAIN sockfilt said DISC 07:35:52.901957 ====> Client disconnected 07:35:52.901995 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.746603 ====> Client connect 07:35:52.746845 Received DATA (on stdin) 07:35:52.746858 > 160 bytes data, server => client 07:35:52.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind928 ../src/curl -q --output log/13/curl928.out --include --trace-ascii log/13/trace928 --trace-config all --trace-time smtp://127.0.0.1:38115/928 > log/13/stdout928 2> log/13/stderr928 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind929 ../src/curl -q --output log/3/curl929.out --include --trace-ascii log/3/trace929 --trace-config all --trace-time smtp://127.0.0.1:38981/929 -X NOOP -I > log/3/stdout929 2> log/3/stderr929 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind900 ../src/curl -q --output log/11/curl900.out --include --trace-ascii log/11/trace900 --trace-config all --trace-time smtp://127.0.0.1:44025/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/11/stdout900 2> log/11/stderr900 746866 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.746873 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.746879 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.746923 < 21 bytes data, client => server 07:35:52.746930 'EHLO verifiedserver\r\n' 07:35:52.747042 Received DATA (on stdin) 07:35:52.747050 > 53 bytes data, server => client 07:35:52.747058 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.747091 < 6 bytes data, client => server 07:35:52.747098 'HELP\r\n' 07:35:52.747172 Received DATA (on stdin) 07:35:52.747180 > 22 bytes data, server => client 07:35:52.747186 '214 WE ROOLZ: 108298\r\n' 07:35:52.747240 < 6 bytes data, client => server 07:35:52.747249 'QUIT\r\n' 07:35:52.747319 Received DATA (on stdin) 07:35:52.747326 > 35 bytes data, server => client 07:35:52.747333 '221 curl ESMTP server signing off\r\n' 07:35:52.747886 ====> Client disconnect 07:35:52.747973 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind927 ==121219== ==121219== Process terminating with default action of signal 4 (SIGILL) ==121219== Illegal opcode at address 0x4003082 ==121219== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121219== by 0x4003082: main (tool_main.c:234) === End of file valgrind927 test 0928...[SMTP HELP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind928 ../src/curl -q --output log/13/curl928.out --include --trace-ascii log/13/trace928 --trace-config all --trace-time smtp://127.0.0.1:38115/928 > log/13/stdout928 2> log/13/stderr928 928: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 928 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind928 ../src/curl -q --output log/13/curl928.out --include --trace-ascii log/13/trace928 --trace-config all --trace-time smtp://127.0.0.1:38115/928 > log/13/stdout928 2> log/13/stderr928 === End of file commands.log === Start of file server.cmd Testnum 928 === End of file server.cmd === Start of file smtp_server.log 07:35:53.144946 ====> Client connect 07:35:53.145058 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.145331 < "EHLO verifiedserver" 07:35:53.145364 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.145503 < "HELP" 07:35:53.145522 > "214 WE ROOLZ: 108218[CR][LF]" 07:35:53.145531 return proof we are we 07:35:53.145704 < "QUIT" 07:35:53.145723 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.145895 MAIN sockfilt said DISC 07:35:53.145921 ====> Client disconnected 07:35:53.145971 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.990844 ====> Client connect 07:35:52.991049 Received DATA (on stdin) 07:35:52.991093 > 160 bytes data, server => client 07:35:52.991102 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.991110 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.991116 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.991194 < 21 bytes data, client => server 07:35:52.991203 'EHLO verifiedserver\r\n' 07:35:52.991361 Received DATA (on stdin) 07:35:52.991371 > 53 bytes data, server => client 07:35:52.991378 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.991425 < 6 bytes data, client => server 07:35:52.991433 'HELP\r\n' 07:35:52.991508 Received DATA (on stdin) 07:35:52.991515 > 22 bytes data, server => client 07:35:52.991521 '214 WE ROOLZ: 108218\r\n' 07:35:52.991615 < 6 bytes data, client => server 07:35:52.991628 'QUIT\r\n' 07:35:52.991702 Received DATA (on stdin) 07:35:52.991724 > 35 bytes data, server => client 07:35:52.991731 '221 curl ESMTP server signing off\r\n' 07:35:52.991830 ====> Client disconnect 07:35:52.991954 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind928 ==121350== ==121350== Process terminating with default action of signal 4 (SIGILL) ==121350== Illegal opcode at address 0x4003082 ==121350== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121350== by 0x4003082: main (tool_main.c:234) === End of file valgrind928 test 0929...[SMTP NOOP (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind929 ../src/curl -q --output log/3/curl929.out --include --trace-ascii log/3/trace929 --trace-config all --trace-time smtp://127.0.0.1:38981/929 -X NOOP -I > log/3/stdout929 2> log/3/stderr929 929: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 929 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind929 ../src/curl -q --output log/3/curl929.out --include --trace-ascii log/3/trace929 --trace-config all --trace-time smtp://127.0.0.1:38981/929 -X NOOP -I > log/3/stdout929 2> log/3/stderr929 === End of file commands.log === Start of file server.cmd Testnum 929 === End of file server.cmd === Start of file smtp_server.log 07:35:53.145088 ====> Client connect 07:35:53.145197 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.145433 < "EHLO verifiedserver" 07:35:53.145489 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.145624 < "HELP" 07:35:53.145644 > "214 WE ROOLZ: 108217[CR][LF]" 07:35:53.145652 return proof we are we 07:35:53.145789 < "QUIT" 07:35:53.145806 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.146065 MAIN sockfilt said DISC 07:35:53.146090 ====> Client disconnected 07:35:53.146139 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.990994 ====> Client connect 07:35:52.991187 Received DATA (on stdin) 07:35:52.991201 > 160 bytes data, server => client 07:35:52.991209 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:52.991216 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:52.991222 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:52.991285 < 21 bytes data, client => server 07:35:52.991297 'EHLO verifiedserver\r\n' 07:35:52.991475 Received DATA (on stdin) 07:35:52.991485 > 53 bytes data, server => client 07:35:52.991493 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:52.991533 < 6 bytes data, client => server 07:35:52.991540 'HELP\r\n' 07:35:52.991629 Received DATA (on stdin) 07:35:52.991636 > 22 bytes data, server => client 07:35:52.991643 '214 WE ROOLZ: 108217\r\n' 07:35:52.991699 < 6 bytes data, client => server 07:35:52.991707 'QUIT\r\n' 07:35:52.991783 Received DATA (on stdin) 07:35:52.991791 > 35 bytes data, server => client 07:35:52.991797 '221 curl ESMTP server signing off\r\n' 07:35:52.992006 ====> Client disconnect 07:35:52.992121 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind929 ==121349== ==121349== Process terminating with default action of signal 4 (SIGILL) ==121349== Illegal opcode at address 0x4003082 ==121349== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121349== by 0x4003082: main (tool_main.c:234) === End of file valgrind929 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind901 ../src/curl -q --output log/2/curl901.out --include --trace-ascii log/2/trace901 --trace-config all --trace-time smtp://127.0.0.1:34307/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/2/stdout901 2> log/2/stderr901 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind904 ../src/curl -q --output log/10/curl904.out --include --trace-ascii log/10/trace904 --trace-config all --trace-time smtp://127.0.0.1:41595/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout904 2> log/10/stderr904 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind902 ../src/curl -q --output log/16/curl902.out --include --trace-ascii log/16/trace902 --trace-config all --trace-time smtp://127.0.0.1:43379/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/16/stdout902 2> log/16/stderr902 startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/smtp_server.pid" --logfile "log/11/smtp_server.log" --logdir "log/11" --portfile "log/11/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 44025 (log/11/server/smtp_server.port) RUN: SMTP server is PID 120674 port 44025 * pid smtp => 120674 120674 test 0900...[SMTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind900 ../src/curl -q --output log/11/curl900.out --include --trace-ascii log/11/trace900 --trace-config all --trace-time smtp://127.0.0.1:44025/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/11/stdout900 2> log/11/stderr900 900: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 900 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind900 ../src/curl -q --output log/11/curl900.out --include --trace-ascii log/11/trace900 --trace-config all --trace-time smtp://127.0.0.1:44025/900 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/11/stdout900 2> log/11/stderr900 === End of file commands.log === Start of file server.cmd Testnum 900 === End of file server.cmd === Start of file smtp_server.log 07:35:52.213786 SMTP server listens on port IPv4/44025 07:35:52.213873 logged pid 120674 in log/11/server/smtp_server.pid 07:35:52.213897 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.059511 Running IPv4 version 07:35:52.059578 Listening on port 44025 07:35:52.059628 Wrote pid 120726 to log/11/server/smtp_sockfilt.pid 07:35:52.059663 Wrote port 44025 to log/11/server/smtp_server.port 07:35:52.059684 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-900 From: different To: another body === End of file stdin-for-900 === Start of file valgrind900 ==121443== ==121443== Process terminating with default action of signal 4 (SIGILL) ==121443== Illegal opcode at address 0x4003082 ==121443== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121443== by 0x4003082: main (tool_main.c:234) === End of file valgrind900 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/2/server/smtp_server.pid" --logfile "log/2/smtp_server.log" --logdir "log/2" --portfile "log/2/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34307 (log/2/server/smtp_server.port) RUN: SMTP server is PID 120696 port 34307 * pid smtp => 120696 120696 test 0901...[SMTP with CRLF-dot-CRLF in data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind901 ../src/curl -q --output log/2/curl901.out --include --trace-ascii log/2/trace901 --trace-config all --trace-time smtp://127.0.0.1:34307/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/2/stdout901 2> log/2/stderr901 901: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 901 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind901 ../src/curl -q --output log/2/curl901.out --include --trace-ascii log/2/trace901 --trace-config all --trace-time smtp://127.0.0.1:34307/901 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/2/stdout901 2> log/2/stderr901 === End of file commands.log === Start of file server.cmd Testnum 901 === End of file server.cmd === Start of file smtp_server.log 07:35:52.224308 SMTP server listens on port IPv4/34307 07:35:52.224387 logged pid 120696 in log/2/server/smtp_server.pid 07:35:52.224408 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.070008 Running IPv4 version 07:35:52.070111 Listening on port 34307 07:35:52.070151 Wrote pid 120750 to log/2/server/smtp_sockfilt.pid 07:35:52.070192 Wrote port 34307 to log/2/server/smtp_server.port 07:35:52.070212 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-901 From: different To: another . . . body === End of file stdin-for-901 === Start of file valgrind901 ==121467== ==121467== Process terminating with default action of signal 4 (SIGILL) ==121467== Illegal opcode at address 0x4003082 ==121467== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121467== by 0x4003082: main (tool_main.c:234) === End of file valgrind901 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/smtp_server.pid" --logfile "log/10/smtp_server.log" --logdir "log/10" --portfile "log/10/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41595 (log/10/server/smtp_server.port) RUN: SMTP server is PID 120706 port 41595 * pid smtp => 120706 120706 test 0904...[SMTP login authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind904 ../src/curl -q --output log/10/curl904.out --include --trace-ascii log/10/trace904 --trace-config all --trace-time smtp://127.0.0.1:41595/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout904 2> log/10/stderr904 904: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 904 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind904 ../src/curl -q --output log/10/curl904.out --include --trace-ascii log/10/trace904 --trace-config all --trace-time smtp://127.0.0.1:41595/904 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout904 2> log/10/stderr904 === End of file commands.log === Start of file server.cmd AUTH LOGIN REPLY AUTH 334 VXNlcm5hbWU6 REPLY dXNlcg== 334 UGFzc3dvcmQ6 REPLY c2VjcmV0 235 Authenticated Testnum 904 === End of file server.cmd === Start of file smtp_server.log 07:35:52.227322 SMTP server listens on port IPv4/41595 07:35:52.227402 logged pid 120706 in log/10/server/smtp_server.pid 07:35:52.227425 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.073054 Running IPv4 version 07:35:52.073136 Listening on port 41595 07:35:52.073175 Wrote pid 120761 to log/10/server/smtp_sockfilt.pid 07:35:52.073205 Wrote port 41595 to log/10/server/smtp_server.port 07:35:52.073222 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-904 mail body === End of file stdin-for-904 === Start of file valgrind904 ==121499== ==121499== Process terminating with default action of signal 4 (SIGILL) ==121499== Illegal opcode at address 0x4003082 ==121499== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121499== by 0x4003082: main (tool_main.c:234) === End of file valgrind904 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpservCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind906 ../src/curl -q --output log/17/curl906.out --include --trace-ascii log/17/trace906 --trace-config all --trace-time smtp://127.0.0.1:38413/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - log/17/stdout906 2> log/17/stderr906 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind905 ../src/curl -q --output log/18/curl905.out --include --trace-ascii log/18/trace905 --trace-config all --trace-time smtp://127.0.0.1:37785/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/18/stdout905 2> log/18/stderr905 er.pl --pidfile "log/16/server/smtp_server.pid" --logfile "log/16/smtp_server.log" --logdir "log/16" --portfile "log/16/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 43379 (log/16/server/smtp_server.port) RUN: SMTP server is PID 120701 port 43379 * pid smtp => 120701 120701 test 0902...[RFC821-only SMTP server (EHLO not supported)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind902 ../src/curl -q --output log/16/curl902.out --include --trace-ascii log/16/trace902 --trace-config all --trace-time smtp://127.0.0.1:43379/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/16/stdout902 2> log/16/stderr902 902: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 902 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind902 ../src/curl -q --output log/16/curl902.out --include --trace-ascii log/16/trace902 --trace-config all --trace-time smtp://127.0.0.1:43379/902 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/16/stdout902 2> log/16/stderr902 === End of file commands.log === Start of file server.cmd REPLY EHLO 500 Command unrecognized Testnum 902 === End of file server.cmd === Start of file smtp_server.log 07:35:52.225834 SMTP server listens on port IPv4/43379 07:35:52.225910 logged pid 120701 in log/16/server/smtp_server.pid 07:35:52.225930 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.071624 Running IPv4 version 07:35:52.071677 Listening on port 43379 07:35:52.071706 Wrote pid 120755 to log/16/server/smtp_sockfilt.pid 07:35:52.071729 Wrote port 43379 to log/16/server/smtp_server.port 07:35:52.071744 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-902 From: different To: another body === End of file stdin-for-902 === Start of file valgrind902 ==121472== ==121472== Process terminating with default action of signal 4 (SIGILL) ==121472== Illegal opcode at address 0x4003082 ==121472== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121472== by 0x4003082: main (tool_main.c:234) === End of file valgrind902 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/17/server/smtp_server.pid" --logfile "log/17/smtp_server.log" --logdir "log/17" --portfile "log/17/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38413 (log/17/server/smtp_server.port) RUN: SMTP server is PID 120885 port 38413 * pid smtp => 120885 120885 test 0906...[SMTP NTLM authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind906 ../src/curl -q --output log/17/curl906.out --include --trace-ascii log/17/trace906 --trace-config all --trace-time smtp://127.0.0.1:38413/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - log/17/stdout906 2> log/17/stderr906 906: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 906 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind906 ../src/curl -q --output log/17/curl906.out --include --trace-ascii log/17/trace906 --trace-config all --trace-time smtp://127.0.0.1:38413/906 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - log/17/stdout906 2> log/17/stderr906 === End of file commands.log === Start of file server.cmd AUTH NTLM REPLY AUTH 334 NTLM supported REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= 235 Authenticated Testnum 906 === End of file server.cmd === Start of file smtp_server.log 07:35:52.313170 SMTP server listens on port IPv4/38413 07:35:52.313252 logged pid 120885 in log/17/server/smtp_server.pid 07:35:52.313276 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.158808 Running IPv4 version 07:35:52.158976 Listening on port 38413 07:35:52.159020 Wrote pid 120888 to log/17/server/smtp_sockfilt.pid 07:35:52.159049 Wrote port 38413 to log/17/server/smtp_server.port 07:35:52.159070 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-906 mail body === End of file stdin-for-906 === Start of file valgrind906 ==121670== ==121670== Process terminating with default action of signal 4 (SIGILL) ==121670== Illegal opcode at address 0x4003082 ==121670== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121670== by 0x4003082: main (tool_main.c:234) === End of file valgrind906 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/18/server/smtp_server.pid" --logfile "log/18/smtp_server.log" --logdir "log/18" --portfile "log/18/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37785 (log/18/server/smtp_server.port) RUN: SMTP server is PID 120879 port 37785 * pid smtp => 120879 120879 test 0905...[SMTP CRAM-MD5 authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind905 ../src/curl -q --output log/18/curl905.out --include --trace-ascii log/18/trace905 --trace-config all --trace-time smtp://127.0.0.1:37785/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/18/stdout905 2> log/18/stderr905 905: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 905 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind905 ../src/curl -q --output log/18/curl905.out --include --trace-ascii log/18/trace905 --trace-config all --trace-time smtp://127.0.0.1:37785/905 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/18/stdout905 2> log/18/stderr905 === End of file commands.log === Start of file server.cmd AUTH CRAM-MD5 REPLY AUTH 334 PDE5NzIuOTg3NjU0MzIxQGN1cmw+ REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== 235 Authenticated Testnum 905 === End of file server.cmd === Start of file smtp_server.log 07:35:52.303429 SMTP server listens on port IPv4/37785 07:35:52.303516 logged pid 120879 in log/18/server/smtp_server.pid 07:35:52.303541 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.149102 Running IPv4 version 07:35:52.149201 Listening on port 37785 07:35:52.149242 Wrote pid 120887 to log/18/server/smtp_sockfilt.pid CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind908 ../src/curl -q --output log/23/curl908.out --include --trace-ascii log/23/trace908 --trace-config all --trace-time smtp://127.0.0.1:38373/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/23/stdout908 2> log/23/stderr908 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind930 ../src/curl -q --output log/5/curl930.out --include --trace-ascii log/5/trace930 --trace-config all --trace-time smtp://127.0.0.1:43997/930 -X RSET -I > log/5/stdout930 2> log/5/stderr930 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind931 ../src/curl -q --output log/22/curl931.out --include --trace-ascii log/22/trace931 --trace-config all --trace-time smtp://127.0.0.1:40991/%0d%0a/931 > log/22/stdout931 2> log/22/stderr931 07:35:52.149271 Wrote port 37785 to log/18/server/smtp_server.port 07:35:52.149301 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-905 mail body === End of file stdin-for-905 === Start of file valgrind905 ==121648== ==121648== Process terminating with default action of signal 4 (SIGILL) ==121648== Illegal opcode at address 0x4003082 ==121648== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121648== by 0x4003082: main (tool_main.c:234) === End of file valgrind905 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/23/server/smtp_server.pid" --logfile "log/23/smtp_server.log" --logdir "log/23" --portfile "log/23/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38373 (log/23/server/smtp_server.port) RUN: SMTP server is PID 120889 port 38373 * pid smtp => 120889 120889 test 0908...[SMTP OAuth 2.0 (XOAUTH2) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind908 ../src/curl -q --output log/23/curl908.out --include --trace-ascii log/23/trace908 --trace-config all --trace-time smtp://127.0.0.1:38373/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/23/stdout908 2> log/23/stderr908 908: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 908 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind908 ../src/curl -q --output log/23/curl908.out --include --trace-ascii log/23/trace908 --trace-config all --trace-time smtp://127.0.0.1:38373/908 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/23/stdout908 2> log/23/stderr908 === End of file commands.log === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH 334 XOAUTH2 supported REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB 235 Authenticated Testnum 908 === End of file server.cmd === Start of file smtp_server.log 07:35:52.357826 SMTP server listens on port IPv4/38373 07:35:52.357914 logged pid 120889 in log/23/server/smtp_server.pid 07:35:52.357940 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.203531 Running IPv4 version 07:35:52.203613 Listening on port 38373 07:35:52.203651 Wrote pid 120891 to log/23/server/smtp_sockfilt.pid 07:35:52.203681 Wrote port 38373 to log/23/server/smtp_server.port 07:35:52.203701 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-908 mail body === End of file stdin-for-908 === Start of file valgrind908 ==121784== ==121784== Process terminating with default action of signal 4 (SIGILL) ==121784== Illegal opcode at address 0x4003082 ==121784== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121784== by 0x4003082: main (tool_main.c:234) === End of file valgrind908 test 0930...[SMTP RSET (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind930 ../src/curl -q --output log/5/curl930.out --include --trace-ascii log/5/trace930 --trace-config all --trace-time smtp://127.0.0.1:43997/930 -X RSET -I > log/5/stdout930 2> log/5/stderr930 930: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 930 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind930 ../src/curl -q --output log/5/curl930.out --include --trace-ascii log/5/trace930 --trace-config all --trace-time smtp://127.0.0.1:43997/930 -X RSET -I > log/5/stdout930 2> log/5/stderr930 === End of file commands.log === Start of file server.cmd Testnum 930 === End of file server.cmd === Start of file smtp_server.log 07:35:53.327690 ====> Client connect 07:35:53.327848 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.328147 < "EHLO verifiedserver" 07:35:53.328186 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.328331 < "HELP" 07:35:53.328358 > "214 WE ROOLZ: 108210[CR][LF]" 07:35:53.328369 return proof we are we 07:35:53.328601 < "QUIT" 07:35:53.328649 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.329028 MAIN sockfilt said DISC 07:35:53.329051 ====> Client disconnected 07:35:53.329108 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.173581 ====> Client connect 07:35:53.173848 Received DATA (on stdin) 07:35:53.173867 > 160 bytes data, server => client 07:35:53.173878 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.173888 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.173898 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.173996 < 21 bytes data, client => server 07:35:53.174008 'EHLO verifiedserver\r\n' 07:35:53.174171 Received DATA (on stdin) 07:35:53.174182 > 53 bytes data, server => client 07:35:53.174191 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.174239 < 6 bytes data, client => server 07:35:53.174250 'HELP\r\n' 07:35:53.174350 Received DATA (on stdin) 07:35:53.174361 > 22 bytes data, server => client 07:35:53.174370 '214 WE ROOLZ: 108210\r\n' 07:35:53.174455 < 6 bytes data, client => server 07:35:53.174466 'QUIT\r\n' 07:35:53.174638 Received DATA (on stdin) 07:35:53.174654 > 35 bytes data, server => client 07:35:53.174665 '221 curl ESMTP server signing off\r\n' 07:35:53.174969 ====> Client disconnect 07:35:53.175087 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind930 ==121797== ==121797== Process terminating with default action of signal 4 (SIGILL) ==121797== Illegal opcode at address 0x4003082 ==121797== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121797== by 0x4003082: main (tool_main.c:234) === End of file valgrind930 test 0931...[SMTP with URL-encoded CR LF in the URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind931 ../src/curl -q --output log/22/curl931.out --include --trace-ascii log/22/trace931 --trace-config all --trace-time smtp://127.0.0.1:40991/%0d%0a/931 > log/22/stdout931 2> log/22/stderr931 curl returned 132, when expecting 3 931: exit FAILED == Contents of files in the log/22/ dir after test 931 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind931 ../src/curl -q --output log/22/curl931.out --include --trace-ascii log/22/trace931 --trace-config all --trace-time smtp://127.0.0.1:40991/%0d%0a/931 > log/22/stdout931 2> log/22/stderr931 === End of file commands.log === Start of file server.cmd Testnum 931 === End of file server.cmd === Start of file smtp_server.log 07:35:53.330733 ====> Client connect 07:35:53.330867 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.331176 < "EHLO verifiedserver" 07CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind909 ../src/curl -q --output log/14/curl909.out --include --trace-ascii log/14/trace909 --trace-config all --trace-time smtp://127.0.0.1:42443/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/14/test909.eml > log/14/stdout909 2> log/14/stderr909 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind911 ../src/curl -q --output log/21/curl911.out --include --trace-ascii log/21/trace911 --trace-config all --trace-time smtp://127.0.0.1:38415/911 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/21/stdout911 2> log/21/stderr911 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind914 ../src/curl -q --output log/8/curl914.out --include --trace-ascii log/8/trace914 --trace-config all --trace-time smtp://127.0.0.1:41381/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/8/test914.eml > log/8/stdout914 2> log/8/stderr914 :35:53.331227 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.331398 < "HELP" 07:35:53.331440 > "214 WE ROOLZ: 108298[CR][LF]" 07:35:53.331454 return proof we are we 07:35:53.331656 < "QUIT" 07:35:53.331690 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.332051 MAIN sockfilt said DISC 07:35:53.332074 ====> Client disconnected 07:35:53.332134 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.176634 ====> Client connect 07:35:53.176865 Received DATA (on stdin) 07:35:53.176884 > 160 bytes data, server => client 07:35:53.176895 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.176905 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.176915 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.176995 < 21 bytes data, client => server 07:35:53.177017 'EHLO verifiedserver\r\n' 07:35:53.177215 Received DATA (on stdin) 07:35:53.177227 > 53 bytes data, server => client 07:35:53.177238 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.177287 < 6 bytes data, client => server 07:35:53.177299 'HELP\r\n' 07:35:53.177439 Received DATA (on stdin) 07:35:53.177455 > 22 bytes data, server => client 07:35:53.177465 '214 WE ROOLZ: 108298\r\n' 07:35:53.177547 < 6 bytes data, client => server 07:35:53.177557 'QUIT\r\n' 07:35:53.177676 Received DATA (on stdin) 07:35:53.177692 > 35 bytes data, server => client 07:35:53.177703 '221 curl ESMTP server signing off\r\n' 07:35:53.177989 ====> Client disconnect 07:35:53.178116 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind931 ==121799== ==121799== Process terminating with default action of signal 4 (SIGILL) ==121799== Illegal opcode at address 0x4003082 ==121799== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121799== by 0x4003082: main (tool_main.c:234) === End of file valgrind931 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/14/server/smtp_server.pid" --logfile "log/14/smtp_server.log" --logdir "log/14" --portfile "log/14/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42443 (log/14/server/smtp_server.port) RUN: SMTP server is PID 120894 port 42443 * pid smtp => 120894 120894 test 0909...[SMTP without SIZE support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind909 ../src/curl -q --output log/14/curl909.out --include --trace-ascii log/14/trace909 --trace-config all --trace-time smtp://127.0.0.1:42443/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/14/test909.eml > log/14/stdout909 2> log/14/stderr909 909: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 909 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind909 ../src/curl -q --output log/14/curl909.out --include --trace-ascii log/14/trace909 --trace-config all --trace-time smtp://127.0.0.1:42443/909 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/14/test909.eml > log/14/stdout909 2> log/14/stderr909 === End of file commands.log === Start of file server.cmd Testnum 909 === End of file server.cmd === Start of file smtp_server.log 07:35:52.485144 SMTP server listens on port IPv4/42443 07:35:52.485200 logged pid 120894 in log/14/server/smtp_server.pid 07:35:52.485217 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.330932 Running IPv4 version 07:35:52.330978 Listening on port 42443 07:35:52.331009 Wrote pid 120911 to log/14/server/smtp_sockfilt.pid 07:35:52.331033 Wrote port 42443 to log/14/server/smtp_server.port 07:35:52.331048 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file test909.eml From: different To: another body === End of file test909.eml === Start of file valgrind909 ==121938== ==121938== Process terminating with default action of signal 4 (SIGILL) ==121938== Illegal opcode at address 0x4003082 ==121938== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121938== by 0x4003082: main (tool_main.c:234) === End of file valgrind909 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/21/server/smtp_server.pid" --logfile "log/21/smtp_server.log" --logdir "log/21" --portfile "log/21/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38415 (log/21/server/smtp_server.port) RUN: SMTP server is PID 120913 port 38415 * pid smtp => 120913 120913 test 0911...[SMTP with no mail data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind911 ../src/curl -q --output log/21/curl911.out --include --trace-ascii log/21/trace911 --trace-config all --trace-time smtp://127.0.0.1:38415/911 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/21/stdout911 2> log/21/stderr911 911: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 911 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind911 ../src/curl -q --output log/21/curl911.out --include --trace-ascii log/21/trace911 --trace-config all --trace-time smtp://127.0.0.1:38415/911 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/21/stdout911 2> log/21/stderr911 === End of file commands.log === Start of file server.cmd Testnum 911 === End of file server.cmd === Start of file smtp_server.log 07:35:52.522065 SMTP server listens on port IPv4/38415 07:35:52.522141 logged pid 120913 in log/21/server/smtp_server.pid 07:35:52.522163 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.367687 Running IPv4 version 07:35:52.367764 Listening on port 38415 07:35:52.367798 Wrote pid 120976 to log/21/server/smtp_sockfilt.pid 07:35:52.367825 Wrote port 38415 to log/21/server/smtp_server.port 07:35:52.367960 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind911 ==121977== ==121977== Process terminating with default action of signal 4 (SIGILL) ==121977== Illegal opcode at address 0x4003082 ==121977== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==121977== by 0x4003082: main (tool_main.c:234) === End of file valgrind911 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/8/server/smtp_server.pid" --logfile "log/8/smtp_server.log" --logdir "log/8" --portfile "log/8/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41381 (log/8/server/smtp_server.port) RUN: SMTP server is PID 120960 port 41381 * pid smtp => 120960 120960 test 0914...[SMTP invalid --mail-from] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind914 ../src/curl -q --output log/8/curl914.out --include --trace-ascii log/8/trace914 --trace-config all --trace-time smtp://127.0.0.1:41381/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/8/test914.eml > log/8/stdout914 2> log/8/stderr914 914: protocol FAILED! There was noCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind913 ../src/curl -q --output log/24/curl913.out --include --trace-ascii log/24/trace913 --trace-config all --trace-time smtp://127.0.0.1:42589/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/24/test913.eml > log/24/stdout913 2> log/24/stderr913 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind915 ../src/curl -q --output log/9/curl915.out --include --trace-ascii log/9/trace915 --trace-config all --trace-time smtp://127.0.0.1:44357/915 --mail-rcpt recipient@example.com -T - log/9/stdout915 2> log/9/stderr915 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind923 ../src/curl -q --output log/12/curl923.out --include --trace-ascii log/12/trace923 --trace-config all --trace-time smtp://127.0.0.1:41731/923 --mail-rcpt recipient > log/12/stdout923 2> log/12/stderr923 content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 914 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind914 ../src/curl -q --output log/8/curl914.out --include --trace-ascii log/8/trace914 --trace-config all --trace-time smtp://127.0.0.1:41381/914 --mail-rcpt recipient@example.com --mail-from invalid -T log/8/test914.eml > log/8/stdout914 2> log/8/stderr914 === End of file commands.log === Start of file server.cmd REPLY MAIL 501 not fine enough Testnum 914 === End of file server.cmd === Start of file smtp_server.log 07:35:52.540676 SMTP server listens on port IPv4/41381 07:35:52.540735 logged pid 120960 in log/8/server/smtp_server.pid 07:35:52.540754 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.386457 Running IPv4 version 07:35:52.386512 Listening on port 41381 07:35:52.386545 Wrote pid 120996 to log/8/server/smtp_sockfilt.pid 07:35:52.386577 Wrote port 41381 to log/8/server/smtp_server.port 07:35:52.386593 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file test914.eml From: different To: another body === End of file test914.eml === Start of file valgrind914 ==122033== ==122033== Process terminating with default action of signal 4 (SIGILL) ==122033== Illegal opcode at address 0x4003082 ==122033== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122033== by 0x4003082: main (tool_main.c:234) === End of file valgrind914 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/24/server/smtp_server.pid" --logfile "log/24/smtp_server.log" --logdir "log/24" --portfile "log/24/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 42589 (log/24/server/smtp_server.port) RUN: SMTP server is PID 120943 port 42589 * pid smtp => 120943 120943 test 0913...[SMTP with large message SIZE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind913 ../src/curl -q --output log/24/curl913.out --include --trace-ascii log/24/trace913 --trace-config all --trace-time smtp://127.0.0.1:42589/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/24/test913.eml > log/24/stdout913 2> log/24/stderr913 913: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 913 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind913 ../src/curl -q --output log/24/curl913.out --include --trace-ascii log/24/trace913 --trace-config all --trace-time smtp://127.0.0.1:42589/913 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/24/test913.eml > log/24/stdout913 2> log/24/stderr913 === End of file commands.log === Start of file server.cmd CAPA "SIZE 32" Testnum 913 === End of file server.cmd === Start of file smtp_server.log 07:35:52.533077 SMTP server listens on port IPv4/42589 07:35:52.533147 logged pid 120943 in log/24/server/smtp_server.pid 07:35:52.533167 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.378830 Running IPv4 version 07:35:52.378906 Listening on port 42589 07:35:52.378944 Wrote pid 120985 to log/24/server/smtp_sockfilt.pid 07:35:52.378970 Wrote port 42589 to log/24/server/smtp_server.port 07:35:52.378985 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file test913.eml From: different To: another body === End of file test913.eml === Start of file valgrind913 ==122016== ==122016== Process terminating with default action of signal 4 (SIGILL) ==122016== Illegal opcode at address 0x4003082 ==122016== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122016== by 0x4003082: main (tool_main.c:234) === End of file valgrind913 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/9/server/smtp_server.pid" --logfile "log/9/smtp_server.log" --logdir "log/9" --portfile "log/9/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 44357 (log/9/server/smtp_server.port) RUN: SMTP server is PID 121012 port 44357 * pid smtp => 121012 121012 test 0915...[SMTP without --mail-from] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind915 ../src/curl -q --output log/9/curl915.out --include --trace-ascii log/9/trace915 --trace-config all --trace-time smtp://127.0.0.1:44357/915 --mail-rcpt recipient@example.com -T - log/9/stdout915 2> log/9/stderr915 915: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 915 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind915 ../src/curl -q --output log/9/curl915.out --include --trace-ascii log/9/trace915 --trace-config all --trace-time smtp://127.0.0.1:44357/915 --mail-rcpt recipient@example.com -T - log/9/stdout915 2> log/9/stderr915 === End of file commands.log === Start of file server.cmd Testnum 915 === End of file server.cmd === Start of file smtp_server.log 07:35:52.578078 SMTP server listens on port IPv4/44357 07:35:52.578137 logged pid 121012 in log/9/server/smtp_server.pid 07:35:52.578154 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.423687 Running IPv4 version 07:35:52.423874 Listening on port 44357 07:35:52.423943 Wrote pid 121037 to log/9/server/smtp_sockfilt.pid 07:35:52.423976 Wrote port 44357 to log/9/server/smtp_server.port 07:35:52.423993 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-915 From: different To: another body === End of file stdin-for-915 === Start of file valgrind915 ==122146== ==122146== Process terminating with default action of signal 4 (SIGILL) ==122146== Illegal opcode at address 0x4003082 ==122146== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122146== by 0x4003082: main (tool_main.c:234) === End of file valgrind915 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/12/server/smtp_server.pid" --logfile "log/12/smtp_server.log" --logdir "log/12" --portfile "log/12/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41731 (log/12/server/smtp_server.port) RUN: SMTP server is PID 121049 port 41731 * pid smtp => 121049 121049 test 0923...[SMTP VRFY] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind923 ../src/curl -q --output log/12/curl923.out --include --trace-ascii log/12/trace923 --trace-config all --trace-time smtp://127.0.0.1:41731/923 --mail-rcpt recipient > log/12/stdout923 2> log/12/stderr923 923: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 923 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind939 ../src/curl -q --output log/10/curl939.out --include --trace-ascii log/10/trace939 --trace-config all --trace-time smtp://127.0.0.1:41595/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout939 2> log/10/stderr939 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind936 ../src/curl -q --output log/2/curl936.out --include --trace-ascii log/2/trace936 --trace-config all --trace-time smtp://127.0.0.1:34307/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/2/stdout936 2> log/2/stderr936 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind940 ../src/curl -q --output log/16/curl940.out --include --trace-ascii log/16/trace940 --trace-config all --trace-time smtp://127.0.0.1:43379/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/16/stdout940 2> log/16/stderr940 ions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind923 ../src/curl -q --output log/12/curl923.out --include --trace-ascii log/12/trace923 --trace-config all --trace-time smtp://127.0.0.1:41731/923 --mail-rcpt recipient > log/12/stdout923 2> log/12/stderr923 === End of file commands.log === Start of file server.cmd Testnum 923 === End of file server.cmd === Start of file smtp_server.log 07:35:52.654296 SMTP server listens on port IPv4/41731 07:35:52.654368 logged pid 121049 in log/12/server/smtp_server.pid 07:35:52.654389 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.499950 Running IPv4 version 07:35:52.500019 Listening on port 41731 07:35:52.500059 Wrote pid 121055 to log/12/server/smtp_sockfilt.pid 07:35:52.500088 Wrote port 41731 to log/12/server/smtp_server.port 07:35:52.500202 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind923 ==122577== ==122577== Process terminating with default action of signal 4 (SIGILL) ==122577== Illegal opcode at address 0x4003082 ==122577== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122577== by 0x4003082: main (tool_main.c:234) === End of file valgrind923 test 0939...[RFC821-only SMTP with username and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind939 ../src/curl -q --output log/10/curl939.out --include --trace-ascii log/10/trace939 --trace-config all --trace-time smtp://127.0.0.1:41595/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout939 2> log/10/stderr939 939: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 939 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind939 ../src/curl -q --output log/10/curl939.out --include --trace-ascii log/10/trace939 --trace-config all --trace-time smtp://127.0.0.1:41595/939 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/10/stdout939 2> log/10/stderr939 === End of file commands.log === Start of file server.cmd REPLY EHLO 500 Command unrecognized Testnum 939 === End of file server.cmd === Start of file smtp_server.log 07:35:53.622078 ====> Client connect 07:35:53.622276 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.622580 < "EHLO verifiedserver" 07:35:53.622622 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.622828 < "HELP" 07:35:53.622883 > "214 WE ROOLZ: 120706[CR][LF]" 07:35:53.622902 return proof we are we 07:35:53.623314 < "QUIT" 07:35:53.623364 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.623912 MAIN sockfilt said DISC 07:35:53.623946 ====> Client disconnected 07:35:53.624007 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.467749 ====> Client connect 07:35:53.468283 Received DATA (on stdin) 07:35:53.468299 > 160 bytes data, server => client 07:35:53.468312 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.468324 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.468334 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.468411 < 21 bytes data, client => server 07:35:53.468426 'EHLO verifiedserver\r\n' 07:35:53.468611 Received DATA (on stdin) 07:35:53.468624 > 53 bytes data, server => client 07:35:53.468635 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.468687 < 6 bytes data, client => server 07:35:53.468701 'HELP\r\n' 07:35:53.468893 Received DATA (on stdin) 07:35:53.468912 > 22 bytes data, server => client 07:35:53.468923 '214 WE ROOLZ: 120706\r\n' 07:35:53.469205 < 6 bytes data, client => server 07:35:53.469223 'QUIT\r\n' 07:35:53.469352 Received DATA (on stdin) 07:35:53.469369 > 35 bytes data, server => client 07:35:53.469381 '221 curl ESMTP server signing off\r\n' 07:35:53.469835 ====> Client disconnect 07:35:53.469996 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-939 mail body === End of file stdin-for-939 === Start of file valgrind939 ==122540== ==122540== Process terminating with default action of signal 4 (SIGILL) ==122540== Illegal opcode at address 0x4003082 ==122540== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122540== by 0x4003082: main (tool_main.c:234) === End of file valgrind939 test 0936...[SMTP NTLM authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind936 ../src/curl -q --output log/2/curl936.out --include --trace-ascii log/2/trace936 --trace-config all --trace-time smtp://127.0.0.1:34307/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/2/stdout936 2> log/2/stderr936 936: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 936 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind936 ../src/curl -q --output log/2/curl936.out --include --trace-ascii log/2/trace936 --trace-config all --trace-time smtp://127.0.0.1:34307/936 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/2/stdout936 2> log/2/stderr936 === End of file commands.log === Start of file server.cmd AUTH NTLM PLAIN REPLY "AUTH NTLM" 334 NTLM supported REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish REPLY * 501 AUTH exchange cancelled by client REPLY "AUTH PLAIN" 334 PLAIN supported REPLY AHVzZXIAc2VjcmV0 235 Authenticated Testnum 936 === End of file server.cmd === Start of file smtp_server.log 07:35:53.622196 ====> Client connect 07:35:53.622373 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.622683 < "EHLO verifiedserver" 07:35:53.622725 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.622891 < "HELP" 07:35:53.622922 > "214 WE ROOLZ: 120696[CR][LF]" 07:35:53.622938 return proof we are we 07:35:53.623128 < "QUIT" 07:35:53.623153 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.623348 MAIN sockfilt said DISC 07:35:53.623390 ====> Client disconnected 07:35:53.623452 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.468070 ====> Client connect 07:35:53.468374 Received DATA (on stdin) 07:35:53.468397 > 160 bytes data, server => client 07:35:53.468410 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.468421 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.468432 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.468512 < 21 bytes data, client => server 07:35:53.468526 'EHLO verifiedserver\r\n' 07:35:53.468713 Received DATA (on stdin) 07:35:53.468726 > 53 bytes data, server => client 07:35:53.468738 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.468789 < 6 bytes data, client => server 07:35:53.468801 'HELP\r\n' 07:35:53.468922 Received DATA (on stdin) 07:35:53.468934 > 22 bytes data, server => client 07:35:53.468946 '214 WE ROOLZ: 120696\r\n' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind921 ../src/curl -q --output log/19/curl921.out --include --trace-ascii log/19/trace921 --trace-config all --trace-time smtp://127.0.0.1:38443/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - log/19/stdout921 2> log/19/stderr921 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind916 ../src/curl -q --output log/1/curl916.out --include --trace-ascii log/1/trace916 --trace-config all --trace-time smtp://127.0.0.1:45099/916 --mail-rcpt invalid --mail-from sender@example.com -T - log/1/stdout916 2> log/1/stderr916 07:35:53.469030 < 6 bytes data, client => server 07:35:53.469044 'QUIT\r\n' 07:35:53.469136 Received DATA (on stdin) 07:35:53.469147 > 35 bytes data, server => client 07:35:53.469158 '221 curl ESMTP server signing off\r\n' 07:35:53.469262 ====> Client disconnect 07:35:53.469440 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-936 mail body === End of file stdin-for-936 === Start of file valgrind936 ==122571== ==122571== Process terminating with default action of signal 4 (SIGILL) ==122571== Illegal opcode at address 0x4003082 ==122571== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122571== by 0x4003082: main (tool_main.c:234) === End of file valgrind936 test 0940...[SMTP with username and password but no AUTH capability] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind940 ../src/curl -q --output log/16/curl940.out --include --trace-ascii log/16/trace940 --trace-config all --trace-time smtp://127.0.0.1:43379/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/16/stdout940 2> log/16/stderr940 940: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 940 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind940 ../src/curl -q --output log/16/curl940.out --include --trace-ascii log/16/trace940 --trace-config all --trace-time smtp://127.0.0.1:43379/940 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/16/stdout940 2> log/16/stderr940 === End of file commands.log === Start of file server.cmd Testnum 940 === End of file server.cmd === Start of file smtp_server.log 07:35:53.628178 ====> Client connect 07:35:53.628356 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.628672 < "EHLO verifiedserver" 07:35:53.628717 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.628886 < "HELP" 07:35:53.628915 > "214 WE ROOLZ: 120701[CR][LF]" 07:35:53.628930 return proof we are we 07:35:53.629146 < "QUIT" 07:35:53.629176 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.629569 MAIN sockfilt said DISC 07:35:53.629595 ====> Client disconnected 07:35:53.629652 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.474038 ====> Client connect 07:35:53.474355 Received DATA (on stdin) 07:35:53.474374 > 160 bytes data, server => client 07:35:53.474387 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.474398 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.474408 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.474481 < 21 bytes data, client => server 07:35:53.474495 'EHLO verifiedserver\r\n' 07:35:53.474707 Received DATA (on stdin) 07:35:53.474720 > 53 bytes data, server => client 07:35:53.474731 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.474784 < 6 bytes data, client => server 07:35:53.474796 'HELP\r\n' 07:35:53.474914 Received DATA (on stdin) 07:35:53.474926 > 22 bytes data, server => client 07:35:53.474936 '214 WE ROOLZ: 120701\r\n' 07:35:53.475022 < 6 bytes data, client => server 07:35:53.475036 'QUIT\r\n' 07:35:53.475163 Received DATA (on stdin) 07:35:53.475175 > 35 bytes data, server => client 07:35:53.475186 '221 curl ESMTP server signing off\r\n' 07:35:53.475498 ====> Client disconnect 07:35:53.475636 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-940 mail body === End of file stdin-for-940 === Start of file valgrind940 ==122590== ==122590== Process terminating with default action of signal 4 (SIGILL) ==122590== Illegal opcode at address 0x4003082 ==122590== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122590== by 0x4003082: main (tool_main.c:234) === End of file valgrind940 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/19/server/smtp_server.pid" --logfile "log/19/smtp_server.log" --logdir "log/19" --portfile "log/19/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 38443 (log/19/server/smtp_server.port) RUN: SMTP server is PID 121045 port 38443 * pid smtp => 121045 121045 test 0921...[SMTP NTLM authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind921 ../src/curl -q --output log/19/curl921.out --include --trace-ascii log/19/trace921 --trace-config all --trace-time smtp://127.0.0.1:38443/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - log/19/stdout921 2> log/19/stderr921 921: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 921 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind921 ../src/curl -q --output log/19/curl921.out --include --trace-ascii log/19/trace921 --trace-config all --trace-time smtp://127.0.0.1:38443/921 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - log/19/stdout921 2> log/19/stderr921 === End of file commands.log === Start of file server.cmd AUTH NTLM REPLY AUTH 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= 235 Authenticated Testnum 921 === End of file server.cmd === Start of file smtp_server.log 07:35:52.637954 SMTP server listens on port IPv4/38443 07:35:52.638018 logged pid 121045 in log/19/server/smtp_server.pid 07:35:52.638048 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.483649 Running IPv4 version 07:35:52.483692 Listening on port 38443 07:35:52.483719 Wrote pid 121052 to log/19/server/smtp_sockfilt.pid 07:35:52.483740 Wrote port 38443 to log/19/server/smtp_server.port 07:35:52.483869 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-921 mail body === End of file stdin-for-921 === Start of file valgrind921 ==122454== ==122454== Process terminating with default action of signal 4 (SIGILL) ==122454== Illegal opcode at address 0x4003082 ==122454== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122454== by 0x4003082: main (tool_main.c:234) === End of file valgrind921 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/1/server/smtp_server.pid" --logfile "log/1/smtp_server.log" --logdir "log/1" --portfile "log/1/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 45099 (log/1/server/smtp_server.port) RUN: SMTP server is PID 121032 port 45099 * pid smtp => 121032 121032 test 0916...[SMTP with invalid --mail-rcpt] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet -CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind918 ../src/curl -q --output log/4/curl918.out --include --trace-ascii log/4/trace918 --trace-config all --trace-time smtp://127.0.0.1:41607/918 --mail-rcpt recipient.one@example.com --mail-rcpt invalid --mail-rcpt recipient.three@example.com --mail-rcpt sTrAnGe --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/4/stdout918 2> log/4/stderr918 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind917 ../src/curl -q --output log/6/curl917.out --include --trace-ascii log/6/trace917 --trace-config all --trace-time smtp://127.0.0.1:39801/917 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/6/stdout917 2> log/6/stderr917 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind932 ../src/curl -q --output log/13/curl932.out --include --trace-ascii log/13/trace932 --trace-config all --trace-time smtp://127.0.0.1:38115/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - > log/13/stdout932 2> log/13/stderr932 -leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind916 ../src/curl -q --output log/1/curl916.out --include --trace-ascii log/1/trace916 --trace-config all --trace-time smtp://127.0.0.1:45099/916 --mail-rcpt invalid --mail-from sender@example.com -T - log/1/stdout916 2> log/1/stderr916 916: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 916 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind916 ../src/curl -q --output log/1/curl916.out --include --trace-ascii log/1/trace916 --trace-config all --trace-time smtp://127.0.0.1:45099/916 --mail-rcpt invalid --mail-from sender@example.com -T - log/1/stdout916 2> log/1/stderr916 === End of file commands.log === Start of file server.cmd Testnum 916 === End of file server.cmd === Start of file smtp_server.log 07:35:52.592673 SMTP server listens on port IPv4/45099 07:35:52.592732 logged pid 121032 in log/1/server/smtp_server.pid 07:35:52.592749 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.438471 Running IPv4 version 07:35:52.438521 Listening on port 45099 07:35:52.438550 Wrote pid 121041 to log/1/server/smtp_sockfilt.pid 07:35:52.438572 Wrote port 45099 to log/1/server/smtp_server.port 07:35:52.438587 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-916 From: different To: another body === End of file stdin-for-916 === Start of file valgrind916 ==122180== ==122180== Process terminating with default action of signal 4 (SIGILL) ==122180== Illegal opcode at address 0x4003082 ==122180== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122180== by 0x4003082: main (tool_main.c:234) === End of file valgrind916 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/4/server/smtp_server.pid" --logfile "log/4/smtp_server.log" --logdir "log/4" --portfile "log/4/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41607 (log/4/server/smtp_server.port) RUN: SMTP server is PID 121040 port 41607 * pid smtp => 121040 121040 test 0918...[SMTP with multiple and invalid --mail-rcpt] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind918 ../src/curl -q --output log/4/curl918.out --include --trace-ascii log/4/trace918 --trace-config all --trace-time smtp://127.0.0.1:41607/918 --mail-rcpt recipient.one@example.com --mail-rcpt invalid --mail-rcpt recipient.three@example.com --mail-rcpt sTrAnGe --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/4/stdout918 2> log/4/stderr918 918: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 918 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind918 ../src/curl -q --output log/4/curl918.out --include --trace-ascii log/4/trace918 --trace-config all --trace-time smtp://127.0.0.1:41607/918 --mail-rcpt recipient.one@example.com --mail-rcpt invalid --mail-rcpt recipient.three@example.com --mail-rcpt sTrAnGe --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/4/stdout918 2> log/4/stderr918 === End of file commands.log === Start of file server.cmd Testnum 918 === End of file server.cmd === Start of file smtp_server.log 07:35:52.617623 SMTP server listens on port IPv4/41607 07:35:52.617684 logged pid 121040 in log/4/server/smtp_server.pid 07:35:52.617701 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.463356 Running IPv4 version 07:35:52.463400 Listening on port 41607 07:35:52.463436 Wrote pid 121048 to log/4/server/smtp_sockfilt.pid 07:35:52.463460 Wrote port 41607 to log/4/server/smtp_server.port 07:35:52.463546 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-918 From: different To: another body === End of file stdin-for-918 === Start of file valgrind918 ==122266== ==122266== Process terminating with default action of signal 4 (SIGILL) ==122266== Illegal opcode at address 0x4003082 ==122266== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122266== by 0x4003082: main (tool_main.c:234) === End of file valgrind918 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/6/server/smtp_server.pid" --logfile "log/6/smtp_server.log" --logdir "log/6" --portfile "log/6/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 39801 (log/6/server/smtp_server.port) RUN: SMTP server is PID 121039 port 39801 * pid smtp => 121039 121039 test 0917...[SMTP with multiple --mail-rcpt] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind917 ../src/curl -q --output log/6/curl917.out --include --trace-ascii log/6/trace917 --trace-config all --trace-time smtp://127.0.0.1:39801/917 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/6/stdout917 2> log/6/stderr917 917: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 917 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind917 ../src/curl -q --output log/6/curl917.out --include --trace-ascii log/6/trace917 --trace-config all --trace-time smtp://127.0.0.1:39801/917 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/6/stdout917 2> log/6/stderr917 === End of file commands.log === Start of file server.cmd Testnum 917 === End of file server.cmd === Start of file smtp_server.log 07:35:52.614659 SMTP server listens on port IPv4/39801 07:35:52.614717 logged pid 121039 in log/6/server/smtp_server.pid 07:35:52.614734 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.460444 Running IPv4 version 07:35:52.460497 Listening on port 39801 07:35:52.460527 Wrote pid 121047 to log/6/server/smtp_sockfilt.pid 07:35:52.460549 Wrote port 39801 to log/6/server/smtp_server.port 07:35:52.460577 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-917 From: different To: another body === End of file stdin-for-917 === Start of file valgrind917 ==122259== ==122259== Process terminating with default action of signal 4 (SIGILL) ==122259== Illegal opcode at address 0x4003082 ==122259== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122259== by 0x4003082: main (tool_main.c:234) === End of file valgrind917 test 0932...[SMTP CRAM-MD5 graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/testCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind933 ../src/curl -q --output log/3/curl933.out --include --trace-ascii log/3/trace933 --trace-config all --trace-time smtp://127.0.0.1:38981/933 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - > log/3/stdout933 2> log/3/stderr933 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind919 ../src/curl -q --output log/15/curl919.out --include --trace-ascii log/15/trace919 --trace-config all --trace-time smtp://127.0.0.1:34285/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/15/stdout919 2> log/15/stderr919 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind922 ../src/curl -q --output log/20/curl922.out --include --trace-ascii log/20/trace922 --trace-config all --trace-time smtp://127.0.0.1:45155/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/20/stdout922 2> log/20/stderr922 s/valgrind.supp --num-callers=16 --log-file=log/13/valgrind932 ../src/curl -q --output log/13/curl932.out --include --trace-ascii log/13/trace932 --trace-config all --trace-time smtp://127.0.0.1:38115/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - > log/13/stdout932 2> log/13/stderr932 932: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 932 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind932 ../src/curl -q --output log/13/curl932.out --include --trace-ascii log/13/trace932 --trace-config all --trace-time smtp://127.0.0.1:38115/932 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - > log/13/stdout932 2> log/13/stderr932 === End of file commands.log === Start of file server.cmd AUTH CRAM-MD5 REPLY AUTH 334 Rubbish REPLY * 501 AUTH exchange cancelled by client Testnum 932 === End of file server.cmd === Start of file smtp_server.log 07:35:53.584936 ====> Client connect 07:35:53.585052 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.585321 < "EHLO verifiedserver" 07:35:53.585365 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.585685 < "HELP" 07:35:53.585733 > "214 WE ROOLZ: 108218[CR][LF]" 07:35:53.585748 return proof we are we 07:35:53.585968 < "QUIT" 07:35:53.585993 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.586151 MAIN sockfilt said DISC 07:35:53.586186 ====> Client disconnected 07:35:53.586251 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.430747 ====> Client connect 07:35:53.431043 Received DATA (on stdin) 07:35:53.431055 > 160 bytes data, server => client 07:35:53.431064 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.431072 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.431079 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.431166 < 21 bytes data, client => server 07:35:53.431193 'EHLO verifiedserver\r\n' 07:35:53.431351 Received DATA (on stdin) 07:35:53.431361 > 53 bytes data, server => client 07:35:53.431370 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.431559 < 6 bytes data, client => server 07:35:53.431579 'HELP\r\n' 07:35:53.431734 Received DATA (on stdin) 07:35:53.431749 > 22 bytes data, server => client 07:35:53.431759 '214 WE ROOLZ: 108218\r\n' 07:35:53.431883 < 6 bytes data, client => server 07:35:53.431895 'QUIT\r\n' 07:35:53.431960 Received DATA (on stdin) 07:35:53.431970 > 35 bytes data, server => client 07:35:53.431980 '221 curl ESMTP server signing off\r\n' 07:35:53.432064 ====> Client disconnect 07:35:53.432241 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind932 ==122263== ==122263== Process terminating with default action of signal 4 (SIGILL) ==122263== Illegal opcode at address 0x4003082 ==122263== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122263== by 0x4003082: main (tool_main.c:234) === End of file valgrind932 test 0933...[SMTP NTLM graceful cancellation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind933 ../src/curl -q --output log/3/curl933.out --include --trace-ascii log/3/trace933 --trace-config all --trace-time smtp://127.0.0.1:38981/933 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - > log/3/stdout933 2> log/3/stderr933 933: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 933 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind933 ../src/curl -q --output log/3/curl933.out --include --trace-ascii log/3/trace933 --trace-config all --trace-time smtp://127.0.0.1:38981/933 --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - > log/3/stdout933 2> log/3/stderr933 === End of file commands.log === Start of file server.cmd AUTH NTLM REPLY AUTH 334 NTLM supported REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 Rubbish REPLY * 501 AUTH exchange cancelled by client Testnum 933 === End of file server.cmd === Start of file smtp_server.log 07:35:53.600871 ====> Client connect 07:35:53.600999 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.601711 < "EHLO verifiedserver" 07:35:53.601752 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.601908 < "HELP" 07:35:53.601934 > "214 WE ROOLZ: 108217[CR][LF]" 07:35:53.601947 return proof we are we 07:35:53.602140 < "QUIT" 07:35:53.602164 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.602689 MAIN sockfilt said DISC 07:35:53.602717 ====> Client disconnected 07:35:53.603036 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.446728 ====> Client connect 07:35:53.446974 Received DATA (on stdin) 07:35:53.446991 > 160 bytes data, server => client 07:35:53.447004 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.447015 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.447025 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.447574 < 21 bytes data, client => server 07:35:53.447593 'EHLO verifiedserver\r\n' 07:35:53.447739 Received DATA (on stdin) 07:35:53.447752 > 53 bytes data, server => client 07:35:53.447763 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.447817 < 6 bytes data, client => server 07:35:53.447827 'HELP\r\n' 07:35:53.447929 Received DATA (on stdin) 07:35:53.447940 > 22 bytes data, server => client 07:35:53.447950 '214 WE ROOLZ: 108217\r\n' 07:35:53.448029 < 6 bytes data, client => server 07:35:53.448040 'QUIT\r\n' 07:35:53.448138 Received DATA (on stdin) 07:35:53.448164 > 35 bytes data, server => client 07:35:53.448176 '221 curl ESMTP server signing off\r\n' 07:35:53.448611 ====> Client disconnect 07:35:53.448719 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind933 ==122392== ==122392== Process terminating with default action of signal 4 (SIGILL) ==122392== Illegal opcode at address 0x4003082 ==122392== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122392== by 0x4003082: main (tool_main.c:234) === End of file valgrind933 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/15/server/smtp_server.pid" --logfile "log/15/smtp_server.log" --logdir "log/15" --portfile "log/15/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34285 (log/15/server/smtp_server.port) RUN: SMTP server is PID 121042 port 34285 * pid smtp => 121042 121042 test 0919...[SMTP plain authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind919 ../src/curl -q --output log/15/curl919.out --include --trace-ascii log/15/trace919 --trace-config all --trace-time smtp://127.0.0.1:34285/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/15/stdout919 2> log/15/stCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind920 ../src/curl -q --output log/7/curl920.out --include --trace-ascii log/7/trace920 --trace-config all --trace-time smtp://127.0.0.1:41121/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/7/stdout920 2> log/7/stderr920 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind935 ../src/curl -q --output log/11/curl935.out --include --trace-ascii log/11/trace935 --trace-config all --trace-time smtp://127.0.0.1:44025/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/11/stdout935 2> log/11/stderr935 derr919 919: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 919 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind919 ../src/curl -q --output log/15/curl919.out --include --trace-ascii log/15/trace919 --trace-config all --trace-time smtp://127.0.0.1:34285/919 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/15/stdout919 2> log/15/stderr919 === End of file commands.log === Start of file server.cmd AUTH PLAIN REPLY AUTH 235 Authenticated Testnum 919 === End of file server.cmd === Start of file smtp_server.log 07:35:52.630256 SMTP server listens on port IPv4/34285 07:35:52.630343 logged pid 121042 in log/15/server/smtp_server.pid 07:35:52.630361 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.475998 Running IPv4 version 07:35:52.476051 Listening on port 34285 07:35:52.476122 Wrote pid 121050 to log/15/server/smtp_sockfilt.pid 07:35:52.476145 Wrote port 34285 to log/15/server/smtp_server.port 07:35:52.476159 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-919 mail body === End of file stdin-for-919 === Start of file valgrind919 ==122366== ==122366== Process terminating with default action of signal 4 (SIGILL) ==122366== Illegal opcode at address 0x4003082 ==122366== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122366== by 0x4003082: main (tool_main.c:234) === End of file valgrind919 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/20/server/smtp_server.pid" --logfile "log/20/smtp_server.log" --logdir "log/20" --portfile "log/20/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 45155 (log/20/server/smtp_server.port) RUN: SMTP server is PID 121046 port 45155 * pid smtp => 121046 121046 test 0922...[SMTP OAuth 2.0 (XOAUTH2) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind922 ../src/curl -q --output log/20/curl922.out --include --trace-ascii log/20/trace922 --trace-config all --trace-time smtp://127.0.0.1:45155/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/20/stdout922 2> log/20/stderr922 922: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 922 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind922 ../src/curl -q --output log/20/curl922.out --include --trace-ascii log/20/trace922 --trace-config all --trace-time smtp://127.0.0.1:45155/922 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/20/stdout922 2> log/20/stderr922 === End of file commands.log === Start of file server.cmd AUTH XOAUTH2 REPLY AUTH 235 Authenticated Testnum 922 === End of file server.cmd === Start of file smtp_server.log 07:35:52.639476 SMTP server listens on port IPv4/45155 07:35:52.639544 logged pid 121046 in log/20/server/smtp_server.pid 07:35:52.639561 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.485246 Running IPv4 version 07:35:52.485295 Listening on port 45155 07:35:52.485324 Wrote pid 121053 to log/20/server/smtp_sockfilt.pid 07:35:52.485345 Wrote port 45155 to log/20/server/smtp_server.port 07:35:52.485359 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-922 mail body === End of file stdin-for-922 === Start of file valgrind922 ==122457== ==122457== Process terminating with default action of signal 4 (SIGILL) ==122457== Illegal opcode at address 0x4003082 ==122457== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122457== by 0x4003082: main (tool_main.c:234) === End of file valgrind922 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/7/server/smtp_server.pid" --logfile "log/7/smtp_server.log" --logdir "log/7" --portfile "log/7/server/smtp_server.port" --srcdir "/startdir/src/curl/tests" --proto smtp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 41121 (log/7/server/smtp_server.port) RUN: SMTP server is PID 121044 port 41121 * pid smtp => 121044 121044 test 0920...[SMTP login authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind920 ../src/curl -q --output log/7/curl920.out --include --trace-ascii log/7/trace920 --trace-config all --trace-time smtp://127.0.0.1:41121/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/7/stdout920 2> log/7/stderr920 920: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 920 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind920 ../src/curl -q --output log/7/curl920.out --include --trace-ascii log/7/trace920 --trace-config all --trace-time smtp://127.0.0.1:41121/920 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - log/7/stdout920 2> log/7/stderr920 === End of file commands.log === Start of file server.cmd AUTH LOGIN REPLY AUTH 334 UGFzc3dvcmQ6 REPLY c2VjcmV0 235 Authenticated Testnum 920 === End of file server.cmd === Start of file smtp_server.log 07:35:52.637217 SMTP server listens on port IPv4/41121 07:35:52.637286 logged pid 121044 in log/7/server/smtp_server.pid 07:35:52.637304 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:52.483022 Running IPv4 version 07:35:52.483070 Listening on port 41121 07:35:52.483095 Wrote pid 121051 to log/7/server/smtp_sockfilt.pid 07:35:52.483116 Wrote port 41121 to log/7/server/smtp_server.port 07:35:52.483128 Received PING (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-920 mail body === End of file stdin-for-920 === Start of file valgrind920 ==122446== ==122446== Process terminating with default action of signal 4 (SIGILL) ==122446== Illegal opcode at address 0x4003082 ==122446== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122446== by 0x4003082: main (tool_main.c:234) === End of file valgrind920 test 0935...[SMTP CRAM-MD5 authentication with SASL downgrade] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind935 ../src/curl -q --output log/11/curl935.out --include --trace-ascii log/11/trace935 --trace-config all --trace-time smtp://127.0.0.1:44025/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/11/stdout935 2> log/11/stderr935 935: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 935 === Start of file commands.loCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind941 ../src/curl -q --output log/17/curl941.out --include --trace-ascii log/17/trace941 --trace-config all --trace-time smtp://127.0.0.1:38413/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/17/upload941 --crlf > log/17/stdout941 2> log/17/stderr941 g ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind935 ../src/curl -q --output log/11/curl935.out --include --trace-ascii log/11/trace935 --trace-config all --trace-time smtp://127.0.0.1:44025/935 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - log/11/stdout935 2> log/11/stderr935 === End of file commands.log === Start of file server.cmd AUTH CRAM-MD5 PLAIN REPLY "AUTH CRAM-MD5" 334 Rubbish REPLY * 501 AUTH exchange cancelled by client REPLY "AUTH PLAIN" 334 PLAIN supported REPLY AHVzZXIAc2VjcmV0 235 Authenticated Testnum 935 === End of file server.cmd === Start of file smtp_server.log 07:35:53.612721 ====> Client connect 07:35:53.612878 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.613162 < "EHLO verifiedserver" 07:35:53.613201 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.613363 < "HELP" 07:35:53.613391 > "214 WE ROOLZ: 120674[CR][LF]" 07:35:53.613406 return proof we are we 07:35:53.613580 < "QUIT" 07:35:53.613606 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.615038 MAIN sockfilt said DISC 07:35:53.615092 ====> Client disconnected 07:35:53.615163 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.458605 ====> Client connect 07:35:53.458877 Received DATA (on stdin) 07:35:53.458892 > 160 bytes data, server => client 07:35:53.458905 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.458919 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.458929 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.458995 < 21 bytes data, client => server 07:35:53.459006 'EHLO verifiedserver\r\n' 07:35:53.459187 Received DATA (on stdin) 07:35:53.459199 > 53 bytes data, server => client 07:35:53.459210 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.459258 < 6 bytes data, client => server 07:35:53.459268 'HELP\r\n' 07:35:53.459388 Received DATA (on stdin) 07:35:53.459399 > 22 bytes data, server => client 07:35:53.459409 '214 WE ROOLZ: 120674\r\n' 07:35:53.459488 < 6 bytes data, client => server 07:35:53.459500 'QUIT\r\n' 07:35:53.459607 Received DATA (on stdin) 07:35:53.459618 > 35 bytes data, server => client 07:35:53.459628 '221 curl ESMTP server signing off\r\n' 07:35:53.460821 ====> Client disconnect 07:35:53.461156 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-935 mail body === End of file stdin-for-935 === Start of file valgrind935 ==122925== ==122925== Process terminating with default action of signal 4 (SIGILL) ==122925== Illegal opcode at address 0x4003082 ==122925== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==122925== by 0x4003082: main (tool_main.c:234) === End of file valgrind935 test 0941...[SMTP with --crlf] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind941 ../src/curl -q --output log/17/curl941.out --include --trace-ascii log/17/trace941 --trace-config all --trace-time smtp://127.0.0.1:38413/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/17/upload941 --crlf > log/17/stdout941 2> log/17/stderr941 941: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 941 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind941 ../src/curl -q --output log/17/curl941.out --include --trace-ascii log/17/trace941 --trace-config all --trace-time smtp://127.0.0.1:38413/941 --mail-rcpt recipient@example.com --mail-from sender@example.com -T log/17/upload941 --crlf > log/17/stdout941 2> log/17/stderr941 === End of file commands.log === Start of file server.cmd Testnum 941 === End of file server.cmd === Start of file smtp_server.log 07:35:53.773425 ====> Client connect 07:35:53.773600 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.773896 < "EHLO verifiedserver" 07:35:53.773935 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.774094 < "HELP" 07:35:53.774124 > "214 WE ROOLZ: 120885[CR][LF]" 07:35:53.774139 return proof we are we 07:35:53.774344 < "QUIT" 07:35:53.774372 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.775067 MAIN sockfilt said DISC 07:35:53.775094 ====> Client disconnected 07:35:53.775144 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.618864 ====> Client connect 07:35:53.619598 Received DATA (on stdin) 07:35:53.619614 > 160 bytes data, server => client 07:35:53.619627 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.619638 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.619648 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.619727 < 21 bytes data, client => server 07:35:53.619740 'EHLO verifiedserver\r\n' 07:35:53.619923 Received DATA (on stdin) 07:35:53.619935 > 53 bytes data, server => client 07:35:53.619947 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.619997 < 6 bytes data, client => server 07:35:53.620008 'HELP\r\n' 07:35:53.620122 Received DATA (on stdin) 07:35:53.620133 > 22 bytes data, server => client 07:35:53.620144 '214 WE ROOLZ: 120885\r\n' 07:35:53.620244 < 6 bytes data, client => server 07:35:53.620258 'QUIT\r\n' 07:35:53.620356 Received DATA (on stdin) 07:35:53.620368 > 35 bytes data, server => client 07:35:53.620378 '221 curl ESMTP server signing off\r\n' 07:35:53.620998 ====> Client disconnect 07:35:53.621130 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file upload941 From: different To: another email headers and body with Unix newlines meant to be converted with the --crlf option 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind942 ../src/curl -q --output log/18/curl942.out --include --trace-ascii log/18/trace942 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:37785/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/18/stdout942 2> log/18/stderr942 678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 === End of file upload941 === Start of file valgrind941 ==123052== ==123052== Process terminating with default action of signal 4 (SIGILL) ==123052== Illegal opcode at address 0x4003082 ==123052== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123052== by 0x4003082: main (tool_main.c:234) === End of file valgrind941 test 0942...[SMTP external authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind942 ../src/curl -q --output log/18/curl942.out --include --trace-ascii log/18/trace942 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:37785/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/18/stdout942 2> log/18/stderr942 942: protocol FAILED! TherCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind943 ../src/curl -q --output log/23/curl943.out --include --trace-ascii log/23/trace943 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:38373/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/23/stdout943 2> log/23/stderr943 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test971.pl /startdir/src/curl/tests/../docs/options-in-versions /startdir/src/curl/tests/../docs/cmdline-opts /startdir/src/curl/tests/../docs/VERSIONS.md > log/23/stdout971 2> log/23/stderr971 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind945 ../src/curl -q --output log/22/curl945.out --include --trace-ascii log/22/trace945 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:40991/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/22/stdout945 2> log/22/stderr945 e was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 942 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind942 ../src/curl -q --output log/18/curl942.out --include --trace-ascii log/18/trace942 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:37785/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/18/stdout942 2> log/18/stderr942 === End of file commands.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 334 EXTERNAL supported REPLY dXNlcg== 235 Authenticated Testnum 942 === End of file server.cmd === Start of file smtp_server.log 07:35:53.777496 ====> Client connect 07:35:53.777648 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.777921 < "EHLO verifiedserver" 07:35:53.777962 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.778127 < "HELP" 07:35:53.778157 > "214 WE ROOLZ: 120879[CR][LF]" 07:35:53.778172 return proof we are we 07:35:53.778358 < "QUIT" 07:35:53.778385 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.778972 MAIN sockfilt said DISC 07:35:53.778998 ====> Client disconnected 07:35:53.779056 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.623385 ====> Client connect 07:35:53.623647 Received DATA (on stdin) 07:35:53.623663 > 160 bytes data, server => client 07:35:53.623675 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.623686 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.623696 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.623760 < 21 bytes data, client => server 07:35:53.623774 'EHLO verifiedserver\r\n' 07:35:53.623951 Received DATA (on stdin) 07:35:53.623964 > 53 bytes data, server => client 07:35:53.623976 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.624026 < 6 bytes data, client => server 07:35:53.624038 'HELP\r\n' 07:35:53.624156 Received DATA (on stdin) 07:35:53.624168 > 22 bytes data, server => client 07:35:53.624179 '214 WE ROOLZ: 120879\r\n' 07:35:53.624256 < 6 bytes data, client => server 07:35:53.624272 'QUIT\r\n' 07:35:53.624370 Received DATA (on stdin) 07:35:53.624382 > 35 bytes data, server => client 07:35:53.624393 '221 curl ESMTP server signing off\r\n' 07:35:53.624900 ====> Client disconnect 07:35:53.625049 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-942 mail body === End of file stdin-for-942 === Start of file valgrind942 ==123049== ==123049== Process terminating with default action of signal 4 (SIGILL) ==123049== Illegal opcode at address 0x4003082 ==123049== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123049== by 0x4003082: main (tool_main.c:234) === End of file valgrind942 test 0943...[SMTP external authentication without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind943 ../src/curl -q --output log/23/curl943.out --include --trace-ascii log/23/trace943 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:38373/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/23/stdout943 2> log/23/stderr943 943: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 943 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind943 ../src/curl -q --output log/23/curl943.out --include --trace-ascii log/23/trace943 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:38373/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/23/stdout943 2> log/23/stderr943 === End of file commands.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 334 EXTERNAL supported REPLY = 235 Authenticated Testnum 943 === End of file server.cmd === Start of file smtp_server.log 07:35:53.852803 ====> Client connect 07:35:53.852998 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.853284 < "EHLO verifiedserver" 07:35:53.853325 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.853494 < "HELP" 07:35:53.853522 > "214 WE ROOLZ: 120889[CR][LF]" 07:35:53.853536 return proof we are we 07:35:53.853711 < "QUIT" 07:35:53.853740 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.855198 MAIN sockfilt said DISC 07:35:53.855246 ====> Client disconnected 07:35:53.855311 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.698633 ====> Client connect 07:35:53.698997 Received DATA (on stdin) 07:35:53.699012 > 160 bytes data, server => client 07:35:53.699024 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.699035 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.699045 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.699119 < 21 bytes data, client => server 07:35:53.699131 'EHLO verifiedserver\r\n' 07:35:53.699323 Received DATA (on stdin) 07:35:53.699335 > 53 bytes data, server => client 07:35:53.699346 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.699396 < 6 bytes data, client => server 07:35:53.699408 'HELP\r\n' 07:35:53.699519 Received DATA (on stdin) 07:35:53.699530 > 22 bytes data, server => client 07:35:53.699540 '214 WE ROOLZ: 120889\r\n' 07:35:53.699617 < 6 bytes data, client => server 07:35:53.699629 'QUIT\r\n' 07:35:53.699724 Received DATA (on stdin) 07:35:53.699735 > 35 bytes data, server => client 07:35:53.699746 '221 curl ESMTP server signing off\r\n' 07:35:53.700802 ====> Client disconnect 07:35:53.701303 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-943 mail body === End of file stdin-for-943 === Start of file valgrind943 ==123204== ==123204== Process terminating with default action of signal 4 (SIGILL) ==123204== Illegal opcode at address 0x4003082 ==123204== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123204== by 0x4003082: main (tool_main.c:234) === End of file valgrind943 * starts no server test 0971...[Verify that options-in-versions and docs/cmdline-opts are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test971.pl /startdir/src/curl/tests/../docs/options-in-versions /startdir/src/curl/tests/../docs/cmdline-opts /startdir/src/curl/tests/../docs/VERSIONS.md > log/23/stdout971 2> log/23/stderr971 valgrind SKIPPED -r-----e--- OK (890 out of 1707, remaining: 01:00, took 0.018s, duration: 01:05) test 0945...[SMTP external authentication with initial response without credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind945 ../src/curl -q --output log/22/curl945.out --include --trace-ascii log/22/trace945 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:40991/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/22/stdout945 2> log/22/stderr945 945: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents ofCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind944 ../src/curl -q --output log/5/curl944.out --include --trace-ascii log/5/trace944 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:43997/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/5/stdout944 2> log/5/stderr944 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind956 ../src/curl -q --output log/1/curl956.out --include --trace-ascii log/1/trace956 --trace-config all --trace-time smtp://127.0.0.1:45099/956 --mail-rcpt Stödmottagaren@example.com --mail-from sender@example.com -T - log/1/stdout956 2> log/1/stderr956 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind953 ../src/curl -q --output log/2/curl953.out --include --trace-ascii log/2/trace953 --trace-config all --trace-time smtp://127.0.0.1:34307/953 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/2/stdout953 2> log/2/stderr953 files in the log/22/ dir after test 945 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind945 ../src/curl -q --output log/22/curl945.out --include --trace-ascii log/22/trace945 --trace-config all --trace-time 'smtp://;AUTH=EXTERNAL@127.0.0.1:40991/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/22/stdout945 2> log/22/stderr945 === End of file commands.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 235 Authenticated Testnum 945 === End of file server.cmd === Start of file smtp_server.log 07:35:53.858100 ====> Client connect 07:35:53.858238 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.858498 < "EHLO verifiedserver" 07:35:53.858537 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.858695 < "HELP" 07:35:53.858722 > "214 WE ROOLZ: 108298[CR][LF]" 07:35:53.858735 return proof we are we 07:35:53.858913 < "QUIT" 07:35:53.858937 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.860120 MAIN sockfilt said DISC 07:35:53.860151 ====> Client disconnected 07:35:53.860217 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.703974 ====> Client connect 07:35:53.704233 Received DATA (on stdin) 07:35:53.704248 > 160 bytes data, server => client 07:35:53.704261 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.704272 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.704283 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.704346 < 21 bytes data, client => server 07:35:53.704360 'EHLO verifiedserver\r\n' 07:35:53.704523 Received DATA (on stdin) 07:35:53.704536 > 53 bytes data, server => client 07:35:53.704548 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.704598 < 6 bytes data, client => server 07:35:53.704609 'HELP\r\n' 07:35:53.704718 Received DATA (on stdin) 07:35:53.704729 > 22 bytes data, server => client 07:35:53.704740 '214 WE ROOLZ: 108298\r\n' 07:35:53.704817 < 6 bytes data, client => server 07:35:53.704830 'QUIT\r\n' 07:35:53.704921 Received DATA (on stdin) 07:35:53.704933 > 35 bytes data, server => client 07:35:53.704944 '221 curl ESMTP server signing off\r\n' 07:35:53.705797 ====> Client disconnect 07:35:53.706201 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-945 mail body === End of file stdin-for-945 === Start of file valgrind945 ==123205== ==123205== Process terminating with default action of signal 4 (SIGILL) ==123205== Illegal opcode at address 0x4003082 ==123205== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123205== by 0x4003082: main (tool_main.c:234) === End of file valgrind945 test 0944...[SMTP external authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind944 ../src/curl -q --output log/5/curl944.out --include --trace-ascii log/5/trace944 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:43997/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/5/stdout944 2> log/5/stderr944 944: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 944 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind944 ../src/curl -q --output log/5/curl944.out --include --trace-ascii log/5/trace944 --trace-config all --trace-time 'smtp://user;AUTH=EXTERNAL@127.0.0.1:43997/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - log/5/stdout944 2> log/5/stderr944 === End of file commands.log === Start of file server.cmd AUTH EXTERNAL REPLY AUTH 235 Authenticated Testnum 944 === End of file server.cmd === Start of file smtp_server.log 07:35:53.849339 ====> Client connect 07:35:53.849495 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:53.849745 < "EHLO verifiedserver" 07:35:53.849779 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:53.849920 < "HELP" 07:35:53.849945 > "214 WE ROOLZ: 108210[CR][LF]" 07:35:53.849957 return proof we are we 07:35:53.850156 < "QUIT" 07:35:53.850180 > "221 curl ESMTP server signing off[CR][LF]" 07:35:53.851483 MAIN sockfilt said DISC 07:35:53.851508 ====> Client disconnected 07:35:53.851560 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.695158 ====> Client connect 07:35:53.695489 Received DATA (on stdin) 07:35:53.695502 > 160 bytes data, server => client 07:35:53.695513 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.695523 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.695533 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.695600 < 21 bytes data, client => server 07:35:53.695611 'EHLO verifiedserver\r\n' 07:35:53.695764 Received DATA (on stdin) 07:35:53.695775 > 53 bytes data, server => client 07:35:53.695785 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.695831 < 6 bytes data, client => server 07:35:53.695840 'HELP\r\n' 07:35:53.695938 Received DATA (on stdin) 07:35:53.695948 > 22 bytes data, server => client 07:35:53.695966 '214 WE ROOLZ: 108210\r\n' 07:35:53.696064 < 6 bytes data, client => server 07:35:53.696077 'QUIT\r\n' 07:35:53.696162 Received DATA (on stdin) 07:35:53.696172 > 35 bytes data, server => client 07:35:53.696182 '221 curl ESMTP server signing off\r\n' 07:35:53.697423 ====> Client disconnect 07:35:53.697981 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-944 mail body === End of file stdin-for-944 === Start of file valgrind944 ==123280== ==123280== Process terminating with default action of signal 4 (SIGILL) ==123280== Illegal opcode at address 0x4003082 ==123280== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123280== by 0x4003082: main (tool_main.c:234) === End of file valgrind944 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0956...[SMTP without SMTPUTF8 support - UTF-8 based recipient (local part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind956 ../src/curl -q --output log/1/curl956.out --include --trace-ascii log/1/trace956 --trace-config all --trace-time smtp://127.0.0.1:45099/956 --mail-rcpt Stödmottagaren@example.com --mail-from sender@example.com -T - log/1/stdout956 2> log/1/stderr956 956: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 956 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind956 ../src/curl -q --output log/1/curl956.out --include --trace-ascii log/1/trace956 --trace-config all --trace-time smtp://127.0.0.1:45099/956 --mail-rcpt Stödmottagaren@example.com --mail-from sender@example.com -T - log/1/stdout956 2> log/1/stderr956 === End of file commands.log === Start of file server.cmd Testnum 95CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind954 ../src/curl -q --output log/16/curl954.out --include --trace-ascii log/16/trace954 --trace-config all --trace-time smtp://127.0.0.1:43379/954 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/16/stdout954 2> log/16/stderr954 6 === End of file server.cmd === Start of file smtp_server.log 07:35:54.199667 ====> Client connect 07:35:54.199843 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.200241 < "EHLO verifiedserver" 07:35:54.200305 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.200666 < "HELP" 07:35:54.200707 > "214 WE ROOLZ: 121032[CR][LF]" 07:35:54.200720 return proof we are we 07:35:54.201065 < "QUIT" 07:35:54.201098 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.201515 MAIN sockfilt said DISC 07:35:54.201544 ====> Client disconnected 07:35:54.201611 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.045417 ====> Client connect 07:35:54.045843 Received DATA (on stdin) 07:35:54.045857 > 160 bytes data, server => client 07:35:54.045869 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.045879 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.045889 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.046003 < 21 bytes data, client => server 07:35:54.046028 'EHLO verifiedserver\r\n' 07:35:54.046298 Received DATA (on stdin) 07:35:54.046312 > 53 bytes data, server => client 07:35:54.046323 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.046384 < 6 bytes data, client => server 07:35:54.046395 'HELP\r\n' 07:35:54.046704 Received DATA (on stdin) 07:35:54.046718 > 22 bytes data, server => client 07:35:54.046729 '214 WE ROOLZ: 121032\r\n' 07:35:54.046821 < 6 bytes data, client => server 07:35:54.046831 'QUIT\r\n' 07:35:54.047145 Received DATA (on stdin) 07:35:54.047164 > 35 bytes data, server => client 07:35:54.047175 '221 curl ESMTP server signing off\r\n' 07:35:54.047443 ====> Client disconnect 07:35:54.047568 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-956 From: different To: another body === End of file stdin-for-956 === Start of file valgrind956 ==123921== ==123921== Process terminating with default action of signal 4 (SIGILL) ==123921== Illegal opcode at address 0x4003082 ==123921== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123921== by 0x4003082: main (tool_main.c:234) === End of file valgrind956 test 0953...[SMTP plain authentication with alternative authorization identity] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind953 ../src/curl -q --output log/2/curl953.out --include --trace-ascii log/2/trace953 --trace-config all --trace-time smtp://127.0.0.1:34307/953 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/2/stdout953 2> log/2/stderr953 953: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 953 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind953 ../src/curl -q --output log/2/curl953.out --include --trace-ascii log/2/trace953 --trace-config all --trace-time smtp://127.0.0.1:34307/953 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/2/stdout953 2> log/2/stderr953 === End of file commands.log === Start of file server.cmd AUTH PLAIN REPLY AUTH 334 PLAIN supported REPLY dXJzZWwAa3VydAB4aXBqM3BsbXE= 235 Authenticated Testnum 953 === End of file server.cmd === Start of file smtp_server.log 07:35:54.174142 ====> Client connect 07:35:54.174268 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.174505 < "EHLO verifiedserver" 07:35:54.174536 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.174661 < "HELP" 07:35:54.174683 > "214 WE ROOLZ: 120696[CR][LF]" 07:35:54.174692 return proof we are we 07:35:54.175218 < "QUIT" 07:35:54.175263 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.176242 MAIN sockfilt said DISC 07:35:54.176268 ====> Client disconnected 07:35:54.176330 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.020026 ====> Client connect 07:35:54.020261 Received DATA (on stdin) 07:35:54.020276 > 160 bytes data, server => client 07:35:54.020288 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.020299 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.020309 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.020374 < 21 bytes data, client => server 07:35:54.020389 'EHLO verifiedserver\r\n' 07:35:54.020518 Received DATA (on stdin) 07:35:54.020528 > 53 bytes data, server => client 07:35:54.020537 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.020578 < 6 bytes data, client => server 07:35:54.020586 'HELP\r\n' 07:35:54.020671 Received DATA (on stdin) 07:35:54.020679 > 22 bytes data, server => client 07:35:54.020686 '214 WE ROOLZ: 120696\r\n' 07:35:54.020808 < 6 bytes data, client => server 07:35:54.020829 'QUIT\r\n' 07:35:54.021250 Received DATA (on stdin) 07:35:54.021263 > 35 bytes data, server => client 07:35:54.021274 '221 curl ESMTP server signing off\r\n' 07:35:54.022178 ====> Client disconnect 07:35:54.022314 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-953 mail body === End of file stdin-for-953 === Start of file valgrind953 ==123755== ==123755== Process terminating with default action of signal 4 (SIGILL) ==123755== Illegal opcode at address 0x4003082 ==123755== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123755== by 0x4003082: main (tool_main.c:234) === End of file valgrind953 test 0954...[SMTP plain auth with alt authorization identity (Not authorized)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind954 ../src/curl -q --output log/16/curl954.out --include --trace-ascii log/16/trace954 --trace-config all --trace-time smtp://127.0.0.1:43379/954 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/16/stdout954 2> log/16/stderr954 954: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 954 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind954 ../src/curl -q --output log/16/curl954.out --include --trace-ascii log/16/trace954 --trace-config all --trace-time smtp://127.0.0.1:43379/954 --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - log/16/stdout954 2> log/16/stderr954 === End of file commands.log === Start of file server.cmd AUTH PLAIN REPLY AUTH 334 PLAIN supported REPLY dXJzZWwAa3VydAB4aXBqM3BsbXE= 501 Not authorized Testnum 954 === End of file server.cmd === Start of file smtp_server.log 07:35:54.177797 ====> Client connect 07:35:54.177942 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.178198 < "EHLO verifiedserver" 07:35:54.178236 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.179389CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind946 ../src/curl -q --output log/14/curl946.out --include --trace-ascii log/14/trace946 --trace-config all --trace-time smtp://127.0.0.1:42443/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/14/stdout946 2> log/14/stderr946 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind962 ../src/curl -q --output log/13/curl962.out --include --trace-ascii log/13/trace962 --trace-config all --trace-time smtp://127.0.0.1:38115/962 --mail-rcpt recipient@example.com --mail-from sender@åäö.se -T - log/13/stdout962 2> log/13/stderr962 < "HELP" 07:35:54.179437 > "214 WE ROOLZ: 120701[CR][LF]" 07:35:54.179451 return proof we are we 07:35:54.179674 < "QUIT" 07:35:54.179700 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.180112 MAIN sockfilt said DISC 07:35:54.180154 ====> Client disconnected 07:35:54.180220 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.023696 ====> Client connect 07:35:54.023936 Received DATA (on stdin) 07:35:54.023950 > 160 bytes data, server => client 07:35:54.023963 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.023974 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.023984 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.024048 < 21 bytes data, client => server 07:35:54.024059 'EHLO verifiedserver\r\n' 07:35:54.024222 Received DATA (on stdin) 07:35:54.024235 > 53 bytes data, server => client 07:35:54.024247 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.024293 < 6 bytes data, client => server 07:35:54.024306 'HELP\r\n' 07:35:54.025435 Received DATA (on stdin) 07:35:54.025448 > 22 bytes data, server => client 07:35:54.025459 '214 WE ROOLZ: 120701\r\n' 07:35:54.025577 < 6 bytes data, client => server 07:35:54.025590 'QUIT\r\n' 07:35:54.025683 Received DATA (on stdin) 07:35:54.025694 > 35 bytes data, server => client 07:35:54.025704 '221 curl ESMTP server signing off\r\n' 07:35:54.026028 ====> Client disconnect 07:35:54.026185 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-954 mail body === End of file stdin-for-954 === Start of file valgrind954 ==123780== ==123780== Process terminating with default action of signal 4 (SIGILL) ==123780== Illegal opcode at address 0x4003082 ==123780== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123780== by 0x4003082: main (tool_main.c:234) === End of file valgrind954 test 0946...[SMTP OAuth 2.0 (OAUTHBEARER) authentication] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind946 ../src/curl -q --output log/14/curl946.out --include --trace-ascii log/14/trace946 --trace-config all --trace-time smtp://127.0.0.1:42443/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/14/stdout946 2> log/14/stderr946 946: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 946 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind946 ../src/curl -q --output log/14/curl946.out --include --trace-ascii log/14/trace946 --trace-config all --trace-time smtp://127.0.0.1:42443/946 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/14/stdout946 2> log/14/stderr946 === End of file commands.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 334 OAUTHBEARER supported REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9NDI0NDMBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= 235 Authenticated Testnum 946 === End of file server.cmd === Start of file smtp_server.log 07:35:54.079138 ====> Client connect 07:35:54.079334 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.079690 < "EHLO verifiedserver" 07:35:54.079731 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.079891 < "HELP" 07:35:54.079919 > "214 WE ROOLZ: 120894[CR][LF]" 07:35:54.079933 return proof we are we 07:35:54.080219 < "QUIT" 07:35:54.080247 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.081249 MAIN sockfilt said DISC 07:35:54.081277 ====> Client disconnected 07:35:54.081348 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.924835 ====> Client connect 07:35:53.925338 Received DATA (on stdin) 07:35:53.925360 > 160 bytes data, server => client 07:35:53.925373 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.925385 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.925396 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.925515 < 21 bytes data, client => server 07:35:53.925530 'EHLO verifiedserver\r\n' 07:35:53.925718 Received DATA (on stdin) 07:35:53.925731 > 53 bytes data, server => client 07:35:53.925743 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.925794 < 6 bytes data, client => server 07:35:53.925806 'HELP\r\n' 07:35:53.925916 Received DATA (on stdin) 07:35:53.925928 > 22 bytes data, server => client 07:35:53.925938 '214 WE ROOLZ: 120894\r\n' 07:35:53.926113 < 6 bytes data, client => server 07:35:53.926130 'QUIT\r\n' 07:35:53.926232 Received DATA (on stdin) 07:35:53.926243 > 35 bytes data, server => client 07:35:53.926253 '221 curl ESMTP server signing off\r\n' 07:35:53.927177 ====> Client disconnect 07:35:53.927335 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-946 mail body === End of file stdin-for-946 === Start of file valgrind946 ==123424== ==123424== Process terminating with default action of signal 4 (SIGILL) ==123424== Illegal opcode at address 0x4003082 ==123424== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123424== by 0x4003082: main (tool_main.c:234) === End of file valgrind946 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0962...[SMTP without SMTPUTF8 support - UTF-8 based sender (host part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind962 ../src/curl -q --output log/13/curl962.out --include --trace-ascii log/13/trace962 --trace-config all --trace-time smtp://127.0.0.1:38115/962 --mail-rcpt recipient@example.com --mail-from sender@åäö.se -T - log/13/stdout962 2> log/13/stderr962 962: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 962 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind962 ../src/curl -q --output log/13/curl962.out --include --trace-ascii log/13/trace962 --trace-config all --trace-time smtp://127.0.0.1:38115/962 --mail-rcpt recipient@example.com --mail-from sender@åäö.se -T - log/13/stdout962 2> log/13/stderr962 === End of file commands.log === Start of file server.cmd Testnum 962 === End of file server.cmd === Start of file smtp_server.log 07:35:54.252171 ====> Client connect 07:35:54.252311 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.252579 < "EHLO verifiedserver" 07:35:54.252619 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.252761 < "HELP" 07:35:54.252785 > "214 WE ROOLZ: 108218[CR][LF]" 07:35:54.252797 return proof we are we 07:35:54.252986 < "QUIT" 07:35:54.253017 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.253724 MAIN sockfilt said DISC 07:35:54.253751 ====> Client disconnected 07:35:54.253823 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.098050 ====> Client connect 07:35:54.098306 Received DATA (on stdin) 07:35:54.098319 > 160 bytes data, server => client 07:35:54.098331 '220- CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind948 ../src/curl -q --output log/8/curl948.out --include --trace-ascii log/8/trace948 --trace-config all --trace-time smtp://127.0.0.1:41381/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/8/stdout948 2> log/8/stderr948 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind947 ../src/curl -q --output log/21/curl947.out --include --trace-ascii log/21/trace947 --trace-config all --trace-time smtp://127.0.0.1:38415/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/21/stdout947 2> log/21/stderr947 _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.098341 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.098351 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.098414 < 21 bytes data, client => server 07:35:54.098425 'EHLO verifiedserver\r\n' 07:35:54.098604 Received DATA (on stdin) 07:35:54.098615 > 53 bytes data, server => client 07:35:54.098626 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.098671 < 6 bytes data, client => server 07:35:54.098682 'HELP\r\n' 07:35:54.098778 Received DATA (on stdin) 07:35:54.098788 > 22 bytes data, server => client 07:35:54.098798 '214 WE ROOLZ: 108218\r\n' 07:35:54.098894 < 6 bytes data, client => server 07:35:54.098907 'QUIT\r\n' 07:35:54.099004 Received DATA (on stdin) 07:35:54.099018 > 35 bytes data, server => client 07:35:54.099029 '221 curl ESMTP server signing off\r\n' 07:35:54.099657 ====> Client disconnect 07:35:54.099799 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-962 From: different To: another body === End of file stdin-for-962 === Start of file valgrind962 ==124205== ==124205== Process terminating with default action of signal 4 (SIGILL) ==124205== Illegal opcode at address 0x4003082 ==124205== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124205== by 0x4003082: main (tool_main.c:234) === End of file valgrind962 test 0948...[SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind948 ../src/curl -q --output log/8/curl948.out --include --trace-ascii log/8/trace948 --trace-config all --trace-time smtp://127.0.0.1:41381/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/8/stdout948 2> log/8/stderr948 948: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 948 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind948 ../src/curl -q --output log/8/curl948.out --include --trace-ascii log/8/trace948 --trace-config all --trace-time smtp://127.0.0.1:41381/948 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - log/8/stdout948 2> log/8/stderr948 === End of file commands.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 334 OAUTHBEARER supported REPLY bixhPXVzZXIsAWhvc3Q9MTI3LjAuMC4xAXBvcnQ9NDEzODEBYXV0aD1CZWFyZXIgbUZfOS5CNWYtNC4xSnFNAQE= 334 eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0 REPLY AQ== 535 Username and Password not accepted. Learn more at\r\n535 http://support.example.com/mail/oauth Testnum 948 === End of file server.cmd === Start of file smtp_server.log 07:35:54.093297 ====> Client connect 07:35:54.093533 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.094492 < "EHLO verifiedserver" 07:35:54.094537 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.094802 < "HELP" 07:35:54.094836 > "214 WE ROOLZ: 120960[CR][LF]" 07:35:54.094851 return proof we are we 07:35:54.095083 < "QUIT" 07:35:54.095114 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.095335 MAIN sockfilt said DISC 07:35:54.095359 ====> Client disconnected 07:35:54.095429 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.938337 ====> Client connect 07:35:53.940155 Received DATA (on stdin) 07:35:53.940181 > 160 bytes data, server => client 07:35:53.940194 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.940205 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.940215 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.940299 < 21 bytes data, client => server 07:35:53.940314 'EHLO verifiedserver\r\n' 07:35:53.940527 Received DATA (on stdin) 07:35:53.940542 > 53 bytes data, server => client 07:35:53.940553 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.940673 < 6 bytes data, client => server 07:35:53.940688 'HELP\r\n' 07:35:53.940836 Received DATA (on stdin) 07:35:53.940848 > 22 bytes data, server => client 07:35:53.940857 '214 WE ROOLZ: 120960\r\n' 07:35:53.940971 < 6 bytes data, client => server 07:35:53.940985 'QUIT\r\n' 07:35:53.941098 Received DATA (on stdin) 07:35:53.941110 > 35 bytes data, server => client 07:35:53.941120 '221 curl ESMTP server signing off\r\n' 07:35:53.941270 ====> Client disconnect 07:35:53.941415 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-948 mail body === End of file stdin-for-948 === Start of file valgrind948 ==123446== ==123446== Process terminating with default action of signal 4 (SIGILL) ==123446== Illegal opcode at address 0x4003082 ==123446== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123446== by 0x4003082: main (tool_main.c:234) === End of file valgrind948 test 0947...[SMTP OAuth 2.0 (OAUTHBEARER) authentication with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind947 ../src/curl -q --output log/21/curl947.out --include --trace-ascii log/21/trace947 --trace-config all --trace-time smtp://127.0.0.1:38415/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/21/stdout947 2> log/21/stderr947 947: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 947 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind947 ../src/curl -q --output log/21/curl947.out --include --trace-ascii log/21/trace947 --trace-config all --trace-time smtp://127.0.0.1:38415/947 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/21/stdout947 2> log/21/stderr947 === End of file commands.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 235 Authenticated Testnum 947 === End of file server.cmd === Start of file smtp_server.log 07:35:54.080899 ====> Client connect 07:35:54.081044 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.081322 < "EHLO verifiedserver" 07:35:54.081369 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.081529 < "HELP" 07:35:54.081560 > "214 WE ROOLZ: 120913[CR][LF]" 07:35:54.081575 return proof we are we 07:35:54.081778 < "QUIT" 07:35:54.081805 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.082515 MAIN sockfilt said DISC 07:35:54.082540 ====> Client disconnected 07:35:54.082595 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.926789 ====> Client connect 07:35:53.927042 Received DATA (on stdin) 07:35:53.927062 > 160 bytes data, server => client 07:35:53.927074 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.927084 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.92CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind950 ../src/curl -q --output log/9/curl950.out --include --trace-ascii log/9/trace950 --trace-config all --trace-time smtp://127.0.0.1:44357/950 --mail-rcpt recipient --request "vrfy" > log/9/stdout950 2> log/9/stderr950 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind949 ../src/curl -q --output log/24/curl949.out --include --trace-ascii log/24/trace949 --trace-config all --trace-time smtp://127.0.0.1:42589/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/24/stdout949 2> log/24/stderr949 7094 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.927164 < 21 bytes data, client => server 07:35:53.927176 'EHLO verifiedserver\r\n' 07:35:53.927356 Received DATA (on stdin) 07:35:53.927369 > 53 bytes data, server => client 07:35:53.927380 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.927428 < 6 bytes data, client => server 07:35:53.927438 'HELP\r\n' 07:35:53.927558 Received DATA (on stdin) 07:35:53.927569 > 22 bytes data, server => client 07:35:53.927579 '214 WE ROOLZ: 120913\r\n' 07:35:53.927677 < 6 bytes data, client => server 07:35:53.927691 'QUIT\r\n' 07:35:53.927789 Received DATA (on stdin) 07:35:53.927801 > 35 bytes data, server => client 07:35:53.927811 '221 curl ESMTP server signing off\r\n' 07:35:53.928445 ====> Client disconnect 07:35:53.928581 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-947 mail body === End of file stdin-for-947 === Start of file valgrind947 ==123416== ==123416== Process terminating with default action of signal 4 (SIGILL) ==123416== Illegal opcode at address 0x4003082 ==123416== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123416== by 0x4003082: main (tool_main.c:234) === End of file valgrind947 test 0950...[SMTP VRFY with custom request] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind950 ../src/curl -q --output log/9/curl950.out --include --trace-ascii log/9/trace950 --trace-config all --trace-time smtp://127.0.0.1:44357/950 --mail-rcpt recipient --request "vrfy" > log/9/stdout950 2> log/9/stderr950 950: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 950 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind950 ../src/curl -q --output log/9/curl950.out --include --trace-ascii log/9/trace950 --trace-config all --trace-time smtp://127.0.0.1:44357/950 --mail-rcpt recipient --request "vrfy" > log/9/stdout950 2> log/9/stderr950 === End of file commands.log === Start of file server.cmd Testnum 950 === End of file server.cmd === Start of file smtp_server.log 07:35:54.162211 ====> Client connect 07:35:54.162389 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.162692 < "EHLO verifiedserver" 07:35:54.162735 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.162888 < "HELP" 07:35:54.162915 > "214 WE ROOLZ: 121012[CR][LF]" 07:35:54.162928 return proof we are we 07:35:54.163104 < "QUIT" 07:35:54.163128 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.163307 MAIN sockfilt said DISC 07:35:54.163342 ====> Client disconnected 07:35:54.163464 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.008092 ====> Client connect 07:35:54.008362 Received DATA (on stdin) 07:35:54.008377 > 160 bytes data, server => client 07:35:54.008390 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.008401 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.008411 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.008505 < 21 bytes data, client => server 07:35:54.008524 'EHLO verifiedserver\r\n' 07:35:54.008721 Received DATA (on stdin) 07:35:54.008733 > 53 bytes data, server => client 07:35:54.008744 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.008792 < 6 bytes data, client => server 07:35:54.008803 'HELP\r\n' 07:35:54.008911 Received DATA (on stdin) 07:35:54.008921 > 22 bytes data, server => client 07:35:54.008931 '214 WE ROOLZ: 121012\r\n' 07:35:54.009012 < 6 bytes data, client => server 07:35:54.009024 'QUIT\r\n' 07:35:54.009109 Received DATA (on stdin) 07:35:54.009126 > 35 bytes data, server => client 07:35:54.009137 '221 curl ESMTP server signing off\r\n' 07:35:54.009237 ====> Client disconnect 07:35:54.009344 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind950 ==123716== ==123716== Process terminating with default action of signal 4 (SIGILL) ==123716== Illegal opcode at address 0x4003082 ==123716== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123716== by 0x4003082: main (tool_main.c:234) === End of file valgrind950 test 0949...[SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind949 ../src/curl -q --output log/24/curl949.out --include --trace-ascii log/24/trace949 --trace-config all --trace-time smtp://127.0.0.1:42589/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/24/stdout949 2> log/24/stderr949 949: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 949 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind949 ../src/curl -q --output log/24/curl949.out --include --trace-ascii log/24/trace949 --trace-config all --trace-time smtp://127.0.0.1:42589/949 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - log/24/stdout949 2> log/24/stderr949 === End of file commands.log === Start of file server.cmd AUTH OAUTHBEARER REPLY AUTH 334 eyJzdGF0dXMiOiJpbnZhbGlkX3Rva2VuIiwic2NvcGUiOiJleGFtcGxlX3Njb3BlIiwib3BlbmlkLWNvbmZpZ3VyYXRpb24iOiJodHRwczovL2V4YW1wbGUuY29tLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIn0 REPLY AQ== 535 Username and Password not accepted. Learn more at\r\n535 http://support.example.com/mail/oauth Testnum 949 === End of file server.cmd === Start of file smtp_server.log 07:35:54.104713 ====> Client connect 07:35:54.104876 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.105170 < "EHLO verifiedserver" 07:35:54.105219 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.105388 < "HELP" 07:35:54.105420 > "214 WE ROOLZ: 120943[CR][LF]" 07:35:54.105435 return proof we are we 07:35:54.105641 < "QUIT" 07:35:54.105668 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.107129 MAIN sockfilt said DISC 07:35:54.107178 ====> Client disconnected 07:35:54.107250 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:53.950590 ====> Client connect 07:35:53.950872 Received DATA (on stdin) 07:35:53.950888 > 160 bytes data, server => client 07:35:53.950901 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:53.950912 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:53.950923 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:53.950992 < 21 bytes data, client => server 07:35:53.951005 'EHLO verifiedserver\r\n' 07:35:53.951208 Received DATA (on stdin) 07:35:53.951222 > 53 bytes data, server => client 07:35:53.951233 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:53.951284 < 6 bytes data, client => server 07:35:53.951295 'HELP\r\n' 07:35:53.951419 Received DATA (on stdin) 07:35:53.951430 > 22 bytes data, server => client 07:35:53.951441 '214 WE ROOLZ: 120943\r\n' 07:35:53.951528 < 6 bytes data, client => server 07:35:53.951540 'QUIT\r\n' 07:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind955 ../src/curl -q --output log/19/curl955.out --include --trace-ascii log/19/trace955 --trace-config all --trace-time smtp://127.0.0.1:38443/955 --mail-rcpt recipient@example.com --mail-from Avsändaren@example.com -T - log/19/stdout955 2> log/19/stderr955 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind952 ../src/curl -q --output log/10/curl952.out --include --trace-ascii log/10/trace952 --trace-config all --trace-time smtp://127.0.0.1:41595/952 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/10/stdout952 2> log/10/stderr952 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind951 ../src/curl -q --output log/12/curl951.out --include --trace-ascii log/12/trace951 --trace-config all --trace-time smtp://127.0.0.1:41731/951 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/12/stdout951 2> log/12/stderr951 35:53.951885 Received DATA (on stdin) 07:35:53.951913 > 35 bytes data, server => client 07:35:53.951925 '221 curl ESMTP server signing off\r\n' 07:35:53.953045 ====> Client disconnect 07:35:53.953237 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-949 mail body === End of file stdin-for-949 === Start of file valgrind949 ==123480== ==123480== Process terminating with default action of signal 4 (SIGILL) ==123480== Illegal opcode at address 0x4003082 ==123480== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123480== by 0x4003082: main (tool_main.c:234) === End of file valgrind949 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0955...[SMTP without SMTPUTF8 support - UTF-8 based sender (local part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind955 ../src/curl -q --output log/19/curl955.out --include --trace-ascii log/19/trace955 --trace-config all --trace-time smtp://127.0.0.1:38443/955 --mail-rcpt recipient@example.com --mail-from Avsändaren@example.com -T - log/19/stdout955 2> log/19/stderr955 955: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 955 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind955 ../src/curl -q --output log/19/curl955.out --include --trace-ascii log/19/trace955 --trace-config all --trace-time smtp://127.0.0.1:38443/955 --mail-rcpt recipient@example.com --mail-from Avsändaren@example.com -T - log/19/stdout955 2> log/19/stderr955 === End of file commands.log === Start of file server.cmd REPLY MAIL 501 not fine enough Testnum 955 === End of file server.cmd === Start of file smtp_server.log 07:35:54.177411 ====> Client connect 07:35:54.177576 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.177847 < "EHLO verifiedserver" 07:35:54.177890 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.178043 < "HELP" 07:35:54.178073 > "214 WE ROOLZ: 121045[CR][LF]" 07:35:54.178087 return proof we are we 07:35:54.178294 < "QUIT" 07:35:54.178339 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.178571 MAIN sockfilt said DISC 07:35:54.178601 ====> Client disconnected 07:35:54.178668 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.023303 ====> Client connect 07:35:54.023572 Received DATA (on stdin) 07:35:54.023586 > 160 bytes data, server => client 07:35:54.023598 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.023609 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.023620 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.023687 < 21 bytes data, client => server 07:35:54.023700 'EHLO verifiedserver\r\n' 07:35:54.023878 Received DATA (on stdin) 07:35:54.023890 > 53 bytes data, server => client 07:35:54.023901 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.023949 < 6 bytes data, client => server 07:35:54.023960 'HELP\r\n' 07:35:54.024068 Received DATA (on stdin) 07:35:54.024079 > 22 bytes data, server => client 07:35:54.024089 '214 WE ROOLZ: 121045\r\n' 07:35:54.024166 < 6 bytes data, client => server 07:35:54.024179 'QUIT\r\n' 07:35:54.024340 Received DATA (on stdin) 07:35:54.024354 > 35 bytes data, server => client 07:35:54.024365 '221 curl ESMTP server signing off\r\n' 07:35:54.024495 ====> Client disconnect 07:35:54.024654 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-955 From: different To: another body === End of file stdin-for-955 === Start of file valgrind955 ==123782== ==123782== Process terminating with default action of signal 4 (SIGILL) ==123782== Illegal opcode at address 0x4003082 ==123782== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123782== by 0x4003082: main (tool_main.c:234) === End of file valgrind955 test 0952...[SMTP data with single dot-only line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind952 ../src/curl -q --output log/10/curl952.out --include --trace-ascii log/10/trace952 --trace-config all --trace-time smtp://127.0.0.1:41595/952 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/10/stdout952 2> log/10/stderr952 952: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 952 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind952 ../src/curl -q --output log/10/curl952.out --include --trace-ascii log/10/trace952 --trace-config all --trace-time smtp://127.0.0.1:41595/952 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/10/stdout952 2> log/10/stderr952 === End of file commands.log === Start of file server.cmd Testnum 952 === End of file server.cmd === Start of file smtp_server.log 07:35:54.172204 ====> Client connect 07:35:54.172437 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.172784 < "EHLO verifiedserver" 07:35:54.172912 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.173056 < "HELP" 07:35:54.173080 > "214 WE ROOLZ: 120706[CR][LF]" 07:35:54.173095 return proof we are we 07:35:54.173250 < "QUIT" 07:35:54.173271 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.173356 MAIN sockfilt said DISC 07:35:54.173379 ====> Client disconnected 07:35:54.173486 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.018093 ====> Client connect 07:35:54.018410 Received DATA (on stdin) 07:35:54.018425 > 160 bytes data, server => client 07:35:54.018436 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.018446 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.018456 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.018610 < 21 bytes data, client => server 07:35:54.018623 'EHLO verifiedserver\r\n' 07:35:54.018902 Received DATA (on stdin) 07:35:54.018914 > 53 bytes data, server => client 07:35:54.018923 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.018967 < 6 bytes data, client => server 07:35:54.018976 'HELP\r\n' 07:35:54.019074 Received DATA (on stdin) 07:35:54.019086 > 22 bytes data, server => client 07:35:54.019093 '214 WE ROOLZ: 120706\r\n' 07:35:54.019177 < 6 bytes data, client => server 07:35:54.019191 'QUIT\r\n' 07:35:54.019250 Received DATA (on stdin) 07:35:54.019258 > 35 bytes data, server => client 07:35:54.019266 '221 curl ESMTP server signing off\r\n' 07:35:54.019302 ====> Client disconnect 07:35:54.019359 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-952 . === End of file stdin-for-952 === Start of file valgrind952 ==123739== ==123739== Process terminating with default action of signal 4 (SIGILL) ==123739== Illegal opcode at address 0x4003082 ==123739== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123739== by 0x4003082: main (tool_main.c:234) === End of file valgrind952 test 0951...[SMTP data with dot as first character] ../libtool --mode=exCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind957 ../src/curl -q --output log/4/curl957.out --include --trace-ascii log/4/trace957 --trace-config all --trace-time smtp://127.0.0.1:41607/957 --mail-rcpt Användaren > log/4/stdout957 2> log/4/stderr957 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind964 ../src/curl -q --output log/20/curl964.out --include --trace-ascii log/20/trace964 --trace-config all --trace-time smtp://127.0.0.1:45155/964 --mail-rcpt user@åäö.se > log/20/stdout964 2> log/20/stderr964 ecute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind951 ../src/curl -q --output log/12/curl951.out --include --trace-ascii log/12/trace951 --trace-config all --trace-time smtp://127.0.0.1:41731/951 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/12/stdout951 2> log/12/stderr951 951: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 951 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind951 ../src/curl -q --output log/12/curl951.out --include --trace-ascii log/12/trace951 --trace-config all --trace-time smtp://127.0.0.1:41731/951 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - log/12/stdout951 2> log/12/stderr951 === End of file commands.log === Start of file server.cmd Testnum 951 === End of file server.cmd === Start of file smtp_server.log 07:35:54.166259 ====> Client connect 07:35:54.166540 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.166844 < "EHLO verifiedserver" 07:35:54.166893 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.167204 < "HELP" 07:35:54.167241 > "214 WE ROOLZ: 121049[CR][LF]" 07:35:54.167256 return proof we are we 07:35:54.167512 < "QUIT" 07:35:54.167539 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.167707 MAIN sockfilt said DISC 07:35:54.167735 ====> Client disconnected 07:35:54.167843 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.012132 ====> Client connect 07:35:54.012547 Received DATA (on stdin) 07:35:54.012563 > 160 bytes data, server => client 07:35:54.012572 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.012583 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.012591 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.012669 < 21 bytes data, client => server 07:35:54.012682 'EHLO verifiedserver\r\n' 07:35:54.012881 Received DATA (on stdin) 07:35:54.012894 > 53 bytes data, server => client 07:35:54.012905 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.012956 < 6 bytes data, client => server 07:35:54.012967 'HELP\r\n' 07:35:54.013237 Received DATA (on stdin) 07:35:54.013262 > 22 bytes data, server => client 07:35:54.013274 '214 WE ROOLZ: 121049\r\n' 07:35:54.013404 < 6 bytes data, client => server 07:35:54.013421 'QUIT\r\n' 07:35:54.013522 Received DATA (on stdin) 07:35:54.013533 > 35 bytes data, server => client 07:35:54.013543 '221 curl ESMTP server signing off\r\n' 07:35:54.013588 ====> Client disconnect 07:35:54.013717 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-951 .This first line starts with a dot === End of file stdin-for-951 === Start of file valgrind951 ==123724== ==123724== Process terminating with default action of signal 4 (SIGILL) ==123724== Illegal opcode at address 0x4003082 ==123724== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==123724== by 0x4003082: main (tool_main.c:234) === End of file valgrind951 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0957...[SMTP VRFY without SMTPUTF8 support - UTF-8 recipient (local part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind957 ../src/curl -q --output log/4/curl957.out --include --trace-ascii log/4/trace957 --trace-config all --trace-time smtp://127.0.0.1:41607/957 --mail-rcpt Användaren > log/4/stdout957 2> log/4/stderr957 957: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 957 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind957 ../src/curl -q --output log/4/curl957.out --include --trace-ascii log/4/trace957 --trace-config all --trace-time smtp://127.0.0.1:41607/957 --mail-rcpt Användaren > log/4/stdout957 2> log/4/stderr957 === End of file commands.log === Start of file server.cmd Testnum 957 === End of file server.cmd === Start of file smtp_server.log 07:35:54.240356 ====> Client connect 07:35:54.240530 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.240817 < "EHLO verifiedserver" 07:35:54.240859 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.241680 < "HELP" 07:35:54.242123 > "214 WE ROOLZ: 121040[CR][LF]" 07:35:54.242948 return proof we are we 07:35:54.243171 < "QUIT" 07:35:54.243199 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.243452 MAIN sockfilt said DISC 07:35:54.243481 ====> Client disconnected 07:35:54.243595 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.086241 ====> Client connect 07:35:54.086528 Received DATA (on stdin) 07:35:54.086543 > 160 bytes data, server => client 07:35:54.086554 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.086570 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.086580 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.086651 < 21 bytes data, client => server 07:35:54.086665 'EHLO verifiedserver\r\n' 07:35:54.086846 Received DATA (on stdin) 07:35:54.086858 > 53 bytes data, server => client 07:35:54.086884 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.087143 < 6 bytes data, client => server 07:35:54.087157 'HELP\r\n' 07:35:54.088943 Received DATA (on stdin) 07:35:54.088956 > 22 bytes data, server => client 07:35:54.088966 '214 WE ROOLZ: 121040\r\n' 07:35:54.089069 < 6 bytes data, client => server 07:35:54.089083 'QUIT\r\n' 07:35:54.089184 Received DATA (on stdin) 07:35:54.089194 > 35 bytes data, server => client 07:35:54.089205 '221 curl ESMTP server signing off\r\n' 07:35:54.089385 ====> Client disconnect 07:35:54.089471 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind957 ==124171== ==124171== Process terminating with default action of signal 4 (SIGILL) ==124171== Illegal opcode at address 0x4003082 ==124171== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124171== by 0x4003082: main (tool_main.c:234) === End of file valgrind957 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0964...[SMTP external VRFY without SMTPUTF8 (IDN) - UTF-8 recipient (host part)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind964 ../src/curl -q --output log/20/curl964.out --include --trace-ascii log/20/trace964 --trace-config all --trace-time smtp://127.0.0.1:45155/964 --mail-rcpt user@åäö.se > log/20/stdout964 2> log/20/stderr964 964: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 964 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind964 ../src/curl -q --output log/20/curl964.out --include --trace-ascii log/20/trace964 --trace-config CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind958 ../src/curl -q --output log/6/curl958.out --include --trace-ascii log/6/trace958 --trace-config all --trace-time smtp://127.0.0.1:39801/958 --mail-rcpt Användaren@example.com > log/6/stdout958 2> log/6/stderr958 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind965 ../src/curl -q --output log/7/curl965.out --include --trace-ascii log/7/trace965 --trace-config all --trace-time smtp://127.0.0.1:41121/965 --mail-rcpt recipient@example.com --mail-from Avsändaren@åäö.se -T - log/7/stdout965 2> log/7/stderr965 all --trace-time smtp://127.0.0.1:45155/964 --mail-rcpt user@åäö.se > log/20/stdout964 2> log/20/stderr964 === End of file commands.log === Start of file server.cmd Testnum 964 === End of file server.cmd === Start of file smtp_server.log 07:35:54.270889 ====> Client connect 07:35:54.271058 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.271346 < "EHLO verifiedserver" 07:35:54.271386 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.271531 < "HELP" 07:35:54.271556 > "214 WE ROOLZ: 121046[CR][LF]" 07:35:54.271568 return proof we are we 07:35:54.271756 < "QUIT" 07:35:54.271782 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.272606 MAIN sockfilt said DISC 07:35:54.272629 ====> Client disconnected 07:35:54.272695 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.114420 ====> Client connect 07:35:54.117060 Received DATA (on stdin) 07:35:54.117080 > 160 bytes data, server => client 07:35:54.117091 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.117101 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.117111 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.117193 < 21 bytes data, client => server 07:35:54.117205 'EHLO verifiedserver\r\n' 07:35:54.117372 Received DATA (on stdin) 07:35:54.117384 > 53 bytes data, server => client 07:35:54.117394 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.117440 < 6 bytes data, client => server 07:35:54.117451 'HELP\r\n' 07:35:54.117551 Received DATA (on stdin) 07:35:54.117562 > 22 bytes data, server => client 07:35:54.117571 '214 WE ROOLZ: 121046\r\n' 07:35:54.117663 < 6 bytes data, client => server 07:35:54.117676 'QUIT\r\n' 07:35:54.117763 Received DATA (on stdin) 07:35:54.117774 > 35 bytes data, server => client 07:35:54.117783 '221 curl ESMTP server signing off\r\n' 07:35:54.118539 ====> Client disconnect 07:35:54.118680 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind964 ==124293== ==124293== Process terminating with default action of signal 4 (SIGILL) ==124293== Illegal opcode at address 0x4003082 ==124293== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124293== by 0x4003082: main (tool_main.c:234) === End of file valgrind964 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0958...[SMTP external VRFY without SMTPUTF8 - UTF-8 recipient (local part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind958 ../src/curl -q --output log/6/curl958.out --include --trace-ascii log/6/trace958 --trace-config all --trace-time smtp://127.0.0.1:39801/958 --mail-rcpt Användaren@example.com > log/6/stdout958 2> log/6/stderr958 958: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 958 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind958 ../src/curl -q --output log/6/curl958.out --include --trace-ascii log/6/trace958 --trace-config all --trace-time smtp://127.0.0.1:39801/958 --mail-rcpt Användaren@example.com > log/6/stdout958 2> log/6/stderr958 === End of file commands.log === Start of file server.cmd Testnum 958 === End of file server.cmd === Start of file smtp_server.log 07:35:54.253453 ====> Client connect 07:35:54.253663 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.260188 < "EHLO verifiedserver" 07:35:54.260260 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.260498 < "HELP" 07:35:54.260526 > "214 WE ROOLZ: 121039[CR][LF]" 07:35:54.260540 return proof we are we 07:35:54.260749 < "QUIT" 07:35:54.260777 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.261741 MAIN sockfilt said DISC 07:35:54.261768 ====> Client disconnected 07:35:54.261828 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.099323 ====> Client connect 07:35:54.102652 Received DATA (on stdin) 07:35:54.102680 > 160 bytes data, server => client 07:35:54.102693 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.102707 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.102718 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.102860 < 21 bytes data, client => server 07:35:54.102873 'EHLO verifiedserver\r\n' 07:35:54.106258 Received DATA (on stdin) 07:35:54.106277 > 53 bytes data, server => client 07:35:54.106290 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.106399 < 6 bytes data, client => server 07:35:54.106412 'HELP\r\n' 07:35:54.106523 Received DATA (on stdin) 07:35:54.106534 > 22 bytes data, server => client 07:35:54.106544 '214 WE ROOLZ: 121039\r\n' 07:35:54.106654 < 6 bytes data, client => server 07:35:54.106667 'QUIT\r\n' 07:35:54.106759 Received DATA (on stdin) 07:35:54.106770 > 35 bytes data, server => client 07:35:54.106780 '221 curl ESMTP server signing off\r\n' 07:35:54.107673 ====> Client disconnect 07:35:54.107812 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind958 ==124225== ==124225== Process terminating with default action of signal 4 (SIGILL) ==124225== Illegal opcode at address 0x4003082 ==124225== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124225== by 0x4003082: main (tool_main.c:234) === End of file valgrind958 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0965...[SMTP with SMTPUTF8 support - UTF-8 based sender] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind965 ../src/curl -q --output log/7/curl965.out --include --trace-ascii log/7/trace965 --trace-config all --trace-time smtp://127.0.0.1:41121/965 --mail-rcpt recipient@example.com --mail-from Avsändaren@åäö.se -T - log/7/stdout965 2> log/7/stderr965 965: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 965 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind965 ../src/curl -q --output log/7/curl965.out --include --trace-ascii log/7/trace965 --trace-config all --trace-time smtp://127.0.0.1:41121/965 --mail-rcpt recipient@example.com --mail-from Avsändaren@åäö.se -T - log/7/stdout965 2> log/7/stderr965 === End of file commands.log === Start of file server.cmd CAPA SMTPUTF8 Testnum 965 === End of file server.cmd === Start of file smtp_server.log 07:35:54.267226 ====> Client connect 07:35:54.267401 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.272730 < "EHLO verifiedserver" 07:35:54.272790 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.272980 < "HELP" 07:35:54.273007 > "214 WE ROOLZ: 121044[CR][LF]" 07:35:54.273022 return proof we are we 07:35:54.273247 < "QUIT" 07:35:54.273272 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.273529 MAIN sockfilt said DISC 07:35:54.273554 ====> Client disconnected 07:35:54.273623 Awaiting input === End of file smtp_server.log === StCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind963 ../src/curl -q --output log/15/curl963.out --include --trace-ascii log/15/trace963 --trace-config all --trace-time smtp://127.0.0.1:34285/963 --mail-rcpt recipient@åäö.se --mail-from sender@example.com -T - log/15/stdout963 2> log/15/stderr963 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind967 ../src/curl -q --output log/11/curl967.out --include --trace-ascii log/11/trace967 --trace-config all --trace-time smtp://127.0.0.1:44025/967 --mail-rcpt Användaren@åäö.se > log/11/stdout967 2> log/11/stderr967 art of file smtp_sockfilt.log 07:35:54.113000 ====> Client connect 07:35:54.115134 Received DATA (on stdin) 07:35:54.115159 > 160 bytes data, server => client 07:35:54.115172 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.115182 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.115191 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.118494 < 21 bytes data, client => server 07:35:54.118517 'EHLO verifiedserver\r\n' 07:35:54.118780 Received DATA (on stdin) 07:35:54.118793 > 53 bytes data, server => client 07:35:54.118804 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.118882 < 6 bytes data, client => server 07:35:54.118894 'HELP\r\n' 07:35:54.119007 Received DATA (on stdin) 07:35:54.119019 > 22 bytes data, server => client 07:35:54.119030 '214 WE ROOLZ: 121044\r\n' 07:35:54.119146 < 6 bytes data, client => server 07:35:54.119160 'QUIT\r\n' 07:35:54.119255 Received DATA (on stdin) 07:35:54.119265 > 35 bytes data, server => client 07:35:54.119275 '221 curl ESMTP server signing off\r\n' 07:35:54.119460 ====> Client disconnect 07:35:54.119608 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-965 From: different To: another body === End of file stdin-for-965 === Start of file valgrind965 ==124283== ==124283== Process terminating with default action of signal 4 (SIGILL) ==124283== Illegal opcode at address 0x4003082 ==124283== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124283== by 0x4003082: main (tool_main.c:234) === End of file valgrind965 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0967...[SMTP external VRFY with SMTPUTF8 support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind967 ../src/curl -q --output log/11/curl967.out --include --trace-ascii log/11/trace967 --trace-config all --trace-time smtp://127.0.0.1:44025/967 --mail-rcpt Användaren@åäö.se > log/11/stdout967 2> log/11/stderr967 967: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 967 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind967 ../src/curl -q --output log/11/curl967.out --include --trace-ascii log/11/trace967 --trace-config all --trace-time smtp://127.0.0.1:44025/967 --mail-rcpt Användaren@åäö.se > log/11/stdout967 2> log/11/stderr967 === End of file commands.log === Start of file server.cmd CAPA SMTPUTF8 Testnum 967 === End of file server.cmd === Start of file smtp_server.log 07:35:54.303100 ====> Client connect 07:35:54.303237 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.303497 < "EHLO verifiedserver" 07:35:54.303533 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.303677 < "HELP" 07:35:54.303704 > "214 WE ROOLZ: 120674[CR][LF]" 07:35:54.303717 return proof we are we 07:35:54.303908 < "QUIT" 07:35:54.303933 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.304725 MAIN sockfilt said DISC 07:35:54.304750 ====> Client disconnected 07:35:54.304808 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.148978 ====> Client connect 07:35:54.149230 Received DATA (on stdin) 07:35:54.149244 > 160 bytes data, server => client 07:35:54.149255 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.149266 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.149276 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.149350 < 21 bytes data, client => server 07:35:54.149362 'EHLO verifiedserver\r\n' 07:35:54.149518 Received DATA (on stdin) 07:35:54.149529 > 53 bytes data, server => client 07:35:54.149540 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.149585 < 6 bytes data, client => server 07:35:54.149596 'HELP\r\n' 07:35:54.149699 Received DATA (on stdin) 07:35:54.149710 > 22 bytes data, server => client 07:35:54.149719 '214 WE ROOLZ: 120674\r\n' 07:35:54.149815 < 6 bytes data, client => server 07:35:54.149828 'QUIT\r\n' 07:35:54.149916 Received DATA (on stdin) 07:35:54.149926 > 35 bytes data, server => client 07:35:54.149936 '221 curl ESMTP server signing off\r\n' 07:35:54.150663 ====> Client disconnect 07:35:54.150790 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind967 ==124471== ==124471== Process terminating with default action of signal 4 (SIGILL) ==124471== Illegal opcode at address 0x4003082 ==124471== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124471== by 0x4003082: main (tool_main.c:234) === End of file valgrind967 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0963...[SMTP without SMTPUTF8 support (IDN) - UTF-8 recipient (host part only)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind963 ../src/curl -q --output log/15/curl963.out --include --trace-ascii log/15/trace963 --trace-config all --trace-time smtp://127.0.0.1:34285/963 --mail-rcpt recipient@åäö.se --mail-from sender@example.com -T - log/15/stdout963 2> log/15/stderr963 963: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 963 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind963 ../src/curl -q --output log/15/curl963.out --include --trace-ascii log/15/trace963 --trace-config all --trace-time smtp://127.0.0.1:34285/963 --mail-rcpt recipient@åäö.se --mail-from sender@example.com -T - log/15/stdout963 2> log/15/stderr963 === End of file commands.log === Start of file server.cmd Testnum 963 === End of file server.cmd === Start of file smtp_server.log 07:35:54.261866 ====> Client connect 07:35:54.262027 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.262289 < "EHLO verifiedserver" 07:35:54.262327 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.262473 < "HELP" 07:35:54.262501 > "214 WE ROOLZ: 121042[CR][LF]" 07:35:54.262514 return proof we are we 07:35:54.262873 < "QUIT" 07:35:54.262900 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.263725 MAIN sockfilt said DISC 07:35:54.263750 ====> Client disconnected 07:35:54.263808 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.107532 ====> Client connect 07:35:54.108021 Received DATA (on stdin) 07:35:54.108036 > 160 bytes data, server => client 07:35:54.108049 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.108060 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.108070 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.108137 < 21 bytes data, client => server 07:35:54.108148 'EHLO verifiedserver\r\n' 07:35:54.108313 Received DATA (on stdin) 07:35:54.108325 > 53 bytes data, server => client 07:35:54.108336 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.108382 < 6 bytes data, client => server 07:35:54.108392 'HELP\r\n' 07:35:54.108649 Received DATA (on stdin) 07:35:54.108667 > 22 bytes data, server => client 07:35:54.108678 '214 WE ROOLZ: 121042\r\n' 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind966 ../src/curl -q --output log/3/curl966.out --include --trace-ascii log/3/trace966 --trace-config all --trace-time smtp://127.0.0.1:38981/966 --mail-rcpt Stödmottagaren@åäö.se --mail-from sender@example.com -T - log/3/stdout966 2> log/3/stderr966 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind974 ../src/curl -q --output log/22/curl974.out --include --trace-ascii log/22/trace974 --trace-config all --trace-time -x http://127.0.0.1:46761 http://firsthost.com -L -u joe:secret > log/22/stdout974 2> log/22/stderr974 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind969 ../src/curl -q --output log/18/curl969.out --include --trace-ascii log/18/trace969 --trace-config all --trace-time smtp://127.0.0.1:37785/969 --mail-rcpt Friends -X EXPN > log/18/stdout969 2> log/18/stderr969 7:35:54.108771 < 6 bytes data, client => server 07:35:54.108786 'QUIT\r\n' 07:35:54.108883 Received DATA (on stdin) 07:35:54.108894 > 35 bytes data, server => client 07:35:54.108904 '221 curl ESMTP server signing off\r\n' 07:35:54.109657 ====> Client disconnect 07:35:54.109794 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-963 From: different To: another body === End of file stdin-for-963 === Start of file valgrind963 ==124235== ==124235== Process terminating with default action of signal 4 (SIGILL) ==124235== Illegal opcode at address 0x4003082 ==124235== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124235== by 0x4003082: main (tool_main.c:234) === End of file valgrind963 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0966...[SMTP with SMTPUTF8 support - UTF-8 based recipient] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind966 ../src/curl -q --output log/3/curl966.out --include --trace-ascii log/3/trace966 --trace-config all --trace-time smtp://127.0.0.1:38981/966 --mail-rcpt Stödmottagaren@åäö.se --mail-from sender@example.com -T - log/3/stdout966 2> log/3/stderr966 966: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 966 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind966 ../src/curl -q --output log/3/curl966.out --include --trace-ascii log/3/trace966 --trace-config all --trace-time smtp://127.0.0.1:38981/966 --mail-rcpt Stödmottagaren@åäö.se --mail-from sender@example.com -T - log/3/stdout966 2> log/3/stderr966 === End of file commands.log === Start of file server.cmd CAPA SMTPUTF8 Testnum 966 === End of file server.cmd === Start of file smtp_server.log 07:35:54.266963 ====> Client connect 07:35:54.267093 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.267366 < "EHLO verifiedserver" 07:35:54.267404 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.267573 < "HELP" 07:35:54.267601 > "214 WE ROOLZ: 108217[CR][LF]" 07:35:54.267614 return proof we are we 07:35:54.267801 < "QUIT" 07:35:54.267824 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.268760 MAIN sockfilt said DISC 07:35:54.268809 ====> Client disconnected 07:35:54.268872 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.112852 ====> Client connect 07:35:54.113090 Received DATA (on stdin) 07:35:54.113106 > 160 bytes data, server => client 07:35:54.113118 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.113129 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.113139 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.113203 < 21 bytes data, client => server 07:35:54.113217 'EHLO verifiedserver\r\n' 07:35:54.113393 Received DATA (on stdin) 07:35:54.113405 > 53 bytes data, server => client 07:35:54.113417 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.113468 < 6 bytes data, client => server 07:35:54.113480 'HELP\r\n' 07:35:54.113597 Received DATA (on stdin) 07:35:54.113608 > 22 bytes data, server => client 07:35:54.113618 '214 WE ROOLZ: 108217\r\n' 07:35:54.113691 < 6 bytes data, client => server 07:35:54.113704 'QUIT\r\n' 07:35:54.113806 Received DATA (on stdin) 07:35:54.113816 > 35 bytes data, server => client 07:35:54.113826 '221 curl ESMTP server signing off\r\n' 07:35:54.114684 ====> Client disconnect 07:35:54.114862 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-966 From: different To: another body === End of file stdin-for-966 === Start of file valgrind966 ==124257== ==124257== Process terminating with default action of signal 4 (SIGILL) ==124257== Illegal opcode at address 0x4003082 ==124257== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124257== by 0x4003082: main (tool_main.c:234) === End of file valgrind966 test 0974...[HTTP with auth redirected to HTTP on a diff port w/o auth] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind974 ../src/curl -q --output log/22/curl974.out --include --trace-ascii log/22/trace974 --trace-config all --trace-time -x http://127.0.0.1:46761 http://firsthost.com -L -u joe:secret > log/22/stdout974 2> log/22/stderr974 974: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 974 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind974 ../src/curl -q --output log/22/curl974.out --include --trace-ascii log/22/trace974 --trace-config all --trace-time -x http://127.0.0.1:46761 http://firsthost.com -L -u joe:secret > log/22/stdout974 2> log/22/stderr974 === End of file commands.log === Start of file http_server.log 07:35:54.381318 ====> Client connect 07:35:54.381354 accept_connection 3 returned 4 07:35:54.381372 accept_connection 3 returned 0 07:35:54.381386 Read 93 bytes 07:35:54.381397 Process 93 bytes request 07:35:54.381408 Got request: GET /verifiedserver HTTP/1.1 07:35:54.381418 Are-we-friendly question received 07:35:54.381446 Wrote request (93 bytes) input to log/22/server.input 07:35:54.381464 Identifying ourselves as friends 07:35:54.381528 Response sent (56 bytes) and written to log/22/server.response 07:35:54.381538 special request received, no persistency 07:35:54.381547 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 974 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind974 ==124749== ==124749== Process terminating with default action of signal 4 (SIGILL) ==124749== Illegal opcode at address 0x4003082 ==124749== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124749== by 0x4003082: main (tool_main.c:234) === End of file valgrind974 test 0969...[SMTP mailing list EXPN (CUSTOMREQUEST) with SMTPUTF8 support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind969 ../src/curl -q --output log/18/curl969.out --include --trace-ascii log/18/trace969 --trace-config all --trace-time smtp://127.0.0.1:37785/969 --mail-rcpt Friends -X EXPN > log/18/stdout969 2> log/18/stderr969 969: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 969 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind968 ../src/curl -q --output log/17/curl968.out --include --trace-ascii log/17/trace968 --trace-config all --trace-time smtp://127.0.0.1:38413/968 --mail-rcpt Användaren > log/17/stdout968 2> log/17/stderr968 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind973 ../src/curl -q --output log/23/curl973.out --include --trace-ascii log/23/trace973 --trace-config all --trace-time http://127.0.0.1:45701/973 -L -u joe:secret > log/23/stdout973 2> log/23/stderr973 og-file=log/18/valgrind969 ../src/curl -q --output log/18/curl969.out --include --trace-ascii log/18/trace969 --trace-config all --trace-time smtp://127.0.0.1:37785/969 --mail-rcpt Friends -X EXPN > log/18/stdout969 2> log/18/stderr969 === End of file commands.log === Start of file server.cmd CAPA SMTPUTF8 Testnum 969 === End of file server.cmd === Start of file smtp_server.log 07:35:54.512087 ====> Client connect 07:35:54.512215 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.512545 < "EHLO verifiedserver" 07:35:54.512597 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.512757 < "HELP" 07:35:54.512785 > "214 WE ROOLZ: 120879[CR][LF]" 07:35:54.512799 return proof we are we 07:35:54.512997 < "QUIT" 07:35:54.513022 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.515365 MAIN sockfilt said DISC 07:35:54.515402 ====> Client disconnected 07:35:54.515468 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.357984 ====> Client connect 07:35:54.358209 Received DATA (on stdin) 07:35:54.358224 > 160 bytes data, server => client 07:35:54.358236 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.358247 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.358257 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.358337 < 21 bytes data, client => server 07:35:54.358364 'EHLO verifiedserver\r\n' 07:35:54.358587 Received DATA (on stdin) 07:35:54.358599 > 53 bytes data, server => client 07:35:54.358610 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.358660 < 6 bytes data, client => server 07:35:54.358672 'HELP\r\n' 07:35:54.358781 Received DATA (on stdin) 07:35:54.358791 > 22 bytes data, server => client 07:35:54.358802 '214 WE ROOLZ: 120879\r\n' 07:35:54.358901 < 6 bytes data, client => server 07:35:54.358914 'QUIT\r\n' 07:35:54.359005 Received DATA (on stdin) 07:35:54.359015 > 35 bytes data, server => client 07:35:54.359026 '221 curl ESMTP server signing off\r\n' 07:35:54.359980 ====> Client disconnect 07:35:54.361455 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind969 ==124698== ==124698== Process terminating with default action of signal 4 (SIGILL) ==124698== Illegal opcode at address 0x4003082 ==124698== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124698== by 0x4003082: main (tool_main.c:234) === End of file valgrind969 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 0968...[SMTP VRFY with SMTPUTF8 support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind968 ../src/curl -q --output log/17/curl968.out --include --trace-ascii log/17/trace968 --trace-config all --trace-time smtp://127.0.0.1:38413/968 --mail-rcpt Användaren > log/17/stdout968 2> log/17/stderr968 968: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 968 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind968 ../src/curl -q --output log/17/curl968.out --include --trace-ascii log/17/trace968 --trace-config all --trace-time smtp://127.0.0.1:38413/968 --mail-rcpt Användaren > log/17/stdout968 2> log/17/stderr968 === End of file commands.log === Start of file server.cmd CAPA SMTPUTF8 Testnum 968 === End of file server.cmd === Start of file smtp_server.log 07:35:54.510766 ====> Client connect 07:35:54.510901 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.511340 < "EHLO verifiedserver" 07:35:54.511381 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.513490 < "HELP" 07:35:54.513523 > "214 WE ROOLZ: 120885[CR][LF]" 07:35:54.513538 return proof we are we 07:35:54.513771 < "QUIT" 07:35:54.513798 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.515307 MAIN sockfilt said DISC 07:35:54.515337 ====> Client disconnected 07:35:54.515405 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.356656 ====> Client connect 07:35:54.356896 Received DATA (on stdin) 07:35:54.356911 > 160 bytes data, server => client 07:35:54.356923 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.356935 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.356946 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.357180 < 21 bytes data, client => server 07:35:54.357199 'EHLO verifiedserver\r\n' 07:35:54.357368 Received DATA (on stdin) 07:35:54.357380 > 53 bytes data, server => client 07:35:54.357391 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.359349 < 6 bytes data, client => server 07:35:54.359373 'HELP\r\n' 07:35:54.359522 Received DATA (on stdin) 07:35:54.359533 > 22 bytes data, server => client 07:35:54.359544 '214 WE ROOLZ: 120885\r\n' 07:35:54.359672 < 6 bytes data, client => server 07:35:54.359686 'QUIT\r\n' 07:35:54.359781 Received DATA (on stdin) 07:35:54.359792 > 35 bytes data, server => client 07:35:54.359803 '221 curl ESMTP server signing off\r\n' 07:35:54.360787 ====> Client disconnect 07:35:54.361391 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file valgrind968 ==124805== ==124805== Process terminating with default action of signal 4 (SIGILL) ==124805== Illegal opcode at address 0x4003082 ==124805== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124805== by 0x4003082: main (tool_main.c:234) === End of file valgrind968 test 0973...[HTTP with auth redirected to FTP w/o auth] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind973 ../src/curl -q --output log/23/curl973.out --include --trace-ascii log/23/trace973 --trace-config all --trace-time http://127.0.0.1:45701/973 -L -u joe:secret > log/23/stdout973 2> log/23/stderr973 973: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 973 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind973 ../src/curl -q --output log/23/curl973.out --include --trace-ascii log/23/trace973 --trace-config all --trace-time http://127.0.0.1:45701/973 -L -u joe:secret > log/23/stdout973 2> log/23/stderr973 === End of file commands.log === Start of file ftp_server.log 07:35:54.548284 ====> Client connect 07:35:54.548418 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.548647 < "USER anonymous" 07:35:54.548677 > "331 We are happy you popped in![CR][LF]" 07:35:54.548933 < "PASS ftp@example.com" 07:35:54.548983 > "230 Welcome you silly person[CR][LF]" 07:35:54.549133 < "PWD" 07:35:54.549168 > "257 "/" is current directory[CR][LF]" 07:35:54.549313 < "EPSV" 07:35:54.549337 ====> Passive DATA channel requested by client 07:35:54.549351 DATA sockfilt for passive data channel starting... 07:35:54.550965 DATA sockfilt for passive data channel started (pid 124743) 07:35:54.551075 DATA sockfilt for passive data channel listens on port 42103 07:35:54.551116 > "229 Entering Passive Mode (|||42103|)[LF]" 07:35:54.5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind975 ../src/curl -q --output log/5/curl975.out --include --trace-ascii log/5/trace975 --trace-config all --trace-time http://127.0.0.1:46675/975 --location-trusted -u joe:secret > log/5/stdout975 2> log/5/stderr975 51132 Client has been notified that DATA conn will be accepted on port 42103 07:35:54.551331 Client connects to port 42103 07:35:54.551358 ====> Client established passive DATA connection on port 42103 07:35:54.551418 < "TYPE I" 07:35:54.551442 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:54.551579 < "SIZE verifiedserver" 07:35:54.551610 > "213 17[CR][LF]" 07:35:54.551739 < "RETR verifiedserver" 07:35:54.551767 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:54.551829 =====> Closing passive DATA connection... 07:35:54.551845 Server disconnects passive DATA connection 07:35:54.551952 Server disconnected passive DATA connection 07:35:54.551971 DATA sockfilt for passive data channel quits (pid 124743) 07:35:54.552190 DATA sockfilt for passive data channel quit (pid 124743) 07:35:54.552210 =====> Closed passive DATA connection 07:35:54.552234 > "226 File transfer complete[CR][LF]" 07:35:54.593682 < "QUIT" 07:35:54.593743 > "221 bye bye baby[CR][LF]" 07:35:54.594387 MAIN sockfilt said DISC 07:35:54.594441 ====> Client disconnected 07:35:54.594522 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:54.394176 ====> Client connect 07:35:54.394411 Received DATA (on stdin) 07:35:54.394424 > 160 bytes data, server => client 07:35:54.394436 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.394447 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.394457 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.394520 < 16 bytes data, client => server 07:35:54.394532 'USER anonymous\r\n' 07:35:54.394661 Received DATA (on stdin) 07:35:54.394672 > 33 bytes data, server => client 07:35:54.394682 '331 We are happy you popped in!\r\n' 07:35:54.394766 < 22 bytes data, client => server 07:35:54.394789 'PASS ftp@example.com\r\n' 07:35:54.394973 Received DATA (on stdin) 07:35:54.394985 > 30 bytes data, server => client 07:35:54.394996 '230 Welcome you silly person\r\n' 07:35:54.395045 < 5 bytes data, client => server 07:35:54.395058 'PWD\r\n' 07:35:54.395156 Received DATA (on stdin) 07:35:54.395169 > 30 bytes data, server => client 07:35:54.395180 '257 "/" is current directory\r\n' 07:35:54.395235 < 6 bytes data, client => server 07:35:54.395248 'EPSV\r\n' 07:35:54.397119 Received DATA (on stdin) 07:35:54.397131 > 38 bytes data, server => client 07:35:54.397142 '229 Entering Passive Mode (|||42103|)\n' 07:35:54.397242 < 8 bytes data, client => server 07:35:54.397256 'TYPE I\r\n' 07:35:54.397426 Received DATA (on stdin) 07:35:54.397437 > 33 bytes data, server => client 07:35:54.397448 '200 I modify TYPE as you wanted\r\n' 07:35:54.397490 < 21 bytes data, client => server 07:35:54.397500 'SIZE verifiedserver\r\n' 07:35:54.397593 Received DATA (on stdin) 07:35:54.397603 > 8 bytes data, server => client 07:35:54.397613 '213 17\r\n' 07:35:54.397653 < 21 bytes data, client => server 07:35:54.397663 'RETR verifiedserver\r\n' 07:35:54.397772 Received DATA (on stdin) 07:35:54.397794 > 29 bytes data, server => client 07:35:54.397806 '150 Binary junk (17 bytes).\r\n' 07:35:54.398219 Received DATA (on stdin) 07:35:54.398234 > 28 bytes data, server => client 07:35:54.398244 '226 File transfer complete\r\n' 07:35:54.439485 < 6 bytes data, client => server 07:35:54.439512 'QUIT\r\n' 07:35:54.439733 Received DATA (on stdin) 07:35:54.439747 > 18 bytes data, server => client 07:35:54.439757 '221 bye bye baby\r\n' 07:35:54.440290 ====> Client disconnect 07:35:54.440511 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:54.396772 Running IPv4 version 07:35:54.396831 Listening on port 42103 07:35:54.396875 Wrote pid 124743 to log/23/server/ftp_sockdata.pid 07:35:54.396894 Received PING (on stdin) 07:35:54.396973 Received PORT (on stdin) 07:35:54.397273 ====> Client connect 07:35:54.397832 Received DATA (on stdin) 07:35:54.397844 > 17 bytes data, server => client 07:35:54.397854 'WE ROOLZ: 81897\r\n' 07:35:54.397878 Received DISC (on stdin) 07:35:54.397892 ====> Client forcibly disconnected 07:35:54.397961 Received QUIT (on stdin) 07:35:54.397970 quits 07:35:54.398030 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:54.370798 ====> Client connect 07:35:54.370831 accept_connection 3 returned 4 07:35:54.370847 accept_connection 3 returned 0 07:35:54.370860 Read 93 bytes 07:35:54.370870 Process 93 bytes request 07:35:54.370884 Got request: GET /verifiedserver HTTP/1.1 07:35:54.370893 Are-we-friendly question received 07:35:54.370916 Wrote request (93 bytes) input to log/23/server.input 07:35:54.370932 Identifying ourselves as friends 07:35:54.370982 Response sent (56 bytes) and written to log/23/server.response 07:35:54.370991 special request received, no persistency 07:35:54.371000 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 973 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind973 ==124874== ==124874== Process terminating with default action of signal 4 (SIGILL) ==124874== Illegal opcode at address 0x4003082 ==124874== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124874== by 0x4003082: main (tool_main.c:234) === End of file valgrind973 test 0975...[HTTP with auth redirected to FTP allowing auth to continue] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind975 ../src/curl -q --output log/5/curl975.out --include --trace-ascii log/5/trace975 --trace-config all --trace-time http://127.0.0.1:46675/975 --location-trusted -u joe:secret > log/5/stdout975 2> log/5/stderr975 975: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 975 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind975 ../src/curl -q --output log/5/curl975.out --include --trace-ascii log/5/trace975 --trace-config all --trace-time http://127.0.0.1:46675/975 --location-trusted -u joe:secret > log/5/stdout975 2> log/5/stderr975 === End of file commands.log === Start of file ftp_server.log 07:35:54.561727 ====> Client connect 07:35:54.561873 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.562194 < "USER anonymous" 07:35:54.562242 > "331 We are happy you popped in![CR][LF]" 07:35:54.562427 < "PASS ftp@example.com" 07:35:54.562454 > "230 Welcome you silly person[CR][LF]" 07:35:54.562592 < "PWD" 07:35:54.562618 > "257 "/" is current directory[CR][LF]" 07:35:54.562750 < "EPSV" 07:35:54.562771 ====> Passive DATA channel requested by client 07:35:54.562783 DATA sockfilt for passive data channel starting... 07:35:54.565086 DATA sockfilt for passive data channel started (pid 124779) 07:35:54.565205 DATA sockfilt for passive data channel listens on port 36459 07:35:54.565243 > "229 Entering Passive Mode (|||36459|)[LF]" 07:35:54.565261 Client has been notified that DATA conn will be accepted on port 36459 07:35:54.565458 Client connects to port 36459 07:35:54.565485 ====> Client established CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind979 ../src/curl -q --output log/14/curl979.out --include --trace-ascii log/14/trace979 --trace-config all --trace-time http://first:secret@127.0.0.1:37963/979 -L -u smith:doggie > log/14/stdout979 2> log/14/stderr979 passive DATA connection on port 36459 07:35:54.565543 < "TYPE I" 07:35:54.565566 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:54.565703 < "SIZE verifiedserver" 07:35:54.565732 > "213 17[CR][LF]" 07:35:54.565863 < "RETR verifiedserver" 07:35:54.565890 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:54.565957 =====> Closing passive DATA connection... 07:35:54.565971 Server disconnects passive DATA connection 07:35:54.566115 Server disconnected passive DATA connection 07:35:54.566134 DATA sockfilt for passive data channel quits (pid 124779) 07:35:54.566385 DATA sockfilt for passive data channel quit (pid 124779) 07:35:54.566404 =====> Closed passive DATA connection 07:35:54.566427 > "226 File transfer complete[CR][LF]" 07:35:54.607041 < "QUIT" 07:35:54.607094 > "221 bye bye baby[CR][LF]" 07:35:54.607341 MAIN sockfilt said DISC 07:35:54.607368 ====> Client disconnected 07:35:54.607433 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:54.407600 ====> Client connect 07:35:54.407868 Received DATA (on stdin) 07:35:54.407881 > 160 bytes data, server => client 07:35:54.407893 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.407903 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.407913 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.407996 < 16 bytes data, client => server 07:35:54.408026 'USER anonymous\r\n' 07:35:54.408230 Received DATA (on stdin) 07:35:54.408242 > 33 bytes data, server => client 07:35:54.408253 '331 We are happy you popped in!\r\n' 07:35:54.408315 < 22 bytes data, client => server 07:35:54.408334 'PASS ftp@example.com\r\n' 07:35:54.408440 Received DATA (on stdin) 07:35:54.408451 > 30 bytes data, server => client 07:35:54.408461 '230 Welcome you silly person\r\n' 07:35:54.408503 < 5 bytes data, client => server 07:35:54.408513 'PWD\r\n' 07:35:54.408600 Received DATA (on stdin) 07:35:54.408609 > 30 bytes data, server => client 07:35:54.408619 '257 "/" is current directory\r\n' 07:35:54.408665 < 6 bytes data, client => server 07:35:54.408675 'EPSV\r\n' 07:35:54.411252 Received DATA (on stdin) 07:35:54.411264 > 38 bytes data, server => client 07:35:54.411273 '229 Entering Passive Mode (|||36459|)\n' 07:35:54.411367 < 8 bytes data, client => server 07:35:54.411380 'TYPE I\r\n' 07:35:54.411551 Received DATA (on stdin) 07:35:54.411562 > 33 bytes data, server => client 07:35:54.411573 '200 I modify TYPE as you wanted\r\n' 07:35:54.411615 < 21 bytes data, client => server 07:35:54.411626 'SIZE verifiedserver\r\n' 07:35:54.411714 Received DATA (on stdin) 07:35:54.411724 > 8 bytes data, server => client 07:35:54.411734 '213 17\r\n' 07:35:54.411774 < 21 bytes data, client => server 07:35:54.411784 'RETR verifiedserver\r\n' 07:35:54.411956 Received DATA (on stdin) 07:35:54.411966 > 29 bytes data, server => client 07:35:54.411977 '150 Binary junk (17 bytes).\r\n' 07:35:54.412411 Received DATA (on stdin) 07:35:54.412423 > 28 bytes data, server => client 07:35:54.412433 '226 File transfer complete\r\n' 07:35:54.452858 < 6 bytes data, client => server 07:35:54.452887 'QUIT\r\n' 07:35:54.453086 Received DATA (on stdin) 07:35:54.453099 > 18 bytes data, server => client 07:35:54.453110 '221 bye bye baby\r\n' 07:35:54.453275 ====> Client disconnect 07:35:54.453417 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:54.410874 Running IPv4 version 07:35:54.410951 Listening on port 36459 07:35:54.410994 Wrote pid 124779 to log/5/server/ftp_sockdata.pid 07:35:54.411016 Received PING (on stdin) 07:35:54.411106 Received PORT (on stdin) 07:35:54.411399 ====> Client connect 07:35:54.411999 Received DATA (on stdin) 07:35:54.412011 > 17 bytes data, server => client 07:35:54.412022 'WE ROOLZ: 79836\r\n' 07:35:54.412043 Received DISC (on stdin) 07:35:54.412054 ====> Client forcibly disconnected 07:35:54.412123 Received QUIT (on stdin) 07:35:54.412133 quits 07:35:54.412203 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:54.383722 ====> Client connect 07:35:54.383755 accept_connection 3 returned 4 07:35:54.383771 accept_connection 3 returned 0 07:35:54.383784 Read 93 bytes 07:35:54.383793 Process 93 bytes request 07:35:54.383805 Got request: GET /verifiedserver HTTP/1.1 07:35:54.383815 Are-we-friendly question received 07:35:54.383838 Wrote request (93 bytes) input to log/5/server.input 07:35:54.383854 Identifying ourselves as friends 07:35:54.383902 Response sent (56 bytes) and written to log/5/server.response 07:35:54.383912 special request received, no persistency 07:35:54.383921 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 975 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind975 ==124899== ==124899== Process terminating with default action of signal 4 (SIGILL) ==124899== Illegal opcode at address 0x4003082 ==124899== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==124899== by 0x4003082: main (tool_main.c:234) === End of file valgrind975 test 0979...[-u with redirect to absolute URL using same origin and auth] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind979 ../src/curl -q --output log/14/curl979.out --include --trace-ascii log/14/trace979 --trace-config all --trace-time http://first:secret@127.0.0.1:37963/979 -L -u smith:doggie > log/14/stdout979 2> log/14/stderr979 979: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 979 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind979 ../src/curl -q --output log/14/curl979.out --include --trace-ascii log/14/trace979 --trace-config all --trace-time http://first:secret@127.0.0.1:37963/979 -L -u smith:doggie > log/14/stdout979 2> log/14/stderr979 === End of file commands.log === Start of file http_server.log 07:35:54.570684 ====> Client connect 07:35:54.570712 accept_connection 3 returned 4 07:35:54.570725 accept_connection 3 returned 0 07:35:54.570736 Read 93 bytes 07:35:54.570743 Process 93 bytes request 07:35:54.570753 Got request: GET /verifiedserver HTTP/1.1 07:35:54.570760 Are-we-friendly question received 07:35:54.570780 Wrote request (93 bytes) input to log/14/server.input 07:35:54.570792 Identifying ourselves as friends 07:35:54.570834 Response sent (56 bytes) and written to log/14/server.response 07:35:54.570841 special request received, no persistency 07:35:54.570848 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 979 === End of file server.cmd === Start of file server.resCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind976 ../src/curl -q --output log/1/curl976.out --include --trace-ascii log/1/trace976 --trace-config all --trace-time -x http://127.0.0.1:38941 http://firsthost.com --location-trusted -u joe:secret > log/1/stdout976 2> log/1/stderr976 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind978 ../src/curl -q --output log/16/curl978.out --include --trace-ascii log/16/trace978 --trace-config all --trace-time http://127.0.0.1:46739/978 --stderr log/16/redir --silent -w '%{stderr}nonsense\n' > log/16/stdout978 2> log/16/stderr978 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind980 ../src/curl -q --output log/13/curl980.out --include --trace-ascii log/13/trace980 --trace-config all --trace-time smtp://127.0.0.1:38115/980 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T - log/13/stdout980 2> log/13/stderr980 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind977 ../src/curl -q --output log/2/curl977.out --include --trace-ascii log/2/trace977 --trace-config all --trace-time -x http://127.0.0.1:45457 http://firsthost.me. -c log/2/cookies977 > log/2/stdout977 2> log/2/stderr977 ponse HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind979 ==125055== ==125055== Process terminating with default action of signal 4 (SIGILL) ==125055== Illegal opcode at address 0x4003082 ==125055== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125055== by 0x4003082: main (tool_main.c:234) === End of file valgrind979 test 0976...[HTTP with auth redirected to HTTP on a diff port --location-trusted] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind976 ../src/curl -q --output log/1/curl976.out --include --trace-ascii log/1/trace976 --trace-config all --trace-time -x http://127.0.0.1:38941 http://firsthost.com --location-trusted -u joe:secret > log/1/stdout976 2> log/1/stderr976 976: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 976 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind976 ../src/curl -q --output log/1/curl976.out --include --trace-ascii log/1/trace976 --trace-config all --trace-time -x http://127.0.0.1:38941 http://firsthost.com --location-trusted -u joe:secret > log/1/stdout976 2> log/1/stderr976 === End of file commands.log === Start of file http_server.log 07:35:54.565593 ====> Client connect 07:35:54.565624 accept_connection 3 returned 4 07:35:54.565640 accept_connection 3 returned 0 07:35:54.565652 Read 93 bytes 07:35:54.565661 Process 93 bytes request 07:35:54.565672 Got request: GET /verifiedserver HTTP/1.1 07:35:54.565680 Are-we-friendly question received 07:35:54.565706 Wrote request (93 bytes) input to log/1/server.input 07:35:54.565721 Identifying ourselves as friends 07:35:54.565776 Response sent (56 bytes) and written to log/1/server.response 07:35:54.565785 special request received, no persistency 07:35:54.565794 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 976 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind976 ==125050== ==125050== Process terminating with default action of signal 4 (SIGILL) ==125050== Illegal opcode at address 0x4003082 ==125050== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125050== by 0x4003082: main (tool_main.c:234) === End of file valgrind976 test 0978...[verify that --stderr works for -w's stderr as well] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind978 ../src/curl -q --output log/16/curl978.out --include --trace-ascii log/16/trace978 --trace-config all --trace-time http://127.0.0.1:46739/978 --stderr log/16/redir --silent -w '%{stderr}nonsense\n' > log/16/stdout978 2> log/16/stderr978 978: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 978 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind978 ../src/curl -q --output log/16/curl978.out --include --trace-ascii log/16/trace978 --trace-config all --trace-time http://127.0.0.1:46739/978 --stderr log/16/redir --silent -w '%{stderr}nonsense\n' > log/16/stdout978 2> log/16/stderr978 === End of file commands.log === Start of file http_server.log 07:35:54.565677 ====> Client connect 07:35:54.565709 accept_connection 3 returned 4 07:35:54.565725 accept_connection 3 returned 0 07:35:54.565739 Read 93 bytes 07:35:54.565748 Process 93 bytes request 07:35:54.565758 Got request: GET /verifiedserver HTTP/1.1 07:35:54.565767 Are-we-friendly question received 07:35:54.565789 Wrote request (93 bytes) input to log/16/server.input 07:35:54.565804 Identifying ourselves as friends 07:35:54.565858 Response sent (56 bytes) and written to log/16/server.response 07:35:54.565866 special request received, no persistency 07:35:54.565874 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 978 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind978 ==125048== ==125048== Process terminating with default action of signal 4 (SIGILL) ==125048== Illegal opcode at address 0x4003082 ==125048== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125048== by 0x4003082: main (tool_main.c:234) === End of file valgrind978 test 0980...[SMTP STARTTLS pipelined server response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind980 ../src/curl -q --output log/13/curl980.out --include --trace-ascii log/13/trace980 --trace-config all --trace-time smtp://127.0.0.1:38115/980 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T - log/13/stdout980 2> log/13/stderr980 980: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 980 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind980 ../src/curl -q --output log/13/curl980.out --include --trace-ascii log/13/trace980 --trace-config all --trace-time smtp://127.0.0.1:38115/980 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T - log/13/stdout980 2> log/13/stderr980 === End of file commands.log === Start of file server.cmd CAPA STARTTLS AUTH PLAIN REPLY STARTTLS 454 currently unavailable\r\n235 Authenticated\r\n250 2.1.0 Sender ok\r\n250 2.1.5 Recipient ok\r\n354 Enter mail\r\n250 2.0.0 Accepted REPLY AUTH 535 5.7.8 Authentication credentials invalid Testnum 980 === End of file server.cmd === Start of file smtp_server.log 07:35:54.762756 ====> Client connect 07:35:54.762900 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.763163 < "EHLO verifiedserver" 07:35:54.763204 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.763424 < "HELP" 07:35:54.763478 > "214 WE ROOLZ: 108218[CR][LF]" 07:35:54.763494 rCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind994 ../src/curl -q --include --trace-ascii log/7/trace994 --trace-config all --trace-time -o "log/7/#1" "http://127.0.0.1:39077/994/{hey,ho}" --skip-existing > log/7/stdout994 2> log/7/stderr994 eturn proof we are we 07:35:54.763776 < "QUIT" 07:35:54.763804 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.764864 MAIN sockfilt said DISC 07:35:54.764891 ====> Client disconnected 07:35:54.764953 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:54.608635 ====> Client connect 07:35:54.608895 Received DATA (on stdin) 07:35:54.608909 > 160 bytes data, server => client 07:35:54.608921 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.608932 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.608942 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.609013 < 21 bytes data, client => server 07:35:54.609025 'EHLO verifiedserver\r\n' 07:35:54.609190 Received DATA (on stdin) 07:35:54.609202 > 53 bytes data, server => client 07:35:54.609213 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.609264 < 6 bytes data, client => server 07:35:54.609274 'HELP\r\n' 07:35:54.609487 Received DATA (on stdin) 07:35:54.609509 > 22 bytes data, server => client 07:35:54.609520 '214 WE ROOLZ: 108218\r\n' 07:35:54.609674 < 6 bytes data, client => server 07:35:54.609689 'QUIT\r\n' 07:35:54.609790 Received DATA (on stdin) 07:35:54.609801 > 35 bytes data, server => client 07:35:54.609812 '221 curl ESMTP server signing off\r\n' 07:35:54.610801 ====> Client disconnect 07:35:54.610936 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-980 mail body === End of file stdin-for-980 === Start of file valgrind980 ==125297== ==125297== Process terminating with default action of signal 4 (SIGILL) ==125297== Illegal opcode at address 0x4003082 ==125297== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125297== by 0x4003082: main (tool_main.c:234) === End of file valgrind980 test 0977...[URL with trailing dot and receiving a cookie for the TLD with dot] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind977 ../src/curl -q --output log/2/curl977.out --include --trace-ascii log/2/trace977 --trace-config all --trace-time -x http://127.0.0.1:45457 http://firsthost.me. -c log/2/cookies977 > log/2/stdout977 2> log/2/stderr977 977: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 977 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind977 ../src/curl -q --output log/2/curl977.out --include --trace-ascii log/2/trace977 --trace-config all --trace-time -x http://127.0.0.1:45457 http://firsthost.me. -c log/2/cookies977 > log/2/stdout977 2> log/2/stderr977 === End of file commands.log === Start of file http_server.log 07:35:54.564308 ====> Client connect 07:35:54.564344 accept_connection 3 returned 4 07:35:54.564360 accept_connection 3 returned 0 07:35:54.564373 Read 93 bytes 07:35:54.564383 Process 93 bytes request 07:35:54.564396 Got request: GET /verifiedserver HTTP/1.1 07:35:54.564405 Are-we-friendly question received 07:35:54.564539 Wrote request (93 bytes) input to log/2/server.input 07:35:54.564556 Identifying ourselves as friends 07:35:54.564606 Response sent (56 bytes) and written to log/2/server.response 07:35:54.564615 special request received, no persistency 07:35:54.564623 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 977 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind977 ==125041== ==125041== Process terminating with default action of signal 4 (SIGILL) ==125041== Illegal opcode at address 0x4003082 ==125041== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125041== by 0x4003082: main (tool_main.c:234) === End of file valgrind977 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind995 ../src/curl -q --trace-ascii log/15/trace995 --trace-config all --trace-time -o log/15/there http://127.0.0.1:36993/995 --skip-existing > log/15/stdout995 2> log/15/stderr995 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind992 ../src/curl -q --output log/20/curl992.out --include --trace-ascii log/20/trace992 --trace-config all --trace-time smtp://127.0.0.1:45155/992 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --login-options "AUTH=XOAUTH2" -T - log/20/stdout992 2> log/20/stderr992 test 0994...[--skip-existing with globbing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind994 ../src/curl -q --include --trace-ascii log/7/trace994 --trace-config all --trace-time -o "log/7/#1" "http://127.0.0.1:39077/994/{hey,ho}" --skip-existing > log/7/stdout994 2> log/7/stderr994 994: stderr FAILED: --- log/7/check-expected 2025-07-18 07:35:55.383779443 +0000 +++ log/7/check-generated 2025-07-18 07:35:55.383779443 +0000 @@ -1,2 +0,0 @@ -Note: skips transfer, "log/7/hey" exists locally[CR][LF] -Note: skips transfer, "log/7/ho" exists locally[CR][LF] == Contents of files in the log/7/ dir after test 994 === Start of file check-expected Note: skips transfer, "log/7/hey" exists locally[CR][LF] Note: skips transfer, "log/7/ho" exists locally[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind994 ../src/curl -q --include --trace-ascii log/7/trace994 --trace-config all --trace-time -o "log/7/#1" "http://127.0.0.1:39077/994/{hey,ho}" --skip-existing > log/7/stdout994 2> log/7/stderr994 === End of file commands.log === Start of file hey content === End of file hey === Start of file ho content === End of file ho === Start of file http_server.log 07:35:54.748281 ====> Client connect 07:35:54.748314 accept_connection 3 returned 4 07:35:54.748330 accept_connection 3 returned 0 07:35:54.748343 Read 93 bytes 07:35:54.748352 Process 93 bytes request 07:35:54.748364 Got request: GET /verifiedserver HTTP/1.1 07:35:54.748373 Are-we-friendly question received 07:35:54.748398 Wrote request (93 bytes) input to log/7/server.input 07:35:54.748413 Identifying ourselves as friends 07:35:54.748465 Response sent (56 bytes) and written to log/7/server.response 07:35:54.748475 special request received, no persistency 07:35:54.748484 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 994 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind994 ==125933== ==125933== Process terminating with default action of signal 4 (SIGILL) ==125933== Illegal opcode at address 0x4003082 ==125933== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125933== by 0x4003082: main (tool_main.c:234) === End of file valgrind994 test 0995...[--skip-existing without file present] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind995 ../src/curl -q --trace-ascii log/15/trace995 --trace-config all --trace-time -o log/15/there http://127.0.0.1:36993/995 --skip-existing > log/15/stdout995 2> log/15/stderr995 995: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 995 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind995 ../src/curl -q --trace-ascii log/15/trace995 --trace-config all --trace-time -o log/15/there http://127.0.0.1:36993/995 --skip-existing > log/15/stdout995 2> log/15/stderr995 === End of file commands.log === Start of file http_server.log 07:35:54.754848 ====> Client connect 07:35:54.754879 accept_connection 3 returned 4 07:35:54.754895 accept_connection 3 returned 0 07:35:54.754908 Read 93 bytes 07:35:54.754918 Process 93 bytes request 07:35:54.754932 Got request: GET /verifiedserver HTTP/1.1 07:35:54.754940 Are-we-friendly question received 07:35:54.754965 Wrote request (93 bytes) input to log/15/server.input 07:35:54.754981 Identifying ourselves as friends 07:35:54.755032 Response sent (56 bytes) and written to log/15/server.response 07:35:54.755041 special request received, no persistency 07:35:54.755050 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 995 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind995 ==125960== ==125960== Process terminating with default action of signal 4 (SIGILL) ==125960== Illegal opcode at address 0x4003082 ==125960== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125960== by 0x4003082: main (tool_main.c:234) === End of file valgrind995 test 0992...[SASL verify default mechanisms are reset by login options] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind992 ../src/curl -q --output log/20/curl992.out --include --trace-ascii log/20/trace992 --trace-config all --trace-time smtp://127.0.0.1:45155/992 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --login-options "AUTH=XOAUTH2" -T - log/20/stdout992 2> log/20/stderr992 992: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 992 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind992 ../src/curl -q --output log/20/curl992.out --include --trace-ascii log/20/trace992 --trace-config all --trace-time smtp://127.0.0.1:45155/992 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --login-options "AUTH=XOAUTH2" -T - log/20/stdout992 2> log/20/stderr992 === End of file commands.log === Start of file server.cmd AUTH OAUTHBEARER XOAUTH2 REPLY AUTH 334 XOAUTH2 supported REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB 235 Authenticated Testnum 992 === End of file server.cmd === Start of file smtp_server.log 07:35:54.900859 ====> Client connect 07:35:54.901010 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.901284 < "EHLO verifiedserver" 07:35:54.901321 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:35:54.901471 < "HELP" 07:35:54.901497 > "214 WE ROOLZ: 121046[CR][LF]" 07:35:54.901509 return proof we are we 07:35:54.901708 < "QUIT" 07:35:54.901731 > "221 curl ESMTP server signing off[CR][LF]" 07:35:54.902625 MAIN sockfilt said DISC 07:35:54.902653 ====> Client disconnected 07:35:54.902729 Awaiting input === End of file smtCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind996 ../src/curl -q --include --trace-ascii log/11/trace996 --trace-config all --trace-time -o log/11/there http://127.0.0.1:41173/996 --skip-existing > log/11/stdout996 2> log/11/stderr996 p_server.log === Start of file smtp_sockfilt.log 07:35:54.746361 ====> Client connect 07:35:54.747008 Received DATA (on stdin) 07:35:54.747027 > 160 bytes data, server => client 07:35:54.747039 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.747050 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.747060 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.747137 < 21 bytes data, client => server 07:35:54.747149 'EHLO verifiedserver\r\n' 07:35:54.747307 Received DATA (on stdin) 07:35:54.747318 > 53 bytes data, server => client 07:35:54.747329 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:54.747377 < 6 bytes data, client => server 07:35:54.747388 'HELP\r\n' 07:35:54.747491 Received DATA (on stdin) 07:35:54.747501 > 22 bytes data, server => client 07:35:54.747511 '214 WE ROOLZ: 121046\r\n' 07:35:54.747597 < 6 bytes data, client => server 07:35:54.747609 'QUIT\r\n' 07:35:54.747712 Received DATA (on stdin) 07:35:54.747722 > 35 bytes data, server => client 07:35:54.747733 '221 curl ESMTP server signing off\r\n' 07:35:54.748562 ====> Client disconnect 07:35:54.748714 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-992 mail body === End of file stdin-for-992 === Start of file valgrind992 ==125931== ==125931== Process terminating with default action of signal 4 (SIGILL) ==125931== Illegal opcode at address 0x4003082 ==125931== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125931== by 0x4003082: main (tool_main.c:234) === End of file valgrind992 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind990 ../src/curl -q --output log/12/curl990.out --include --trace-ascii log/12/trace990 --trace-config all --trace-time http://127.0.0.1:37285/990 -w '%output{log/12/output}%{http_code}\n' > log/12/stdout990 2> log/12/stderr990 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind982 ../src/curl -q --output log/21/curl982.out --include --trace-ascii log/21/trace982 --trace-config all --trace-time pop3://127.0.0.1:34803/982 -u user:secret --ssl > log/21/stdout982 2> log/21/stderr982 test 0996...[--skip-existing with file present] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind996 ../src/curl -q --include --trace-ascii log/11/trace996 --trace-config all --trace-time -o log/11/there http://127.0.0.1:41173/996 --skip-existing > log/11/stdout996 2> log/11/stderr996 996: stderr FAILED: --- log/11/check-expected 2025-07-18 07:35:55.400446110 +0000 +++ log/11/check-generated 2025-07-18 07:35:55.400446110 +0000 @@ -1 +0,0 @@ -Note: skips transfer, "log/11/there" exists locally[CR][LF] == Contents of files in the log/11/ dir after test 996 === Start of file check-expected Note: skips transfer, "log/11/there" exists locally[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind996 ../src/curl -q --include --trace-ascii log/11/trace996 --trace-config all --trace-time -o log/11/there http://127.0.0.1:41173/996 --skip-existing > log/11/stdout996 2> log/11/stderr996 === End of file commands.log === Start of file http_server.log 07:35:54.751030 ====> Client connect 07:35:54.751065 accept_connection 3 returned 4 07:35:54.751081 accept_connection 3 returned 0 07:35:54.751096 Read 93 bytes 07:35:54.751106 Process 93 bytes request 07:35:54.751119 Got request: GET /verifiedserver HTTP/1.1 07:35:54.751128 Are-we-friendly question received 07:35:54.751153 Wrote request (93 bytes) input to log/11/server.input 07:35:54.751169 Identifying ourselves as friends 07:35:54.751224 Response sent (56 bytes) and written to log/11/server.response 07:35:54.751234 special request received, no persistency 07:35:54.751242 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 996 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file there content === End of file there === Start of file valgrind996 ==125935== ==125935== Process terminating with default action of signal 4 (SIGILL) ==125935== Illegal opcode at address 0x4003082 ==125935== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125935== by 0x4003082: main (tool_main.c:234) === End of file valgrind996 test 0990...[use -w %output{}] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind990 ../src/curl -q --output log/12/curl990.out --include --trace-ascii log/12/trace990 --trace-config all --trace-time http://127.0.0.1:37285/990 -w '%output{log/12/output}%{http_code}\n' > log/12/stdout990 2> log/12/stderr990 990: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 990 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind990 ../src/curl -q --output log/12/curl990.out --include --trace-ascii log/12/trace990 --trace-config all --trace-time http://127.0.0.1:37285/990 -w '%output{log/12/output}%{http_code}\n' > log/12/stdout990 2> log/12/stderr990 === End of file commands.log === Start of file http_server.log 07:35:54.653623 ====> Client connect 07:35:54.653649 accept_connection 3 returned 4 07:35:54.653661 accept_connection 3 returned 0 07:35:54.653672 Read 93 bytes 07:35:54.653679 Process 93 bytes request 07:35:54.653689 Got request: GET /verifiedserver HTTP/1.1 07:35:54.653696 Are-we-friendly question received 07:35:54.653714 Wrote request (93 bytes) input to log/12/server.input 07:35:54.653728 Identifying ourselves as friends 07:35:54.653775 Response sent (56 bytes) and written to log/12/server.response 07:35:54.653784 special request received, no persistency 07:35:54.653792 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 990 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind990 ==125414== ==125414== Process terminating with default action of signal 4 (SIGILL) ==125414== Illegal opcode at address 0x4003082 ==125414== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125414== by 0x4003082: main (tool_main.c:234) === End of file valgrind990 test 0982...[POP3 STARTTLS pipelined server response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind982 ../src/curl -q --output log/21/curl982.out --include --trace-ascii log/21/trace982 --trace-config all --trace-time pop3://127.0.0.1:34803/982 -u user:secret --ssl > log/21/stdout982 2> log/21/stderr982 982: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 982 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind982 ../src/curl -q --output log/21/curl982.out --include --trace-ascii log/21/trace982 --trace-config all --trace-time pop3://127.0.0.1:34803/982 -u user:secret --ssl > log/21/stdout982 2> log/21/stderr982 === End of file commands.log === Start of file pop3_server.log 07:35:54.778006 ====> Client connect 07:35:54.778141 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:54.778428 < "CAPA" 07:35:54.778463 > "-ERR Unrecognized command[CR][LF]" 07:35:54.778607 < "RETR verifiedserver" 07:35:54.778630 return proof we are we 07:35:54.778649 > "+OK Mail transfer starts[CR][LF]" 07:35:54.778666 > "WE ROOLZ: 118070[CR][LF]" 07:35:54.778681 > ".[CR][LF]" 07:35:54.820564 < "QUIT" 07:35:54.820628 > "+OK curl POP3 server signing off[CR][LF]" 07:35:54.820966 MAIN sockfilt said DISC 07:35:54.820998 ====> Client disconnected 07:35:54.821102 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:54.623892 ====> Client connect 07:35:54.624124 Received DATA (on stdin) 07:35:54.624150 > 178 bytes data, server => client 07:35:54.624162 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:54.624172 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:54.624182 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:54.624190 've \r\n' 07:35:54.624300 < 6 bytes data, client => server 07:35:5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind981 ../src/curl -q --output log/8/curl981.out --include --trace-ascii log/8/trace981 --trace-config all --trace-time imap://127.0.0.1:38013/981 -T log/8/upload981 -u user:secret --ssl > log/8/stdout981 2> log/8/stderr981 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind991 ../src/curl -q --output log/4/curl991.out --include --trace-ascii log/4/trace991 --trace-config all --trace-time http://127.0.0.1:33235/991 -w '%output{>>log/4/output}%{http_code}' > log/4/stdout991 2> log/4/stderr991 4.624312 'CAPA\r\n' 07:35:54.624450 Received DATA (on stdin) 07:35:54.624465 > 27 bytes data, server => client 07:35:54.624476 '-ERR Unrecognized command\r\n' 07:35:54.624530 < 21 bytes data, client => server 07:35:54.624545 'RETR verifiedserver\r\n' 07:35:54.624666 Received DATA (on stdin) 07:35:54.624679 > 26 bytes data, server => client 07:35:54.624689 '+OK Mail transfer starts\r\n' 07:35:54.624710 Received DATA (on stdin) 07:35:54.624720 > 18 bytes data, server => client 07:35:54.624729 'WE ROOLZ: 118070\r\n' 07:35:54.624740 Received DATA (on stdin) 07:35:54.624749 > 3 bytes data, server => client 07:35:54.624758 '.\r\n' 07:35:54.666328 < 6 bytes data, client => server 07:35:54.666388 'QUIT\r\n' 07:35:54.666628 Received DATA (on stdin) 07:35:54.666656 > 34 bytes data, server => client 07:35:54.666669 '+OK curl POP3 server signing off\r\n' 07:35:54.666894 ====> Client disconnect 07:35:54.667095 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd CAPA STLS USER REPLY STLS -ERR currently unavailable\r\n+OK user accepted\r\n+OK authenticated REPLY PASS -ERR Authentication credentials invalid Testnum 982 === End of file server.cmd === Start of file valgrind982 ==125454== ==125454== Process terminating with default action of signal 4 (SIGILL) ==125454== Illegal opcode at address 0x4003082 ==125454== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125454== by 0x4003082: main (tool_main.c:234) === End of file valgrind982 test 0981...[IMAP STARTTLS pipelined server response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind981 ../src/curl -q --output log/8/curl981.out --include --trace-ascii log/8/trace981 --trace-config all --trace-time imap://127.0.0.1:38013/981 -T log/8/upload981 -u user:secret --ssl > log/8/stdout981 2> log/8/stderr981 981: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 981 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind981 ../src/curl -q --output log/8/curl981.out --include --trace-ascii log/8/trace981 --trace-config all --trace-time imap://127.0.0.1:38013/981 -T log/8/upload981 -u user:secret --ssl > log/8/stdout981 2> log/8/stderr981 === End of file commands.log === Start of file imap_server.log 07:35:54.768291 ====> Client connect 07:35:54.768412 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:54.768813 < "A001 CAPABILITY" 07:35:54.768865 > "A001 BAD Command[CR][LF]" 07:35:54.769035 < "A002 LIST "verifiedserver" *" 07:35:54.769063 LIST_imap got "verifiedserver" * 07:35:54.769086 > "* LIST () "/" "WE ROOLZ: 108619"[CR][LF]" 07:35:54.769103 > "A002 OK LIST Completed[CR][LF]" 07:35:54.769115 return proof we are we 07:35:54.813984 < "A003 LOGOUT" 07:35:54.814028 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:54.814045 > "A003 OK LOGOUT completed[CR][LF]" 07:35:54.814337 MAIN sockfilt said DISC 07:35:54.814361 ====> Client disconnected 07:35:54.814429 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:54.614185 ====> Client connect 07:35:54.614406 Received DATA (on stdin) 07:35:54.614418 > 178 bytes data, server => client 07:35:54.614429 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:54.614443 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:54.614453 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:54.614461 'rve\r\n' 07:35:54.614589 < 17 bytes data, client => server 07:35:54.614614 'A001 CAPABILITY\r\n' 07:35:54.614853 Received DATA (on stdin) 07:35:54.614866 > 18 bytes data, server => client 07:35:54.614877 'A001 BAD Command\r\n' 07:35:54.614932 < 30 bytes data, client => server 07:35:54.614945 'A002 LIST "verifiedserver" *\r\n' 07:35:54.615099 Received DATA (on stdin) 07:35:54.615111 > 34 bytes data, server => client 07:35:54.615121 '* LIST () "/" "WE ROOLZ: 108619"\r\n' 07:35:54.615142 Received DATA (on stdin) 07:35:54.615153 > 24 bytes data, server => client 07:35:54.615163 'A002 OK LIST Completed\r\n' 07:35:54.659822 < 13 bytes data, client => server 07:35:54.659844 'A003 LOGOUT\r\n' 07:35:54.660029 Received DATA (on stdin) 07:35:54.660041 > 36 bytes data, server => client 07:35:54.660051 '* BYE curl IMAP server signing off\r\n' 07:35:54.660075 Received DATA (on stdin) 07:35:54.660084 > 26 bytes data, server => client 07:35:54.660093 'A003 OK LOGOUT completed\r\n' 07:35:54.660277 ====> Client disconnect 07:35:54.660413 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd CAPA STARTTLS REPLY STARTTLS A002 BAD currently unavailable\r\nA003 OK Authenticated\r\nA004 OK Accepted REPLY LOGIN A003 BAD Authentication credentials invalid Testnum 981 === End of file server.cmd === Start of file upload981 Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) From: Fred Foobar Subject: afternoon meeting To: joe@example.com Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Hello Joe, do you think we can meet at 3:30 tomorrow? === End of file upload981 === Start of file valgrind981 ==125434== ==125434== Process terminating with default action of signal 4 (SIGILL) ==125434== Illegal opcode at address 0x4003082 ==125434== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125434== by 0x4003082: main (tool_main.c:234) === End of file valgrind981 test 0991...[use -w %output{} append] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind991 ../src/curl -q --output log/4/curl991.out --include --trace-ascii log/4/trace991 --trace-config all --trace-time http://127.0.0.1:33235/991 -w '%output{>>log/4/output}%{http_code}' > log/4/stdout991 2> log/4/stderr991 991: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 991 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind991 ../src/curl -q --output log/4/curl991.out --include --trace-ascii log/4/trace991 --trace-config all --trace-time http://127.0.0.1:33235/991 -w '%output{>>log/4/output}%{http_code}' > log/4/stdout991 2> log/4/stderr991 === End of file commands.log === Start of file http_server.log 07:35:54.682515 ====> Client connect 07:35:54.682552 accept_connection 3 returned 4 07:35:54.682568 accept_connection 3 returned 0 07:35:54.682589 Read 93 bytes 07:35:54.682599 Process 93 bytes request 07:35:54.682612 Got request: GET /verifiedserver HTTP/1.1 07:35:54.682622 Are-we-friendly question received 07:35:54.682653 Wrote request (93 bytes) input to log/4/server.input 07:35:54.682668 Identifying ourselves as friends 07:35:54.682746 Response sent (56 bytes) and written to log/4/server.response 07:35:54.682756 special request received, no persistency 07:35:54.682796 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of filCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind986 ../src/curl -q --output log/10/curl986.out --include --trace-ascii log/10/trace986 --trace-config all --trace-time --ssl-reqd --ftp-ssl-control ftp://127.0.0.1:39731/986 -T log/10/test986.txt -u user:secret > log/10/stdout986 2> log/10/stderr986 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind983 ../src/curl -q --output log/9/curl983.out --include --trace-ascii log/9/trace983 --trace-config all --trace-time --ssl --ftp-ssl-control ftp://127.0.0.1:36299/983 -T log/9/test983.txt -u user:secret -P 127.0.0.1 > log/9/stdout983 2> log/9/stderr983 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind984 ../src/curl -q --output log/24/curl984.out --include --trace-ascii log/24/trace984 --trace-config all --trace-time imap://127.0.0.1:38951/984 -T log/24/upload984 -u user:secret --ssl-reqd > log/24/stdout984 2> log/24/stderr984 e http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file output line one === End of file output === Start of file server.cmd Testnum 991 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind991 ==125524== ==125524== Process terminating with default action of signal 4 (SIGILL) ==125524== Illegal opcode at address 0x4003082 ==125524== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125524== by 0x4003082: main (tool_main.c:234) === End of file valgrind991 test 0986...[FTP require STARTTLS while preauthenticated] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind986 ../src/curl -q --output log/10/curl986.out --include --trace-ascii log/10/trace986 --trace-config all --trace-time --ssl-reqd --ftp-ssl-control ftp://127.0.0.1:39731/986 -T log/10/test986.txt -u user:secret > log/10/stdout986 2> log/10/stderr986 986: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 986 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind986 ../src/curl -q --output log/10/curl986.out --include --trace-ascii log/10/trace986 --trace-config all --trace-time --ssl-reqd --ftp-ssl-control ftp://127.0.0.1:39731/986 -T log/10/test986.txt -u user:secret > log/10/stdout986 2> log/10/stderr986 === End of file commands.log === Start of file ftp_server.log 07:35:54.804916 ====> Client connect 07:35:54.805090 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.805382 < "USER anonymous" 07:35:54.805416 > "331 We are happy you popped in![CR][LF]" 07:35:54.805589 < "PASS ftp@example.com" 07:35:54.805615 > "230 Welcome you silly person[CR][LF]" 07:35:54.805762 < "PWD" 07:35:54.805789 > "257 "/" is current directory[CR][LF]" 07:35:54.805905 < "EPSV" 07:35:54.805921 ====> Passive DATA channel requested by client 07:35:54.805930 DATA sockfilt for passive data channel starting... 07:35:54.807538 DATA sockfilt for passive data channel started (pid 125394) 07:35:54.807616 DATA sockfilt for passive data channel listens on port 40269 07:35:54.807642 > "229 Entering Passive Mode (|||40269|)[LF]" 07:35:54.807654 Client has been notified that DATA conn will be accepted on port 40269 07:35:54.807822 Client connects to port 40269 07:35:54.807843 ====> Client established passive DATA connection on port 40269 07:35:54.807889 < "TYPE I" 07:35:54.807907 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:54.808017 < "SIZE verifiedserver" 07:35:54.808041 > "213 17[CR][LF]" 07:35:54.808139 < "RETR verifiedserver" 07:35:54.808162 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:54.808215 =====> Closing passive DATA connection... 07:35:54.808225 Server disconnects passive DATA connection 07:35:54.808305 Server disconnected passive DATA connection 07:35:54.808319 DATA sockfilt for passive data channel quits (pid 125394) 07:35:54.808499 DATA sockfilt for passive data channel quit (pid 125394) 07:35:54.808516 =====> Closed passive DATA connection 07:35:54.808535 > "226 File transfer complete[CR][LF]" 07:35:54.854373 < "QUIT" 07:35:54.854424 > "221 bye bye baby[CR][LF]" 07:35:54.855023 MAIN sockfilt said DISC 07:35:54.855049 ====> Client disconnected 07:35:54.855386 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:54.650809 ====> Client connect 07:35:54.651088 Received DATA (on stdin) 07:35:54.651107 > 160 bytes data, server => client 07:35:54.651118 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.651129 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.651138 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.651233 < 16 bytes data, client => server 07:35:54.651244 'USER anonymous\r\n' 07:35:54.651400 Received DATA (on stdin) 07:35:54.651412 > 33 bytes data, server => client 07:35:54.651422 '331 We are happy you popped in!\r\n' 07:35:54.651471 < 22 bytes data, client => server 07:35:54.651489 'PASS ftp@example.com\r\n' 07:35:54.651599 Received DATA (on stdin) 07:35:54.651610 > 30 bytes data, server => client 07:35:54.651621 '230 Welcome you silly person\r\n' 07:35:54.651669 < 5 bytes data, client => server 07:35:54.651680 'PWD\r\n' 07:35:54.651768 Received DATA (on stdin) 07:35:54.651777 > 30 bytes data, server => client 07:35:54.651785 '257 "/" is current directory\r\n' 07:35:54.651827 < 6 bytes data, client => server 07:35:54.651835 'EPSV\r\n' 07:35:54.653636 Received DATA (on stdin) 07:35:54.653646 > 38 bytes data, server => client 07:35:54.653654 '229 Entering Passive Mode (|||40269|)\n' 07:35:54.653763 < 8 bytes data, client => server 07:35:54.653771 'TYPE I\r\n' 07:35:54.653887 Received DATA (on stdin) 07:35:54.653896 > 33 bytes data, server => client 07:35:54.653905 '200 I modify TYPE as you wanted\r\n' 07:35:54.653939 < 21 bytes data, client => server 07:35:54.653947 'SIZE verifiedserver\r\n' 07:35:54.654019 Received DATA (on stdin) 07:35:54.654027 > 8 bytes data, server => client 07:35:54.654034 '213 17\r\n' 07:35:54.654065 < 21 bytes data, client => server 07:35:54.654073 'RETR verifiedserver\r\n' 07:35:54.654195 Received DATA (on stdin) 07:35:54.654216 > 29 bytes data, server => client 07:35:54.654227 '150 Binary junk (17 bytes).\r\n' 07:35:54.654517 Received DATA (on stdin) 07:35:54.654528 > 28 bytes data, server => client 07:35:54.654536 '226 File transfer complete\r\n' 07:35:54.700194 < 6 bytes data, client => server 07:35:54.700218 'QUIT\r\n' 07:35:54.700414 Received DATA (on stdin) 07:35:54.700426 > 18 bytes data, server => client 07:35:54.700437 '221 bye bye baby\r\n' 07:35:54.700958 ====> Client disconnect 07:35:54.701110 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:54.653304 Running IPv4 version 07:35:54.653350 Listening on port 40269 07:35:54.653377 Wrote pid 125394 to log/10/server/ftp_sockdata.pid 07:35:54.653477 Received PING (on stdin) 07:35:54.653539 Received PORT (on stdin) 07:35:54.653743 ====> Client connect 07:35:54.654205 Received DATA (on stdin) 07:35:54.654215 > 17 bytes data, server => client 07:35:54.654222 'WE ROOLZ: 81708\r\n' 07:35:54.654241 Received DISC (on stdin) 07:35:54.654249 ====> Client forcibly disconnected 07:35:54.654301 Received QUIT (on stdin) 07:35:54.654308 quits 07:35:54.654353 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY welcome 230 Welcome REPLY AUTH 500 unknown command Testnum 986 === End of file server.cmd === Start of file test986.txt data to see that FTPS works so does it? === End of file test986.txt === Start of file valgrind986 ==125641== ==125641== Process terminating with default action of signal 4 (SIGILL) ==125641== Illegal opcode at address 0x4003082 ==125641== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125641== by 0x4003082: main (tool_main.c:234) === End of file valgrind986 test 0983...[FTP STARTTLS pipelined server response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind983 ../src/curl -q --output log/9/curl983.out --include --trace-ascii log/9/trace983 --trace-config all --trace-time --ssl --ftp-ssl-control ftp://127.0.0.1:36299/983 -T log/9/test983.txt -u user:secret -P 127.0.0.1 > log/9/stdout983 2> log/9/stderr983 983: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 983 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind983 ../src/curl -q --output log/9/curl983.out --include --trace-ascii log/9/trace983 --trace-config all --trace-time --ssl --ftp-ssl-control ftp://127.0.0.1:36299/983 -T log/9/test983.txt -u user:secret -P 127.0.0.1 > log/9/stdout983 2> log/9/stderr983 === End of file commands.log === Start of file ftp_server.log 07:35:54.780571 ====> Client connect 07:35:54.780720 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:54.780956 < "USER anonymous" 07:35:54.780987 > "331 We are happy you popped in![CR][LF]" 07:35:54.781340 < "PASS ftp@example.com" 07:35:54.781393 > "230 Welcome you silly person[CR][LF]" 07:35:54.781517 < "PWD" 07:35:54.781542 > "257 "/" is current directory[CR][LF]" 07:35:54.781656 < "EPSV" 07:35:54.781677 ====> Passive DATA channel requested by client 07:35:54.781689 DATA sockfilt for passive data channel starting... 07:35:54.783944 DATA sockfilt for passive data channel started (pid 125317) 07:35:54.784205 DATA sockfilt for passive data channel listens on port 36941 07:35:54.784251 > "229 Entering Passive Mode (|||36941|)[LF]" 07:35:54.784271 Client has been notified that DATA conn will be accepted on port 36941 07:35:54.784445 Client connects to port 36941 07:35:54.784475 ====> Client established passive DATA connection on port 36941 07:35:54.784537 < "TYPE I" 07:35:54.784561 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:54.784682 < "SIZE verifiedserver" 07:35:54.784708 > "213 17[CR][LF]" 07:35:54.784819 < "RETR verifiedserver" 07:35:54.784845 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:54.784919 =====> Closing passive DATA connection... 07:35:54.784934 Server disconnects passive DATA connection 07:35:54.784994 Server disconnected passive DATA connection 07:35:54.785011 DATA sockfilt for passive data channel quits (pid 125317) 07:35:54.785218 DATA sockfilt for passive data channel quit (pid 125317) 07:35:54.785250 =====> Closed passive DATA connection 07:35:54.785282 > "226 File transfer complete[CR][LF]" 07:35:54.830277 < "QUIT" 07:35:54.830330 > "221 bye bye baby[CR][LF]" 07:35:54.831285 MAIN sockfilt said DISC 07:35:54.831329 ====> Client disconnected 07:35:54.831410 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:54.626461 ====> Client connect 07:35:54.626721 Received DATA (on stdin) 07:35:54.626741 > 160 bytes data, server => client 07:35:54.626753 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:54.626763 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:54.626772 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:54.626833 < 16 bytes data, client => server 07:35:54.626845 'USER anonymous\r\n' 07:35:54.626977 Received DATA (on stdin) 07:35:54.627001 > 33 bytes data, server => client 07:35:54.627012 '331 We are happy you popped in!\r\n' 07:35:54.627081 < 22 bytes data, client => server 07:35:54.627093 'PASS ftp@example.com\r\n' 07:35:54.627380 Received DATA (on stdin) 07:35:54.627393 > 30 bytes data, server => client 07:35:54.627401 '230 Welcome you silly person\r\n' 07:35:54.627444 < 5 bytes data, client => server 07:35:54.627456 'PWD\r\n' 07:35:54.627523 Received DATA (on stdin) 07:35:54.627532 > 30 bytes data, server => client 07:35:54.627541 '257 "/" is current directory\r\n' 07:35:54.627586 < 6 bytes data, client => server 07:35:54.627599 'EPSV\r\n' 07:35:54.630264 Received DATA (on stdin) 07:35:54.630279 > 38 bytes data, server => client 07:35:54.630288 '229 Entering Passive Mode (|||36941|)\n' 07:35:54.630405 < 8 bytes data, client => server 07:35:54.630416 'TYPE I\r\n' 07:35:54.630541 Received DATA (on stdin) 07:35:54.630550 > 33 bytes data, server => client 07:35:54.630558 '200 I modify TYPE as you wanted\r\n' 07:35:54.630600 < 21 bytes data, client => server 07:35:54.630608 'SIZE verifiedserver\r\n' 07:35:54.630687 Received DATA (on stdin) 07:35:54.630696 > 8 bytes data, server => client 07:35:54.630704 '213 17\r\n' 07:35:54.630741 < 21 bytes data, client => server 07:35:54.630750 'RETR verifiedserver\r\n' 07:35:54.630818 Received DATA (on stdin) 07:35:54.630838 > 29 bytes data, server => client 07:35:54.630852 '150 Binary junk (17 bytes).\r\n' 07:35:54.631253 Received DATA (on stdin) 07:35:54.631273 > 28 bytes data, server => client 07:35:54.631284 '226 File transfer complete\r\n' 07:35:54.676101 < 6 bytes data, client => server 07:35:54.676127 'QUIT\r\n' 07:35:54.676994 Received DATA (on stdin) 07:35:54.677015 > 18 bytes data, server => client 07:35:54.677026 '221 bye bye baby\r\n' 07:35:54.677200 ====> Client disconnect 07:35:54.677399 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:54.629463 Running IPv4 version 07:35:54.629538 Listening on port 36941 07:35:54.629577 Wrote pid 125317 to log/9/server/ftp_sockdata.pid 07:35:54.629593 Received PING (on stdin) 07:35:54.630084 Received PORT (on stdin) 07:35:54.630382 ====> Client connect 07:35:54.630835 Received DATA (on stdin) 07:35:54.630850 > 17 bytes data, server => client 07:35:54.630861 'WE ROOLZ: 80150\r\n' 07:35:54.630918 Received DISC (on stdin) 07:35:54.630928 ====> Client forcibly disconnected 07:35:54.630996 Received QUIT (on stdin) 07:35:54.631004 quits 07:35:54.631054 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY AUTH 500 unknown command\r\n500 unknown command\r\n331 give password\r\n230 Authenticated\r\n257 "/"\r\n200 OK\r\n200 OK\r\n200 OK\r\n226 Transfer complete REPLY PASS 530 Login incorrect Testnum 983 === End of file server.cmd === Start of file test983.txt data to see that FTPS works so does it? === End of file test983.txt === Start of file valgrind983 ==125499== ==125499== Process terminating with default action of signal 4 (SIGILL) ==125499== Illegal opcode at address 0x4003082 ==125499== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125499== by 0x4003082: main (tool_main.c:234) === End of file valgrind983 test 0984...[IMAP require STARTTLS with failing capabilities] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind984 ../src/curl -q --output log/24/curl984.out --include --trace-ascii log/24/trace984 --trace-config all --trace-time imap://127.0.0.1:38951/984 -T log/24/upload984 -u user:secret --ssl-reqd > log/24/stdout984 2> log/24/stderr984 984: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 984 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind984 ../src/curl -q --output log/24/curl984.out --include --trace-ascii log/24/trace984 --trace-config all --trace-time imap://127.0.0.1:38951/984 -T log/24/upload984 -u user:secret --ssl-reqd > log/24/stdout984 2> log/24/stderr984 === End of file commands.log === Start of file imap_server.log 07:35:54.782873 ====> Client connect 07:35:54.782985 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:35:54.783183 < "A001 CAPABILITY" 07:35:54.783211 > "A001 BAD Command[CR][LF]" 07:35:54.783327 < "A002 LIST "verifiedserver" *" 07:35:54.783408 LIST_imap got "verifiedserver" * 07:35:54.783431 > "* LISCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind985 ../src/curl -q --output log/19/curl985.out --include --trace-ascii log/19/trace985 --trace-config all --trace-time pop3://127.0.0.1:39035/985 -u user:secret --ssl-reqd > log/19/stdout985 2> log/19/stderr985 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind997 ../src/curl -q --output log/3/curl997.out --include --trace-ascii log/3/trace997 --trace-config all --trace-time pop3://127.0.0.1:33819 -u user:secret -X 'STAT' > log/3/stdout997 2> log/3/stderr997 T () "/" "WE ROOLZ: 115313"[CR][LF]" 07:35:54.783447 > "A002 OK LIST Completed[CR][LF]" 07:35:54.783461 return proof we are we 07:35:54.827101 < "A003 LOGOUT" 07:35:54.827144 > "* BYE curl IMAP server signing off[CR][LF]" 07:35:54.827157 > "A003 OK LOGOUT completed[CR][LF]" 07:35:54.827271 MAIN sockfilt said DISC 07:35:54.827287 ====> Client disconnected 07:35:54.827339 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:35:54.628766 ====> Client connect 07:35:54.628974 Received DATA (on stdin) 07:35:54.628986 > 178 bytes data, server => client 07:35:54.628995 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:54.629003 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:54.629010 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:35:54.629017 'rve\r\n' 07:35:54.629070 < 17 bytes data, client => server 07:35:54.629084 'A001 CAPABILITY\r\n' 07:35:54.629192 Received DATA (on stdin) 07:35:54.629201 > 18 bytes data, server => client 07:35:54.629209 'A001 BAD Command\r\n' 07:35:54.629252 < 30 bytes data, client => server 07:35:54.629265 'A002 LIST "verifiedserver" *\r\n' 07:35:54.629443 Received DATA (on stdin) 07:35:54.629456 > 34 bytes data, server => client 07:35:54.629471 '* LIST () "/" "WE ROOLZ: 115313"\r\n' 07:35:54.629493 Received DATA (on stdin) 07:35:54.629504 > 24 bytes data, server => client 07:35:54.629514 'A002 OK LIST Completed\r\n' 07:35:54.672948 < 13 bytes data, client => server 07:35:54.672972 'A003 LOGOUT\r\n' 07:35:54.673139 Received DATA (on stdin) 07:35:54.673148 > 36 bytes data, server => client 07:35:54.673156 '* BYE curl IMAP server signing off\r\n' 07:35:54.673179 Received DATA (on stdin) 07:35:54.673187 > 26 bytes data, server => client 07:35:54.673194 'A003 OK LOGOUT completed\r\n' 07:35:54.673222 ====> Client disconnect 07:35:54.673318 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd REPLY CAPABILITY A001 BAD Not implemented Testnum 984 === End of file server.cmd === Start of file upload984 Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) From: Fred Foobar Subject: afternoon meeting To: joe@example.com Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Hello Joe, do you think we can meet at 3:30 tomorrow? === End of file upload984 === Start of file valgrind984 ==125477== ==125477== Process terminating with default action of signal 4 (SIGILL) ==125477== Illegal opcode at address 0x4003082 ==125477== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125477== by 0x4003082: main (tool_main.c:234) === End of file valgrind984 test 0985...[POP3 require STARTTLS with failing capabilities] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind985 ../src/curl -q --output log/19/curl985.out --include --trace-ascii log/19/trace985 --trace-config all --trace-time pop3://127.0.0.1:39035/985 -u user:secret --ssl-reqd > log/19/stdout985 2> log/19/stderr985 985: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 985 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind985 ../src/curl -q --output log/19/curl985.out --include --trace-ascii log/19/trace985 --trace-config all --trace-time pop3://127.0.0.1:39035/985 -u user:secret --ssl-reqd > log/19/stdout985 2> log/19/stderr985 === End of file commands.log === Start of file pop3_server.log 07:35:54.802422 ====> Client connect 07:35:54.802585 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:54.802828 < "CAPA" 07:35:54.802862 > "-ERR Unrecognized command[CR][LF]" 07:35:54.802983 < "RETR verifiedserver" 07:35:54.803005 return proof we are we 07:35:54.803024 > "+OK Mail transfer starts[CR][LF]" 07:35:54.803040 > "WE ROOLZ: 117679[CR][LF]" 07:35:54.803054 > ".[CR][LF]" 07:35:54.844702 < "QUIT" 07:35:54.844751 > "+OK curl POP3 server signing off[CR][LF]" 07:35:54.845074 MAIN sockfilt said DISC 07:35:54.845099 ====> Client disconnected 07:35:54.845155 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:55.648309 ====> Client connect 07:35:55.648579 Received DATA (on stdin) 07:35:55.648594 > 178 bytes data, server => client 07:35:55.648606 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:55.648616 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:55.648625 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:55.648633 've \r\n' 07:35:55.648696 < 6 bytes data, client => server 07:35:55.648710 'CAPA\r\n' 07:35:55.648847 Received DATA (on stdin) 07:35:55.648858 > 27 bytes data, server => client 07:35:55.648868 '-ERR Unrecognized command\r\n' 07:35:55.648911 < 21 bytes data, client => server 07:35:55.648922 'RETR verifiedserver\r\n' 07:35:55.649036 Received DATA (on stdin) 07:35:55.649047 > 26 bytes data, server => client 07:35:55.649056 '+OK Mail transfer starts\r\n' 07:35:55.649074 Received DATA (on stdin) 07:35:55.649083 > 18 bytes data, server => client 07:35:55.649093 'WE ROOLZ: 117679\r\n' 07:35:55.649104 Received DATA (on stdin) 07:35:55.649114 > 3 bytes data, server => client 07:35:55.649123 '.\r\n' 07:35:55.690532 < 6 bytes data, client => server 07:35:55.690555 'QUIT\r\n' 07:35:55.690739 Received DATA (on stdin) 07:35:55.690752 > 34 bytes data, server => client 07:35:55.690763 '+OK curl POP3 server signing off\r\n' 07:35:55.691010 ====> Client disconnect 07:35:55.691137 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY CAPA -ERR Not implemented Testnum 985 === End of file server.cmd === Start of file valgrind985 ==125588== ==125588== Process terminating with default action of signal 4 (SIGILL) ==125588== Illegal opcode at address 0x4003082 ==125588== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==125588== by 0x4003082: main (tool_main.c:234) === End of file valgrind985 test 0997...[POP3 retrieve STAT (CUSTOMREQUEST)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind997 ../src/curl -q --output log/3/curl997.out --include --trace-ascii log/3/trace997 --trace-config all --trace-time pop3://127.0.0.1:33819 -u user:secret -X 'STAT' > log/3/stdout997 2> log/3/stderr997 997: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 997 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind997 ../src/curl -q --output log/3/curl997.out --include --trace-ascii log/3/trace997 --trace-config all --trace-time pop3://127.0.0.1:33819 -u user:secret -X 'STAT' > log/3/stdout997 2> log/3/stderr997 === End of file commands.log === Start of file pop3_server.log 07:35:54.908178 ====> Client connect 07:35:54.908499 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:54.908806 < "CAPA" 07:35:54.908844 > "-ERR Unrecognized command[CR][LF]" 07:35:54.908997 < "RETR verifiedserver" 07:35:54.909023 return proof we are we 07:35:54.909043 > "+OK Mail transfer starts[CR][LF]" 07:35:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind993 ../src/curl -q --output log/6/curl993.out --include --trace-ascii log/6/trace993 --trace-config all --trace-time pop3://127.0.0.1:40149/ -u user:secret > log/6/stdout993 2> log/6/stderr993 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind998 ../src/curl -q --output log/22/curl998.out --include --trace-ascii log/22/trace998 --trace-config all --trace-time -x 127.0.0.1:46761 http://alberto:einstein@somwhere.example/998 --location-trusted > log/22/stdout998 2> log/22/stderr998 54.909059 > "WE ROOLZ: 118204[CR][LF]" 07:35:54.909074 > ".[CR][LF]" 07:35:54.950447 < "QUIT" 07:35:54.950506 > "+OK curl POP3 server signing off[CR][LF]" 07:35:54.951727 MAIN sockfilt said DISC 07:35:54.951795 ====> Client disconnected 07:35:54.951877 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:54.753079 ====> Client connect 07:35:54.754502 Received DATA (on stdin) 07:35:54.754518 > 178 bytes data, server => client 07:35:54.754530 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:54.754541 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:54.754551 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:54.754559 've \r\n' 07:35:54.754635 < 6 bytes data, client => server 07:35:54.754647 'CAPA\r\n' 07:35:54.754829 Received DATA (on stdin) 07:35:54.754841 > 27 bytes data, server => client 07:35:54.754851 '-ERR Unrecognized command\r\n' 07:35:54.754900 < 21 bytes data, client => server 07:35:54.754911 'RETR verifiedserver\r\n' 07:35:54.755057 Received DATA (on stdin) 07:35:54.755068 > 26 bytes data, server => client 07:35:54.755078 '+OK Mail transfer starts\r\n' 07:35:54.755097 Received DATA (on stdin) 07:35:54.755106 > 18 bytes data, server => client 07:35:54.755116 'WE ROOLZ: 118204\r\n' 07:35:54.755127 Received DATA (on stdin) 07:35:54.755137 > 3 bytes data, server => client 07:35:54.755146 '.\r\n' 07:35:54.796237 < 6 bytes data, client => server 07:35:54.796272 'QUIT\r\n' 07:35:54.796496 Received DATA (on stdin) 07:35:54.796508 > 34 bytes data, server => client 07:35:54.796519 '+OK curl POP3 server signing off\r\n' 07:35:54.797613 ====> Client disconnect 07:35:54.797874 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd CAPA TOP USER Testnum 997 === End of file server.cmd === Start of file valgrind997 ==126119== ==126119== Process terminating with default action of signal 4 (SIGILL) ==126119== Illegal opcode at address 0x4003082 ==126119== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126119== by 0x4003082: main (tool_main.c:234) === End of file valgrind997 test 0993...[POP3 LIST 1000 messages] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind993 ../src/curl -q --output log/6/curl993.out --include --trace-ascii log/6/trace993 --trace-config all --trace-time pop3://127.0.0.1:40149/ -u user:secret > log/6/stdout993 2> log/6/stderr993 993: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 993 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind993 ../src/curl -q --output log/6/curl993.out --include --trace-ascii log/6/trace993 --trace-config all --trace-time pop3://127.0.0.1:40149/ -u user:secret > log/6/stdout993 2> log/6/stderr993 === End of file commands.log === Start of file pop3_server.log 07:35:54.896900 ====> Client connect 07:35:54.897076 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:35:54.897375 < "CAPA" 07:35:54.897412 > "-ERR Unrecognized command[CR][LF]" 07:35:54.897563 < "RETR verifiedserver" 07:35:54.897589 return proof we are we 07:35:54.897609 > "+OK Mail transfer starts[CR][LF]" 07:35:54.897626 > "WE ROOLZ: 118131[CR][LF]" 07:35:54.897640 > ".[CR][LF]" 07:35:54.943774 < "QUIT" 07:35:54.943834 > "+OK curl POP3 server signing off[CR][LF]" 07:35:54.945456 MAIN sockfilt said DISC 07:35:54.945527 ====> Client disconnected 07:35:54.945612 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:35:54.742758 ====> Client connect 07:35:54.743073 Received DATA (on stdin) 07:35:54.743087 > 178 bytes data, server => client 07:35:54.743099 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:35:54.743109 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:35:54.743119 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:35:54.743128 've \r\n' 07:35:54.743208 < 6 bytes data, client => server 07:35:54.743219 'CAPA\r\n' 07:35:54.743396 Received DATA (on stdin) 07:35:54.743407 > 27 bytes data, server => client 07:35:54.743417 '-ERR Unrecognized command\r\n' 07:35:54.743464 < 21 bytes data, client => server 07:35:54.743474 'RETR verifiedserver\r\n' 07:35:54.743624 Received DATA (on stdin) 07:35:54.743634 > 26 bytes data, server => client 07:35:54.743644 '+OK Mail transfer starts\r\n' 07:35:54.743663 Received DATA (on stdin) 07:35:54.743672 > 18 bytes data, server => client 07:35:54.743682 'WE ROOLZ: 118131\r\n' 07:35:54.743693 Received DATA (on stdin) 07:35:54.743702 > 3 bytes data, server => client 07:35:54.743711 '.\r\n' 07:35:54.789552 < 6 bytes data, client => server 07:35:54.789592 'QUIT\r\n' 07:35:54.789817 Received DATA (on stdin) 07:35:54.789850 > 34 bytes data, server => client 07:35:54.789862 '+OK curl POP3 server signing off\r\n' 07:35:54.790129 ====> Client disconnect 07:35:54.791604 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 993 === End of file server.cmd === Start of file valgrind993 ==126184== ==126184== Process terminating with default action of signal 4 (SIGILL) ==126184== Illegal opcode at address 0x4003082 ==126184== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126184== by 0x4003082: main (tool_main.c:234) === End of file valgrind993 test 0998...[HTTP with auth in URL redirected to another host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind998 ../src/curl -q --output log/22/curl998.out --include --trace-ascii log/22/trace998 --trace-config all --trace-time -x 127.0.0.1:46761 http://alberto:einstein@somwhere.example/998 --location-trusted > log/22/stdout998 2> log/22/stderr998 998: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 998 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind998 ../src/curl -q --output log/22/curl998.out --include --trace-ascii log/22/trace998 --trace-config all --trace-time -x 127.0.0.1:46761 http://alberto:einstein@somwhere.example/998 --location-trusted > log/22/stdout998 2> log/22/stderr998 === End of file commands.log === Start of file http_server.log 07:35:55.042954 ====> Client connect 07:35:55.042990 accept_connection 3 returned 4 07:35:55.043007 accept_connection 3 returned 0 07:35:55.043021 Read 93 bytes 07:35:55.043031 Process 93 bytes request 07:35:55.043045 Got request: GET /verifiedserver HTTP/1.1 07:35:55.043054 Are-we-friendly question received 07:35:55.043079 Wrote request (93 bytes) input to log/22/server.input 07:35:55.043096 Identifying ourselves as friends 07:35:55.043151 Response sent (56 bytes) and written to log/22/server.response 07:35:55.043161 special request received, no persistency 07:35:55.043170 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind999 ../src/curl -q --output log/18/curl999.out --include --trace-ascii log/18/trace999 --trace-config all --trace-time -x 127.0.0.1:45825 http://alberto:einstein@somwhere.example/999 http://somewhere.else.example/999 > log/18/stdout999 2> log/18/stderr999 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1001 ../src/curl -q --output log/23/curl1001.out --include --trace-ascii log/23/trace1001 --trace-config all --trace-time http://127.0.0.1:45701/1001 -u auser:apasswd --digest -T log/23/1001 -x http://127.0.0.1:45701 -C 2 -X GET > log/23/stdout1001 2> log/23/stderr1001 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1000 ../src/curl -q --output log/17/curl1000.out --include --trace-ascii log/17/trace1000 --trace-config all --trace-time ftp://127.0.0.1:39713/1000/ -I > log/17/stdout1000 2> log/17/stderr1000 log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 998 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind998 ==126319== ==126319== Process terminating with default action of signal 4 (SIGILL) ==126319== Illegal opcode at address 0x4003082 ==126319== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126319== by 0x4003082: main (tool_main.c:234) === End of file valgrind998 test 0999...[HTTP with auth in first URL but not second] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind999 ../src/curl -q --output log/18/curl999.out --include --trace-ascii log/18/trace999 --trace-config all --trace-time -x 127.0.0.1:45825 http://alberto:einstein@somwhere.example/999 http://somewhere.else.example/999 > log/18/stdout999 2> log/18/stderr999 999: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 999 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind999 ../src/curl -q --output log/18/curl999.out --include --trace-ascii log/18/trace999 --trace-config all --trace-time -x 127.0.0.1:45825 http://alberto:einstein@somwhere.example/999 http://somewhere.else.example/999 > log/18/stdout999 2> log/18/stderr999 === End of file commands.log === Start of file http_server.log 07:35:55.046051 ====> Client connect 07:35:55.046086 accept_connection 3 returned 4 07:35:55.046101 accept_connection 3 returned 0 07:35:55.046113 Read 93 bytes 07:35:55.046122 Process 93 bytes request 07:35:55.046133 Got request: GET /verifiedserver HTTP/1.1 07:35:55.046141 Are-we-friendly question received 07:35:55.046166 Wrote request (93 bytes) input to log/18/server.input 07:35:55.046181 Identifying ourselves as friends 07:35:55.046237 Response sent (56 bytes) and written to log/18/server.response 07:35:55.046246 special request received, no persistency 07:35:55.046254 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 999 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind999 ==126330== ==126330== Process terminating with default action of signal 4 (SIGILL) ==126330== Illegal opcode at address 0x4003082 ==126330== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126330== by 0x4003082: main (tool_main.c:234) === End of file valgrind999 test 1001...[HTTP POST --digest with PUT and resumed upload and modified method] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1001 ../src/curl -q --output log/23/curl1001.out --include --trace-ascii log/23/trace1001 --trace-config all --trace-time http://127.0.0.1:45701/1001 -u auser:apasswd --digest -T log/23/1001 -x http://127.0.0.1:45701 -C 2 -X GET > log/23/stdout1001 2> log/23/stderr1001 1001: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1001 === Start of file 1001 test === End of file 1001 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1001 ../src/curl -q --output log/23/curl1001.out --include --trace-ascii log/23/trace1001 --trace-config all --trace-time http://127.0.0.1:45701/1001 -u auser:apasswd --digest -T log/23/1001 -x http://127.0.0.1:45701 -C 2 -X GET > log/23/stdout1001 2> log/23/stderr1001 === End of file commands.log === Start of file http_server.log 07:35:55.063004 ====> Client connect 07:35:55.063037 accept_connection 3 returned 4 07:35:55.063054 accept_connection 3 returned 0 07:35:55.063069 Read 93 bytes 07:35:55.063079 Process 93 bytes request 07:35:55.063093 Got request: GET /verifiedserver HTTP/1.1 07:35:55.063102 Are-we-friendly question received 07:35:55.063125 Wrote request (93 bytes) input to log/23/server.input 07:35:55.063141 Identifying ourselves as friends 07:35:55.063194 Response sent (56 bytes) and written to log/23/server.response 07:35:55.063204 special request received, no persistency 07:35:55.063212 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1001 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1001 ==126365== ==126365== Process terminating with default action of signal 4 (SIGILL) ==126365== Illegal opcode at address 0x4003082 ==126365== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126365== by 0x4003082: main (tool_main.c:234) === End of file valgrind1001 test 1000...[FTP dir list PASV with -I] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1000 ../src/curl -q --output log/17/curl1000.out --include --trace-ascii log/17/trace1000 --trace-config all --trace-time ftp://127.0.0.1:39713/1000/ -I > log/17/stdout1000 2> log/17/stderr1000 1000: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1000 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1000 ../src/curl -q --output log/17/curl1000.out --include --trace-ascii log/17/trace1000 --trace-config all --trace-time ftp://127.0.0.1:39713/1000/ -I > log/17/stdout1000 2> log/17/stderr1000 === End of file commands.log === Start of file ftp_server.log 07:35:55.198678 ====> Client connect 07:35:55.198841 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.199136 < "USER anonymous" 07:35:55.199169 > "331 We are happy you popped in![CR][LF]" 07:35:55.199320 < "PASS ftp@example.com" 07:35:55.199344 > "230 Welcome you silly person[CR][LF]" 07:35:55.199479 < "PWD" 07:35:55.199504 > "257 "/" is current directory[CR][LF]" 07:35:55.199646 < "EPSV" 07:35:55.199667 ====> Passive DATA channel requested by client 07:35:55.199679 DATA sockfilt for passive data chanCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1002 ../src/curl -q --output log/5/curl1002.out --include --trace-ascii log/5/trace1002 --trace-config all --trace-time http://127.0.0.1:46675/1002.upload1 -T log/5/1002 http://127.0.0.1:46675/1002.upload2 -T log/5/1002 -u auser:apasswd --digest -x http://127.0.0.1:46675 -C 2 -X GET > log/5/stdout1002 2> log/5/stderr1002 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1004 ../src/curl -q --output log/1/curl1004.out --include --trace-ascii log/1/trace1004 --trace-config all --trace-time http://127.0.0.1:38941/1004 --proxy "" > log/1/stdout1004 2> log/1/stderr1004 nel starting... 07:35:55.201727 DATA sockfilt for passive data channel started (pid 126299) 07:35:55.201819 DATA sockfilt for passive data channel listens on port 32841 07:35:55.201854 > "229 Entering Passive Mode (|||32841|)[LF]" 07:35:55.201871 Client has been notified that DATA conn will be accepted on port 32841 07:35:55.202085 Client connects to port 32841 07:35:55.202109 ====> Client established passive DATA connection on port 32841 07:35:55.202171 < "TYPE I" 07:35:55.202194 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.202334 < "SIZE verifiedserver" 07:35:55.202364 > "213 17[CR][LF]" 07:35:55.202500 < "RETR verifiedserver" 07:35:55.202529 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:55.202597 =====> Closing passive DATA connection... 07:35:55.202611 Server disconnects passive DATA connection 07:35:55.202816 Server disconnected passive DATA connection 07:35:55.202841 DATA sockfilt for passive data channel quits (pid 126299) 07:35:55.203062 DATA sockfilt for passive data channel quit (pid 126299) 07:35:55.203085 =====> Closed passive DATA connection 07:35:55.203109 > "226 File transfer complete[CR][LF]" 07:35:55.247110 < "QUIT" 07:35:55.247160 > "221 bye bye baby[CR][LF]" 07:35:55.247641 MAIN sockfilt said DISC 07:35:55.247682 ====> Client disconnected 07:35:55.247748 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.043601 ====> Client connect 07:35:55.044843 Received DATA (on stdin) 07:35:55.044864 > 160 bytes data, server => client 07:35:55.044877 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.044888 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.044898 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.044992 < 16 bytes data, client => server 07:35:55.045005 'USER anonymous\r\n' 07:35:55.045156 Received DATA (on stdin) 07:35:55.045167 > 33 bytes data, server => client 07:35:55.045178 '331 We are happy you popped in!\r\n' 07:35:55.045223 < 22 bytes data, client => server 07:35:55.045234 'PASS ftp@example.com\r\n' 07:35:55.045328 Received DATA (on stdin) 07:35:55.045339 > 30 bytes data, server => client 07:35:55.045349 '230 Welcome you silly person\r\n' 07:35:55.045391 < 5 bytes data, client => server 07:35:55.045401 'PWD\r\n' 07:35:55.045487 Received DATA (on stdin) 07:35:55.045498 > 30 bytes data, server => client 07:35:55.045509 '257 "/" is current directory\r\n' 07:35:55.045558 < 6 bytes data, client => server 07:35:55.045569 'EPSV\r\n' 07:35:55.047857 Received DATA (on stdin) 07:35:55.047870 > 38 bytes data, server => client 07:35:55.047881 '229 Entering Passive Mode (|||32841|)\n' 07:35:55.048020 < 8 bytes data, client => server 07:35:55.048030 'TYPE I\r\n' 07:35:55.048178 Received DATA (on stdin) 07:35:55.048189 > 33 bytes data, server => client 07:35:55.048200 '200 I modify TYPE as you wanted\r\n' 07:35:55.048243 < 21 bytes data, client => server 07:35:55.048254 'SIZE verifiedserver\r\n' 07:35:55.048348 Received DATA (on stdin) 07:35:55.048360 > 8 bytes data, server => client 07:35:55.048369 '213 17\r\n' 07:35:55.048412 < 21 bytes data, client => server 07:35:55.048422 'RETR verifiedserver\r\n' 07:35:55.048594 Received DATA (on stdin) 07:35:55.048605 > 29 bytes data, server => client 07:35:55.048615 '150 Binary junk (17 bytes).\r\n' 07:35:55.049094 Received DATA (on stdin) 07:35:55.049106 > 28 bytes data, server => client 07:35:55.049117 '226 File transfer complete\r\n' 07:35:55.092911 < 6 bytes data, client => server 07:35:55.092941 'QUIT\r\n' 07:35:55.093149 Received DATA (on stdin) 07:35:55.093160 > 18 bytes data, server => client 07:35:55.093170 '221 bye bye baby\r\n' 07:35:55.093562 ====> Client disconnect 07:35:55.093695 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.047441 Running IPv4 version 07:35:55.047496 Listening on port 32841 07:35:55.047538 Wrote pid 126299 to log/17/server/ftp_sockdata.pid 07:35:55.047658 Received PING (on stdin) 07:35:55.047732 Received PORT (on stdin) 07:35:55.047994 ====> Client connect 07:35:55.048639 Received DATA (on stdin) 07:35:55.048651 > 17 bytes data, server => client 07:35:55.048661 'WE ROOLZ: 79834\r\n' 07:35:55.048685 Received DISC (on stdin) 07:35:55.048696 ====> Client forcibly disconnected 07:35:55.048833 Received QUIT (on stdin) 07:35:55.048845 quits 07:35:55.048901 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1000 === End of file server.cmd === Start of file valgrind1000 ==126454== ==126454== Process terminating with default action of signal 4 (SIGILL) ==126454== Illegal opcode at address 0x4003082 ==126454== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126454== by 0x4003082: main (tool_main.c:234) === End of file valgrind1000 test 1002...[HTTP PUT with Digest auth, resumed upload and modified method, twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1002 ../src/curl -q --output log/5/curl1002.out --include --trace-ascii log/5/trace1002 --trace-config all --trace-time http://127.0.0.1:46675/1002.upload1 -T log/5/1002 http://127.0.0.1:46675/1002.upload2 -T log/5/1002 -u auser:apasswd --digest -x http://127.0.0.1:46675 -C 2 -X GET > log/5/stdout1002 2> log/5/stderr1002 1002: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1002 === Start of file 1002 test === End of file 1002 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1002 ../src/curl -q --output log/5/curl1002.out --include --trace-ascii log/5/trace1002 --trace-config all --trace-time http://127.0.0.1:46675/1002.upload1 -T log/5/1002 http://127.0.0.1:46675/1002.upload2 -T log/5/1002 -u auser:apasswd --digest -x http://127.0.0.1:46675 -C 2 -X GET > log/5/stdout1002 2> log/5/stderr1002 === End of file commands.log === Start of file http_server.log 07:35:55.073947 ====> Client connect 07:35:55.073978 accept_connection 3 returned 4 07:35:55.073994 accept_connection 3 returned 0 07:35:55.074008 Read 93 bytes 07:35:55.074017 Process 93 bytes request 07:35:55.074030 Got request: GET /verifiedserver HTTP/1.1 07:35:55.074039 Are-we-friendly question received 07:35:55.074061 Wrote request (93 bytes) input to log/5/server.input 07:35:55.074076 Identifying ourselves as friends 07:35:55.074127 Response sent (56 bytes) and written to log/5/server.response 07:35:55.074137 special request received, no persistency 07:35:55.074145 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1002 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1002 ==126408== ==126408== Process terminating with default action of signal 4 (SIGILL) ==126408== Illegal opcode at address 0x4003082 ==126408== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126408== by 0x4003082: main (tool_main.c:234) === End of file valgrind1002 test 1004...[HTTP GET with empty proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --loCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1006 ../src/curl -q --output log/13/curl1006.out --include --trace-ascii log/13/trace1006 --trace-config all --trace-time ftp://127.0.0.1:40375/path/1006 > log/13/stdout1006 2> log/13/stderr1006 g-file=log/1/valgrind1004 ../src/curl -q --output log/1/curl1004.out --include --trace-ascii log/1/trace1004 --trace-config all --trace-time http://127.0.0.1:38941/1004 --proxy "" > log/1/stdout1004 2> log/1/stderr1004 1004: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1004 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1004 ../src/curl -q --output log/1/curl1004.out --include --trace-ascii log/1/trace1004 --trace-config all --trace-time http://127.0.0.1:38941/1004 --proxy "" > log/1/stdout1004 2> log/1/stderr1004 === End of file commands.log === Start of file http_server.log 07:35:55.208070 ====> Client connect 07:35:55.208103 accept_connection 3 returned 4 07:35:55.208119 accept_connection 3 returned 0 07:35:55.208133 Read 93 bytes 07:35:55.208143 Process 93 bytes request 07:35:55.208156 Got request: GET /verifiedserver HTTP/1.1 07:35:55.208165 Are-we-friendly question received 07:35:55.208191 Wrote request (93 bytes) input to log/1/server.input 07:35:55.208208 Identifying ourselves as friends 07:35:55.208264 Response sent (56 bytes) and written to log/1/server.response 07:35:55.208275 special request received, no persistency 07:35:55.208284 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1004 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1004 ==126652== ==126652== Process terminating with default action of signal 4 (SIGILL) ==126652== Illegal opcode at address 0x4003082 ==126652== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126652== by 0x4003082: main (tool_main.c:234) === End of file valgrind1004 test 1006...[FTP with large number of command response lines (boundary condition)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1006 ../src/curl -q --output log/13/curl1006.out --include --trace-ascii log/13/trace1006 --trace-config all --trace-time ftp://127.0.0.1:40375/path/1006 > log/13/stdout1006 2> log/13/stderr1006 1006: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1006 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1006 ../src/curl -q --output log/13/curl1006.out --include --trace-ascii log/13/trace1006 --trace-config all --trace-time ftp://127.0.0.1:40375/path/1006 > log/13/stdout1006 2> log/13/stderr1006 === End of file commands.log === Start of file ftp_server.log 07:35:55.366537 ====> Client connect 07:35:55.366952 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.367235 < "USER anonymous" 07:35:55.367288 > "331 We are happy you popped in![CR][LF]" 07:35:55.367458 < "PASS ftp@example.com" 07:35:55.367481 > "230 Welcome you silly person[CR][LF]" 07:35:55.367593 < "PWD" 07:35:55.367616 > "257 "/" is current directory[CR][LF]" 07:35:55.367731 < "EPSV" 07:35:55.367748 ====> Passive DATA channel requested by client 07:35:55.367757 DATA sockfilt for passive data channel starting... 07:35:55.369231 DATA sockfilt for passive data channel started (pid 126649) 07:35:55.369319 DATA sockfilt for passive data channel listens on port 46173 07:35:55.369349 > "229 Entering Passive Mode (|||46173|)[LF]" 07:35:55.369362 Client has been notified that DATA conn will be accepted on port 46173 07:35:55.369537 Client connects to port 46173 07:35:55.369567 ====> Client established passive DATA connection on port 46173 07:35:55.369646 < "TYPE I" 07:35:55.369680 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.369842 < "SIZE verifiedserver" 07:35:55.369877 > "213 17[CR][LF]" 07:35:55.370033 < "RETR verifiedserver" 07:35:55.370069 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:55.370141 =====> Closing passive DATA connection... 07:35:55.370158 Server disconnects passive DATA connection 07:35:55.370229 Server disconnected passive DATA connection 07:35:55.370254 DATA sockfilt for passive data channel quits (pid 126649) 07:35:55.370590 DATA sockfilt for passive data channel quit (pid 126649) 07:35:55.370619 =====> Closed passive DATA connection 07:35:55.370648 > "226 File transfer complete[CR][LF]" 07:35:55.413629 < "QUIT" 07:35:55.413686 > "221 bye bye baby[CR][LF]" 07:35:55.413931 MAIN sockfilt said DISC 07:35:55.413955 ====> Client disconnected 07:35:55.414014 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.212437 ====> Client connect 07:35:55.212845 Received DATA (on stdin) 07:35:55.212869 > 160 bytes data, server => client 07:35:55.212882 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.212893 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.212904 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.213001 < 16 bytes data, client => server 07:35:55.213018 'USER anonymous\r\n' 07:35:55.213262 Received DATA (on stdin) 07:35:55.213283 > 33 bytes data, server => client 07:35:55.213292 '331 We are happy you popped in!\r\n' 07:35:55.213352 < 22 bytes data, client => server 07:35:55.213362 'PASS ftp@example.com\r\n' 07:35:55.213461 Received DATA (on stdin) 07:35:55.213470 > 30 bytes data, server => client 07:35:55.213478 '230 Welcome you silly person\r\n' 07:35:55.213513 < 5 bytes data, client => server 07:35:55.213521 'PWD\r\n' 07:35:55.213596 Received DATA (on stdin) 07:35:55.213609 > 30 bytes data, server => client 07:35:55.213616 '257 "/" is current directory\r\n' 07:35:55.213654 < 6 bytes data, client => server 07:35:55.213662 'EPSV\r\n' 07:35:55.215348 Received DATA (on stdin) 07:35:55.215361 > 38 bytes data, server => client 07:35:55.215370 '229 Entering Passive Mode (|||46173|)\n' 07:35:55.215460 < 8 bytes data, client => server 07:35:55.215472 'TYPE I\r\n' 07:35:55.215667 Received DATA (on stdin) 07:35:55.215680 > 33 bytes data, server => client 07:35:55.215691 '200 I modify TYPE as you wanted\r\n' 07:35:55.215743 < 21 bytes data, client => server 07:35:55.215756 'SIZE verifiedserver\r\n' 07:35:55.215862 Received DATA (on stdin) 07:35:55.215875 > 8 bytes data, server => client 07:35:55.215885 '213 17\r\n' 07:35:55.215931 < 21 bytes data, client => server 07:35:55.215943 'RETR verifiedserver\r\n' 07:35:55.216110 Received DATA (on stdin) 07:35:55.216133 > 29 bytes data, server => client 07:35:55.216145 '150 Binary junk (17 bytes).\r\n' 07:35:55.216632 Received DATA (on stdin) 07:35:55.216643 > 28 bytes data, server => client 07:35:55.216651 '226 File transfer complete\r\n' 07:35:55.259434 < 6 bytes data, client => server 07:35:55.259469 'QUIT\r\n' 07:35:55.259684 Received DATA (on stdin) 07:35:55.259695 > 18 bytes data, server => client 07:35:55.259705 '221 bye bye baby\r\n' 07:35:55.259866 ====> Client disconnect 07:35:55.259996 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.214990 Running IPv4 version 07:35:55.215034 Listening on port 46173 07:35:55.215062 Wrote pid 126649 to log/13/server/ftp_sockdata.pid 07:35:55.215168 Received PING (on stdin) 07:35:55.215233 Received PORT (on stdin) 07:35:55.215467 ====> Client connect 07:35:55.216064 Received DATA (on stdin) 07:35:55.216085 > 17 bytes data, server => client 07:35:55.216097 'WE ROOLZ: 87629\r\n' 07:35:55.216149 Received DISC (on stdin) 07:35:55.216164 ====> Client forcibly disconnected 07:35:55.216243 Received QUIT (on stdin) 07:35:55.216255 quits 07:35:55.216333 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1018 ../src/curl -q --trace-ascii log/24/trace1018 --trace-config all --trace-time -r 4-4 file://localhost/startdir/src/build-curl/tests/log/24/test1018.txt > log/24/stdout1018 2> log/24/stderr1018 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1017 ../src/curl -q --trace-ascii log/9/trace1017 --trace-config all --trace-time -r 0-3 file://localhost/startdir/src/build-curl/tests/log/9/test1017.txt > log/9/stdout1017 2> log/9/stderr1017 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250 Finally, here is the response Testnum 1006 === End of file server.cmd === Start of file valgrind1006 ==126773== ==126773== Process terminating with default action of signal 4 (SIGILL) ==126773== Illegal opcode at address 0x4003082 ==126773== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126773== by 0x4003082: main (tool_main.c:234) === End of file valgrind1006 * starts no server test 1018...[X-X range on a file:// URL to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1018 ../src/curl -q --trace-ascii log/24/trace1018 --trace-config all --trace-time -r 4-4 file://localhost/startdir/src/build-curl/tests/log/24/test1018.txt > log/24/stdout1018 2> log/24/stderr1018 1018: stdout FAILED: --- log/24/check-expected 2025-07-18 07:35:55.963779455 +0000 +++ log/24/check-generated 2025-07-18 07:35:55.963779455 +0000 @@ -1 +0,0 @@ -5 == Contents of files in the log/24/ dir after test 1018 === Start of file check-expected 5 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1018 ../src/curl -q --trace-ascii log/24/trace1018 --trace-config all --trace-time -r 4-4 file://localhost/startdir/src/build-curl/tests/log/24/test1018.txt > log/24/stdout1018 2> log/24/stderr1018 === End of file commands.log === Start of file server.cmd Testnum 1018 === End of file server.cmd === Start of file test1018.txt 1234567890 === End of file test1018.txt === Start of file valgrind1018 ==127104== ==127104== Process terminating with default action of signal 4 (SIGILL) ==127104== Illegal opcode at address 0x4003082 ==127104== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127104== by 0x4003082: main (tool_main.c:234) === End of file valgrind1018 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1012 ../src/curl -q --output log/12/curl1012.out --include --trace-ascii log/12/trace1012 --trace-config all --trace-time http://127.0.0.1:37285/blah/1012 -L -d "moo" --post301 > log/12/stdout1012 2> log/12/stderr1012 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1019 ../src/curl -q --trace-ascii log/19/trace1019 --trace-config all --trace-time -r 7- file://localhost/startdir/src/build-curl/tests/log/19/test1019.txt > log/19/stdout1019 2> log/19/stderr1019 * starts no server test 1017...[0-Y range on a file:// URL to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1017 ../src/curl -q --trace-ascii log/9/trace1017 --trace-config all --trace-time -r 0-3 file://localhost/startdir/src/build-curl/tests/log/9/test1017.txt > log/9/stdout1017 2> log/9/stderr1017 1017: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:55.970446123 +0000 +++ log/9/check-generated 2025-07-18 07:35:55.970446123 +0000 @@ -1 +0,0 @@ -1234 == Contents of files in the log/9/ dir after test 1017 === Start of file check-expected 1234 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1017 ../src/curl -q --trace-ascii log/9/trace1017 --trace-config all --trace-time -r 0-3 file://localhost/startdir/src/build-curl/tests/log/9/test1017.txt > log/9/stdout1017 2> log/9/stderr1017 === End of file commands.log === Start of file server.cmd Testnum 1017 === End of file server.cmd === Start of file test1017.txt 1234567890 === End of file test1017.txt === Start of file valgrind1017 ==127109== ==127109== Process terminating with default action of signal 4 (SIGILL) ==127109== Illegal opcode at address 0x4003082 ==127109== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127109== by 0x4003082: main (tool_main.c:234) === End of file valgrind1017 test 1012...[HTTP POST with 301 redirect and --post301] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1012 ../src/curl -q --output log/12/curl1012.out --include --trace-ascii log/12/trace1012 --trace-config all --trace-time http://127.0.0.1:37285/blah/1012 -L -d "moo" --post301 > log/12/stdout1012 2> log/12/stderr1012 1012: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1012 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1012 ../src/curl -q --output log/12/curl1012.out --include --trace-ascii log/12/trace1012 --trace-config all --trace-time http://127.0.0.1:37285/blah/1012 -L -d "moo" --post301 > log/12/stdout1012 2> log/12/stderr1012 === End of file commands.log === Start of file http_server.log 07:35:55.311799 ====> Client connect 07:35:55.311833 accept_connection 3 returned 4 07:35:55.311849 accept_connection 3 returned 0 07:35:55.311863 Read 93 bytes 07:35:55.311872 Process 93 bytes request 07:35:55.311885 Got request: GET /verifiedserver HTTP/1.1 07:35:55.311894 Are-we-friendly question received 07:35:55.311919 Wrote request (93 bytes) input to log/12/server.input 07:35:55.311934 Identifying ourselves as friends 07:35:55.311987 Response sent (56 bytes) and written to log/12/server.response 07:35:55.311995 special request received, no persistency 07:35:55.312004 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1012 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1012 ==127121== ==127121== Process terminating with default action of signal 4 (SIGILL) ==127121== Illegal opcode at address 0x4003082 ==127121== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127121== by 0x4003082: main (tool_main.c:234) === End of file valgrind1012 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1003 ../src/curl -q --output log/14/curl1003.out --include --trace-ascii log/14/trace1003 --trace-config all --trace-time ftp://127.0.0.1:41711/path/1003 > log/14/stdout1003 2> log/14/stderr1003 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1010 ../src/curl -q --output log/20/curl1010.out --include --trace-ascii log/20/trace1010 --trace-config all --trace-time ftp://127.0.0.1:45671//list/this/path/1010/ ftp://127.0.0.1:45671//list/this/path/1010/ --ftp-method nocwd > log/20/stdout1010 2> log/20/stderr1010 * starts no server test 1019...[X- range on a file:// URL to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1019 ../src/curl -q --trace-ascii log/19/trace1019 --trace-config all --trace-time -r 7- file://localhost/startdir/src/build-curl/tests/log/19/test1019.txt > log/19/stdout1019 2> log/19/stderr1019 1019: stdout FAILED: --- log/19/check-expected 2025-07-18 07:35:55.980446123 +0000 +++ log/19/check-generated 2025-07-18 07:35:55.980446123 +0000 @@ -1,2 +0,0 @@ -890[LF] -1234567890[LF] == Contents of files in the log/19/ dir after test 1019 === Start of file check-expected 890[LF] 1234567890[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1019 ../src/curl -q --trace-ascii log/19/trace1019 --trace-config all --trace-time -r 7- file://localhost/startdir/src/build-curl/tests/log/19/test1019.txt > log/19/stdout1019 2> log/19/stderr1019 === End of file commands.log === Start of file server.cmd Testnum 1019 === End of file server.cmd === Start of file test1019.txt 1234567890 1234567890 === End of file test1019.txt === Start of file valgrind1019 ==127120== ==127120== Process terminating with default action of signal 4 (SIGILL) ==127120== Illegal opcode at address 0x4003082 ==127120== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127120== by 0x4003082: main (tool_main.c:234) === End of file valgrind1019 test 1003...[FTP with excessively large server command response line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1003 ../src/curl -q --output log/14/curl1003.out --include --trace-ascii log/14/trace1003 --trace-config all --trace-time ftp://127.0.0.1:41711/path/1003 > log/14/stdout1003 2> log/14/stderr1003 1003: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1003 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1003 ../src/curl -q --output log/14/curl1003.out --include --trace-ascii log/14/trace1003 --trace-config all --trace-time ftp://127.0.0.1:41711/path/1003 > log/14/stdout1003 2> log/14/stderr1003 === End of file commands.log === Start of file ftp_server.log 07:35:55.357350 ====> Client connect 07:35:55.357511 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.357781 < "USER anonymous" 07:35:55.357817 > "331 We are happy you popped in![CR][LF]" 07:35:55.357976 < "PASS ftp@example.com" 07:35:55.358002 > "230 Welcome you silly person[CR][LF]" 07:35:55.358131 < "PWD" 07:35:55.358161 > "257 "/" is current directory[CR][LF]" 07:35:55.358317 < "EPSV" 07:35:55.358338 ====> Passive DATA channel requested by client 07:35:55.358354 DATA sockfilt for passive data channel starting... 07:35:55.360023 DATA sockfilt for passive data channel started (pid 126647) 07:35:55.360246 DATA sockfilt for passive data channel listens on port 37505 07:35:55.360281 > "229 Entering Passive Mode (|||37505|)[LF]" 07:35:55.360298 Client has been notified that DATA conn will be accepted on port 37505 07:35:55.360782 Client connects to port 37505 07:35:55.360811 ====> Client established passive DATA connection on port 37505 07:35:55.361412 < "TYPE I" 07:35:55.361440 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.361579 < "SIZE verifiedserver" 07:35:55.361612 > "213 17[CR][LF]" 07:35:55.361739 < "RETR verifiedserver" 07:35:55.361769 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:55.361842 =====> Closing passive DATA connection... 07:35:55.361855 Server disconnects passive DATA connection 07:35:55.362018 Server disconnected passive DATA connection 07:35:55.362066 DATA sockfilt for passive data channel quits (pid 126647) 07:35:55.362406 DATA sockfilt for passive data channel quit (pid 126647) 07:35:55.362432 =====> Closed passive DATA connection 07:35:55.362470 > "226 File transfer complete[CR][LF]" 07:35:55.406950 < "QUIT" 07:35:55.406993 > "221 bye bye baby[CR][LF]" 07:35:55.407689 MAIN sockfilt said DISC 07:35:55.407718 ====> Client disconnected 07:35:55.407860 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.202957 ====> Client connect 07:35:55.203507 Received DATA (on stdin) 07:35:55.203522 > 160 bytes data, server => client 07:35:55.203533 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.203544 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.203553 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.203636 < 16 bytes data, client => server 07:35:55.203654 'USER anonymous\r\n' 07:35:55.203788 Received DATA (on stdin) 07:35:55.203808 > 33 bytes data, server => client 07:35:55.203820 '331 We are happy you popped in!\r\n' 07:35:55.203873 < 22 bytes data, client => server 07:35:55.203884 'PASS ftp@example.com\r\n' 07:35:55.203987 Received DATA (on stdin) 07:35:55.203997 > 30 bytes data, server => client 07:35:55.204007 '230 Welcome you silly person\r\n' 07:35:55.204059 < 5 bytes data, client => server 07:35:55.204076 'PWD\r\n' 07:35:55.204143 Received DATA (on stdin) 07:35:55.204155 > 30 bytes data, server => client 07:35:55.204165 '257 "/" is current directory\r\n' 07:35:55.204226 < 6 bytes data, client => server 07:35:55.204238 'EPSV\r\n' 07:35:55.206574 Received DATA (on stdin) 07:35:55.206596 > 38 bytes data, server => client 07:35:55.206607 '229 Entering Passive Mode (|||37505|)\n' 07:35:55.207292 < 8 bytes data, client => server 07:35:55.207313 'TYPE I\r\n' 07:35:55.207425 Received DATA (on stdin) 07:35:55.207436 > 33 bytes data, server => client 07:35:55.207446 '200 I modify TYPE as you wanted\r\n' 07:35:55.207490 < 21 bytes data, client => server 07:35:55.207501 'SIZE verifiedserver\r\n' 07:35:55.207595 Received DATA (on stdin) 07:35:55.207605 > 8 bytes data, server => client 07:35:55.207615 '213 17\r\n' 07:35:55.207654 < 21 bytes data, client => server 07:35:55.207664 'RETR verifiedserver\r\n' 07:35:55.207839 Received DATA (on stdin) 07:35:55.207850 > 29 bytes data, server => client 07:35:55.207861 '150 Binary junk (17 bytes).\r\n' 07:35:55.208466 Received DATA (on stdin) 07:35:55.208484 > 28 bytes data, server => client 07:35:55.208495 '226 File transfer complete\r\n' 07:35:55.252813 < 6 bytes data, client => server 07:35:55.252836 'QUIT\r\n' 07:35:55.252976 Received DATA (on stdin) 07:35:55.252985 > 18 bytes data, server => client 07:35:55.252993 '221 bye bye baby\r\n' 07:35:55.253628 ====> Client disconnect 07:35:55.253688 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.205832 Running IPv4 version 07:35:55.205887 Listening on port 37505 07:35:55.205922 Wrote pid 126647 to log/14/server/ftp_sockdata.pid 07:35:55.205940 Received PING (on stdin) 07:35:55.206155 Received PORT (on stdin) 07:35:55.206720 ====> Client connect 07:35:55.207883 Received DATA (on stdin) 07:35:55.207898 > 17 bytes data, server => client 07:35:55.207908 'WE ROOLZ: 79837\r\n' 07:35:55.207931 Received DISC (on stdin) 07:35:55.207942 ====> Client forcibly disconnected 07:35:55.208071 Received QUIT (on stdin) 07:35:55.208089 quits 07:35:55.208194 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 250 CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1005 ../src/curl -q --output log/16/curl1005.out --include --trace-ascii log/16/trace1005 --trace-config all --trace-time ftp://127.0.0.1:40585/path/1005 > log/16/stdout1005 2> log/16/stderr1005 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB Testnum 1003 === End of file server.cmd === Start of file valgrind1003 ==126757== ==126757== Process terminating with default action of signal 4 (SIGILL) ==126757== Illegal opcode at address 0x4003082 ==126757== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126757== by 0x4003082: main (tool_main.c:234) === End of file valgrind1003 test 1010...[FTP dir list nocwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1010 ../src/curl -q --output log/20/curl1010.out --include --trace-ascii log/20/trace1010 --trace-config all --trace-time ftp://127.0.0.1:45671//list/this/path/1010/ ftp://127.0.0.1:45671//list/this/path/1010/ --ftp-method nocwd > log/20/stdout1010 2> log/20/stderr1010 1010: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1010 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1010 ../src/curl -q --output log/20/curl1010.out --include --trace-ascii log/20/trace1010 --trace-config all --trace-time ftp://127.0.0.1:45671//list/this/path/1010/ ftp://127.0.0.1:45671//list/this/path/1010/ --ftp-method nocwd > log/20/stdout1010 2> log/20/stderr1010 === End of file commands.log === Start of file ftp_server.log 07:35:55.423829 ====> Client connect 07:35:55.423991 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.424225 < "USER anonymous" 07:35:55.424257 > "331 We are happy you popped in![CR][LF]" 07:35:55.424409 < "PASS ftp@example.com" 07:35:55.424429 > "230 Welcome you silly person[CR][LF]" 07:35:55.424559 < "PWD" 07:35:55.424587 > "257 "/" is current directory[CR][LF]" 07:35:55.424721 < "EPSV" 07:35:55.424745 ====> Passive DATA channel requested by client 07:35:55.424756 DATA sockfilt for passive data channel starting... 07:35:55.426414 DATA sockfilt for passive data channel started (pid 126777) 07:35:55.426513 DATA sockfilt for passive data channel listens on port 41129 07:35:55.426547 > "229 Entering Passive Mode (|||41129|)[LF]" 07:35:55.426565 Client has been notified that DATA conn will be accepted on port 41129 07:35:55.426761 Client connects to port 41129 07:35:55.426788 ====> Client established passive DATA connection on port 41129 07:35:55.426848 < "TYPE I" 07:35:55.426873 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.427015 < "SIZE verifiedserver" 07:35:55.427045 > "213 17[CR][LF]" 07:35:55.427194 < "RETR verifiedserver" 07:35:55.427226 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:55.427295 =====> Closing passive DATA connection... 07:35:55.427310 Server disconnects passive DATA connection 07:35:55.427468 Server disconnected passive DATA connection 07:35:55.427489 DATA sockfilt for passive data channel quits (pid 126777) 07:35:55.427663 DATA sockfilt for passive data channel quit (pid 126777) 07:35:55.427682 =====> Closed passive DATA connection 07:35:55.427704 > "226 File transfer complete[CR][LF]" 07:35:55.474663 < "QUIT" 07:35:55.474728 > "221 bye bye baby[CR][LF]" 07:35:55.475125 MAIN sockfilt said DISC 07:35:55.475205 ====> Client disconnected 07:35:55.476103 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.269703 ====> Client connect 07:35:55.269970 Received DATA (on stdin) 07:35:55.269997 > 160 bytes data, server => client 07:35:55.270008 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.270018 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.270027 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.270106 < 16 bytes data, client => server 07:35:55.270126 'USER anonymous\r\n' 07:35:55.270243 Received DATA (on stdin) 07:35:55.270255 > 33 bytes data, server => client 07:35:55.270266 '331 We are happy you popped in!\r\n' 07:35:55.270317 < 22 bytes data, client => server 07:35:55.270327 'PASS ftp@example.com\r\n' 07:35:55.270411 Received DATA (on stdin) 07:35:55.270422 > 30 bytes data, server => client 07:35:55.270431 '230 Welcome you silly person\r\n' 07:35:55.270472 < 5 bytes data, client => server 07:35:55.270482 'PWD\r\n' 07:35:55.270569 Received DATA (on stdin) 07:35:55.270579 > 30 bytes data, server => client 07:35:55.270588 '257 "/" is current directory\r\n' 07:35:55.270635 < 6 bytes data, client => server 07:35:55.270646 'EPSV\r\n' 07:35:55.272541 Received DATA (on stdin) 07:35:55.272558 > 38 bytes data, server => client 07:35:55.272567 '229 Entering Passive Mode (|||41129|)\n' 07:35:55.272692 < 8 bytes data, client => server 07:35:55.272703 'TYPE I\r\n' 07:35:55.272858 Received DATA (on stdin) 07:35:55.272869 > 33 bytes data, server => client 07:35:55.272879 '200 I modify TYPE as you wanted\r\n' 07:35:55.272925 < 21 bytes data, client => server 07:35:55.272936 'SIZE verifiedserver\r\n' 07:35:55.273029 Received DATA (on stdin) 07:35:55.273040 > 8 bytes data, server => client 07:35:55.273049 '213 17\r\n' 07:35:55.273092 < 21 bytes data, client => server 07:35:55.273103 'RETR verifiedserver\r\n' 07:35:55.273280 Received DATA (on stdin) 07:35:55.273302 > 29 bytes data, server => client 07:35:55.273311 '150 Binary junk (17 bytes).\r\n' 07:35:55.273690 Received DATA (on stdin) 07:35:55.273703 > 28 bytes data, server => client 07:35:55.273714 '226 File transfer complete\r\n' 07:35:55.319710 < 6 bytes data, client => server 07:35:55.319733 'QUIT\r\n' 07:35:55.320735 Received DATA (on stdin) 07:35:55.320754 > 18 bytes data, server => client 07:35:55.320766 '221 bye bye baby\r\n' 07:35:55.321017 ====> Client disconnect 07:35:55.321186 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.272222 Running IPv4 version 07:35:55.272285 Listening on port 41129 07:35:55.272322 Wrote pid 126777 to log/20/server/ftp_sockdata.pid 07:35:55.272341 Received PING (on stdin) 07:35:55.272423 Received PORT (on stdin) 07:35:55.272664 ====> Client connect 07:35:55.273336 Received DATA (on stdin) 07:35:55.273355 > 17 bytes data, server => client 07:35:55.273365 'WE ROOLZ: 88588\r\n' 07:35:55.273392 Received DISC (on stdin) 07:35:55.273406 ====> Client forcibly disconnected 07:35:55.273476 Received QUIT (on stdin) 07:35:55.273484 quits 07:35:55.273526 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1010 === End of file server.cmd === Start of file valgrind1010 ==127179== ==127179== Process terminating with default action of signal 4 (SIGILL) ==127179== Illegal opcode at address 0x4003082 ==127179== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127179== by 0x4003082: main (tool_main.c:234) === End of file valgrind1010 test 1005...[FTP with excessively large number of server command response lines] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1005 ../src/curl -q --output log/16/curl1005.out --include --trace-ascii log/16/trace1005 --trace-config all --trace-time ftp://127.0.0.1:40585/path/1005 > log/16/stdout1005 2> log/16/stderr1005 1005: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1005 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1005 ../src/curl -q --output log/16/curl1005.out --include --trace-ascii log/16/trace1005 --trace-config all --trace-time ftp://127.0.0.1:40585/path/1005 > log/16/stdout1005 2> log/16/stderr1005 === End of file commands.log === Start of file ftp_server.log 07:35:55.363403 ====> Client connect 07:35:55.363530 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.363755 < "USER anonymous" 07:35:55.363786 > "331 We are happy you popped in![CR][LF]" 07:35:55.363989 < "PASS ftp@example.com" 07:35:55.364037 > "230 Welcome you silly person[CR][LF]" 07:35:55.364317 < "PWD" 07:35:55.364435 > "257 "/" is current directory[CR][LF]" 07:35:55.364672 < "EPSV" 07:35:55.364700 ====> Passive DATA channel requested by client 07:35:55.364713 DATA sockfilt for passive data channel starting... 07:35:55.366519 DATA sockfilt for passive data channel started (pid 126648) 07:35:55.366616 DATA sockfilt for passive data channel listens on port 42579 07:35:55.366642 > "229 Entering Passive Mode (|||42579|)[LF]" 07:35:55.366653 Client has been notified that DATA conn will be accepted on port 42579 07:35:55.366884 Client connects to port 42579 07:35:55.366918 ====> Client established passive DATA connection on port 42579 07:35:55.366985 < "TYPE I" 07:35:55.367012 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.367260 < "SIZE verifiedserver" 07:35:55.367305 > "213 17[CR][LF]" 07:35:55.367463 < "RETR verifiedserver" 07:35:55.367501 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:55.367575 =====> Closing passive DATA connection... 07:35:55.367592 Server disconnects passive DATA connection 07:35:55.367695 Server disconnected passive DATA connection 07:35:55.367719 DATA sockfilt for passive data channel quits (pid 126648) 07:35:55.367903 DATA sockfilt for passive data channel quit (pid 126648) 07:35:55.367921 =====> Closed passive DATA connection 07:35:55.367942 > "226 File transfer complete[CR][LF]" 07:35:55.410310 < "QUIT" 07:35:55.410350 > "221 bye bye baby[CR][LF]" 07:35:55.410585 MAIN sockfilt said DISC 07:35:55.410607 ====> Client disconnected 07:35:55.410659 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.209279 ====> Client connect 07:35:55.209522 Received DATA (on stdin) 07:35:55.209535 > 160 bytes data, server => client 07:35:55.209546 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.209556 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.209566 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.209622 < 16 bytes data, client => server 07:35:55.209633 'USER anonymous\r\n' 07:35:55.209772 Received DATA (on stdin) 07:35:55.209783 > 33 bytes data, server => client 07:35:55.209793 '331 We are happy you popped in!\r\n' 07:35:55.209836 < 22 bytes data, client => server 07:35:55.209846 'PASS ftp@example.com\r\n' 07:35:55.210031 Received DATA (on stdin) 07:35:55.210048 > 30 bytes data, server => client 07:35:55.210059 '230 Welcome you silly person\r\n' 07:35:55.210162 < 5 bytes data, client => server 07:35:55.210178 'PWD\r\n' 07:35:55.210357 Received DATA (on stdin) 07:35:55.210373 > 30 bytes data, server => client 07:35:55.210433 '257 "/" is current directory\r\n' 07:35:55.210505 < 6 bytes data, client => server 07:35:55.210541 'EPSV\r\n' 07:35:55.212609 Received DATA (on stdin) 07:35:55.212634 > 38 bytes data, server => client 07:35:55.212656 '229 Entering Passive Mode (|||42579|)\n' 07:35:55.212816 < 8 bytes data, client => server 07:35:55.212827 'TYPE I\r\n' 07:35:55.213001 Received DATA (on stdin) 07:35:55.213023 > 33 bytes data, server => client 07:35:55.213035 '200 I modify TYPE as you wanted\r\n' 07:35:55.213102 < 21 bytes data, client => server 07:35:55.213115 'SIZE verifiedserver\r\n' 07:35:55.213273 Received DATA (on stdin) 07:35:55.213289 > 8 bytes data, server => client 07:35:55.213300 '213 17\r\n' 07:35:55.213360 < 21 bytes data, client => server 07:35:55.213381 'RETR verifiedserver\r\n' 07:35:55.213483 Received DATA (on stdin) 07:35:55.213498 > 29 bytes data, server => client 07:35:55.213509 '150 Binary junk (17 bytes).\r\n' 07:35:55.213924 Received DATA (on stdin) 07:35:55.213935 > 28 bytes data, server => client 07:35:55.213944 '226 File transfer complete\r\n' 07:35:55.256161 < 6 bytes data, client => server 07:35:55.256182 'QUIT\r\n' 07:35:55.256333 Received DATA (on stdin) 07:35:55.256342 > 18 bytes data, server => client 07:35:55.256350 '221 bye bye baby\r\n' 07:35:55.256528 ====> Client disconnect 07:35:55.256639 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.212319 Running IPv4 version 07:35:55.212379 Listening on port 42579 07:35:55.212421 Wrote pid 126648 to log/16/server/ftp_sockdata.pid 07:35:55.212444 Received PING (on stdin) 07:35:55.212531 Received PORT (on stdin) 07:35:55.212784 ====> Client connect 07:35:55.213574 Received DATA (on stdin) 07:35:55.213593 > 17 bytes data, server => client 07:35:55.213608 'WE ROOLZ: 79929\r\n' 07:35:55.213637 Received DISC (on stdin) 07:35:55.213649 ====> Client forcibly disconnected 07:35:55.213718 Received QUIT (on stdin) 07:35:55.213730 quits 07:35:55.213780 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1009 ../src/curl -q --output log/15/curl1009.out --include --trace-ascii log/15/trace1009 --trace-config all --trace-time tftp://127.0.0.1:51756//1009 --local-port 44444-45444 > log/15/stdout1009 2> log/15/stderr1009 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250 Finally, here is the response Testnum 1005 === End of file server.cmd === Start of file valgrind1005 ==126767== ==126767== Process terminating with default action of signal 4 (SIGILL) ==126767== Illegal opcode at address 0x4003082 ==126767== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126767== by 0x4003082: main (tool_main.c:234) === End of file valgrind1005 test 1009...[TFTP retrieve with --local-port] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1009 ../src/curl -q --output log/15/curl1009.out --include --trace-ascii log/15/trace1009 --trace-config all --trace-time tftp://127.0.0.1:51756//1009 --local-port 44444-45444 > log/15/stdout1009 2> log/15/stderr1009 1009: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1009 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1009 ../src/curl -q --output log/15/curl1009.out --include --trace-ascii log/15/trace1009 --trace-config all --trace-tCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1008 ../src/curl -q --output log/7/curl1008.out --include --trace-ascii log/7/trace1008 --trace-config all --trace-time http://test.remote.example.com.1008:39077/path/10080002 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/7/stdout1008 2> log/7/stderr1008 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1016 ../src/curl -q --trace-ascii log/10/trace1016 --trace-config all --trace-time -r 1-4 file://localhost/startdir/src/build-curl/tests/log/10/test1016.txt > log/10/stdout1016 2> log/10/stderr1016 ime tftp://127.0.0.1:51756//1009 --local-port 44444-45444 > log/15/stdout1009 2> log/15/stderr1009 === End of file commands.log === Start of file server.cmd Testnum 1009 === End of file server.cmd === Start of file tftp_server.log 07:35:55.267559 trying to get file: verifiedserver mode 1 07:35:55.267579 Are-we-friendly question received 07:35:55.267590 write 07:35:55.267604 read 07:35:55.268146 read: 4 07:35:55.268189 end of one transfer === End of file tftp_server.log === Start of file valgrind1009 ==126809== ==126809== Process terminating with default action of signal 4 (SIGILL) ==126809== Illegal opcode at address 0x4003082 ==126809== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126809== by 0x4003082: main (tool_main.c:234) === End of file valgrind1009 test 1008...[HTTP proxy CONNECT auth NTLM with chunked-encoded 407 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1008 ../src/curl -q --output log/7/curl1008.out --include --trace-ascii log/7/trace1008 --trace-config all --trace-time http://test.remote.example.com.1008:39077/path/10080002 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/7/stdout1008 2> log/7/stderr1008 1008: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1008 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1008 ../src/curl -q --output log/7/curl1008.out --include --trace-ascii log/7/trace1008 --trace-config all --trace-time http://test.remote.example.com.1008:39077/path/10080002 --proxy http://127.0.0.1:39077 --proxy-user testuser:testpass --proxy-ntlm --proxytunnel > log/7/stdout1008 2> log/7/stderr1008 === End of file commands.log === Start of file http_server.log 07:35:55.264769 ====> Client connect 07:35:55.264800 accept_connection 3 returned 4 07:35:55.264815 accept_connection 3 returned 0 07:35:55.264829 Read 93 bytes 07:35:55.264838 Process 93 bytes request 07:35:55.264850 Got request: GET /verifiedserver HTTP/1.1 07:35:55.264858 Are-we-friendly question received 07:35:55.264882 Wrote request (93 bytes) input to log/7/server.input 07:35:55.264896 Identifying ourselves as friends 07:35:55.264950 Response sent (56 bytes) and written to log/7/server.response 07:35:55.264959 special request received, no persistency 07:35:55.264967 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1008 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1008 ==126830== ==126830== Process terminating with default action of signal 4 (SIGILL) ==126830== Illegal opcode at address 0x4003082 ==126830== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126830== by 0x4003082: main (tool_main.c:234) === End of file valgrind1008 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1014 ../src/curl -q --output log/8/curl1014.out --include --trace-ascii log/8/trace1014 --trace-config all --trace-time --version > log/8/stdout1014 2> log/8/stderr1014 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1011 ../src/curl -q --output log/11/curl1011.out --include --trace-ascii log/11/trace1011 --trace-config all --trace-time http://127.0.0.1:41173/blah/1011 -L -d "moo" > log/11/stdout1011 2> log/11/stderr1011 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1013 ../src/curl -q --output log/21/curl1013.out --include --trace-ascii log/21/trace1013 --trace-config all --trace-time --version > log/21/stdout1013 2> log/21/stderr1013 Mismatch in protocols lists: curl: curl-config: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns mqtt pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp ws wss CMD (256): /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/21/stdout1013 protocols CMD (256): /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/8/stdout1014 features > log/8/result1014 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1015 ../src/curl -q --output log/4/curl1015.out --include --trace-ascii log/4/trace1015 --trace-config all --trace-time http://127.0.0.1:33235/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/4/1015.txt" --data-urlencode @log/4/1015.txt > log/4/stdout1015 2> log/4/stderr1015 * starts no server test 1016...[X-Y range on a file:// URL to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1016 ../src/curl -q --trace-ascii log/10/trace1016 --trace-config all --trace-time -r 1-4 file://localhost/startdir/src/build-curl/tests/log/10/test1016.txt > log/10/stdout1016 2> log/10/stderr1016 1016: stdout FAILED: --- log/10/check-expected 2025-07-18 07:35:56.060446125 +0000 +++ log/10/check-generated 2025-07-18 07:35:56.060446125 +0000 @@ -1 +0,0 @@ -2345 == Contents of files in the log/10/ dir after test 1016 === Start of file check-expected 2345 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1016 ../src/curl -q --trace-ascii log/10/trace1016 --trace-config all --trace-time -r 1-4 file://localhost/startdir/src/build-curl/tests/log/10/test1016.txt > log/10/stdout1016 2> log/10/stderr1016 === End of file commands.log === Start of file server.cmd Testnum 1016 === End of file server.cmd === Start of file test1016.txt 1234567890 === End of file test1016.txt === Start of file valgrind1016 ==127084== ==127084== Process terminating with default action of signal 4 (SIGILL) ==127084== Illegal opcode at address 0x4003082 ==127084== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127084== by 0x4003082: main (tool_main.c:234) === End of file valgrind1016 test 1011...[HTTP POST with 301 redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1011 ../src/curl -q --output log/11/curl1011.out --include --trace-ascii log/11/trace1011 --trace-config all --trace-time http://127.0.0.1:41173/blah/1011 -L -d "moo" > log/11/stdout1011 2> log/11/stderr1011 1011: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1011 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1011 ../src/curl -q --output log/11/curl1011.out --include --trace-ascii log/11/trace1011 --trace-config all --trace-time http://127.0.0.1:41173/blah/1011 -L -d "moo" > log/11/stdout1011 2> log/11/stderr1011 === End of file commands.log === Start of file http_server.log 07:35:55.281309 ====> Client connect 07:35:55.281344 accept_connection 3 returned 4 07:35:55.281360 accept_connection 3 returned 0 07:35:55.281376 Read 93 bytes 07:35:55.281412 Process 93 bytes request 07:35:55.281425 Got request: GET /verifiedserver HTTP/1.1 07:35:55.281434 Are-we-friendly question received 07:35:55.281457 Wrote request (93 bytes) input to log/11/server.input 07:35:55.281473 Identifying ourselves as friends 07:35:55.281540 Response sent (56 bytes) and written to log/11/server.response 07:35:55.281550 special request received, no persistency 07:35:55.281559 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1011 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1011 ==126908== ==126908== Process terminating with default action of signal 4 (SIGILL) ==126908== Illegal opcode at address 0x4003082 ==126908== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126908== by 0x4003082: main (tool_main.c:234) === End of file valgrind1011 * starts no server test 1013...[Compare curl --version with curl-config --protocols] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1013 ../src/curl -q --output log/21/curl1013.out --include --trace-ascii log/21/trace1013 --trace-config all --trace-time --version > log/21/stdout1013 2> log/21/stderr1013 postcheck /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/21/stdout1013 protocols 1013: postcheck FAILED == Contents of files in the log/21/ dir after test 1013 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1013 ../src/curl -q --output log/21/curl1013.out --include --trace-ascii log/21/trace1013 --trace-config all --trace-time --version > log/21/stdout1013 2> log/21/stderr1013 === End of file commands.log === Start of file server.cmd Testnum 1013 === End of file server.cmd === Start of file valgrind1013 ==126962== ==126962== Process terminating with default action of signal 4 (SIGILL) ==126962== Illegal opcode at address 0x4003082 ==126962== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==126962== by 0x4003082: main (tool_main.c:234) === End of file valgrind1013 * starts no server test 1014...[Compare curl --version with curl-config --features] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1014 ../src/curl -q --output log/8/curl1014.out --include --trace-ascii log/8/trace1014 --trace-config all --trace-time --version > log/8/stdout1014 2> log/8/stderr1014 postcheck /startdir/src/curl/tests/libtest/test1013.pl ../curl-config log/8/stdout1014 features > log/8/result1014 1014: postcheck FAILED == Contents of files in the log/8/ dir after test 1014 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1014 ../src/curl -q --output log/8/curl1014.out --include --trace-ascii log/8/trace1014 --trace-config all --trace-time --version > log/8/stdout1014 2> log/8/stderr1014 === End of file commands.log === Start of file result1014 Mismatch in features lists: curl: curl-config: AsynchDNS GSS-API HSTS HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Kerberos Largefile NTLM PSL SPNEGO SSL TLS-SRP UnixSockets alt-svc brotli libz threadsafe zstd === End of file result1014 === Start of file server.cmd Testnum 1014 === End of file server.cmd === Start of file valgrind1014 ==127007== ==127007== Process terminating with default action of signal 4 (SIGILL) ==127007== Illegal opcode at address 0x4003082 ==127007== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127007== by 0x4003082: main (tool_main.c:234) === End of file valgrind1014 test 1015...[--data-urlencode] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1015 ../src/curl -q --output log/4/curl1015.out --include --trace-ascii log/4/trace1015 --trace-config all --trace-time http://127.0.0.1:33235/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/4/1015.txt" --data-urlencode @log/4/1015.txt > log/4/stdout1015 2> log/4/stderr1015 1015: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? RetCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1020 ../src/curl -q --trace-ascii log/3/trace1020 --trace-config all --trace-time -r -9 file://localhost/startdir/src/build-curl/tests/log/3/test1020.txt > log/3/stdout1020 2> log/3/stderr1020 urned: 132 == Contents of files in the log/4/ dir after test 1015 === Start of file 1015.txt content to _?!#$'|<> === End of file 1015.txt === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1015 ../src/curl -q --output log/4/curl1015.out --include --trace-ascii log/4/trace1015 --trace-config all --trace-time http://127.0.0.1:33235/1015 --data-urlencode "my name is moo[]" --data-urlencode "y e s=s_i_r" --data-urlencode "v_alue@log/4/1015.txt" --data-urlencode @log/4/1015.txt > log/4/stdout1015 2> log/4/stderr1015 === End of file commands.log === Start of file http_server.log 07:35:55.334207 ====> Client connect 07:35:55.334242 accept_connection 3 returned 4 07:35:55.334258 accept_connection 3 returned 0 07:35:55.334274 Read 93 bytes 07:35:55.334284 Process 93 bytes request 07:35:55.334298 Got request: GET /verifiedserver HTTP/1.1 07:35:55.334307 Are-we-friendly question received 07:35:55.334332 Wrote request (93 bytes) input to log/4/server.input 07:35:55.334348 Identifying ourselves as friends 07:35:55.334404 Response sent (56 bytes) and written to log/4/server.response 07:35:55.334414 special request received, no persistency 07:35:55.334423 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1015 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1015 ==127314== ==127314== Process terminating with default action of signal 4 (SIGILL) ==127314== Illegal opcode at address 0x4003082 ==127314== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127314== by 0x4003082: main (tool_main.c:234) === End of file valgrind1015 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1021 ../src/curl -q --output log/6/curl1021.out --include --trace-ascii log/6/trace1021 --trace-config all --trace-time http://test.remote.example.com.1021:35775/path/10210002 --proxy http://127.0.0.1:35775 --proxy-user testuser:testpass --proxy-anyauth --proxytunnel > log/6/stdout1021 2> log/6/stderr1021 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1027 ../src/curl -q --output log/5/curl1027.out --include --trace-ascii log/5/trace1027 --trace-config all --trace-time --help > log/5/stdout1027 2> log/5/stderr1027 CMD (256): /usr/bin/perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(Usage: curl )|(--version\s*Show version)/, ); exit ($lines != 2); # Let this file pass an XML syntax check: ' log/5/stdout1027 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1022 ../src/curl -q --output log/22/curl1022.out --include --trace-ascii log/22/trace1022 --trace-config all --trace-time --version > log/22/stdout1022 2> log/22/stderr1022 Mismatch in --version: curl: curl-config: 8.15.0 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1023 ../src/curl -q --output log/18/curl1023.out --include --trace-ascii log/18/trace1023 --trace-config all --trace-time --version > log/18/stdout1023 2> log/18/stderr1023 CMD (256): /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/22/stdout1022 version Mismatch in --version: curl: curl-config: 8.15.0 CMD (256): /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/18/stdout1023 vernum * starts no server test 1020...[-Y range on a file:// URL to stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1020 ../src/curl -q --trace-ascii log/3/trace1020 --trace-config all --trace-time -r -9 file://localhost/startdir/src/build-curl/tests/log/3/test1020.txt > log/3/stdout1020 2> log/3/stderr1020 1020: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:56.097112793 +0000 +++ log/3/check-generated 2025-07-18 07:35:56.097112793 +0000 @@ -1 +0,0 @@ -34567890[LF] == Contents of files in the log/3/ dir after test 1020 === Start of file check-expected 34567890[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1020 ../src/curl -q --trace-ascii log/3/trace1020 --trace-config all --trace-time -r -9 file://localhost/startdir/src/build-curl/tests/log/3/test1020.txt > log/3/stdout1020 2> log/3/stderr1020 === End of file commands.log === Start of file server.cmd Testnum 1020 === End of file server.cmd === Start of file test1020.txt 1234567890 1234567890 === End of file test1020.txt === Start of file valgrind1020 ==127529== ==127529== Process terminating with default action of signal 4 (SIGILL) ==127529== Illegal opcode at address 0x4003082 ==127529== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127529== by 0x4003082: main (tool_main.c:234) === End of file valgrind1020 test 1021...[HTTP proxy CONNECT with any proxyauth and proxy offers NTLM and close] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1021 ../src/curl -q --output log/6/curl1021.out --include --trace-ascii log/6/trace1021 --trace-config all --trace-time http://test.remote.example.com.1021:35775/path/10210002 --proxy http://127.0.0.1:35775 --proxy-user testuser:testpass --proxy-anyauth --proxytunnel > log/6/stdout1021 2> log/6/stderr1021 1021: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1021 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1021 ../src/curl -q --output log/6/curl1021.out --include --trace-ascii log/6/trace1021 --trace-config all --trace-time http://test.remote.example.com.1021:35775/path/10210002 --proxy http://127.0.0.1:35775 --proxy-user testuser:testpass --proxy-anyauth --proxytunnel > log/6/stdout1021 2> log/6/stderr1021 === End of file commands.log === Start of file http_server.log 07:35:55.445177 ====> Client connect 07:35:55.445221 accept_connection 3 returned 4 07:35:55.445239 accept_connection 3 returned 0 07:35:55.445408 Read 93 bytes 07:35:55.445423 Process 93 bytes request 07:35:55.445436 Got request: GET /verifiedserver HTTP/1.1 07:35:55.445445 Are-we-friendly question received 07:35:55.445472 Wrote request (93 bytes) input to log/6/server.input 07:35:55.445489 Identifying ourselves as friends 07:35:55.445542 Response sent (56 bytes) and written to log/6/server.response 07:35:55.445552 special request received, no persistency 07:35:55.445560 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1021 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1021 ==127598== ==127598== Process terminating with default action of signal 4 (SIGILL) ==127598== Illegal opcode at address 0x4003082 ==127598== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127598== by 0x4003082: main (tool_main.c:234) === End of file valgrind1021 * starts no server test 1027...[curl --help] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1027 ../src/curl -q --output log/5/curl1027.out --include --trace-ascii log/5/trace1027 --trace-config all --trace-time --help > log/5/stdout1027 2> log/5/stderr1027 postcheck /usr/bin/perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(Usage: curl )|(--version\s*Show version)/, ); exit ($lines != 2); # Let this file pass an XML syntax check: ' log/5/stdout1027 1027: postcheck FAILED == Contents of files in the log/5/ dir after test 1027 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1027 ../src/curl -q --output log/5/curl1027.out --include --trace-ascii log/5/trace1027 --trace-config all --trace-time --help > log/5/stdout1027 2> log/5/stderr1027 === End of file commands.log === Start of file server.cmd Testnum 1027 === End of file server.cmd === Start of file valgrind1027 ==127724== ==127724== Process terminating with default action of signal 4 (SIGILL) ==127724== Illegal opcode at address 0x4003082 ==127724== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127724== by 0x4003082: main (tool_main.c:234) === End of file valgrind1027 * starts no server test 1022...[Compare curl --version with curl-config --version] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1022 ../src/curl -q --output log/22/curl1022.out --include --trace-ascii log/22/trace1022 --trace-config all --trace-time --version > log/22/stdout1022 2> log/22/stderr1022 postcheck /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/22/stdout1022 version 1022: postcheck FAILED == Contents of files in the log/22/ dir after test 1022 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1022 ../src/curl -q --output log/22/curl1022.out --include --trace-ascii log/22/trace1022 --trace-config all --trace-time --version > log/22/stdout1022 2> log/22/stderr1022 === End of file commands.log === Start of file server.cmd Testnum 1022 === End of file server.cmd === Start of file valgrind1022 ==127659== ==127659== Process terminating with default action of signal 4 (SIGILL) ==127659== Illegal opcode at address 0x4003082 ==127659== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127659== by 0x4003082: main (tool_main.c:234) === End of file valgrind1022 * starts no server test 1023...[Compare curl --version with curl-config --vernum] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1023 ../src/curl -q --output log/18/curl1023.out --include --trace-ascii log/18/trace1023 --trace-config all --trace-time --version > log/18/stdout1023 2> log/18/stderr1023 postcheck /startdir/src/curl/tests/libtest/test1022.pl ../curl-config log/18/stdout1023 vernum 1023: postcheck FAILED == Contents of files in the log/18/ dir after test 1023 === Start of file commands.log ../lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1024 ../src/curl -q --output log/23/curl1024.out --include --trace-ascii log/23/trace1024 --trace-config all --trace-time http://127.0.0.1:45701/want/1024 -L -c log/23/jar1024 > log/23/stdout1024 2> log/23/stderr1024 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1025 ../src/curl -q --output log/17/curl1025.out --include --trace-ascii log/17/trace1025 --trace-config all --trace-time http://127.0.0.1:39089/want/1025 -L -c log/17/jar1025 -b forcedcookie=yes > log/17/stdout1025 2> log/17/stderr1025 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1043 ../src/curl -q --output log/4/curl1043.out --include --trace-ascii log/4/trace1043 --trace-config all --trace-time http://127.0.0.1:33235/1043 -C - > log/4/stdout1043 2> log/4/stderr1043 ibtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1023 ../src/curl -q --output log/18/curl1023.out --include --trace-ascii log/18/trace1023 --trace-config all --trace-time --version > log/18/stdout1023 2> log/18/stderr1023 === End of file commands.log === Start of file server.cmd Testnum 1023 === End of file server.cmd === Start of file valgrind1023 ==127673== ==127673== Process terminating with default action of signal 4 (SIGILL) ==127673== Illegal opcode at address 0x4003082 ==127673== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127673== by 0x4003082: main (tool_main.c:234) === End of file valgrind1023 test 1024...[HTTP Location: following with cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1024 ../src/curl -q --output log/23/curl1024.out --include --trace-ascii log/23/trace1024 --trace-config all --trace-time http://127.0.0.1:45701/want/1024 -L -c log/23/jar1024 > log/23/stdout1024 2> log/23/stderr1024 1024: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1024 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1024 ../src/curl -q --output log/23/curl1024.out --include --trace-ascii log/23/trace1024 --trace-config all --trace-time http://127.0.0.1:45701/want/1024 -L -c log/23/jar1024 > log/23/stdout1024 2> log/23/stderr1024 === End of file commands.log === Start of file http_server.log 07:35:55.683034 ====> Client connect 07:35:55.683065 accept_connection 3 returned 4 07:35:55.683081 accept_connection 3 returned 0 07:35:55.683096 Read 93 bytes 07:35:55.683105 Process 93 bytes request 07:35:55.683119 Got request: GET /verifiedserver HTTP/1.1 07:35:55.683128 Are-we-friendly question received 07:35:55.683150 Wrote request (93 bytes) input to log/23/server.input 07:35:55.683166 Identifying ourselves as friends 07:35:55.683218 Response sent (56 bytes) and written to log/23/server.response 07:35:55.683227 special request received, no persistency 07:35:55.683236 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1024 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1024 ==127805== ==127805== Process terminating with default action of signal 4 (SIGILL) ==127805== Illegal opcode at address 0x4003082 ==127805== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127805== by 0x4003082: main (tool_main.c:234) === End of file valgrind1024 test 1025...[HTTP Location: following with command-line and server cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1025 ../src/curl -q --output log/17/curl1025.out --include --trace-ascii log/17/trace1025 --trace-config all --trace-time http://127.0.0.1:39089/want/1025 -L -c log/17/jar1025 -b forcedcookie=yes > log/17/stdout1025 2> log/17/stderr1025 1025: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1025 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1025 ../src/curl -q --output log/17/curl1025.out --include --trace-ascii log/17/trace1025 --trace-config all --trace-time http://127.0.0.1:39089/want/1025 -L -c log/17/jar1025 -b forcedcookie=yes > log/17/stdout1025 2> log/17/stderr1025 === End of file commands.log === Start of file http_server.log 07:35:55.688948 ====> Client connect 07:35:55.688980 accept_connection 3 returned 4 07:35:55.688997 accept_connection 3 returned 0 07:35:55.689120 Read 93 bytes 07:35:55.689133 Process 93 bytes request 07:35:55.689145 Got request: GET /verifiedserver HTTP/1.1 07:35:55.689154 Are-we-friendly question received 07:35:55.689180 Wrote request (93 bytes) input to log/17/server.input 07:35:55.689197 Identifying ourselves as friends 07:35:55.689249 Response sent (56 bytes) and written to log/17/server.response 07:35:55.689259 special request received, no persistency 07:35:55.689267 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1025 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1025 ==127826== ==127826== Process terminating with default action of signal 4 (SIGILL) ==127826== Illegal opcode at address 0x4003082 ==127826== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==127826== by 0x4003082: main (tool_main.c:234) === End of file valgrind1025 test 1043...[HTTP GET with resume from end of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1043 ../src/curl -q --output log/4/curl1043.out --include --trace-ascii log/4/trace1043 --trace-config all --trace-time http://127.0.0.1:33235/1043 -C - > log/4/stdout1043 2> log/4/stderr1043 1043: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1043 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1043 ../src/curl -q --output log/4/curl1043.out --include --trace-ascii log/4/trace1043 --trace-config all --trace-time http://127.0.0.1:33235/1043 -C - > log/4/stdout1043 2> log/4/stderr1043 === End of file commands.log === Start of file curl1043.out 012345678 012345678 012345678 012345678 === End of file curl1043.out === Start of file http_server.log 07:35:55.952283 ====> Client connect 07:35:55.952315 accept_connection 3 returned 4 07:35:55.952329 accept_connection 3 returned 0 07:35:55.952341 Read 93 bytes 07:35:55.952348 Process 93 bytes request 07:35:55.952359 Got request: GET /verifiedserver HTTP/1.1 07:35:55.952367 Are-we-friendly question received 07:35:55.952387 Wrote request (93 bytes) input to log/4/server.input 07:35:55.952401 Identifying ourselves as friends 07:35:55.952453 Response sent (56 bytes) and written to log/4/server.response 07:35:55.952463 special request received, no persistency 07:35:55.952CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1036 ../src/curl -q --output log/16/curl1036.out --include --trace-ascii log/16/trace1036 --trace-config all --trace-time ftp://127.0.0.1:40585/1036 -C - > log/16/stdout1036 2> log/16/stderr1036 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1037 ../src/curl -q --output log/15/curl1037.out --include --trace-ascii log/15/trace1037 --trace-config all --trace-time ftp://127.0.0.1:46295/1037 -C - > log/15/stdout1037 2> log/15/stderr1037 472 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1043 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1043 ==128623== ==128623== Process terminating with default action of signal 4 (SIGILL) ==128623== Illegal opcode at address 0x4003082 ==128623== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128623== by 0x4003082: main (tool_main.c:234) === End of file valgrind1043 test 1036...[FTP download resume from end of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1036 ../src/curl -q --output log/16/curl1036.out --include --trace-ascii log/16/trace1036 --trace-config all --trace-time ftp://127.0.0.1:40585/1036 -C - > log/16/stdout1036 2> log/16/stderr1036 1036: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1036 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1036 ../src/curl -q --output log/16/curl1036.out --include --trace-ascii log/16/trace1036 --trace-config all --trace-time ftp://127.0.0.1:40585/1036 -C - > log/16/stdout1036 2> log/16/stderr1036 === End of file commands.log === Start of file curl1036.out This is the start! === End of file curl1036.out === Start of file ftp_server.log 07:35:56.055917 ====> Client connect 07:35:56.056062 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.056318 < "USER anonymous" 07:35:56.056352 > "331 We are happy you popped in![CR][LF]" 07:35:56.056503 < "PASS ftp@example.com" 07:35:56.056527 > "230 Welcome you silly person[CR][LF]" 07:35:56.056690 < "PWD" 07:35:56.056716 > "257 "/" is current directory[CR][LF]" 07:35:56.056860 < "EPSV" 07:35:56.056884 ====> Passive DATA channel requested by client 07:35:56.056897 DATA sockfilt for passive data channel starting... 07:35:56.058663 DATA sockfilt for passive data channel started (pid 128390) 07:35:56.058767 DATA sockfilt for passive data channel listens on port 44137 07:35:56.058800 > "229 Entering Passive Mode (|||44137|)[LF]" 07:35:56.058816 Client has been notified that DATA conn will be accepted on port 44137 07:35:56.059000 Client connects to port 44137 07:35:56.059027 ====> Client established passive DATA connection on port 44137 07:35:56.059122 < "TYPE I" 07:35:56.059149 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.059289 < "SIZE verifiedserver" 07:35:56.059319 > "213 17[CR][LF]" 07:35:56.059451 < "RETR verifiedserver" 07:35:56.059481 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.059550 =====> Closing passive DATA connection... 07:35:56.059567 Server disconnects passive DATA connection 07:35:56.059781 Server disconnected passive DATA connection 07:35:56.059808 DATA sockfilt for passive data channel quits (pid 128390) 07:35:56.060645 DATA sockfilt for passive data channel quit (pid 128390) 07:35:56.060668 =====> Closed passive DATA connection 07:35:56.060692 > "226 File transfer complete[CR][LF]" 07:35:56.103629 < "QUIT" 07:35:56.103681 > "221 bye bye baby[CR][LF]" 07:35:56.104451 MAIN sockfilt said DISC 07:35:56.104504 ====> Client disconnected 07:35:56.105335 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.901802 ====> Client connect 07:35:55.902059 Received DATA (on stdin) 07:35:55.902073 > 160 bytes data, server => client 07:35:55.902085 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.902096 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.902106 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.902174 < 16 bytes data, client => server 07:35:55.902186 'USER anonymous\r\n' 07:35:55.902338 Received DATA (on stdin) 07:35:55.902350 > 33 bytes data, server => client 07:35:55.902360 '331 We are happy you popped in!\r\n' 07:35:55.902406 < 22 bytes data, client => server 07:35:55.902418 'PASS ftp@example.com\r\n' 07:35:55.902510 Received DATA (on stdin) 07:35:55.902521 > 30 bytes data, server => client 07:35:55.902541 '230 Welcome you silly person\r\n' 07:35:55.902588 < 5 bytes data, client => server 07:35:55.902599 'PWD\r\n' 07:35:55.902698 Received DATA (on stdin) 07:35:55.902711 > 30 bytes data, server => client 07:35:55.902721 '257 "/" is current directory\r\n' 07:35:55.902775 < 6 bytes data, client => server 07:35:55.902786 'EPSV\r\n' 07:35:55.904804 Received DATA (on stdin) 07:35:55.904817 > 38 bytes data, server => client 07:35:55.904828 '229 Entering Passive Mode (|||44137|)\n' 07:35:55.905023 < 8 bytes data, client => server 07:35:55.905034 'TYPE I\r\n' 07:35:55.905133 Received DATA (on stdin) 07:35:55.905145 > 33 bytes data, server => client 07:35:55.905154 '200 I modify TYPE as you wanted\r\n' 07:35:55.905198 < 21 bytes data, client => server 07:35:55.905208 'SIZE verifiedserver\r\n' 07:35:55.905301 Received DATA (on stdin) 07:35:55.905312 > 8 bytes data, server => client 07:35:55.905321 '213 17\r\n' 07:35:55.905364 < 21 bytes data, client => server 07:35:55.905374 'RETR verifiedserver\r\n' 07:35:55.905552 Received DATA (on stdin) 07:35:55.905564 > 29 bytes data, server => client 07:35:55.905574 '150 Binary junk (17 bytes).\r\n' 07:35:55.906676 Received DATA (on stdin) 07:35:55.906698 > 28 bytes data, server => client 07:35:55.906708 '226 File transfer complete\r\n' 07:35:55.949431 < 6 bytes data, client => server 07:35:55.949454 'QUIT\r\n' 07:35:55.949671 Received DATA (on stdin) 07:35:55.949684 > 18 bytes data, server => client 07:35:55.949694 '221 bye bye baby\r\n' 07:35:55.950361 ====> Client disconnect 07:35:55.950566 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.904378 Running IPv4 version 07:35:56.904434 Listening on port 44137 07:35:56.904471 Wrote pid 128390 to log/16/server/ftp_sockdata.pid 07:35:56.904594 Received PING (on stdin) 07:35:56.904674 Received PORT (on stdin) 07:35:56.904937 ====> Client connect 07:35:56.905599 Received DATA (on stdin) 07:35:56.905612 > 17 bytes data, server => client 07:35:56.905623 'WE ROOLZ: 79929\r\n' 07:35:56.905647 Received DISC (on stdin) 07:35:56.905658 ====> Client forcibly disconnected 07:35:56.906415 Received QUIT (on stdin) 07:35:56.906432 quits 07:35:56.906485 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1036 === End of file server.cmd === Start of file valgrind1036 ==128580== ==128580== Process terminating with default action of signal 4 (SIGILL) ==128580== Illegal opcode at address 0x4003082 ==128580== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128580== by 0x4003082: main (tool_main.c:234) === End of file valgrind1036 test 1037...[FTP download resume from end of empty file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1037 ../src/curl -q --output log/15/curl1037.out --include --trace-ascii log/15/trace1037 --trace-coCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1040 ../src/curl -q --output log/11/curl1040.out --include --trace-ascii log/11/trace1040 --trace-config all --trace-time http://127.0.0.1:41173/1040 -C - > log/11/stdout1040 2> log/11/stderr1040 nfig all --trace-time ftp://127.0.0.1:46295/1037 -C - > log/15/stdout1037 2> log/15/stderr1037 1037: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1037 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1037 ../src/curl -q --output log/15/curl1037.out --include --trace-ascii log/15/trace1037 --trace-config all --trace-time ftp://127.0.0.1:46295/1037 -C - > log/15/stdout1037 2> log/15/stderr1037 === End of file commands.log === Start of file ftp_server.log 07:35:56.056356 ====> Client connect 07:35:56.056518 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.056814 < "USER anonymous" 07:35:56.056848 > "331 We are happy you popped in![CR][LF]" 07:35:56.057007 < "PASS ftp@example.com" 07:35:56.057031 > "230 Welcome you silly person[CR][LF]" 07:35:56.057191 < "PWD" 07:35:56.057225 > "257 "/" is current directory[CR][LF]" 07:35:56.057382 < "EPSV" 07:35:56.057405 ====> Passive DATA channel requested by client 07:35:56.057417 DATA sockfilt for passive data channel starting... 07:35:56.059393 DATA sockfilt for passive data channel started (pid 128394) 07:35:56.059519 DATA sockfilt for passive data channel listens on port 41527 07:35:56.059564 > "229 Entering Passive Mode (|||41527|)[LF]" 07:35:56.059583 Client has been notified that DATA conn will be accepted on port 41527 07:35:56.059848 Client connects to port 41527 07:35:56.059874 ====> Client established passive DATA connection on port 41527 07:35:56.059948 < "TYPE I" 07:35:56.059976 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.060131 < "SIZE verifiedserver" 07:35:56.060162 > "213 17[CR][LF]" 07:35:56.060319 < "RETR verifiedserver" 07:35:56.060347 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.060424 =====> Closing passive DATA connection... 07:35:56.060440 Server disconnects passive DATA connection 07:35:56.060526 Server disconnected passive DATA connection 07:35:56.060544 DATA sockfilt for passive data channel quits (pid 128394) 07:35:56.061191 DATA sockfilt for passive data channel quit (pid 128394) 07:35:56.061220 =====> Closed passive DATA connection 07:35:56.061248 > "226 File transfer complete[CR][LF]" 07:35:56.105176 < "QUIT" 07:35:56.105225 > "221 bye bye baby[CR][LF]" 07:35:56.105595 MAIN sockfilt said DISC 07:35:56.105622 ====> Client disconnected 07:35:56.105686 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.901802 ====> Client connect 07:35:55.902520 Received DATA (on stdin) 07:35:55.902549 > 160 bytes data, server => client 07:35:55.902561 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.902571 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.902580 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.902652 < 16 bytes data, client => server 07:35:55.902664 'USER anonymous\r\n' 07:35:55.902834 Received DATA (on stdin) 07:35:55.902845 > 33 bytes data, server => client 07:35:55.902855 '331 We are happy you popped in!\r\n' 07:35:55.902906 < 22 bytes data, client => server 07:35:55.902918 'PASS ftp@example.com\r\n' 07:35:55.903006 Received DATA (on stdin) 07:35:55.903023 > 30 bytes data, server => client 07:35:55.903034 '230 Welcome you silly person\r\n' 07:35:55.903087 < 5 bytes data, client => server 07:35:55.903099 'PWD\r\n' 07:35:55.903211 Received DATA (on stdin) 07:35:55.903223 > 30 bytes data, server => client 07:35:55.903233 '257 "/" is current directory\r\n' 07:35:55.903285 < 6 bytes data, client => server 07:35:55.903298 'EPSV\r\n' 07:35:55.905574 Received DATA (on stdin) 07:35:55.905591 > 38 bytes data, server => client 07:35:55.905602 '229 Entering Passive Mode (|||41527|)\n' 07:35:55.905781 < 8 bytes data, client => server 07:35:55.905793 'TYPE I\r\n' 07:35:55.905972 Received DATA (on stdin) 07:35:55.905983 > 33 bytes data, server => client 07:35:55.905994 '200 I modify TYPE as you wanted\r\n' 07:35:55.906040 < 21 bytes data, client => server 07:35:55.906051 'SIZE verifiedserver\r\n' 07:35:55.906144 Received DATA (on stdin) 07:35:55.906155 > 8 bytes data, server => client 07:35:55.906164 '213 17\r\n' 07:35:55.906204 < 21 bytes data, client => server 07:35:55.906214 'RETR verifiedserver\r\n' 07:35:55.906325 Received DATA (on stdin) 07:35:55.906344 > 29 bytes data, server => client 07:35:55.906355 '150 Binary junk (17 bytes).\r\n' 07:35:55.907233 Received DATA (on stdin) 07:35:55.907246 > 28 bytes data, server => client 07:35:55.907257 '226 File transfer complete\r\n' 07:35:55.950992 < 6 bytes data, client => server 07:35:55.951013 'QUIT\r\n' 07:35:55.951195 Received DATA (on stdin) 07:35:55.951220 > 18 bytes data, server => client 07:35:55.951231 '221 bye bye baby\r\n' 07:35:55.951525 ====> Client disconnect 07:35:55.951671 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.905193 Running IPv4 version 07:35:56.905253 Listening on port 41527 07:35:56.905291 Wrote pid 128394 to log/15/server/ftp_sockdata.pid 07:35:56.905312 Received PING (on stdin) 07:35:56.905415 Received PORT (on stdin) 07:35:56.905754 ====> Client connect 07:35:56.906415 Received DATA (on stdin) 07:35:56.906434 > 17 bytes data, server => client 07:35:56.906444 'WE ROOLZ: 79835\r\n' 07:35:56.906470 Received DISC (on stdin) 07:35:56.906482 ====> Client forcibly disconnected 07:35:56.906547 Received QUIT (on stdin) 07:35:56.906558 quits 07:35:56.906610 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1037 === End of file server.cmd === Start of file valgrind1037 ==128573== ==128573== Process terminating with default action of signal 4 (SIGILL) ==128573== Illegal opcode at address 0x4003082 ==128573== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128573== by 0x4003082: main (tool_main.c:234) === End of file valgrind1037 test 1040...[HTTP GET with resume from end of entirely-downloaded file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1040 ../src/curl -q --output log/11/curl1040.out --include --trace-ascii log/11/trace1040 --trace-config all --trace-time http://127.0.0.1:41173/1040 -C - > log/11/stdout1040 2> log/11/stderr1040 1040: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1040 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1040 ../src/curl -q --output log/11/curl1040.out --include --trace-ascii log/11/trace1040 --trace-config all --trace-time http://127.0.0.1:41173/1040 -C - > log/11/stdout1040 2> log/11/stderr1040 === End of file commands.log === Start of file curl1040.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1040.out === Start of file http_server.log 07:35:55.943133 ====> Client connect 07:35:55.943165 accept_connection 3 returned 4 07:35:55.943181 accept_connection 3 returned 0 07:35:55.943195 Read 93 bytes 07:35:55.943225 Process 93 bytes request 07:35:55.943238 Got request: GET /verifiedserver HTTP/1.1 07:35:55.943248 Are-we-friendly question received 07:35:55.943271 Wrote request (93 bytes) input to log/11/server.input 07:35:55.943286 Identifying ourselves as friends 07:35:55.943340 Response sent (56 bytes) and written to log/11/server.response 07:35:55.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1041 ../src/curl -q --output log/21/curl1041.out --include --trace-ascii log/21/trace1041 --trace-config all --trace-time http://127.0.0.1:41087/1041 -Tlog/21/test1041.txt -C - > log/21/stdout1041 2> log/21/stderr1041 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1042 ../src/curl -q --output log/8/curl1042.out --include --trace-ascii log/8/trace1042 --trace-config all --trace-time http://127.0.0.1:45261/1042 -C 200 > log/8/stdout1042 2> log/8/stderr1042 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1029 ../src/curl -q --include --trace-ascii log/13/trace1029 --trace-config all --trace-time http://127.0.0.1:33627/we/want/our/1029 -w '%{redirect_url} %{url} %{exitcode} %{errormsg}\n' > log/13/stdout1029 2> log/13/stderr1029 943349 special request received, no persistency 07:35:55.943358 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1040 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1040 ==128571== ==128571== Process terminating with default action of signal 4 (SIGILL) ==128571== Illegal opcode at address 0x4003082 ==128571== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128571== by 0x4003082: main (tool_main.c:234) === End of file valgrind1040 test 1041...[HTTP PUT with resume from end of already-uploaded file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1041 ../src/curl -q --output log/21/curl1041.out --include --trace-ascii log/21/trace1041 --trace-config all --trace-time http://127.0.0.1:41087/1041 -Tlog/21/test1041.txt -C - > log/21/stdout1041 2> log/21/stderr1041 1041: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1041 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1041 ../src/curl -q --output log/21/curl1041.out --include --trace-ascii log/21/trace1041 --trace-config all --trace-time http://127.0.0.1:41087/1041 -Tlog/21/test1041.txt -C - > log/21/stdout1041 2> log/21/stderr1041 === End of file commands.log === Start of file http_server.log 07:35:55.950445 ====> Client connect 07:35:55.950533 accept_connection 3 returned 4 07:35:55.950574 accept_connection 3 returned 0 07:35:55.950589 Read 93 bytes 07:35:55.950599 Process 93 bytes request 07:35:55.950610 Got request: GET /verifiedserver HTTP/1.1 07:35:55.950620 Are-we-friendly question received 07:35:55.950727 Wrote request (93 bytes) input to log/21/server.input 07:35:55.950761 Identifying ourselves as friends 07:35:55.950847 Response sent (56 bytes) and written to log/21/server.response 07:35:55.950862 special request received, no persistency 07:35:55.950873 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 1041 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file test1041.txt 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file test1041.txt === Start of file valgrind1041 ==128600== ==128600== Process terminating with default action of signal 4 (SIGILL) ==128600== Illegal opcode at address 0x4003082 ==128600== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128600== by 0x4003082: main (tool_main.c:234) === End of file valgrind1041 test 1042...[HTTP GET beyond end of entirely-downloaded file, no server resume] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1042 ../src/curl -q --output log/8/curl1042.out --include --trace-ascii log/8/trace1042 --trace-config all --trace-time http://127.0.0.1:45261/1042 -C 200 > log/8/stdout1042 2> log/8/stderr1042 1042: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1042 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1042 ../src/curl -q --output log/8/curl1042.out --include --trace-ascii log/8/trace1042 --trace-config all --trace-time http://127.0.0.1:45261/1042 -C 200 > log/8/stdout1042 2> log/8/stderr1042 === End of file commands.log === Start of file curl1042.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1042.out === Start of file http_server.log 07:35:55.950403 ====> Client connect 07:35:55.950437 accept_connection 3 returned 4 07:35:55.950452 accept_connection 3 returned 0 07:35:55.950465 Read 93 bytes 07:35:55.950474 Process 93 bytes request 07:35:55.950487 Got request: GET /verifiedserver HTTP/1.1 07:35:55.950497 Are-we-friendly question received 07:35:55.950573 Wrote request (93 bytes) input to log/8/server.input 07:35:55.950591 Identifying ourselves as friends 07:35:55.950724 Response sent (56 bytes) and written to log/8/server.response 07:35:55.950736 special request received, no persistency 07:35:55.950745 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1042 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1042 ==128605== ==128605== Process terminating with default action of signal 4 (SIGILL) ==128605== Illegal opcode at address 0x4003082 ==128605== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128605== by 0x4003082: main (tool_main.c:234) === End of file valgrind1042 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1030 ../src/curl -q --output log/24/curl1030.out --include --trace-ascii log/24/trace1030 --trace-config all --trace-time http://127.0.0.1:38675/1030 -T log/24/put1030 -u testuser:testpass --anyauth > log/24/stdout1030 2> log/24/stderr1030 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1035 ../src/curl -q --output log/20/curl1035.out --include --trace-ascii log/20/trace1035 --trace-config all --trace-time http://too-long-IDN-name-cürl-rüleß-la-la-la-dee-da-flooby-nooby.local/page/1035 -x 127.0.0.1:47 > log/20/stdout1035 2> log/20/stderr1035 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1034 ../src/curl -q --output log/14/curl1034.out --include --trace-ascii log/14/trace1034 --trace-config all --trace-time -K - -x 127.0.0.1:47 log/14/stdout1034 2> log/14/stderr1034 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1031 ../src/curl -q --output log/9/curl1031.out --include --trace-ascii log/9/trace1031 --trace-config all --trace-time http://127.0.0.1:34999/want/this/1031 -L > log/9/stdout1031 2> log/9/stderr1031 test 1029...[HTTP Location: and 'redirect_url' check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1029 ../src/curl -q --include --trace-ascii log/13/trace1029 --trace-config all --trace-time http://127.0.0.1:33627/we/want/our/1029 -w '%{redirect_url} %{url} %{exitcode} %{errormsg}\n' > log/13/stdout1029 2> log/13/stderr1029 1029: stdout FAILED: --- log/13/check-expected 2025-07-18 07:35:56.593779471 +0000 +++ log/13/check-generated 2025-07-18 07:35:56.593779471 +0000 @@ -1,7 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/10290002.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -This server reply is for testing a simple Location: following[LF] -http://127.0.0.1:33627/we/want/our/data/10290002.txt?coolsite=yes http://127.0.0.1:33627/we/want/our/1029 0 [LF] == Contents of files in the log/13/ dir after test 1029 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/10290002.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] This server reply is for testing a simple Location: following[LF] http://127.0.0.1:33627/we/want/our/data/10290002.txt?coolsite=yes http://127.0.0.1:33627/we/want/our/1029 0 [LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1029 ../src/curl -q --include --trace-ascii log/13/trace1029 --trace-config all --trace-time http://127.0.0.1:33627/we/want/our/1029 -w '%{redirect_url} %{url} %{exitcode} %{errormsg}\n' > log/13/stdout1029 2> log/13/stderr1029 === End of file commands.log === Start of file http_server.log 07:35:55.825179 ====> Client connect 07:35:55.825209 accept_connection 3 returned 4 07:35:55.825223 accept_connection 3 returned 0 07:35:55.825236 Read 93 bytes 07:35:55.825245 Process 93 bytes request 07:35:55.825255 Got request: GET /verifiedserver HTTP/1.1 07:35:55.825264 Are-we-friendly question received 07:35:55.825284 Wrote request (93 bytes) input to log/13/server.input 07:35:55.825297 Identifying ourselves as friends 07:35:55.825341 Response sent (56 bytes) and written to log/13/server.response 07:35:55.825349 special request received, no persistency 07:35:55.825356 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1029 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1029 ==128008== ==128008== Process terminating with default action of signal 4 (SIGILL) ==128008== Illegal opcode at address 0x4003082 ==128008== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128008== by 0x4003082: main (tool_main.c:234) === End of file valgrind1029 test 1030...[HTTP PUT with --anyauth authorization (picking Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1030 ../src/curl -q --output log/24/curl1030.out --include --trace-ascii log/24/trace1030 --trace-config all --trace-time http://127.0.0.1:38675/1030 -T log/24/put1030 -u testuser:testpass --anyauth > log/24/stdout1030 2> log/24/stderr1030 1030: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1030 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1030 ../src/curl -q --output log/24/curl1030.out --include --trace-ascii log/24/trace1030 --trace-config all --trace-time http://127.0.0.1:38675/1030 -T log/24/put1030 -u testuser:testpass --anyauth > log/24/stdout1030 2> log/24/stderr1030 === End of file commands.log === Start of file http_server.log 07:35:55.842856 ====> Client connect 07:35:55.842894 accept_connection 3 returned 4 07:35:55.842910 accept_connection 3 returned 0 07:35:55.842922 Read 93 bytes 07:35:55.842931 Process 93 bytes request 07:35:55.842942 Got request: GET /verifiedserver HTTP/1.1 07:35:55.842951 Are-we-friendly question received 07:35:55.842974 Wrote request (93 bytes) input to log/24/server.input 07:35:55.842989 Identifying ourselves as friends 07:35:55.843041 Response sent (56 bytes) and written to log/24/server.response 07:35:55.843050 special request received, no persistency 07:35:55.843060 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file put1030 This is data we upload with PUT a second line line three four is the number of lines === End of file put1030 === Start of file server.cmd Testnum 1030 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1030 ==128074== ==128074== Process terminating with default action of signal 4 (SIGILL) ==128074== Illegal opcode at address 0x4003082 ==128074== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128074== by 0x4003082: main (tool_main.c:234) === End of file valgrind1030 * starts no server setenv LC_ALL = setenv LC_CTYPE = en_US.UTF-8 test 1035...[HTTP over proxy with too long IDN host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1035 ../src/curl -q --output log/20/curl1035.out --include --trace-ascii log/20/trace1035 --trace-config all --trace-time http://too-long-IDN-name-cürl-rüleß-la-la-la-dee-da-flooby-nooby.local/page/1035 -x 127.0.0.1:47 > log/20/stdout1035 2> log/20/stderr1035 curl returned 132, when expecting 3 1035: exit FAILED == Contents of files in the log/20/ dir after test 1035 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1035 ../src/curl -q --output log/20/curl1035.out --include --trace-ascii log/20/trace1035 --trace-config all --trace-time http://too-long-IDN-name-cürl-rüleß-la-la-la-dee-da-flooby-nooby.local/page/1035 -x 127.0.0.1:47 > log/20/stdout1035 2> log/20/stderr1035 === End of file commands.log === Start of file server.cmd Testnum 1035 === End of file server.cmd === Start of file valgrind1035 ==128059== ==128059== Process terminating with default action of signal 4 (SIGILL) ==128059== Illegal opcode at address 0x4003082 ==128059== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128059== by 0x4003082: main (tool_main.c:234) === End of file valgrind1035 * stCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1032 ../src/curl -q --output log/19/curl1032.out --include --trace-ascii log/19/trace1032 --trace-config all --trace-time --range 1-3 --head http://127.0.0.1:33487/1032 > log/19/stdout1032 2> log/19/stderr1032 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1033 ../src/curl -q --output log/12/curl1033.out --include --trace-ascii log/12/trace1033 --trace-config all --trace-time http://127.0.0.1:37285/1033 > log/12/stdout1033 2> log/12/stderr1033 arts no server setenv LC_ALL = setenv LC_CTYPE = en_US.UTF-8 test 1034...[HTTP over proxy with malformatted IDN host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1034 ../src/curl -q --output log/14/curl1034.out --include --trace-ascii log/14/trace1034 --trace-config all --trace-time -K - -x 127.0.0.1:47 log/14/stdout1034 2> log/14/stderr1034 curl returned 132, when expecting 3 1034: exit FAILED == Contents of files in the log/14/ dir after test 1034 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1034 ../src/curl -q --output log/14/curl1034.out --include --trace-ascii log/14/trace1034 --trace-config all --trace-time -K - -x 127.0.0.1:47 log/14/stdout1034 2> log/14/stderr1034 === End of file commands.log === Start of file server.cmd Testnum 1034 === End of file server.cmd === Start of file stdin-for-1034 url = "http://invalid-utf8-.local/page/1034" === End of file stdin-for-1034 === Start of file valgrind1034 ==128066== ==128066== Process terminating with default action of signal 4 (SIGILL) ==128066== Illegal opcode at address 0x4003082 ==128066== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128066== by 0x4003082: main (tool_main.c:234) === End of file valgrind1034 test 1031...[HTTP Location: following to a query string] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1031 ../src/curl -q --output log/9/curl1031.out --include --trace-ascii log/9/trace1031 --trace-config all --trace-time http://127.0.0.1:34999/want/this/1031 -L > log/9/stdout1031 2> log/9/stderr1031 1031: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1031 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1031 ../src/curl -q --output log/9/curl1031.out --include --trace-ascii log/9/trace1031 --trace-config all --trace-time http://127.0.0.1:34999/want/this/1031 -L > log/9/stdout1031 2> log/9/stderr1031 === End of file commands.log === Start of file http_server.log 07:35:55.851851 ====> Client connect 07:35:55.851882 accept_connection 3 returned 4 07:35:55.851896 accept_connection 3 returned 0 07:35:55.851909 Read 93 bytes 07:35:55.851918 Process 93 bytes request 07:35:55.851930 Got request: GET /verifiedserver HTTP/1.1 07:35:55.851938 Are-we-friendly question received 07:35:55.851960 Wrote request (93 bytes) input to log/9/server.input 07:35:55.851975 Identifying ourselves as friends 07:35:55.852023 Response sent (56 bytes) and written to log/9/server.response 07:35:55.852032 special request received, no persistency 07:35:55.852040 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1031 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1031 ==128106== ==128106== Process terminating with default action of signal 4 (SIGILL) ==128106== Illegal opcode at address 0x4003082 ==128106== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128106== by 0x4003082: main (tool_main.c:234) === End of file valgrind1031 test 1033...[HTTP GET with 102 response!] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1033 ../src/curl -q --output log/12/curl1033.out --include --trace-ascii log/12/trace1033 --trace-config all --trace-time http://127.0.0.1:37285/1033 > log/12/stdout1033 2> log/12/stderr1033 1033: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1033 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1033 ../src/curl -q --output log/12/curl1033.out --include --trace-ascii log/12/trace1033 --trace-config all --trace-time http://127.0.0.1:37285/1033 > log/12/stdout1033 2> log/12/stderr1033 === End of file commands.log === Start of file http_server.log 07:35:55.858742 ====> Client connect 07:35:55.858774 accept_connection 3 returned 4 07:35:55.858788 accept_connection 3 returned 0 07:35:55.858800 Read 93 bytes 07:35:55.858809 Process 93 bytes request 07:35:55.858819 Got request: GET /verifiedserver HTTP/1.1 07:35:55.858828 Are-we-friendly question received 07:35:55.858878 Wrote request (93 bytes) input to log/12/server.input 07:35:55.858893 Identifying ourselves as friends 07:35:55.858947 Response sent (56 bytes) and written to log/12/server.response 07:35:55.858956 special request received, no persistency 07:35:55.858964 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1033 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1033 ==128133== ==128133== Process terminating with default action of signal 4 (SIGILL) ==128133== Illegal opcode at address 0x4003082 ==128133== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128133== by 0x4003082: main (tool_main.c:234) === End of file valgrind1033 test 1032...[HTTP HEAD with --range] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1032 ../src/curl -q --output log/19/curl1032.out --include --trace-ascii log/19/trace1032 --trace-config all --trace-time --range 1-3 --head http://127.0.0.1:33487/1032 > log/19/stdout1032 2> log/19/stderr1032 1032: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1032 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1032 ../src/curl -q --output log/19/curl1032.out --include --trace-ascii log/19/trace1032 --trace-config all --trace-time --range 1-3 --head http://127.0.0.1:33487/1032 > log/19/stdout1032 2> log/19/stderr1032 === End of file commands.log === Start of file http_server.log 07:35:55.857163 ==CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1028 ../src/curl -q --include --trace-ascii log/1/trace1028 --trace-config all --trace-time http://127.0.0.1:38941/10280001 -L > log/1/stdout1028 2> log/1/stderr1028 ==> Client connect 07:35:55.857210 accept_connection 3 returned 4 07:35:55.857227 accept_connection 3 returned 0 07:35:55.857240 Read 93 bytes 07:35:55.857250 Process 93 bytes request 07:35:55.857261 Got request: GET /verifiedserver HTTP/1.1 07:35:55.857268 Are-we-friendly question received 07:35:55.857295 Wrote request (93 bytes) input to log/19/server.input 07:35:55.857307 Identifying ourselves as friends 07:35:55.857351 Response sent (56 bytes) and written to log/19/server.response 07:35:55.857358 special request received, no persistency 07:35:55.857365 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1032 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1032 ==128131== ==128131== Process terminating with default action of signal 4 (SIGILL) ==128131== Illegal opcode at address 0x4003082 ==128131== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128131== by 0x4003082: main (tool_main.c:234) === End of file valgrind1032 test 1028...[HTTP Location: redirect to FTP URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1028 ../src/curl -q --include --trace-ascii log/1/trace1028 --trace-config all --trace-time http://127.0.0.1:38941/10280001 -L > log/1/stdout1028 2> log/1/stderr1028 1028: stdout FAILED: --- log/1/check-expected 2025-07-18 07:35:56.640446139 +0000 +++ log/1/check-generated 2025-07-18 07:35:56.640446139 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 302 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake swsclose[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -Location: ftp://127.0.0.1:34427/10280002[CR][LF] -Content-Length: 0[CR][LF] -Connection: close[CR][LF] -[CR][LF] -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] == Contents of files in the log/1/ dir after test 1028 === Start of file check-expected HTTP/1.1 302 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake swsclose[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] Location: ftp://127.0.0.1:34427/10280002[CR][LF] Content-Length: 0[CR][LF] Connection: close[CR][LF] [CR][LF] data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1028 ../src/curl -q --include --trace-ascii log/1/trace1028 --trace-config all --trace-time http://127.0.0.1:38941/10280001 -L > log/1/stdout1028 2> log/1/stderr1028 === End of file commands.log === Start of file ftp_server.log 07:35:55.995282 ====> Client connect 07:35:55.995424 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:55.995636 < "USER anonymous" 07:35:55.995669 > "331 We are happy you popped in![CR][LF]" 07:35:55.995806 < "PASS ftp@example.com" 07:35:55.995833 > "230 Welcome you silly person[CR][LF]" 07:35:55.996130 < "PWD" 07:35:55.996160 > "257 "/" is current directory[CR][LF]" 07:35:55.996541 < "EPSV" 07:35:55.996599 ====> Passive DATA channel requested by client 07:35:55.996614 DATA sockfilt for passive data channel starting... 07:35:55.998267 DATA sockfilt for passive data channel started (pid 128021) 07:35:55.998387 DATA sockfilt for passive data channel listens on port 45407 07:35:55.998433 > "229 Entering Passive Mode (|||45407|)[LF]" 07:35:55.998450 Client has been notified that DATA conn will be accepted on port 45407 07:35:55.999163 Client connects to port 45407 07:35:55.999202 ====> Client established passive DATA connection on port 45407 07:35:55.999277 < "TYPE I" 07:35:55.999306 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:55.999785 < "SIZE verifiedserver" 07:35:55.999830 > "213 17[CR][LF]" 07:35:55.999971 < "RETR verifiedserver" 07:35:56.000011 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.000082 =====> Closing passive DATA connection... 07:35:56.000097 Server disconnects passive DATA connection 07:35:56.000168 Server disconnected passive DATA connection 07:35:56.000186 DATA sockfilt for passive data channel quits (pid 128021) 07:35:56.000421 DATA sockfilt for passive data channel quit (pid 128021) 07:35:56.000447 =====> Closed passive DATA connection 07:35:56.000474 > "226 File transfer complete[CR][LF]" 07:35:56.044219 < "QUIT" 07:35:56.044267 > "221 bye bye baby[CR][LF]" 07:35:56.044621 MAIN sockfilt said DISC 07:35:56.044672 ====> Client disconnected 07:35:56.044840 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.841171 ====> Client connect 07:35:55.841416 Received DATA (on stdin) 07:35:55.841428 > 160 bytes data, server => client 07:35:55.841439 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.841448 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.841457 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.841516 < 16 bytes data, client => server 07:35:55.841526 'USER anonymous\r\n' 07:35:55.841656 Received DATA (on stdin) 07:35:55.841668 > 33 bytes data, server => client 07:35:55.841690 '331 We are happy you popped in!\r\n' 07:35:55.841734 < 22 bytes data, client => server 07:35:55.841745 'PASS ftp@example.com\r\n' 07:35:55.841816 Received DATA (on stdin) 07:35:55.841827 > 30 bytes data, server => client 07:35:55.841837 '230 Welcome you silly person\r\n' 07:35:55.841887 < 5 bytes data, client => server 07:35:55.841897 'PWD\r\n' 07:35:55.842223 Received DATA (on stdin) 07:35:55.842250 > 30 bytes data, server => client 07:35:55.842263 '257 "/" is current directory\r\n' 07:35:55.842384 < 6 bytes data, client => server 07:35:55.842404 'EPSV\r\n' 07:35:55.844438 Received DATA (on stdin) 07:35:55.844451 > 38 bytes data, server => client 07:35:55.844463 '229 Entering Passive Mode (|||45407|)\n' 07:35:55.845122 < 8 bytes data, client => server 07:35:55.845140 'TYPE I\r\n' 07:35:55.845425 Received DATA (on stdin) 07:35:55.845441 > 33 bytes data, server => client 07:35:55.845452 '200 I modify TYPE as you wanted\r\n' 07:35:55.845658 < 21 bytes data, client => server 07:35:55.845678 'SIZE verifiedserver\r\n' 07:35:55.845807 Received DATA (on stdin) 07:35:55.845827 > 8 bytes data, server => client 07:35:55.845838 '213 17\r\n' 07:35:55.845899 < 21 bytes data, client => server 07:35:55.845911 'RETR verifiedserver\r\n' 07:35:55.846069 Received DATA (on stdin) 07:35:55.846088 > 29 bytes data, server => client 07:35:55.846099 '150 Binary junk (17 bytes).\r\n' 07:35:55.846464 Received DATA (on stdin) 07:35:55.846480 > 28 bytes data, server => client 07:35:55.846491 '226 File transfer complete\r\n' 07:35:55.890002 < 6 bytes data, client => server 07:35:55.890030 'QUIT\r\n' 07:35:55.890254 Received DATA (on stdin) 07:35:55.890265 > 18 bytes data, server => client 07:35:55.890274 '221 bye bye baby\r\n' 07:35:55.890530 ====> Client disconnect 07:35:55.890659 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:55.844072 Running IPv4 version 07:35:55.844126 Listening on port 45407 07:35:55.844173 Wrote pid 128021 to log/1/server/ftp_sockdata.pid 07:35:55.844192 Received PING (on stdin) 07:35:55.844283 Received PORT (on stdin) 07:35:55.844583 ====> Client connect 07:35:55.846007 Received DATA (on stdin) 07:35:55.846024 > 17 bytes data, server => client 07:35:55.846036 'WE ROOLZ: 80151\r\n' 07:35:55.846088 Received DISC (on stdin) 07:35:55.846102 ====> Client forcibly disconnected 07:35:55.846174 Received QUIT (on stdin) 07:35:55.846185 quits 07:35:55.846243 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:55.819800 ====> Client connect 07:35:55.819833 accept_connection 3 returned 4 07:35:55.819849 accept_connection 3 returned 0 07:35:55.819863 Read 93 bytes 07:35:55.819874 Process 93 bytes request 07:35:55.819889 Got request: GET /verifiedserver HTTP/1.1 07:35:55.819899 Are-we-friendly question received 07:35:55.819923 Wrote request (93 bytes) input to log/1/server.input 07:35:55.819939 Identifying ourselves as friends 07:35:55.820000 Response sent (56 bytes) and written to log/1/server.response 07:35:55.820009 special request received, no persistency 07:35:55.820018 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 738CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1038 ../src/curl -q --output log/7/curl1038.out --include --trace-ascii log/7/trace1038 --trace-config all --trace-time ftp://127.0.0.1:40197/1038 -T log/7/upload1038 -C - > log/7/stdout1038 2> log/7/stderr1038 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1044 ../src/curl -q --include --trace-ascii log/3/trace1044 --trace-config all --trace-time ftp://127.0.0.1:34613/blalbla/1044 -I > log/3/stdout1044 2> log/3/stderr1044 63 === End of file http_verify.out === Start of file server.cmd Testnum 1028 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1028 ==128405== ==128405== Process terminating with default action of signal 4 (SIGILL) ==128405== Illegal opcode at address 0x4003082 ==128405== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128405== by 0x4003082: main (tool_main.c:234) === End of file valgrind1028 test 1038...[FTP PASV upload resume from end of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1038 ../src/curl -q --output log/7/curl1038.out --include --trace-ascii log/7/trace1038 --trace-config all --trace-time ftp://127.0.0.1:40197/1038 -T log/7/upload1038 -C - > log/7/stdout1038 2> log/7/stderr1038 1038: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1038 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1038 ../src/curl -q --output log/7/curl1038.out --include --trace-ascii log/7/trace1038 --trace-config all --trace-time ftp://127.0.0.1:40197/1038 -T log/7/upload1038 -C - > log/7/stdout1038 2> log/7/stderr1038 === End of file commands.log === Start of file ftp_server.log 07:35:56.076564 ====> Client connect 07:35:56.077149 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.077432 < "USER anonymous" 07:35:56.077465 > "331 We are happy you popped in![CR][LF]" 07:35:56.077567 < "PASS ftp@example.com" 07:35:56.077587 > "230 Welcome you silly person[CR][LF]" 07:35:56.080888 < "PWD" 07:35:56.080968 > "257 "/" is current directory[CR][LF]" 07:35:56.081166 < "EPSV" 07:35:56.081193 ====> Passive DATA channel requested by client 07:35:56.081206 DATA sockfilt for passive data channel starting... 07:35:56.083872 DATA sockfilt for passive data channel started (pid 128469) 07:35:56.084013 DATA sockfilt for passive data channel listens on port 42605 07:35:56.084058 > "229 Entering Passive Mode (|||42605|)[LF]" 07:35:56.084078 Client has been notified that DATA conn will be accepted on port 42605 07:35:56.084393 Client connects to port 42605 07:35:56.084420 ====> Client established passive DATA connection on port 42605 07:35:56.084500 < "TYPE I" 07:35:56.084532 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.084679 < "SIZE verifiedserver" 07:35:56.084714 > "213 17[CR][LF]" 07:35:56.085343 < "RETR verifiedserver" 07:35:56.085381 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.085479 =====> Closing passive DATA connection... 07:35:56.085494 Server disconnects passive DATA connection 07:35:56.085573 Server disconnected passive DATA connection 07:35:56.085594 DATA sockfilt for passive data channel quits (pid 128469) 07:35:56.085947 DATA sockfilt for passive data channel quit (pid 128469) 07:35:56.085963 =====> Closed passive DATA connection 07:35:56.085988 > "226 File transfer complete[CR][LF]" 07:35:56.127127 < "QUIT" 07:35:56.127181 > "221 bye bye baby[CR][LF]" 07:35:56.127684 MAIN sockfilt said DISC 07:35:56.127719 ====> Client disconnected 07:35:56.127790 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.922445 ====> Client connect 07:35:55.923151 Received DATA (on stdin) 07:35:55.923167 > 160 bytes data, server => client 07:35:55.923180 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.923191 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.923201 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.923281 < 16 bytes data, client => server 07:35:55.923297 'USER anonymous\r\n' 07:35:55.923434 Received DATA (on stdin) 07:35:55.923445 > 33 bytes data, server => client 07:35:55.923455 '331 We are happy you popped in!\r\n' 07:35:55.923497 < 22 bytes data, client => server 07:35:55.923509 'PASS ftp@example.com\r\n' 07:35:55.926170 Received DATA (on stdin) 07:35:55.926205 > 30 bytes data, server => client 07:35:55.926217 '230 Welcome you silly person\r\n' 07:35:55.926327 < 5 bytes data, client => server 07:35:55.926338 'PWD\r\n' 07:35:55.926961 Received DATA (on stdin) 07:35:55.926975 > 30 bytes data, server => client 07:35:55.926986 '257 "/" is current directory\r\n' 07:35:55.927065 < 6 bytes data, client => server 07:35:55.927077 'EPSV\r\n' 07:35:55.930075 Received DATA (on stdin) 07:35:55.930093 > 38 bytes data, server => client 07:35:55.930104 '229 Entering Passive Mode (|||42605|)\n' 07:35:55.930301 < 8 bytes data, client => server 07:35:55.930315 'TYPE I\r\n' 07:35:55.930520 Received DATA (on stdin) 07:35:55.930533 > 33 bytes data, server => client 07:35:55.930543 '200 I modify TYPE as you wanted\r\n' 07:35:55.930587 < 21 bytes data, client => server 07:35:55.930598 'SIZE verifiedserver\r\n' 07:35:55.930697 Received DATA (on stdin) 07:35:55.930708 > 8 bytes data, server => client 07:35:55.930717 '213 17\r\n' 07:35:55.930765 < 21 bytes data, client => server 07:35:55.930775 'RETR verifiedserver\r\n' 07:35:55.931446 Received DATA (on stdin) 07:35:55.931457 > 29 bytes data, server => client 07:35:55.931466 '150 Binary junk (17 bytes).\r\n' 07:35:55.931978 Received DATA (on stdin) 07:35:55.932003 > 28 bytes data, server => client 07:35:55.932015 '226 File transfer complete\r\n' 07:35:55.972931 < 6 bytes data, client => server 07:35:55.972961 'QUIT\r\n' 07:35:55.973172 Received DATA (on stdin) 07:35:55.973185 > 18 bytes data, server => client 07:35:55.973196 '221 bye bye baby\r\n' 07:35:55.973294 ====> Client disconnect 07:35:55.973717 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.929018 Running IPv4 version 07:35:56.929084 Listening on port 42605 07:35:56.929127 Wrote pid 128469 to log/7/server/ftp_sockdata.pid 07:35:56.929781 Received PING (on stdin) 07:35:56.929898 Received PORT (on stdin) 07:35:56.930334 ====> Client connect 07:35:56.931380 Received DATA (on stdin) 07:35:56.931395 > 17 bytes data, server => client 07:35:56.931404 'WE ROOLZ: 81417\r\n' 07:35:56.931483 Received DISC (on stdin) 07:35:56.931496 ====> Client forcibly disconnected 07:35:56.931602 Received QUIT (on stdin) 07:35:56.931640 quits 07:35:56.931722 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1038 === End of file server.cmd === Start of file upload1038 this is the *****cr@p******** that we're gonna upload worx? === End of file upload1038 === Start of file valgrind1038 ==128747== ==128747== Process terminating with default action of signal 4 (SIGILL) ==128747== Illegal opcode at address 0x4003082 ==128747== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128747== by 0x4003082: main (tool_main.c:234) === End of file valgrind1038 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1039 ../src/curl -q --output log/10/curl1039.out --include --trace-ascii log/10/trace1039 --trace-config all --trace-time ftp://127.0.0.1:39731/1039 -T log/10/upload1039 -C - > log/10/stdout1039 2> log/10/stderr1039 test 1044...[FTP download large file info with -I] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1044 ../src/curl -q --include --trace-ascii log/3/trace1044 --trace-config all --trace-time ftp://127.0.0.1:34613/blalbla/1044 -I > log/3/stdout1044 2> log/3/stderr1044 1044: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:56.720446141 +0000 +++ log/3/check-generated 2025-07-18 07:35:56.720446141 +0000 @@ -1,3 +0,0 @@ -Last-Modified: Sat, 26 Jul 2008 10:26:59 GMT[CR][LF] -Content-Length: 9999999999[CR][LF] -Accept-ranges: bytes[CR][LF] == Contents of files in the log/3/ dir after test 1044 === Start of file check-expected Last-Modified: Sat, 26 Jul 2008 10:26:59 GMT[CR][LF] Content-Length: 9999999999[CR][LF] Accept-ranges: bytes[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1044 ../src/curl -q --include --trace-ascii log/3/trace1044 --trace-config all --trace-time ftp://127.0.0.1:34613/blalbla/1044 -I > log/3/stdout1044 2> log/3/stderr1044 === End of file commands.log === Start of file ftp_server.log 07:35:56.128677 ====> Client connect 07:35:56.128827 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.129081 < "USER anonymous" 07:35:56.129115 > "331 We are happy you popped in![CR][LF]" 07:35:56.129262 < "PASS ftp@example.com" 07:35:56.129285 > "230 Welcome you silly person[CR][LF]" 07:35:56.129414 < "PWD" 07:35:56.129440 > "257 "/" is current directory[CR][LF]" 07:35:56.129599 < "EPSV" 07:35:56.129621 ====> Passive DATA channel requested by client 07:35:56.129633 DATA sockfilt for passive data channel starting... 07:35:56.131282 DATA sockfilt for passive data channel started (pid 128678) 07:35:56.131393 DATA sockfilt for passive data channel listens on port 36181 07:35:56.131436 > "229 Entering Passive Mode (|||36181|)[LF]" 07:35:56.131453 Client has been notified that DATA conn will be accepted on port 36181 07:35:56.131673 Client connects to port 36181 07:35:56.131700 ====> Client established passive DATA connection on port 36181 07:35:56.131760 < "TYPE I" 07:35:56.131784 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.131940 < "SIZE verifiedserver" 07:35:56.131975 > "213 17[CR][LF]" 07:35:56.132132 < "RETR verifiedserver" 07:35:56.132163 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.132235 =====> Closing passive DATA connection... 07:35:56.132250 Server disconnects passive DATA connection 07:35:56.132405 Server disconnected passive DATA connection 07:35:56.132430 DATA sockfilt for passive data channel quits (pid 128678) 07:35:56.132632 DATA sockfilt for passive data channel quit (pid 128678) 07:35:56.132657 =====> Closed passive DATA connection 07:35:56.132684 > "226 File transfer complete[CR][LF]" 07:35:56.177153 < "QUIT" 07:35:56.177210 > "221 bye bye baby[CR][LF]" 07:35:56.178343 MAIN sockfilt said DISC 07:35:56.178412 ====> Client disconnected 07:35:56.178502 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:56.974557 ====> Client connect 07:35:56.974821 Received DATA (on stdin) 07:35:56.974835 > 160 bytes data, server => client 07:35:56.974847 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.974858 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.974868 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.974928 < 16 bytes data, client => server 07:35:56.974939 'USER anonymous\r\n' 07:35:56.975102 Received DATA (on stdin) 07:35:56.975113 > 33 bytes data, server => client 07:35:56.975123 '331 We are happy you popped in!\r\n' 07:35:56.975168 < 22 bytes data, client => server 07:35:56.975179 'PASS ftp@example.com\r\n' 07:35:56.975267 Received DATA (on stdin) 07:35:56.975278 > 30 bytes data, server => client 07:35:56.975288 '230 Welcome you silly person\r\n' 07:35:56.975328 < 5 bytes data, client => server 07:35:56.975338 'PWD\r\n' 07:35:56.975421 Received DATA (on stdin) 07:35:56.975432 > 30 bytes data, server => client 07:35:56.975442 '257 "/" is current directory\r\n' 07:35:56.975526 < 6 bytes data, client => server 07:35:56.975547 'EPSV\r\n' 07:35:56.977443 Received DATA (on stdin) 07:35:56.977458 > 38 bytes data, server => client 07:35:56.977469 '229 Entering Passive Mode (|||36181|)\n' 07:35:56.977607 < 8 bytes data, client => server 07:35:56.977619 'TYPE I\r\n' 07:35:56.977769 Received DATA (on stdin) 07:35:56.977782 > 33 bytes data, server => client 07:35:56.977792 '200 I modify TYPE as you wanted\r\n' 07:35:56.977840 < 21 bytes data, client => server 07:35:56.977853 'SIZE verifiedserver\r\n' 07:35:56.977961 Received DATA (on stdin) 07:35:56.977973 > 8 bytes data, server => client 07:35:56.977983 '213 17\r\n' 07:35:56.978030 < 21 bytes data, client => server 07:35:56.978042 'RETR verifiedserver\r\n' 07:35:56.978236 Received DATA (on stdin) 07:35:56.978248 > 29 bytes data, server => client 07:35:56.978259 '150 Binary junk (17 bytes).\r\n' 07:35:56.978669 Received DATA (on stdin) 07:35:56.978682 > 28 bytes data, server => client 07:35:56.978693 '226 File transfer complete\r\n' 07:35:57.022937 < 6 bytes data, client => server 07:35:57.022969 'QUIT\r\n' 07:35:57.023198 Received DATA (on stdin) 07:35:57.023208 > 18 bytes data, server => client 07:35:57.023218 '221 bye bye baby\r\n' 07:35:57.024183 ====> Client disconnect 07:35:57.024504 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.977094 Running IPv4 version 07:35:56.977151 Listening on port 36181 07:35:56.977188 Wrote pid 128678 to log/3/server/ftp_sockdata.pid 07:35:56.977206 Received PING (on stdin) 07:35:56.977299 Received PORT (on stdin) 07:35:56.977580 ====> Client connect 07:35:56.978284 Received DATA (on stdin) 07:35:56.978297 > 17 bytes data, server => client 07:35:56.978307 'WE ROOLZ: 81974\r\n' 07:35:56.978332 Received DISC (on stdin) 07:35:56.978343 ====> Client forcibly disconnected 07:35:56.978421 Received QUIT (on stdin) 07:35:56.978432 quits 07:35:56.978488 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1044 === End of file server.cmd === Start of file valgrind1044 ==128976== ==128976== Process terminating with default action of signal 4 (SIGILL) ==128976== Illegal opcode at address 0x4003082 ==128976== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128976== by 0x4003082: main (tool_main.c:234) === End of file valgrind1044 test 1039...[FTP PASV upload resume from end of empty file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1039 ../src/curl -q --output log/10/curl1039.out --include --trace-ascii log/10/trace1039 --trace-config all --trace-time ftp://127.0.0.1:39731/1039 -T log/10/upload1039 -C - > log/10/stdout1039 2> log/10/stderr1039 1039: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1039 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1039 ../src/curl -q --output log/10/curl1039.out --include --trace-ascii log/10/trace1039 --trace-config all --trace-time ftp://127.0.0.1:39731/1039 -T log/10/upload1039 -C - > log/10/stdout1039 2> log/10/stderr1039 === End of file commands.log === Start of file ftp_server.log 07:35:56.097685 ====> Client connect 07:35:56.097841 > "220- _ _ ____ _ [CR][LF]22CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1045 ../src/curl -q --output log/6/curl1045.out --include --trace-ascii log/6/trace1045 --trace-config all --trace-time http://127.0.0.1:35775/1045 --interface 127.0.0.1 > log/6/stdout1045 2> log/6/stderr1045 0- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.098141 < "USER anonymous" 07:35:56.098209 > "331 We are happy you popped in![CR][LF]" 07:35:56.098383 < "PASS ftp@example.com" 07:35:56.098404 > "230 Welcome you silly person[CR][LF]" 07:35:56.098510 < "PWD" 07:35:56.098534 > "257 "/" is current directory[CR][LF]" 07:35:56.098677 < "EPSV" 07:35:56.098700 ====> Passive DATA channel requested by client 07:35:56.098712 DATA sockfilt for passive data channel starting... 07:35:56.100501 DATA sockfilt for passive data channel started (pid 128557) 07:35:56.100608 DATA sockfilt for passive data channel listens on port 46433 07:35:56.100639 > "229 Entering Passive Mode (|||46433|)[LF]" 07:35:56.100651 Client has been notified that DATA conn will be accepted on port 46433 07:35:56.100818 Client connects to port 46433 07:35:56.100846 ====> Client established passive DATA connection on port 46433 07:35:56.100910 < "TYPE I" 07:35:56.100937 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.101118 < "SIZE verifiedserver" 07:35:56.101157 > "213 17[CR][LF]" 07:35:56.101307 < "RETR verifiedserver" 07:35:56.101341 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.101425 =====> Closing passive DATA connection... 07:35:56.101443 Server disconnects passive DATA connection 07:35:56.101694 Server disconnected passive DATA connection 07:35:56.101715 DATA sockfilt for passive data channel quits (pid 128557) 07:35:56.102284 DATA sockfilt for passive data channel quit (pid 128557) 07:35:56.102329 =====> Closed passive DATA connection 07:35:56.102368 > "226 File transfer complete[CR][LF]" 07:35:56.147500 < "QUIT" 07:35:56.147562 > "221 bye bye baby[CR][LF]" 07:35:56.147774 MAIN sockfilt said DISC 07:35:56.147806 ====> Client disconnected 07:35:56.147958 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:55.943567 ====> Client connect 07:35:55.943835 Received DATA (on stdin) 07:35:55.943849 > 160 bytes data, server => client 07:35:55.943860 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:55.943870 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:55.943880 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:55.943944 < 16 bytes data, client => server 07:35:55.943955 'USER anonymous\r\n' 07:35:55.944185 Received DATA (on stdin) 07:35:55.944205 > 33 bytes data, server => client 07:35:55.944216 '331 We are happy you popped in!\r\n' 07:35:55.944268 < 22 bytes data, client => server 07:35:55.944284 'PASS ftp@example.com\r\n' 07:35:55.944383 Received DATA (on stdin) 07:35:55.944392 > 30 bytes data, server => client 07:35:55.944400 '230 Welcome you silly person\r\n' 07:35:55.944440 < 5 bytes data, client => server 07:35:55.944452 'PWD\r\n' 07:35:55.944513 Received DATA (on stdin) 07:35:55.944522 > 30 bytes data, server => client 07:35:55.944530 '257 "/" is current directory\r\n' 07:35:55.944575 < 6 bytes data, client => server 07:35:55.944586 'EPSV\r\n' 07:35:55.946634 Received DATA (on stdin) 07:35:55.946645 > 38 bytes data, server => client 07:35:55.946654 '229 Entering Passive Mode (|||46433|)\n' 07:35:55.946782 < 8 bytes data, client => server 07:35:55.946806 'TYPE I\r\n' 07:35:55.946923 Received DATA (on stdin) 07:35:55.946938 > 33 bytes data, server => client 07:35:55.946949 '200 I modify TYPE as you wanted\r\n' 07:35:55.947005 < 21 bytes data, client => server 07:35:55.947019 'SIZE verifiedserver\r\n' 07:35:55.947142 Received DATA (on stdin) 07:35:55.947155 > 8 bytes data, server => client 07:35:55.947165 '213 17\r\n' 07:35:55.947216 < 21 bytes data, client => server 07:35:55.947227 'RETR verifiedserver\r\n' 07:35:55.947324 Received DATA (on stdin) 07:35:55.947344 > 29 bytes data, server => client 07:35:55.947354 '150 Binary junk (17 bytes).\r\n' 07:35:55.948346 Received DATA (on stdin) 07:35:55.948366 > 28 bytes data, server => client 07:35:55.948377 '226 File transfer complete\r\n' 07:35:55.993327 < 6 bytes data, client => server 07:35:55.993356 'QUIT\r\n' 07:35:55.993552 Received DATA (on stdin) 07:35:55.993567 > 18 bytes data, server => client 07:35:55.993577 '221 bye bye baby\r\n' 07:35:55.993713 ====> Client disconnect 07:35:55.993809 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.946311 Running IPv4 version 07:35:56.946370 Listening on port 46433 07:35:56.946411 Wrote pid 128557 to log/10/server/ftp_sockdata.pid 07:35:56.946433 Received PING (on stdin) 07:35:56.946517 Received PORT (on stdin) 07:35:56.946754 ====> Client connect 07:35:56.947434 Received DATA (on stdin) 07:35:56.947446 > 17 bytes data, server => client 07:35:56.947456 'WE ROOLZ: 81708\r\n' 07:35:56.947616 Received DISC (on stdin) 07:35:56.947631 ====> Client forcibly disconnected 07:35:56.947704 Received QUIT (on stdin) 07:35:56.947713 quits 07:35:56.947785 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1039 === End of file server.cmd === Start of file upload1039 this is the *****cr@p******** that we're gonna upload worx? === End of file upload1039 === Start of file valgrind1039 ==128902== ==128902== Process terminating with default action of signal 4 (SIGILL) ==128902== Illegal opcode at address 0x4003082 ==128902== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==128902== by 0x4003082: main (tool_main.c:234) === End of file valgrind1039 test 1045...[HTTP GET with numeric localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1045 ../src/curl -q --output log/6/curl1045.out --include --trace-ascii log/6/trace1045 --trace-config all --trace-time http://127.0.0.1:35775/1045 --interface 127.0.0.1 > log/6/stdout1045 2> log/6/stderr1045 1045: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1045 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1045 ../src/curl -q --output log/6/curl1045.out --include --trace-ascii log/6/trace1045 --trace-config all --trace-time http://127.0.0.1:35775/1045 --interface 127.0.0.1 > log/6/stdout1045 2> log/6/stderr1045 === End of file commands.log === Start of file http_server.log 07:35:56.056668 ====> Client connect 07:35:56.056701 accept_connection 3 returned 4 07:35:56.056717 accept_connection 3 returned 0 07:35:56.056731 Read 93 bytes 07:35:56.056740 Process 93 bytes request 07:35:56.056753 Got request: GET /verifiedserver HTTP/1.1 07:35:56.056762 Are-we-friendly question received 07:35:56.056811 Wrote request (93 bytes) input to log/6/server.input 07:35:56.056826 Identifying ourselves as friends 07:35:56.056877 Response sent (56 bytes) and written to log/6/server.response 07:35:56.056886 special request received, no persistency 07:35:56.056894 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1045 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1045 ==129051== ==129051== Process terminating with default action of signal 4 (SIGILL) ==129051== ICMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1007 ../src/curl -q --output log/2/curl1007.out --include --trace-ascii log/2/trace1007 --trace-config all --trace-time -T log/2/test1007.txt tftp://127.0.0.1:43346//invalid-file -sS > log/2/stdout1007 2> log/2/stderr1007 llegal opcode at address 0x4003082 ==129051== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129051== by 0x4003082: main (tool_main.c:234) === End of file valgrind1045 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1047 ../src/curl -q --output log/22/curl1047.out --include --trace-ascii log/22/trace1047 --trace-config all --trace-time ftp://127.0.0.1:42651/ --interface 127.0.0.1 > log/22/stdout1047 2> log/22/stderr1047 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/2/server/tftp_server.pid" --portfile "log/2/server/tftp_server.port" --logfile "log/2/tftp_server.log" --logdir "log/2" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 126608 port 43346 * pid tftp => 126608 126608 test 1007...[TFTP send with invalid permission on server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1007 ../src/curl -q --output log/2/curl1007.out --include --trace-ascii log/2/trace1007 --trace-config all --trace-time -T log/2/test1007.txt tftp://127.0.0.1:43346//invalid-file -sS > log/2/stdout1007 2> log/2/stderr1007 1007: stderr FAILED: --- log/2/check-expected 2025-07-18 07:35:56.910446145 +0000 +++ log/2/check-generated 2025-07-18 07:35:56.910446145 +0000 @@ -1 +0,0 @@ -curl: (69) TFTP: Access Violation[CR][LF] == Contents of files in the log/2/ dir after test 1007 === Start of file check-expected curl: (69) TFTP: Access Violation[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1007 ../src/curl -q --output log/2/curl1007.out --include --trace-ascii log/2/trace1007 --trace-config all --trace-time -T log/2/test1007.txt tftp://127.0.0.1:43346//invalid-file -sS > log/2/stdout1007 2> log/2/stderr1007 === End of file commands.log === Start of file server.cmd Testnum 1007 === End of file server.cmd === Start of file test1007.txt This data will not be sent === End of file test1007.txt === Start of file tftp_server.log 07:35:55.213378 Wrote pid 126608 to log/2/server/tftp_server.pid 07:35:55.213441 Wrote port 43346 to log/2/server/tftp_server.port 07:35:55.213453 Running IPv4 version on port UDP/43346 === End of file tftp_server.log === Start of file valgrind1007 ==129121== ==129121== Process terminating with default action of signal 4 (SIGILL) ==129121== Illegal opcode at address 0x4003082 ==129121== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129121== by 0x4003082: main (tool_main.c:234) === End of file valgrind1007 test 1047...[FTP dir list PASV with localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1047 ../src/curl -q --output log/22/curl1047.out --include --trace-ascii log/22/trace1047 --trace-config all --trace-time ftp://127.0.0.1:42651/ --interface 127.0.0.1 > log/22/stdout1047 2> log/22/stderr1047 1047: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1047 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1047 ../src/curl -q --output log/22/curl1047.out --include --trace-ascii log/22/trace1047 --trace-config all --trace-time ftp://127.0.0.1:42651/ --interface 127.0.0.1 > log/22/stdout1047 2> log/22/stderr1047 === End of file commands.log === Start of file ftp_server.log 07:35:56.429685 ====> Client connect 07:35:56.429834 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.430218 < "USER anonymous" 07:35:56.430252 > "331 We are happy you popped in![CR][LF]" 07:35:56.430413 < "PASS ftp@example.com" 07:35:56.430439 > "230 Welcome you silly person[CR][LF]" 07:35:56.430586 < "PWD" 07:35:56.430614 > "257 "/" is current directory[CR][LF]" 07:35:56.430767 < "EPSV" 07:35:56.430789 ====> Passive DATA channel requested by client 07:35:56.430802 DATA sockfilt for passive data channel starting... 07:35:56.432710 DATA sockfilt for passive data channel started (pid 129203) 07:35:56.432801 DATA sockfilt for passive data channel listens on port 45067 07:35:56.432833 > "229 Entering Passive Mode (|||45067|)[LF]" 07:35:56.432849 Client has been notified that DATA conn will be accepted on port 45067 07:35:56.433055 Client connects to port 45067 07:35:56.433080 ====> Client established passive DATA connection on port 45067 07:35:56.433139 < "TYPE I" 07:35:56.433163 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.433306 < "SIZE verifiedserver" 07:35:56.433347 > "213 17[CR][LF]" 07:35:56.433493 < "RETR verifiedserver" 07:35:56.433525 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.433599 =====> Closing passive DATA connection... 07:35:56.433614 Server disconnects passive DATA connection 07:35:56.433825 Server disconnected passive DATA connection 07:35:56.433852 DATA sockfilt for passive data channel quits (pid 129203) 07:35:56.434041 DATA sockfilt for passive data channel quit (pid 129203) 07:35:56.434065 =====> Closed passive DATA connection 07:35:56.434088 > "226 File transfer complete[CR][LF]" 07:35:56.477140 < "QUIT" 07:35:56.477195 > "221 bye bye baby[CR][LF]" 07:35:56.478240 MAIN sockfilt said DISC 07:35:56.478266 ====> Client disconnected 07:35:56.478348 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:56.275533 ====> Client connect 07:35:56.275830 Received DATA (on stdin) 07:35:56.275846 > 160 bytes data, server => client 07:35:56.275858 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.275869 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.275878 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.276055 < 16 bytes data, client => server 07:35:56.276074 'USER anonymous\r\n' 07:35:56.276241 Received DATA (on stdin) 07:35:56.276254 > 33 bytes data, server => client 07:35:56.276265 '331 We are happy you popped in!\r\n' 07:35:56.276314 < 22 bytes data, client => server 07:35:56.276325 'PASS ftp@example.com\r\n' 07:35:56.276424 Received DATA (on stdin) 07:35:56.276436 > 30 bytes data, server => client 07:35:56.276447 '230 Welcome you silly person\r\n' 07:35:56.276493 < 5 bytes data, client => server 07:35:56.276504 'PWD\r\n' 07:35:56.276597 Received DATA (on stdin) 07:35:56.276608 > 30 bytes data, server => client 07:35:56.276618 '257 "/" is current directory\r\n' 07:35:56.276670 < 6 bytes data, client => server 07:35:56.276682 'EPSV\r\n' 07:35:56.278835 Received DATA (on stdin) 07:35:56.278848 > 38 bytes data, server => client 07:35:56.278859 '229 Entering Passive Mode (|||45067|)\n' 07:35:56.278989 < 8 bytes data, client => server 07:35:56.279000 'TYPE I\r\n' 07:35:56.279148 Received DATA (on stdin) 07:35:56.279160 > 33 bytes data, server => client 07:35:56.279171 '200 I modify TYPE as you wanted\r\n' 07:35:56.279217 < 21 bytes data, client => server 07:35:56.279227 'SIZE verifiedserver\r\n' 07:35:56.279333 Received DATA (on stdin) 07:35:56.279345 > 8 bytes data, server => client 07:35:56.279355 '213 17\r\n' 07:35:56.279401 < 21 bytes data, client => server 07:35:56.279411 'RETR verifiedserver\r\n' 07:35:56.279599 Received DATA (on stdin) 07:35:56.279611 > 29 bytes data, server => client 07:35:56.279621 '150 Binary junk (17 bytes).\r\n' 07:35:56.280072 Received DATA (on stdin) 07:35:56.280085 > 28 bytes data, server => client 07:35:56.280096 '226 File transfer complete\r\n' 07:35:56.322924 < 6 bytes data, client => server 07:35:56.322960 'QUIT\r\n' 07:35:56.323188 Received DATA (on stdin) 07:35:56.323199 > 18 bytes data, server => client 07:35:56.323208 '221 bye bye baby\r\n' 07:35:56.324179 ====> Client disconnect 07:35:56.324330 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.278423 Running IPv4 version 07:35:56.278470 Listening on port 45067 07:35:56.278509 Wrote pid 129203 to log/22/server/ftpCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1050 ../src/curl -q --output log/17/curl1050.out --include --trace-ascii log/17/trace1050 --trace-config all --trace-time -g "ftp://[::1]:33929/" -P ::1 > log/17/stdout1050 2> log/17/stderr1050 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1064 ../src/curl -q --include --trace-ascii log/1/trace1064 --trace-config all --trace-time -H "Expect:" -T log/1/1064 http://127.0.0.1:38941/1064.upload1 -T log/1/1064 http://127.0.0.1:38941/10640002.upload2 > log/1/stdout1064 2> log/1/stderr1064 _sockdata.pid 07:35:56.278644 Received PING (on stdin) 07:35:56.278712 Received PORT (on stdin) 07:35:56.278963 ====> Client connect 07:35:56.279646 Received DATA (on stdin) 07:35:56.279658 > 17 bytes data, server => client 07:35:56.279669 'WE ROOLZ: 79849\r\n' 07:35:56.279690 Received DISC (on stdin) 07:35:56.279701 ====> Client forcibly disconnected 07:35:56.279841 Received QUIT (on stdin) 07:35:56.279853 quits 07:35:56.279909 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1047 === End of file server.cmd === Start of file valgrind1047 ==129215== ==129215== Process terminating with default action of signal 4 (SIGILL) ==129215== Illegal opcode at address 0x4003082 ==129215== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129215== by 0x4003082: main (tool_main.c:234) === End of file valgrind1047 test 1050...[FTP-IPv6 dir list, EPRT with specified IP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1050 ../src/curl -q --output log/17/curl1050.out --include --trace-ascii log/17/trace1050 --trace-config all --trace-time -g "ftp://[::1]:33929/" -P ::1 > log/17/stdout1050 2> log/17/stderr1050 1050: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1050 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1050 ../src/curl -q --output log/17/curl1050.out --include --trace-ascii log/17/trace1050 --trace-config all --trace-time -g "ftp://[::1]:33929/" -P ::1 > log/17/stdout1050 2> log/17/stderr1050 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:56.445323 ====> Client connect 07:35:56.445507 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.445806 < "USER anonymous" 07:35:56.445842 > "331 We are happy you popped in![CR][LF]" 07:35:56.446006 < "PASS ftp@example.com" 07:35:56.446034 > "230 Welcome you silly person[CR][LF]" 07:35:56.446192 < "PWD" 07:35:56.446221 > "257 "/" is current directory[CR][LF]" 07:35:56.446381 < "EPSV" 07:35:56.446409 ====> Passive DATA channel requested by client 07:35:56.446423 DATA sockfilt for passive data channel starting... 07:35:56.448179 DATA sockfilt for passive data channel started (pid 129213) 07:35:56.448304 DATA sockfilt for passive data channel listens on port 42635 07:35:56.448349 > "229 Entering Passive Mode (|||42635|)[LF]" 07:35:56.448363 Client has been notified that DATA conn will be accepted on port 42635 07:35:56.448633 Client connects to port 42635 07:35:56.448659 ====> Client established passive DATA connection on port 42635 07:35:56.448731 < "TYPE I" 07:35:56.448757 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.448891 < "SIZE verifiedserver" 07:35:56.448921 > "213 17[CR][LF]" 07:35:56.449049 < "RETR verifiedserver" 07:35:56.449076 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.449144 =====> Closing passive DATA connection... 07:35:56.449157 Server disconnects passive DATA connection 07:35:56.449354 Server disconnected passive DATA connection 07:35:56.449377 DATA sockfilt for passive data channel quits (pid 129213) 07:35:56.449607 DATA sockfilt for passive data channel quit (pid 129213) 07:35:56.449626 =====> Closed passive DATA connection 07:35:56.449652 > "226 File transfer complete[CR][LF]" 07:35:56.493695 < "QUIT" 07:35:56.493756 > "221 bye bye baby[CR][LF]" 07:35:56.494405 MAIN sockfilt said DISC 07:35:56.494455 ====> Client disconnected 07:35:56.494528 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:56.291184 ====> Client connect 07:35:56.291506 Received DATA (on stdin) 07:35:56.291523 > 160 bytes data, server => client 07:35:56.291535 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.291546 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.291556 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.291631 < 16 bytes data, client => server 07:35:56.291647 'USER anonymous\r\n' 07:35:56.291830 Received DATA (on stdin) 07:35:56.291842 > 33 bytes data, server => client 07:35:56.291854 '331 We are happy you popped in!\r\n' 07:35:56.291904 < 22 bytes data, client => server 07:35:56.291916 'PASS ftp@example.com\r\n' 07:35:56.292019 Received DATA (on stdin) 07:35:56.292032 > 30 bytes data, server => client 07:35:56.292044 '230 Welcome you silly person\r\n' 07:35:56.292092 < 5 bytes data, client => server 07:35:56.292105 'PWD\r\n' 07:35:56.292205 Received DATA (on stdin) 07:35:56.292217 > 30 bytes data, server => client 07:35:56.292228 '257 "/" is current directory\r\n' 07:35:56.292283 < 6 bytes data, client => server 07:35:56.292296 'EPSV\r\n' 07:35:56.294355 Received DATA (on stdin) 07:35:56.294372 > 38 bytes data, server => client 07:35:56.294383 '229 Entering Passive Mode (|||42635|)\n' 07:35:56.294569 < 8 bytes data, client => server 07:35:56.294580 'TYPE I\r\n' 07:35:56.294741 Received DATA (on stdin) 07:35:56.294752 > 33 bytes data, server => client 07:35:56.294762 '200 I modify TYPE as you wanted\r\n' 07:35:56.294804 < 21 bytes data, client => server 07:35:56.294814 'SIZE verifiedserver\r\n' 07:35:56.294904 Received DATA (on stdin) 07:35:56.294914 > 8 bytes data, server => client 07:35:56.294923 '213 17\r\n' 07:35:56.294962 < 21 bytes data, client => server 07:35:56.294972 'RETR verifiedserver\r\n' 07:35:56.295215 Received DATA (on stdin) 07:35:56.295226 > 29 bytes data, server => client 07:35:56.295236 '150 Binary junk (17 bytes).\r\n' 07:35:56.295635 Received DATA (on stdin) 07:35:56.295647 > 28 bytes data, server => client 07:35:56.295659 '226 File transfer complete\r\n' 07:35:56.339519 < 6 bytes data, client => server 07:35:56.339543 'QUIT\r\n' 07:35:56.339754 Received DATA (on stdin) 07:35:56.339779 > 18 bytes data, server => client 07:35:56.339790 '221 bye bye baby\r\n' 07:35:56.340320 ====> Client disconnect 07:35:56.340515 Received ACKD (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file ftp_ipv6_sockdata.log 07:35:56.293978 Running IPv6 version 07:35:56.294043 Listening on port 42635 07:35:56.294083 Wrote pid 129213 to log/17/server/ftp_ipv6_sockdata.pid 07:35:56.294100 Received PING (on stdin) 07:35:56.294209 Received PORT (on stdin) 07:35:56.294544 ====> Client connect 07:35:56.295140 Received DATA (on stdin) 07:35:56.295151 > 17 bytes data, server => client 07:35:56.295161 'WE ROOLZ: 88967\r\n' 07:35:56.295183 Received DISC (on stdin) 07:35:56.295194 ====> Client forcibly disconnected 07:35:56.295367 Received QUIT (on stdin) 07:35:56.295378 quits 07:35:56.295432 ============> sockfilt quits === End of file ftp_ipv6_sockdata.log === Start of file server.cmd Testnum 1050 === End of file server.cmd === Start of file valgrind1050 ==129237== ==129237== Process terminating with default action of signal 4 (SIGILL) ==129237== Illegal opcode at address 0x4003082 ==129237== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129237== by 0x4003082: main (tool_main.c:234) === End of file valgrind1050 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1065 ../src/curl -q --include --trace-ascii log/7/trace1065 --trace-config all --trace-time -H "Expect:" -T log/7/1065 http://127.0.0.1:39077/1065.upload1 http://127.0.0.1:39077/10650002.url2 > log/7/stdout1065 2> log/7/stderr1065 test 1064...[HTTP PUT twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1064 ../src/curl -q --include --trace-ascii log/1/trace1064 --trace-config all --trace-time -H "Expect:" -T log/1/1064 http://127.0.0.1:38941/1064.upload1 -T log/1/1064 http://127.0.0.1:38941/10640002.upload2 > log/1/stdout1064 2> log/1/stderr1064 1064: stdout FAILED: --- log/1/check-expected 2025-07-18 07:35:57.150446151 +0000 +++ log/1/check-generated 2025-07-18 07:35:57.150446151 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 200 A OK[CR][LF] -Server: curl test[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 3[CR][LF] -[CR][LF] -ok[LF] -HTTP/1.1 200 A OK[CR][LF] -Server: curl test[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 9[CR][LF] -[CR][LF] -still ok[LF] == Contents of files in the log/1/ dir after test 1064 === Start of file 1064 test === End of file 1064 === Start of file check-expected HTTP/1.1 200 A OK[CR][LF] Server: curl test[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 3[CR][LF] [CR][LF] ok[LF] HTTP/1.1 200 A OK[CR][LF] Server: curl test[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 9[CR][LF] [CR][LF] still ok[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1064 ../src/curl -q --include --trace-ascii log/1/trace1064 --trace-config all --trace-time -H "Expect:" -T log/1/1064 http://127.0.0.1:38941/1064.upload1 -T log/1/1064 http://127.0.0.1:38941/10640002.upload2 > log/1/stdout1064 2> log/1/stderr1064 === End of file commands.log === Start of file http_server.log 07:35:56.519785 ====> Client connect 07:35:56.519820 accept_connection 3 returned 4 07:35:56.519837 accept_connection 3 returned 0 07:35:56.519852 Read 93 bytes 07:35:56.519861 Process 93 bytes request 07:35:56.519873 Got request: GET /verifiedserver HTTP/1.1 07:35:56.519882 Are-we-friendly question received 07:35:56.519906 Wrote request (93 bytes) input to log/1/server.input 07:35:56.519919 Identifying ourselves as friends 07:35:56.519965 Response sent (56 bytes) and written to log/1/server.response 07:35:56.519973 special request received, no persistency 07:35:56.519980 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1064 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1064 ==129859== ==129859== Process terminating with default action of signal 4 (SIGILL) ==129859== Illegal opcode at address 0x4003082 ==129859== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129859== by 0x4003082: main (tool_main.c:234) === End of file valgrind1064 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1062 ../src/curl -q --output log/19/curl1062.out --include --trace-ascii log/19/trace1062 --trace-config all --trace-time ftp://127.0.0.1:40681/path/1062 > log/19/stdout1062 2> log/19/stderr1062 test 1065...[HTTP PUT with one file but two URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1065 ../src/curl -q --include --trace-ascii log/7/trace1065 --trace-config all --trace-time -H "Expect:" -T log/7/1065 http://127.0.0.1:39077/1065.upload1 http://127.0.0.1:39077/10650002.url2 > log/7/stdout1065 2> log/7/stderr1065 1065: stdout FAILED: --- log/7/check-expected 2025-07-18 07:35:57.157112816 +0000 +++ log/7/check-generated 2025-07-18 07:35:57.157112816 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 200 A OK[CR][LF] -Server: curl test[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 3[CR][LF] -[CR][LF] -ok[LF] -HTTP/1.1 200 A OK[CR][LF] -Server: curl test[CR][LF] -Content-Type: text/html; charset=iso-8859-1[CR][LF] -Content-Length: 9[CR][LF] -[CR][LF] -still ok[LF] == Contents of files in the log/7/ dir after test 1065 === Start of file 1065 test === End of file 1065 === Start of file check-expected HTTP/1.1 200 A OK[CR][LF] Server: curl test[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 3[CR][LF] [CR][LF] ok[LF] HTTP/1.1 200 A OK[CR][LF] Server: curl test[CR][LF] Content-Type: text/html; charset=iso-8859-1[CR][LF] Content-Length: 9[CR][LF] [CR][LF] still ok[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1065 ../src/curl -q --include --trace-ascii log/7/trace1065 --trace-config all --trace-time -H "Expect:" -T log/7/1065 http://127.0.0.1:39077/1065.upload1 http://127.0.0.1:39077/10650002.url2 > log/7/stdout1065 2> log/7/stderr1065 === End of file commands.log === Start of file http_server.log 07:35:56.564890 ====> Client connect 07:35:56.564923 accept_connection 3 returned 4 07:35:56.564939 accept_connection 3 returned 0 07:35:56.564953 Read 93 bytes 07:35:56.564962 Process 93 bytes request 07:35:56.564975 Got request: GET /verifiedserver HTTP/1.1 07:35:56.564984 Are-we-friendly question received 07:35:56.565009 Wrote request (93 bytes) input to log/7/server.input 07:35:56.565025 Identifying ourselves as friends 07:35:56.565084 Response sent (56 bytes) and written to log/7/server.response 07:35:56.565094 special request received, no persistency 07:35:56.565102 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1065 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1065 ==130051== ==130051== Process terminating with default action of signal 4 (SIGILL) ==130051== Illegal opcode at address 0x4003082 ==130051== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130051== by 0x4003082: main (tool_main.c:234) === End of file valgrind1065 test 1062...[FTP with excessively long server command response lines, boundary condition] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1062 ../src/curl -q --output log/19/curl1062.out --include --trace-ascii log/19/trace1062 --trace-config all --trace-time ftp://127.0.0.1:40681/path/1062 > log/19/stdout1062 2> log/19/stderr1062 1062: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1062 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1062 ../src/curl -q --output log/19/curl1062.out --include --trace-ascii log/19/trace1062 --trace-config all --trace-time ftp://127.0.0.1:40681/path/1062 > log/19/stdout1062 2> log/19/stderr1062 === End of file commands.log === Start of file ftp_server.log 07:35:56.659569 ====> Client connect 07:35:56.659730 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.660020 < "USER anonymous" 07:35:56.660054 > "331 We are happy you popped in![CR][LF]" 07:35:56.660205 < "PASS ftp@example.com" 07:35:56.660230 > "230 Welcome you silly person[CR][LF]" 07:35:56.660464 < "PWD" 07:35:56.660515 > "257 "/" is current directory[CR][LF]" 07:35:56.660682 < "EPSV" 07:35:56.660706 ====> Passive DATA channel requested by client 07:35:56.660718 DATA sockfilt for passive data channel starting... 07:35:56.661989 DATA sockfilt for passive data channel started (pid 129712) 07:35:56.662092 DATA sockfilt for passive data channel listens on port 38275 07:35:56.662136 > "229 Entering Passive Mode (|||38275|)[LF]" 07:35:56.662148 Client has been notified that DATA conn will be accepted on port 38275 07:35:56.662336 Client connects to port 38275 07:35:56.662362 ====> Client established passive DATA connection on port 38275 07:35:56.662419 < "TYPE I" 07:35:56.662447 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.662624 < "SIZE verifiedserver" 07:35:56.662661 > "213 17[CR][LF]" 07:35:56.662874 < "RETR verifiedserver" 07:35:56.662911 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.662979 =====> Closing passive DATA connection... 07:35:56.662993 Server disconnects passive DATA connection 07:35:56.663058 Server disconnected passive DATA connection 07:35:56.663076 DATA sockfilt for passive data channel quits (pid 129712) 07:35:56.663293 DATA sockfilt for passive data channel quit (pid 129712) 07:35:56.663375 =====> Closed passive DATA connection 07:35:56.663414 > "226 File transfer complete[CR][LF]" 07:35:56.707341 < "QUIT" 07:35:56.707392 > "221 bye bye baby[CR][LF]" 07:35:56.708364 MAIN sockfilt said DISC 07:35:56.708416 ====> Client disconnected 07:35:56.708489 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:56.505444 ====> Client connect 07:35:56.505728 Received DATA (on stdin) 07:35:56.505743 > 160 bytes data, server => client 07:35:56.505754 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.505764 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.505776 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.505842 < 16 bytes data, client => server 07:35:56.505856 'USER anonymous\r\n' 07:35:56.506040 Received DATA (on stdin) 07:35:56.506052 > 33 bytes data, server => client 07:35:56.506061 '331 We are happy you popped in!\r\n' 07:35:56.506112 < 22 bytes data, client => server 07:35:56.506122 'PASS ftp@example.com\r\n' 07:35:56.506214 Received DATA (on stdin) 07:35:56.506224 > 30 bytes data, server => client 07:35:56.506234 '230 Welcome you silly person\r\n' 07:35:56.506308 < 5 bytes data, client => server 07:35:56.506329 'PWD\r\n' 07:35:56.506503 Received DATA (on stdin) 07:35:56.506516 > 30 bytes data, server => client 07:35:56.506526 '257 "/" is current directory\r\n' 07:35:56.506585 < 6 bytes data, client => server 07:35:56.506598 'EPSV\r\n' 07:35:56.508132 Received DATA (on stdin) 07:35:56.508143 > 38 bytes data, server => client 07:35:56.508152 '229 Entering Passive Mode (|||38275|)\n' 07:35:56.508271 < 8 bytes data, client => server 07:35:56.508282 'TYPE I\r\n' 07:35:56.508433 Received DATA (on stdin) 07:35:56.508443 > 33 bytes data, server => client 07:35:56.508453 '200 I modify TYPE as you wanted\r\n' 07:35:56.508517 < 21 bytes data, client => server 07:35:56.508535 'SIZE verifiedserver\r\n' 07:35:56.508650 Received DATA (on stdin) 07:35:56.508665 > 8 bytes data, server => client 07:35:56.508674 '213 17\r\n' 07:35:56.508731 < 21 bytes data, client => server 07:35:56.508742 'RETR verifiedserver\r\n' 07:35:56.508886 Received DATA (on stdin) 07:35:56.509030 > 29 bytes data, server => client 07:35:56.509044 '150 Binary junk (17 bytes).\r\n' 07:35:56.509404 Received DATA (on stdin) 07:35:56.509416 > 28 bytes data, server => client 07:35:56.509426 '226 File transfer complete\r\n' 07:35:56.553155 < 6 bytes data, client => server 07:35:56.553183 'QUIT\r\n' 07:35:56.553380 Received DATA (on stdin) 07:35:56.553391 > 18 bytes data, server => client 07:35:56.553402 '221 bye bye baby\r\n' 07:35:56.554270 ====> Client disconnect 07:35:56.554476 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.507799 Running IPv4 version 07:35:56.507868 Listening on port 38275 07:35:56.507905 Wrote pid 129712 to log/19/server/ftp_sockdata.pid 07:35:56.507922 Received PING (on stdin) 07:35:56.508000 Received PORT (on stdin) 07:35:56.508241 ====> Client connect 07:35:56.508912 Received DATA (on stdin) 07:35:56.508928 > 17 bytes data, server => client 07:35:56.508938 'WE ROOLZ: 93871\r\n' 07:35:56.508980 Received DISC (on stdin) 07:35:56.508993 ====> Client forcibly disconnected 07:35:56.509084 Received QUIT (on stdin) 07:35:56.509094 quits 07:35:56.509152 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1055 ../src/curl -q --output log/21/curl1055.out --include --trace-ascii log/21/trace1055 --trace-config all --trace-time http://127.0.0.1:41087/1055 -L -T log/21/test1055.txt > log/21/stdout1055 2> log/21/stderr1055 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-A Exactly fill curl's buffer\r\n250 Finally, here is the response, boundary condition Testnum 1062 === End of file server.cmd === Start of file valgrind1062 ==129979== ==129979== Process terminating with default action of signal 4 (SIGILL) ==129979== Illegal opcode at address 0x4003082 ==129979== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129979== by 0x4003082: main (tool_main.c:234) === End of file valgrind1062 test 1055...[HTTP PUT Location: redirect to FTP URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1055 ../src/curl -q --output log/21/curl1055.out --include --trace-ascii log/21/trace1055 --trace-config all --trace-time http://127.0.0.1:41087/1055 -L -T log/21/test1055.txt > log/21/stdout1055 2> log/21/stderr1055 1055: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1055 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1055 ../src/curl -q --output log/21/curl1055.out --include --trace-ascii log/21/trace1055 --trace-config all --trace-time http://127.0.0.1:41087/1055 -L -T log/21/test1055.txt > log/21/stdout1055 2> log/21/stderr1055 === End of file commands.log === Start of file ftp_server.log 07:35:56.645585 ====> Client connect 07:35:56.645726 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.645983 < "USER anonymous" 07:35:56.646016 > "331 We are happy you popped in![CR][LF]" 07:35:56.646239 < "PASS ftp@example.com" 07:35:56.646290 > "230 Welcome you silly person[CR][LF]" 07:35:56.646451 < "PWD" 07:35:56.646481 > "257 "/" is current directory[CR][LF]" 07:35:56.646829 < "EPSV" 07:35:56.646859 ====> Passive DATA channel requested by client 07:35:56.646871 DATA sockfilt for passive data channel starting... 07:35:56.648350 DATA sockfilt for passive data channel started (pid 129583) 07:35:56.648447 DATA sockfilt for passive data channel listens on port 39053 07:35:56.648480 > "229 Entering Passive Mode (|||39053|)[LF]" 07:35:56.648494 Client has been notified that DATA conn will be accepted on port 39053 07:35:56.648693 Client connects to port 39053 07:35:56.648717 ====> Client established passive DATA connection on port 39053 07:35:56.648768 < "TYPE I" 07:35:56.648789 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.648980 < "SIZE verifiedserver" 07:35:56.649025 > "213 17[CR][LF]" 07:35:56.649153 < "RETR verifiedserver" 07:35:56.649183 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.649255 =====> Closing passive DATA connection... 07:35:56.649270 Server disconnects passive DATA connection 07:35:56.649321 Server disconnected passive DATA connection 07:35:56.649352 DATA sockfilt for passive data channel quits (pid 129583) 07:35:56.649622 DATA sockfilt for passive data channel quit (pid 129583) 07:35:56.649656 =====> Closed passive DATA connection 07:35:56.649685 > "226 File transfer complete[CR][LF]" 07:35:56.690383 < "QUIT" 07:35:56.690446 > "221 bye bye baby[CR][LF]" 07:35:56.690766 MAIN sockfilt said DISC 07:35:56.690794 ====> Client disconnected 07:35:56.690866 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:56.491464 ====> Client connect 07:35:56.491721 Received DATA (on stdin) 07:35:56.491735 > 160 bytes data, server => client 07:35:56.491747 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.491758 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.491767 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.491844 < 16 bytes data, client => server 07:35:56.491862 'USER anonymous\r\n' 07:35:56.491988 Received DATA (on stdin) 07:35:56.492001 > 33 bytes data, server => client 07:35:56.492011 '331 We are happy you popped in!\r\n' 07:35:56.492065 < 22 bytes data, client => server 07:35:56.492077 'PASS ftp@example.com\r\n' 07:35:56.492270 Received DATA (on stdin) 07:35:56.492290 > 30 bytes data, server => client 07:35:56.492300 '230 Welcome you silly person\r\n' 07:35:56.492342 < 5 bytes data, client => server 07:35:56.492350 'PWD\r\n' 07:35:56.492645 Received DATA (on stdin) 07:35:56.492664 > 30 bytes data, server => client 07:35:56.492675 '257 "/" is current directory\r\n' 07:35:56.492733 < 6 bytes data, client => server 07:35:56.492746 'EPSV\r\n' 07:35:56.494444 Received DATA (on stdin) 07:35:56.494496 > 38 bytes data, server => client 07:35:56.494505 '229 Entering Passive Mode (|||39053|)\n' 07:35:56.494655 < 8 bytes data, client => server 07:35:56.494667 'TYPE I\r\n' 07:35:56.494769 Received DATA (on stdin) 07:35:56.494778 > 33 bytes data, server => client 07:35:56.494786 '200 I modify TYPE as you wanted\r\n' 07:35:56.494854 < 21 bytes data, client => server 07:35:56.494874 'SIZE verifiedserver\r\n' 07:35:56.494999 Received DATA (on stdin) 07:35:56.495018 > 8 bytes data, server => client 07:35:56.495029 '213 17\r\n' 07:35:56.495083 < 21 bytes data, client => server 07:35:56.495094 'RETR verifiedserver\r\n' 07:35:56.495151 Received DATA (on stdin) 07:35:56.495160 > 29 bytes data, server => client 07:35:56.495170 '150 Binary junk (17 bytes).\r\n' 07:35:56.495675 Received DATA (on stdin) 07:35:56.495691 > 28 bytes data, server => client 07:35:56.495702 '226 File transfer complete\r\n' 07:35:56.536173 < 6 bytes data, client => server 07:35:56.536197 'QUIT\r\n' 07:35:56.536437 Received DATA (on stdin) 07:35:56.536451 > 18 bytes data, server => client 07:35:56.536462 '221 bye bye baby\r\n' 07:35:56.536696 ====> Client disconnect 07:35:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1061 ../src/curl -q --output log/9/curl1061.out --include --trace-ascii log/9/trace1061 --trace-config all --trace-time http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://127.0.0.1:34999 --proxy-user silly:person --proxy-digest --proxytunnel > log/9/stdout1061 2> log/9/stderr1061 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1060 ../src/curl -q --output log/14/curl1060.out --include --trace-ascii log/14/trace1060 --trace-config all --trace-time http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://127.0.0.1:37963 --proxy-user silly:person --proxy-digest --proxytunnel > log/14/stdout1060 2> log/14/stderr1060 56.536849 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.494173 Running IPv4 version 07:35:56.494233 Listening on port 39053 07:35:56.494264 Wrote pid 129583 to log/21/server/ftp_sockdata.pid 07:35:56.494280 Received PING (on stdin) 07:35:56.494361 Received PORT (on stdin) 07:35:56.494632 ====> Client connect 07:35:56.495208 Received DATA (on stdin) 07:35:56.495225 > 17 bytes data, server => client 07:35:56.495235 'WE ROOLZ: 81322\r\n' 07:35:56.495263 Received DISC (on stdin) 07:35:56.495273 ====> Client forcibly disconnected 07:35:56.495356 Received QUIT (on stdin) 07:35:56.495371 quits 07:35:56.495429 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:35:56.467153 ====> Client connect 07:35:56.467187 accept_connection 3 returned 4 07:35:56.467203 accept_connection 3 returned 0 07:35:56.467217 Read 93 bytes 07:35:56.467226 Process 93 bytes request 07:35:56.467239 Got request: GET /verifiedserver HTTP/1.1 07:35:56.467247 Are-we-friendly question received 07:35:56.467272 Wrote request (93 bytes) input to log/21/server.input 07:35:56.467287 Identifying ourselves as friends 07:35:56.467341 Response sent (56 bytes) and written to log/21/server.response 07:35:56.467351 special request received, no persistency 07:35:56.467359 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 1055 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file test1055.txt Weird file to upload for testing the PUT feature === End of file test1055.txt === Start of file valgrind1055 ==129930== ==129930== Process terminating with default action of signal 4 (SIGILL) ==129930== Illegal opcode at address 0x4003082 ==129930== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129930== by 0x4003082: main (tool_main.c:234) === End of file valgrind1055 test 1061...[HTTP proxy CONNECT auth Digest, large headers and chunked data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1061 ../src/curl -q --output log/9/curl1061.out --include --trace-ascii log/9/trace1061 --trace-config all --trace-time http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://127.0.0.1:34999 --proxy-user silly:person --proxy-digest --proxytunnel > log/9/stdout1061 2> log/9/stderr1061 1061: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1061 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1061 ../src/curl -q --output log/9/curl1061.out --include --trace-ascii log/9/trace1061 --trace-config all --trace-time http://test.remote.haxx.se.1061:8990/path/10610002 --proxy http://127.0.0.1:34999 --proxy-user silly:person --proxy-digest --proxytunnel > log/9/stdout1061 2> log/9/stderr1061 === End of file commands.log === Start of file http_server.log 07:35:56.506547 ====> Client connect 07:35:56.506578 accept_connection 3 returned 4 07:35:56.506591 accept_connection 3 returned 0 07:35:56.506603 Read 93 bytes 07:35:56.506611 Process 93 bytes request 07:35:56.506621 Got request: GET /verifiedserver HTTP/1.1 07:35:56.506628 Are-we-friendly question received 07:35:56.506651 Wrote request (93 bytes) input to log/9/server.input 07:35:56.506665 Identifying ourselves as friends 07:35:56.506716 Response sent (56 bytes) and written to log/9/server.response 07:35:56.506725 special request received, no persistency 07:35:56.506733 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1061 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1061 ==130173== ==130173== Process terminating with default action of signal 4 (SIGILL) ==130173== Illegal opcode at address 0x4003082 ==130173== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130173== by 0x4003082: main (tool_main.c:234) === End of file valgrind1061 test 1060...[HTTP proxy CONNECT auth Digest, large headers and data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1060 ../src/curl -q --output log/14/curl1060.out --include --trace-ascii log/14/trace1060 --trace-config all --trace-time http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://127.0.0.1:37963 --proxy-user silly:person --proxy-digest --proxytunnel > log/14/stdout1060 2> log/14/stderr1060 1060: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1060 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1060 ../src/curl -q --output log/14/curl1060.out --include --trace-ascii log/14/trace1060 --trace-config all --trace-time http://test.remote.haxx.se.1060:8990/path/10600002 --proxy http://127.0.0.1:37963 --proxy-user silly:person --proxy-digest --proxytunnel > log/14/stdout1060 2> log/14/stderr1060 === End of file commands.log === Start of file http_server.log 07:35:56.505464 ====> Client connect 07:35:56.505501 accept_connection 3 returned 4 07:35:56.505517 accept_connection 3 returned 0 07:35:56.505530 Read 93 bytes 07:35:56.505540 Process 93 bytes request 07:35:56.505553 Got request: GET /verifiedserver HTTP/1.1 07:35:56.505563 Are-we-friendly question received 07:35:56.505591 Wrote request (93 bytes) input to log/14/server.input 07:35:56.505607 Identifying ourselves as friends 07:35:56.505670 Response sent (56 bytes) and written to log/14/server.response 07:35:56.505681 special request received, no persistency 07:35:56.505689 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1060 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.resCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1051 ../src/curl -q --output log/4/curl1051.out --include --trace-ascii log/4/trace1051 --trace-config all --trace-time http://127.0.0.1:33235/want/1051 -L -T log/4/test1051.txt > log/4/stdout1051 2> log/4/stderr1051 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1052 ../src/curl -q --output log/16/curl1052.out --include --trace-ascii log/16/trace1052 --trace-config all --trace-time http://127.0.0.1:46739/want/1052 -0 -L -T log/16/test1052.txt > log/16/stdout1052 2> log/16/stderr1052 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1059 ../src/curl -q --output log/20/curl1059.out --include --trace-ascii log/20/trace1059 --trace-config all --trace-time ftp://test-number:1059/wanted/page -p -x 127.0.0.1:37169 > log/20/stdout1059 2> log/20/stderr1059 ponse === Start of file valgrind1060 ==130177== ==130177== Process terminating with default action of signal 4 (SIGILL) ==130177== Illegal opcode at address 0x4003082 ==130177== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130177== by 0x4003082: main (tool_main.c:234) === End of file valgrind1060 test 1051...[HTTP PUT with Location: following] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1051 ../src/curl -q --output log/4/curl1051.out --include --trace-ascii log/4/trace1051 --trace-config all --trace-time http://127.0.0.1:33235/want/1051 -L -T log/4/test1051.txt > log/4/stdout1051 2> log/4/stderr1051 1051: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1051 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1051 ../src/curl -q --output log/4/curl1051.out --include --trace-ascii log/4/trace1051 --trace-config all --trace-time http://127.0.0.1:33235/want/1051 -L -T log/4/test1051.txt > log/4/stdout1051 2> log/4/stderr1051 === End of file commands.log === Start of file http_server.log 07:35:56.451796 ====> Client connect 07:35:56.451830 accept_connection 3 returned 4 07:35:56.451846 accept_connection 3 returned 0 07:35:56.451861 Read 93 bytes 07:35:56.451871 Process 93 bytes request 07:35:56.451885 Got request: GET /verifiedserver HTTP/1.1 07:35:56.451894 Are-we-friendly question received 07:35:56.451925 Wrote request (93 bytes) input to log/4/server.input 07:35:56.451947 Identifying ourselves as friends 07:35:56.452046 Response sent (56 bytes) and written to log/4/server.response 07:35:56.452056 special request received, no persistency 07:35:56.452064 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1051 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file test1051.txt Weird file to upload for testing the PUT feature === End of file test1051.txt === Start of file valgrind1051 ==129434== ==129434== Process terminating with default action of signal 4 (SIGILL) ==129434== Illegal opcode at address 0x4003082 ==129434== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129434== by 0x4003082: main (tool_main.c:234) === End of file valgrind1051 test 1052...[HTTP 1.0 PUT with Location: following] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1052 ../src/curl -q --output log/16/curl1052.out --include --trace-ascii log/16/trace1052 --trace-config all --trace-time http://127.0.0.1:46739/want/1052 -0 -L -T log/16/test1052.txt > log/16/stdout1052 2> log/16/stderr1052 1052: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1052 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1052 ../src/curl -q --output log/16/curl1052.out --include --trace-ascii log/16/trace1052 --trace-config all --trace-time http://127.0.0.1:46739/want/1052 -0 -L -T log/16/test1052.txt > log/16/stdout1052 2> log/16/stderr1052 === End of file commands.log === Start of file http_server.log 07:35:56.453148 ====> Client connect 07:35:56.453172 accept_connection 3 returned 4 07:35:56.453185 accept_connection 3 returned 0 07:35:56.453196 Read 93 bytes 07:35:56.453203 Process 93 bytes request 07:35:56.453213 Got request: GET /verifiedserver HTTP/1.1 07:35:56.453220 Are-we-friendly question received 07:35:56.453238 Wrote request (93 bytes) input to log/16/server.input 07:35:56.453251 Identifying ourselves as friends 07:35:56.453290 Response sent (56 bytes) and written to log/16/server.response 07:35:56.453298 special request received, no persistency 07:35:56.453354 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1052 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file test1052.txt Weird file to upload for testing the PUT feature === End of file test1052.txt === Start of file valgrind1052 ==129435== ==129435== Process terminating with default action of signal 4 (SIGILL) ==129435== Illegal opcode at address 0x4003082 ==129435== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129435== by 0x4003082: main (tool_main.c:234) === End of file valgrind1052 test 1059...[HTTP CONNECT with proxytunnel to unsupported FTP URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1059 ../src/curl -q --output log/20/curl1059.out --include --trace-ascii log/20/trace1059 --trace-config all --trace-time ftp://test-number:1059/wanted/page -p -x 127.0.0.1:37169 > log/20/stdout1059 2> log/20/stderr1059 1059: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1059 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1059 ../src/curl -q --output log/20/curl1059.out --include --trace-ascii log/20/trace1059 --trace-config all --trace-time ftp://test-number:1059/wanted/page -p -x 127.0.0.1:37169 > log/20/stdout1059 2> log/20/stderr1059 === End of file commands.log === Start of file http_server.log 07:35:56.495559 ====> Client connect 07:35:56.495584 accept_connection 3 returned 4 07:35:56.495597 accept_connection 3 returned 0 07:35:56.495607 Read 93 bytes 07:35:56.495615 Process 93 bytes request 07:35:56.495626 Got request: GET /verifiedserver HTTP/1.1 07:35:56.495634 Are-we-friendly question received 07:35:56.495651 Wrote request (93 bytes) input to log/20/server.input 07:35:56.495665 Identifying ourselves as friends 07:35:56.495705 Response sent (56 bytes) and written to log/20/server.response 07:35:56.495713 special request received, no persistency 07:35:56.495720 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1054 ../src/curl -q --output log/11/curl1054.out --include --trace-ascii log/11/trace1054 --trace-config all --trace-time http://127.0.0.1:41173/blah/1054 -L -d @log/11/test1054.txt --post301 > log/11/stdout1054 2> log/11/stderr1054 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1057 ../src/curl -q --output log/13/curl1057.out --include --trace-ascii log/13/trace1057 --trace-config all --trace-time -r -12 ftp://127.0.0.1:40375/1057 > log/13/stdout1057 2> log/13/stderr1057 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1053 ../src/curl -q --output log/15/curl1053.out --include --trace-ascii log/15/trace1053 --trace-config all --trace-time http://127.0.0.1:36993/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/15/test1053.txt > log/15/stdout1053 2> log/15/stderr1053 27.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1059 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1059 ==129716== ==129716== Process terminating with default action of signal 4 (SIGILL) ==129716== Illegal opcode at address 0x4003082 ==129716== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129716== by 0x4003082: main (tool_main.c:234) === End of file valgrind1059 test 1054...[HTTP POST from file with 301 redirect and --post301] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1054 ../src/curl -q --output log/11/curl1054.out --include --trace-ascii log/11/trace1054 --trace-config all --trace-time http://127.0.0.1:41173/blah/1054 -L -d @log/11/test1054.txt --post301 > log/11/stdout1054 2> log/11/stderr1054 1054: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1054 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1054 ../src/curl -q --output log/11/curl1054.out --include --trace-ascii log/11/trace1054 --trace-config all --trace-time http://127.0.0.1:41173/blah/1054 -L -d @log/11/test1054.txt --post301 > log/11/stdout1054 2> log/11/stderr1054 === End of file commands.log === Start of file http_server.log 07:35:56.460757 ====> Client connect 07:35:56.460786 accept_connection 3 returned 4 07:35:56.460801 accept_connection 3 returned 0 07:35:56.460813 Read 93 bytes 07:35:56.460822 Process 93 bytes request 07:35:56.460832 Got request: GET /verifiedserver HTTP/1.1 07:35:56.460840 Are-we-friendly question received 07:35:56.460862 Wrote request (93 bytes) input to log/11/server.input 07:35:56.460877 Identifying ourselves as friends 07:35:56.460932 Response sent (56 bytes) and written to log/11/server.response 07:35:56.460942 special request received, no persistency 07:35:56.460950 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1054 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file test1054.txt field=data === End of file test1054.txt === Start of file valgrind1054 ==129455== ==129455== Process terminating with default action of signal 4 (SIGILL) ==129455== Illegal opcode at address 0x4003082 ==129455== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129455== by 0x4003082: main (tool_main.c:234) === End of file valgrind1054 test 1057...[FTP retrieve a byte-range relative to end of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1057 ../src/curl -q --output log/13/curl1057.out --include --trace-ascii log/13/trace1057 --trace-config all --trace-time -r -12 ftp://127.0.0.1:40375/1057 > log/13/stdout1057 2> log/13/stderr1057 1057: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1057 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1057 ../src/curl -q --output log/13/curl1057.out --include --trace-ascii log/13/trace1057 --trace-config all --trace-time -r -12 ftp://127.0.0.1:40375/1057 > log/13/stdout1057 2> log/13/stderr1057 === End of file commands.log === Start of file ftp_server.log 07:35:56.630391 ====> Client connect 07:35:56.630534 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:56.630788 < "USER anonymous" 07:35:56.630821 > "331 We are happy you popped in![CR][LF]" 07:35:56.631053 < "PASS ftp@example.com" 07:35:56.631102 > "230 Welcome you silly person[CR][LF]" 07:35:56.631305 < "PWD" 07:35:56.631342 > "257 "/" is current directory[CR][LF]" 07:35:56.631554 < "EPSV" 07:35:56.631584 ====> Passive DATA channel requested by client 07:35:56.631598 DATA sockfilt for passive data channel starting... 07:35:56.633533 DATA sockfilt for passive data channel started (pid 129471) 07:35:56.633622 DATA sockfilt for passive data channel listens on port 39835 07:35:56.633654 > "229 Entering Passive Mode (|||39835|)[LF]" 07:35:56.633669 Client has been notified that DATA conn will be accepted on port 39835 07:35:56.633958 Client connects to port 39835 07:35:56.633993 ====> Client established passive DATA connection on port 39835 07:35:56.634075 < "TYPE I" 07:35:56.634108 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:56.634280 < "SIZE verifiedserver" 07:35:56.634320 > "213 17[CR][LF]" 07:35:56.634589 < "RETR verifiedserver" 07:35:56.634634 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:56.634718 =====> Closing passive DATA connection... 07:35:56.634733 Server disconnects passive DATA connection 07:35:56.634917 Server disconnected passive DATA connection 07:35:56.634954 DATA sockfilt for passive data channel quits (pid 129471) 07:35:56.635247 DATA sockfilt for passive data channel quit (pid 129471) 07:35:56.635275 =====> Closed passive DATA connection 07:35:56.635308 > "226 File transfer complete[CR][LF]" 07:35:56.680374 < "QUIT" 07:35:56.680435 > "221 bye bye baby[CR][LF]" 07:35:56.680850 MAIN sockfilt said DISC 07:35:56.680906 ====> Client disconnected 07:35:56.680984 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:56.476280 ====> Client connect 07:35:56.476512 Received DATA (on stdin) 07:35:56.476533 > 160 bytes data, server => client 07:35:56.476546 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:56.476556 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:56.476566 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:56.476666 < 16 bytes data, client => server 07:35:56.476686 'USER anonymous\r\n' 07:35:56.476808 Received DATA (on stdin) 07:35:56.476821 > 33 bytes data, server => client 07:35:56.476831 '331 We are happy you popped in!\r\n' 07:35:56.476892 < 22 bytes data, client => server 07:35:56.476914 'PASS ftp@example.com\r\n' 07:35:56.477091 Received DATA (on stdin) 07:35:56.477105 > 30 bytes data, server => client 07:35:56.477116 '230 Welcome you silly person\r\n' 07:35:56.477200 < 5 bytes data, client => server 07:35:56.477215 'PWD\r\n' 07:35:56.477329 Received DATA (on stdin) 07:35:56.477343 > 30 bytes data, server => client 07:35:56.477354 '257 "/" is current directory\r\n' 07:35:56.477429 < 6 bytes data, client => server 07:35:56.477450 'EPSV\r\n' 07:35:56.479687 Received DATA (on stdin) 07:35:56.479709 > 38 bytes data, server => client 07:35:56.479724 '229 Entering PassCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1063 ../src/curl -q --output log/12/curl1063.out --include --trace-ascii log/12/trace1063 --trace-config all --trace-time -r 4294967303- file://localhost/startdir/src/build-curl/tests/log/12/test1063.txt > log/12/stdout1063 2> log/12/stderr1063 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1058 ../src/curl -q --output log/24/curl1058.out --include --trace-ascii log/24/trace1058 --trace-config all --trace-time http://127.0.0.1:38675/want/1058 -r -101 > log/24/stdout1058 2> log/24/stderr1058 ive Mode (|||39835|)\n' 07:35:56.479905 < 8 bytes data, client => server 07:35:56.479918 'TYPE I\r\n' 07:35:56.480100 Received DATA (on stdin) 07:35:56.480113 > 33 bytes data, server => client 07:35:56.480124 '200 I modify TYPE as you wanted\r\n' 07:35:56.480178 < 21 bytes data, client => server 07:35:56.480192 'SIZE verifiedserver\r\n' 07:35:56.480305 Received DATA (on stdin) 07:35:56.480326 > 8 bytes data, server => client 07:35:56.480337 '213 17\r\n' 07:35:56.480456 < 21 bytes data, client => server 07:35:56.480475 'RETR verifiedserver\r\n' 07:35:56.480641 Received DATA (on stdin) 07:35:56.480663 > 29 bytes data, server => client 07:35:56.480674 '150 Binary junk (17 bytes).\r\n' 07:35:56.481297 Received DATA (on stdin) 07:35:56.481311 > 28 bytes data, server => client 07:35:56.481322 '226 File transfer complete\r\n' 07:35:56.526155 < 6 bytes data, client => server 07:35:56.526188 'QUIT\r\n' 07:35:56.526426 Received DATA (on stdin) 07:35:56.526439 > 18 bytes data, server => client 07:35:56.526449 '221 bye bye baby\r\n' 07:35:56.526745 ====> Client disconnect 07:35:56.526971 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:56.479198 Running IPv4 version 07:35:56.479253 Listening on port 39835 07:35:56.479301 Wrote pid 129471 to log/13/server/ftp_sockdata.pid 07:35:56.479461 Received PING (on stdin) 07:35:56.479541 Received PORT (on stdin) 07:35:56.479872 ====> Client connect 07:35:56.480742 Received DATA (on stdin) 07:35:56.480760 > 17 bytes data, server => client 07:35:56.480770 'WE ROOLZ: 87629\r\n' 07:35:56.480801 Received DISC (on stdin) 07:35:56.480814 ====> Client forcibly disconnected 07:35:56.480953 Received QUIT (on stdin) 07:35:56.480968 quits 07:35:56.481033 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1057 === End of file server.cmd === Start of file valgrind1057 ==129876== ==129876== Process terminating with default action of signal 4 (SIGILL) ==129876== Illegal opcode at address 0x4003082 ==129876== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129876== by 0x4003082: main (tool_main.c:234) === End of file valgrind1057 test 1053...[HTTP RFC1867-type formposting from file with Location: following] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1053 ../src/curl -q --output log/15/curl1053.out --include --trace-ascii log/15/trace1053 --trace-config all --trace-time http://127.0.0.1:36993/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/15/test1053.txt > log/15/stdout1053 2> log/15/stderr1053 1053: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1053 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1053 ../src/curl -q --output log/15/curl1053.out --include --trace-ascii log/15/trace1053 --trace-config all --trace-time http://127.0.0.1:36993/we/want/1053 -L -F name=daniel -F tool=curl -F file=@log/15/test1053.txt > log/15/stdout1053 2> log/15/stderr1053 === End of file commands.log === Start of file http_server.log 07:35:56.456698 ====> Client connect 07:35:56.456733 accept_connection 3 returned 4 07:35:56.456750 accept_connection 3 returned 0 07:35:56.456764 Read 93 bytes 07:35:56.456775 Process 93 bytes request 07:35:56.456786 Got request: GET /verifiedserver HTTP/1.1 07:35:56.456795 Are-we-friendly question received 07:35:56.456819 Wrote request (93 bytes) input to log/15/server.input 07:35:56.456836 Identifying ourselves as friends 07:35:56.456900 Response sent (56 bytes) and written to log/15/server.response 07:35:56.456910 special request received, no persistency 07:35:56.456919 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1053 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file test1053.txt foo- This is a moo- bar === End of file test1053.txt === Start of file valgrind1053 ==129476== ==129476== Process terminating with default action of signal 4 (SIGILL) ==129476== Illegal opcode at address 0x4003082 ==129476== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129476== by 0x4003082: main (tool_main.c:234) === End of file valgrind1053 * starts no server test 1063...[Invalid large X- range on a file://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1063 ../src/curl -q --output log/12/curl1063.out --include --trace-ascii log/12/trace1063 --trace-config all --trace-time -r 4294967303- file://localhost/startdir/src/build-curl/tests/log/12/test1063.txt > log/12/stdout1063 2> log/12/stderr1063 curl returned 132, when expecting 36 1063: exit FAILED == Contents of files in the log/12/ dir after test 1063 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1063 ../src/curl -q --output log/12/curl1063.out --include --trace-ascii log/12/trace1063 --trace-config all --trace-time -r 4294967303- file://localhost/startdir/src/build-curl/tests/log/12/test1063.txt > log/12/stdout1063 2> log/12/stderr1063 === End of file commands.log === Start of file server.cmd Testnum 1063 === End of file server.cmd === Start of file test1063.txt 1234567890 1234567890 === End of file test1063.txt === Start of file valgrind1063 ==129676== ==129676== Process terminating with default action of signal 4 (SIGILL) ==129676== Illegal opcode at address 0x4003082 ==129676== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129676== by 0x4003082: main (tool_main.c:234) === End of file valgrind1063 test 1058...[HTTP range relative to end of file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1058 ../src/curl -q --output log/24/curl1058.out --include --trace-ascii log/24/trace1058 --trace-config all --trace-time http://127.0.0.1:38675/want/1058 -r -101 > log/24/stdout1058 2> log/24/stderr1058 1058: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1058 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1058 ../src/curl -q --output log/24/curl1058.out --include --trace-ascii log/24/trace1058 --trace-config all --trace-time http://127.0.0.1:38675/want/1058 -r -101 > log/24/stdout1058 2> log/24/stderr1058 === End of file commands.log === Start of file http_server.log 07:35:56.479649 ====> Client connect 07:35:56.479688 accept_connection 3 returned 4 07:35:56.479703 accept_connection 3 returned 0 07:35:56.479715 Read 93 bytes 07:35:56.479731 Process 93 bytes request 07:35:56.479743 Got request: GET /verifiedserver HTTP/1.1 07:35:56.479752 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1067 ../src/curl -q --output log/10/curl1067.out --include --trace-ascii log/10/trace1067 --trace-config all --trace-time http://127.0.0.1:34851/want/1067 --silent --location --referer "firstone.html;auto" --write-out "%{stderr}|%{referer}|" > log/10/stdout1067 2> log/10/stderr1067 Are-we-friendly question received 07:35:56.479780 Wrote request (93 bytes) input to log/24/server.input 07:35:56.479795 Identifying ourselves as friends 07:35:56.479849 Response sent (56 bytes) and written to log/24/server.response 07:35:56.479858 special request received, no persistency 07:35:56.479866 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1058 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1058 ==129557== ==129557== Process terminating with default action of signal 4 (SIGILL) ==129557== Illegal opcode at address 0x4003082 ==129557== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==129557== by 0x4003082: main (tool_main.c:234) === End of file valgrind1058 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1066 ../src/curl -q --include --trace-ascii log/3/trace1066 --trace-config all --trace-time http://127.0.0.1:42345/want/1066 http://127.0.0.1:42345/want/10660001 --dump-header - > log/3/stdout1066 2> log/3/stderr1066 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1068 ../src/curl -q --output log/6/curl1068.out --include --trace-ascii log/6/trace1068 --trace-config all --trace-time http://127.0.0.1:35775/bzz/1068 -T - log/6/stdout1068 2> log/6/stderr1068 test 1067...[HTTP Location: following with auto-referer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1067 ../src/curl -q --output log/10/curl1067.out --include --trace-ascii log/10/trace1067 --trace-config all --trace-time http://127.0.0.1:34851/want/1067 --silent --location --referer "firstone.html;auto" --write-out "%{stderr}|%{referer}|" > log/10/stdout1067 2> log/10/stderr1067 1067: stderr FAILED: --- log/10/check-expected 2025-07-18 07:35:57.317112822 +0000 +++ log/10/check-generated 2025-07-18 07:35:57.317112822 +0000 @@ -1 +0,0 @@ -|http://127.0.0.1:34851/want/1067| == Contents of files in the log/10/ dir after test 1067 === Start of file check-expected |http://127.0.0.1:34851/want/1067| === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1067 ../src/curl -q --output log/10/curl1067.out --include --trace-ascii log/10/trace1067 --trace-config all --trace-time http://127.0.0.1:34851/want/1067 --silent --location --referer "firstone.html;auto" --write-out "%{stderr}|%{referer}|" > log/10/stdout1067 2> log/10/stderr1067 === End of file commands.log === Start of file http_server.log 07:35:56.600630 ====> Client connect 07:35:56.600708 accept_connection 3 returned 4 07:35:56.600729 accept_connection 3 returned 0 07:35:56.600745 Read 93 bytes 07:35:56.600756 Process 93 bytes request 07:35:56.600768 Got request: GET /verifiedserver HTTP/1.1 07:35:56.600778 Are-we-friendly question received 07:35:56.600809 Wrote request (93 bytes) input to log/10/server.input 07:35:56.600827 Identifying ourselves as friends 07:35:56.600892 Response sent (56 bytes) and written to log/10/server.response 07:35:56.600903 special request received, no persistency 07:35:56.600912 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1067 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1067 ==130218== ==130218== Process terminating with default action of signal 4 (SIGILL) ==130218== Illegal opcode at address 0x4003082 ==130218== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130218== by 0x4003082: main (tool_main.c:234) === End of file valgrind1067 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1069 ../src/curl -q --output log/2/curl1069.out --include --trace-ascii log/2/trace1069 --trace-config all --trace-time http://127.0.0.1:45457/bzz/1069 -T - -0 log/2/stdout1069 2> log/2/stderr1069 test 1066...[HTTP --dump-header - with two URLs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1066 ../src/curl -q --include --trace-ascii log/3/trace1066 --trace-config all --trace-time http://127.0.0.1:42345/want/1066 http://127.0.0.1:42345/want/10660001 --dump-header - > log/3/stdout1066 2> log/3/stderr1066 1066: stdout FAILED: --- log/3/check-expected 2025-07-18 07:35:57.323779487 +0000 +++ log/3/check-generated 2025-07-18 07:35:57.323779487 +0000 @@ -1,22 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: thebest/1.0[CR][LF] -Server: thebest/1.0[CR][LF] -Content-Type: text/plain[CR][LF] -Content-Type: text/plain[CR][LF] -Content-Length: 6[CR][LF] -Content-Length: 6[CR][LF] -[CR][LF] -[CR][LF] -first[LF] -HTTP/1.1 200 OK[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Server: thebest/1.0[CR][LF] -Server: thebest/1.0[CR][LF] -Content-Type: text/plain[CR][LF] -Content-Type: text/plain[CR][LF] -Content-Length: 7[CR][LF] -Content-Length: 7[CR][LF] -[CR][LF] -[CR][LF] -second[LF] == Contents of files in the log/3/ dir after test 1066 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] HTTP/1.1 200 OK[CR][LF] Server: thebest/1.0[CR][LF] Server: thebest/1.0[CR][LF] Content-Type: text/plain[CR][LF] Content-Type: text/plain[CR][LF] Content-Length: 6[CR][LF] Content-Length: 6[CR][LF] [CR][LF] [CR][LF] first[LF] HTTP/1.1 200 OK[CR][LF] HTTP/1.1 200 OK[CR][LF] Server: thebest/1.0[CR][LF] Server: thebest/1.0[CR][LF] Content-Type: text/plain[CR][LF] Content-Type: text/plain[CR][LF] Content-Length: 7[CR][LF] Content-Length: 7[CR][LF] [CR][LF] [CR][LF] second[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1066 ../src/curl -q --include --trace-ascii log/3/trace1066 --trace-config all --trace-time http://127.0.0.1:42345/want/1066 http://127.0.0.1:42345/want/10660001 --dump-header - > log/3/stdout1066 2> log/3/stderr1066 === End of file commands.log === Start of file http_server.log 07:35:56.600656 ====> Client connect 07:35:56.600698 accept_connection 3 returned 4 07:35:56.600717 accept_connection 3 returned 0 07:35:56.600732 Read 93 bytes 07:35:56.600743 Process 93 bytes request 07:35:56.600756 Got request: GET /verifiedserver HTTP/1.1 07:35:56.600767 Are-we-friendly question received 07:35:56.600796 Wrote request (93 bytes) input to log/3/server.input 07:35:56.600814 Identifying ourselves as friends 07:35:56.600878 Response sent (56 bytes) and written to log/3/server.response 07:35:56.600888 special request received, no persistency 07:35:56.600898 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1066 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1066 ==130223== ==130223== Process terminating with default action of signal 4 (SIGILL) ==130223== Illegal opcode at address 0x4003082 ==130223== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130223== by 0x4003082: main (tool_main.c:234) === End of file valgrind1066 test 1068...[HTTP PUT from stdin] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1068 ../src/curl -q --output log/6/curl1068.out --include --trace-ascii log/6/trace1068 --trace-config all --trace-time http://127.0.0.1:35775/bzz/1068 -T - log/6/stdout1068 2> log/6/stderr1068 1068: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1068 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1068 ../src/curl -q --output log/6/curl1068.out --include --trace-ascii log/6/trace1068 --trace-config all --trace-time http://127.0.0.1:35775/bzz/1068 -T - log/6/stdout1068 2> log/6/stderr1068 === End of file commands.log === Start of file http_server.log 07:35:56.602983 ====> Client connect 07:35:56.603010 accept_connection 3 returned 4 07:35:56.603025 accept_connection 3 returned 0 07:35:56.603036 Read 93 bytes 07:35:56.603045 Process 93 bytes request 07:35:56.603055 Got request: GET /verifiedserver HTTP/1.1 07:35:56.603063 Are-we-friendly question received 07:35:56.603084 Wrote request (93 bytes) input to log/6/server.input 07:35:56.603097 Identifying ourselves as friends 07:35:56.603143 Response sent (56 bytes) and written to log/6/server.response 07:35:56.603152 special request received, no persistency 07:35:56.603160 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1068 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file stdin-for-1068 more than one byte === End of file stdin-for-1068 === Start of file valgrind1068 ==130219== ==130219== Process terminating with default action of signal 4 (SIGILL) ==130219== Illegal opcode at address 0x4003082 ==130219== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130219== by 0x4003082: main (tool_main.c:234) === End of file valgrind1068 test 1069...[HTTP 1.0 PUT from stdin with no content length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1069 ../src/curl -q --output log/2/curl1069.out --include --trace-ascii log/2/trace1069 --trace-config all --trace-time http://127.0.0.1:45457/bzz/1069 -T - -0 log/2/stdout1069 2> log/2/stderr1069 curl returned 132, when expecting 25 1069: exit FAILED == Contents of files in the log/2/ dir after test 1069 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1069 ../src/curl -q --output log/2/curl1069.out --include --trace-ascii log/2/trace1069 --trace-config all --trace-time http://127.0.0.1:45457/bzz/1069 -T - -0 log/2/stdout1069 2> log/2/stderr1069 === End of file commands.log === Start of file http_server.log 07:35:56.790907 ====> Client connect 07:35:56.790942 accept_connection 3 returned 4 07:35:56.790957 accept_connection 3 returned 0 07:35:56.790971 Read 93 bytes 07:35:56.790980 Process 93 bytes request 07:35:56.790993 Got request: GET /verifiedserver HTTP/1.1 07:35:56.791001 Are-we-friendly question received 07:35:56.791026 Wrote request CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1070 ../src/curl -q --output log/22/curl1070.out --include --trace-ascii log/22/trace1070 --trace-config all --trace-time -d @log/22/input1070 http://127.0.0.1:46761/1070 -H "Expect: 100-continue" > log/22/stdout1070 2> log/22/stderr1070 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1071 ../src/curl -q --output log/17/curl1071.out --include --trace-ascii log/17/trace1071 --trace-config all --trace-time http://127.0.0.1:39089/1071 -T log/17/put1071 -u testuser:testpass --anyauth > log/17/stdout1071 2> log/17/stderr1071 (93 bytes) input to log/2/server.input 07:35:56.791042 Identifying ourselves as friends 07:35:56.791095 Response sent (56 bytes) and written to log/2/server.response 07:35:56.791104 special request received, no persistency 07:35:56.791112 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1069 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stdin-for-1069 this data can't be sent === End of file stdin-for-1069 === Start of file valgrind1069 ==130484== ==130484== Process terminating with default action of signal 4 (SIGILL) ==130484== Illegal opcode at address 0x4003082 ==130484== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130484== by 0x4003082: main (tool_main.c:234) === End of file valgrind1069 test 1070...[HTTP POST with server closing connection before (all) data is received] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1070 ../src/curl -q --output log/22/curl1070.out --include --trace-ascii log/22/trace1070 --trace-config all --trace-time -d @log/22/input1070 http://127.0.0.1:46761/1070 -H "Expect: 100-continue" > log/22/stdout1070 2> log/22/stderr1070 1070: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1070 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1070 ../src/curl -q --output log/22/curl1070.out --include --trace-ascii log/22/trace1070 --trace-config all --trace-time -d @log/22/input1070 http://127.0.0.1:46761/1070 -H "Expect: 100-continue" > log/22/stdout1070 2> log/22/stderr1070 === End of file commands.log === Start of file http_server.log 07:35:56.874190 ====> Client connect 07:35:56.874222 accept_connection 3 returned 4 07:35:56.874238 accept_connection 3 returned 0 07:35:56.874251 Read 93 bytes 07:35:56.874261 Process 93 bytes request 07:35:56.874273 Got request: GET /verifiedserver HTTP/1.1 07:35:56.874282 Are-we-friendly question received 07:35:56.874306 Wrote request (93 bytes) input to log/22/server.input 07:35:56.874321 Identifying ourselves as friends 07:35:56.874373 Response sent (56 bytes) and written to log/22/server.response 07:35:56.874383 special request received, no persistency 07:35:56.874392 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file input1070 This creates the named file with this content before the test case is run, which is useful if the test case needs a file to act on. We create this file rather large (larger than your typical TCP packet) so that not all of it can nor will be sent in one go as that is kind of the point of this test Here's 2000 x 'O': OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO === End of file input1070 === Start of file server.cmd skip: 2300 Testnum 1070 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1070 ==130560== ==130560== Process terminating with default action of signal 4 (SIGILL) ==130560== Illegal opcode at address 0x4003082 ==130560== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130560== by 0x4003082: main (tool_main.c:234) === End of file valgrind1070 test 1071...[Downgraded HTTP PUT to HTTP 1.0 with authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1071 ../src/curl -q --output log/17/curl1071.out --include --trace-ascii log/17/trace1071 --trace-config all --trace-time http://127.0.0.1:39089/1071 -T log/17/put1071 -u testuser:testpass --anyauth > log/17/stdout1071 2> log/17/stderr1071 1071: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1071 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1071 ../src/curl -q --output log/17/curl1071.out --include --trace-ascii log/17/trace1071 --trace-config all --trace-time http://127.0.0.1:39089/1071 -T log/17/put1071 -u testuser:testpass --anyauth > log/17/stdout1071 2> log/17/stderr1071 === End of file commands.log === Start of file http_server.log 07:35:56.895150 ====> Client connect 07:35:56.895183 accept_connection 3 returned 4 07:35:56.895199 accept_connection 3 returned 0 07:35:56.895214 Read 93 bytes 07:35:56.895224 Process 93 bytes request 07:35:56.895237 Got request: GET /verifiedserver HTTP/1.1 07:35:56.895246 Are-we-friendly question received 07:35:56.895269 Wrote requestCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1080 ../src/curl -q --include --trace-ascii log/20/trace1080 --trace-config all --trace-time http://127.0.0.1:37169/we/want/our/1080 http://127.0.0.1:37169/we/want/our/1080 -w '%{redirect_url}\n' > log/20/stdout1080 2> log/20/stderr1080 (93 bytes) input to log/17/server.input 07:35:56.895284 Identifying ourselves as friends 07:35:56.895336 Response sent (56 bytes) and written to log/17/server.response 07:35:56.895345 special request received, no persistency 07:35:56.895354 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file put1071 This is data we upload with PUT a second line line three four is the number of lines === End of file put1071 === Start of file server.cmd Testnum 1071 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1071 ==130592== ==130592== Process terminating with default action of signal 4 (SIGILL) ==130592== Illegal opcode at address 0x4003082 ==130592== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130592== by 0x4003082: main (tool_main.c:234) === End of file valgrind1071 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1079 ../src/curl -q --output log/16/curl1079.out --include --trace-ascii log/16/trace1079 --trace-config all --trace-time http://127.0.0.1:46739/1079 -u testuser:testpass --digest > log/16/stdout1079 2> log/16/stderr1079 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1081 ../src/curl -q --include --trace-ascii log/11/trace1081 --trace-config all --trace-time http://127.0.0.1:41173/we/want/our/1081 http://127.0.0.1:41173/we/want/our/10810002 -w '%{redirect_url}\n' > log/11/stdout1081 2> log/11/stderr1081 test 1080...[HTTP Location: on two URLs 'redirect_url' check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1080 ../src/curl -q --include --trace-ascii log/20/trace1080 --trace-config all --trace-time http://127.0.0.1:37169/we/want/our/1080 http://127.0.0.1:37169/we/want/our/1080 -w '%{redirect_url}\n' > log/20/stdout1080 2> log/20/stderr1080 1080: stdout FAILED: --- log/20/check-expected 2025-07-18 07:35:57.707112829 +0000 +++ log/20/check-generated 2025-07-18 07:35:57.707112829 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/10800002.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -This server reply is for testing a simple Location: following[LF] -http://127.0.0.1:37169/we/want/our/data/10800002.txt?coolsite=yes[LF] -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/10800002.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -This server reply is for testing a simple Location: following[LF] -http://127.0.0.1:37169/we/want/our/data/10800002.txt?coolsite=yes[LF] == Contents of files in the log/20/ dir after test 1080 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/10800002.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] This server reply is for testing a simple Location: following[LF] http://127.0.0.1:37169/we/want/our/data/10800002.txt?coolsite=yes[LF] HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/10800002.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] This server reply is for testing a simple Location: following[LF] http://127.0.0.1:37169/we/want/our/data/10800002.txt?coolsite=yes[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1080 ../src/curl -q --include --trace-ascii log/20/trace1080 --trace-config all --trace-time http://127.0.0.1:37169/we/want/our/1080 http://127.0.0.1:37169/we/want/our/1080 -w '%{redirect_url}\n' > log/20/stdout1080 2> log/20/stderr1080 === End of file commands.log === Start of file http_server.log 07:35:57.086972 ====> Client connect 07:35:57.087018 accept_connection 3 returned 4 07:35:57.087037 accept_connection 3 returned 0 07:35:57.087052 Read 93 bytes 07:35:57.087062 Process 93 bytes request 07:35:57.087076 Got request: GET /verifiedserver HTTP/1.1 07:35:57.087086 Are-we-friendly question received 07:35:57.087112 Wrote request (93 bytes) input to log/20/server.input 07:35:57.087129 Identifying ourselves as friends 07:35:57.087189 Response sent (56 bytes) and written to log/20/server.response 07:35:57.087201 special request received, no persistency 07:35:57.087211 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1080 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1080 ==131157== ==131157== Process terminating with default action of signal 4 (SIGILL) ==131157== Illegal opcode at address 0x4003082 ==131157== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131157== by 0x4003082: main (tool_main.c:234) === End of file valgrind1080 test 1079...[HTTP retry after closed connection and empty response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1079 ../src/curl -q --output log/16/curl1079.out --include --trace-ascii log/16/trace1079 --trace-config all --trace-time http://127.0.0.1:46739/1079 -u testuser:testpass --digest > log/16/stdout1079 2> log/16/stderr1079 1079: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1079 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1079 ../src/curl -q --output log/16/curl1079.out --include --trace-ascii log/16/trace1079 --trace-config all --trace-time http://127.0.0.1:46739/1079 -u testuser:testpass --digest > log/16/stdout1079 2> log/16/stderr1079 === End of file commands.log === Start of file http_server.log 07:35:57.076640 ====> Client connect 07:35:57.076670 accept_connection 3 returned 4 07:35:57.076686 accept_connection 3 returned 0 07:35:57.076700 Read 93 bytes 07:35:57.076709 Process 93 bytes request 07:35:57.076719 Got request: GET /verifiedserver HTTP/1.1 07:35:57.076726 Are-we-friendly question received 07:35:57.076747 Wrote request (93 bytes) input to log/16/server.input 07:35:57.076760 Identifying ourselves as friends 07:35:57.076807 Response sent (56 bytes) and written to log/16/server.response 07:35:57.076816 special request received, no persistency 07:35:57.076824 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1079 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1079 ==131073== ==131073== Process terminating with default action of signal 4 (SIGILL) ==131073== Illegal opcode at address 0x4003082 ==131073== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131073== by 0x4003082: main (tool_main.c:234) === End of file valgrind1079 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1078 ../src/curl -q --include --trace-ascii log/4/trace1078 --trace-config all --trace-time --proxy1.0 127.0.0.1:40761 -p http://127.0.0.1:33235/we/want/that/page/1078 http://127.0.0.1:33235/we/want/that/page/1078 > log/4/stdout1078 2> log/4/stderr1078 test 1081...[HTTP no Location: on second URL 'redirect_url' check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1081 ../src/curl -q --include --trace-ascii log/11/trace1081 --trace-config all --trace-time http://127.0.0.1:41173/we/want/our/1081 http://127.0.0.1:41173/we/want/our/10810002 -w '%{redirect_url}\n' > log/11/stdout1081 2> log/11/stderr1081 1081: stdout FAILED: --- log/11/check-expected 2025-07-18 07:35:57.717112829 +0000 +++ log/11/check-generated 2025-07-18 07:35:57.717112829 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/10810099.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -This server reply is for testing a simple Location: following[LF] -http://127.0.0.1:41173/we/want/our/data/10810099.txt?coolsite=yes[LF] -HTTP/1.1 200 Followed here fine swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Length: 41[CR][LF] -[CR][LF] -This second URL does not have a location[LF] -[LF] == Contents of files in the log/11/ dir after test 1081 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/10810099.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] This server reply is for testing a simple Location: following[LF] http://127.0.0.1:41173/we/want/our/data/10810099.txt?coolsite=yes[LF] HTTP/1.1 200 Followed here fine swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Length: 41[CR][LF] [CR][LF] This second URL does not have a location[LF] [LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1081 ../src/curl -q --include --trace-ascii log/11/trace1081 --trace-config all --trace-time http://127.0.0.1:41173/we/want/our/1081 http://127.0.0.1:41173/we/want/our/10810002 -w '%{redirect_url}\n' > log/11/stdout1081 2> log/11/stderr1081 === End of file commands.log === Start of file http_server.log 07:35:57.086959 ====> Client connect 07:35:57.086997 accept_connection 3 returned 4 07:35:57.087015 accept_connection 3 returned 0 07:35:57.087030 Read 93 bytes 07:35:57.087040 Process 93 bytes request 07:35:57.087055 Got request: GET /verifiedserver HTTP/1.1 07:35:57.087063 Are-we-friendly question received 07:35:57.087089 Wrote request (93 bytes) input to log/11/server.input 07:35:57.087105 Identifying ourselves as friends 07:35:57.087161 Response sent (56 bytes) and written to log/11/server.response 07:35:57.087170 special request received, no persistency 07:35:57.087178 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1081 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1081 ==131162== ==131162== Process terminating with default action of signal 4 (SIGILL) ==131162== Illegal opcode at address 0x4003082 ==131162== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131162== by 0x4003082: main (tool_main.c:234) === End of file valgrind1081 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1082 ../src/curl -q --output log/13/curl1082.out --include --trace-ascii log/13/trace1082 --trace-config all --trace-time http://127.0.0.1:33627/1082 -4 --interface 127.0.0.1 > log/13/stdout1082 2> log/13/stderr1082 test 1078...[HTTP 1.0 CONNECT with proxytunnel and downgrade GET to HTTP/1.0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1078 ../src/curl -q --include --trace-ascii log/4/trace1078 --trace-config all --trace-time --proxy1.0 127.0.0.1:40761 -p http://127.0.0.1:33235/we/want/that/page/1078 http://127.0.0.1:33235/we/want/that/page/1078 > log/4/stdout1078 2> log/4/stderr1078 1078: stdout FAILED: --- log/4/check-expected 2025-07-18 07:35:57.727112831 +0000 +++ log/4/check-generated 2025-07-18 07:35:57.723779496 +0000 @@ -1,21 +0,0 @@ -HTTP/1.1 200 Mighty fine indeed[CR][LF] -Server: test tunnel 2000[CR][LF] -[CR][LF] -HTTP/1.0 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 9[CR][LF] -Connection: keep-alive[CR][LF] -[CR][LF] -contents[LF] -HTTP/1.0 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 9[CR][LF] -Connection: keep-alive[CR][LF] -[CR][LF] -contents[LF] == Contents of files in the log/4/ dir after test 1078 === Start of file check-expected HTTP/1.1 200 Mighty fine indeed[CR][LF] Server: test tunnel 2000[CR][LF] [CR][LF] HTTP/1.0 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 9[CR][LF] Connection: keep-alive[CR][LF] [CR][LF] contents[LF] HTTP/1.0 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 9[CR][LF] Connection: keep-alive[CR][LF] [CR][LF] contents[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1078 ../src/curl -q --include --trace-ascii log/4/trace1078 --trace-config all --trace-time --proxy1.0 127.0.0.1:40761 -p http://127.0.0.1:33235/we/want/that/page/1078 http://127.0.0.1:33235/we/want/that/page/1078 > log/4/stdout1078 2> log/4/stderr1078 === End of file commands.log === Start of file http2_server.log 07:35:57.093444 ====> Client connect 07:35:57.093477 accept_connection 3 returned 4 07:35:57.093494 accept_connection 3 returned 0 07:35:57.093506 Read 93 bytes 07:35:57.093516 Process 93 bytes request 07:35:57.093527 Got request: GET /verifiedserver HTTP/1.1 07:35:57.093536 Are-we-friendly question received 07:35:57.093560 Wrote request (93 bytes) input to log/4/proxy.input 07:35:57.093579 Identifying ourselves as friends 07:35:57.093641 Response sent (56 bytes) and written to log/4/proxy.response 07:35:57.093654 special request received, no persistency 07:35:57.093663 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:40761... * Connected to 127.0.0.1 (127.0.0.1) port 40761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78735 === End of file http2_verify.out === Start of file http_server.log 07:35:57.071537 ====> Client connect 07:35:57.071580 accept_connection 3 returned 4 07:35:57.071596 accept_connection 3 returned 0 07:35:57.071610 Read 93 bytes 07:35:57.071619 Process 93 bytes request 07:35:57.071632 Got request: GET /verifiedserver HTTP/1.1 07:35:57.071641 Are-we-friendly question received 07:35:57.071666 Wrote request (93 bytes) input to log/4/server.input 07:35:57.071683 Identifying ourselves as friends 07:35:57.071735 Response sent (56 bytes) and written to log/4/server.response 07:35:57.071745 special request received, no persistency 07:35:57.071753 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78735 === End of file proxy.response === Start of file server.cmd Testnum 1078 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1078 ==131258== ==131258== Process terminating with default action of signal 4 (SIGILL) ==131258== Illegal opcode at address 0x4003082 ==131258== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131258== by 0x4003082: main (tool_main.c:234) === End of file valgrind1078 prechecked /usr/bin/perl -e "print 'Test requires default test client host address' if('127.0.0.1' ne '127.0.0.1');" test 1082...[HTTP GET with localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1082 ../src/curl -q --output log/13/curl1082.out --include --trace-ascii log/13/trace1082 --trace-config all --trace-time http://127.0.0.1:33627/1082 -4 --interface 127.0.0.1 > log/13/stdout1082 2> log/13/stderr1082 1082: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1082 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1082 ../src/curl -q --output log/13/curl1082.out --include --trace-ascii log/13/trace1082 --trace-config all --trace-time http://127.0.0.1:33627/1082 -4 --interface 127.0.0.1 > log/13/stdout1082 2> log/13/stderr1082 === End of file commands.log === Start of file http_server.log 07:35:57.089200 ====> Client connect 07:35:57.089228 accept_connection 3 returned 4 07:35:57.089243 accept_connection 3 returned 0 07:35:57.089255 Read 93 bytes 07:35:57.089263 Process 93 bytes request 07:35:57.089272 Got request: GET /verifiedserver HTTP/1.1 07:35:57.089280 Are-we-friendly question received 07:35:57.089488 Wrote request (93 bytes) input to log/13/server.input 07:35:57.089511 Identifying ourselves as friends 07:35:57.089568 Response sent (56 bytes) and written to log/13/server.response 07:35:57.089577 special request received, no persistency 07:35:57.089585 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1082 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1082 ==131223== ==131223== Process terminating with default action of signal 4 (SIGILL) ==131223== Illegal opcode at address 0x4003082 ==131223CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1075 ../src/curl -q --output log/21/curl1075.out --include --trace-ascii log/21/trace1075 --trace-config all --trace-time http://127.0.0.1:41087/1075 -T log/21/put1075 -u testuser:testpass --anyauth > log/21/stdout1075 2> log/21/stderr1075 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1077 ../src/curl -q --output log/14/curl1077.out --include --trace-ascii log/14/trace1077 --trace-config all --trace-time -x 127.0.0.1:37963 ftp://127.0.0.1:37963/we/want/that/page/1077 ftp://127.0.0.1:37963/we/want/that/page/10770002 > log/14/stdout1077 2> log/14/stderr1077 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1074 ../src/curl -q --include --trace-ascii log/19/trace1074 --trace-config all --trace-time http://127.0.0.1:33487/want/1074 http://127.0.0.1:33487/wantmore/10740001 > log/19/stdout1074 2> log/19/stderr1074 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1072 ../src/curl -q --output log/1/curl1072.out --include --trace-ascii log/1/trace1072 --trace-config all --trace-time http://127.0.0.1:38941/1072 -T - -u testuser:testpass --anyauth log/1/stdout1072 2> log/1/stderr1072 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1073 ../src/curl -q --output log/7/curl1073.out --include --trace-ascii log/7/trace1073 --trace-config all --trace-time http://127.0.0.1:39077/1073 -T - -L log/7/stdout1073 2> log/7/stderr1073 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1085 ../src/curl -q --output log/12/curl1085.out --include --trace-ascii log/12/trace1085 --trace-config all --trace-time -g "http://[::1]:47/1085" --interface non-existing-host.haxx.se. > log/12/stdout1085 2> log/12/stderr1085 == at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131223== by 0x4003082: main (tool_main.c:234) === End of file valgrind1082 test 1075...[HTTP PUT with --anyauth authorization (picking Basic)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1075 ../src/curl -q --output log/21/curl1075.out --include --trace-ascii log/21/trace1075 --trace-config all --trace-time http://127.0.0.1:41087/1075 -T log/21/put1075 -u testuser:testpass --anyauth > log/21/stdout1075 2> log/21/stderr1075 1075: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1075 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1075 ../src/curl -q --output log/21/curl1075.out --include --trace-ascii log/21/trace1075 --trace-config all --trace-time http://127.0.0.1:41087/1075 -T log/21/put1075 -u testuser:testpass --anyauth > log/21/stdout1075 2> log/21/stderr1075 === End of file commands.log === Start of file http_server.log 07:35:57.042022 ====> Client connect 07:35:57.042053 accept_connection 3 returned 4 07:35:57.042067 accept_connection 3 returned 0 07:35:57.042080 Read 93 bytes 07:35:57.042089 Process 93 bytes request 07:35:57.042100 Got request: GET /verifiedserver HTTP/1.1 07:35:57.042108 Are-we-friendly question received 07:35:57.042135 Wrote request (93 bytes) input to log/21/server.input 07:35:57.042151 Identifying ourselves as friends 07:35:57.042202 Response sent (56 bytes) and written to log/21/server.response 07:35:57.042211 special request received, no persistency 07:35:57.042220 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file put1075 This is data we upload with PUT a second line line three four is the number of lines === End of file put1075 === Start of file server.cmd Testnum 1075 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind1075 ==130806== ==130806== Process terminating with default action of signal 4 (SIGILL) ==130806== Illegal opcode at address 0x4003082 ==130806== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130806== by 0x4003082: main (tool_main.c:234) === End of file valgrind1075 test 1077...[FTP over HTTP proxy with downgrade to HTTP 1.0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1077 ../src/curl -q --output log/14/curl1077.out --include --trace-ascii log/14/trace1077 --trace-config all --trace-time -x 127.0.0.1:37963 ftp://127.0.0.1:37963/we/want/that/page/1077 ftp://127.0.0.1:37963/we/want/that/page/10770002 > log/14/stdout1077 2> log/14/stderr1077 1077: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1077 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1077 ../src/curl -q --output log/14/curl1077.out --include --trace-ascii log/14/trace1077 --trace-config all --trace-time -x 127.0.0.1:37963 ftp://127.0.0.1:37963/we/want/that/page/1077 ftp://127.0.0.1:37963/we/want/that/page/10770002 > log/14/stdout1077 2> log/14/stderr1077 === End of file commands.log === Start of file http_server.log 07:35:57.066502 ====> Client connect 07:35:57.066536 accept_connection 3 returned 4 07:35:57.066550 accept_connection 3 returned 0 07:35:57.066562 Read 93 bytes 07:35:57.066569 Process 93 bytes request 07:35:57.066644 Got request: GET /verifiedserver HTTP/1.1 07:35:57.066668 Are-we-friendly question received 07:35:57.066706 Wrote request (93 bytes) input to log/14/server.input 07:35:57.066724 Identifying ourselves as friends 07:35:57.066817 Response sent (56 bytes) and written to log/14/server.response 07:35:57.066829 special request received, no persistency 07:35:57.066841 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1077 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1077 ==130978== ==130978== Process terminating with default action of signal 4 (SIGILL) ==130978== Illegal opcode at address 0x4003082 ==130978== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130978== by 0x4003082: main (tool_main.c:234) === End of file valgrind1077 test 1072...[HTTP chunked PUT to HTTP 1.0 server with authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1072 ../src/curl -q --output log/1/curl1072.out --include --trace-ascii log/1/trace1072 --trace-config all --trace-time http://127.0.0.1:38941/1072 -T - -u testuser:testpass --anyauth log/1/stdout1072 2> log/1/stderr1072 1072: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1072 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1072 ../src/curl -q --output log/1/curl1072.out --include --trace-ascii log/1/trace1072 --trace-config all --trace-time http://127.0.0.1:38941/1072 -T - -u testuser:testpass --anyauth log/1/stdout1072 2> log/1/stderr1072 === End of file commands.log === Start of file http_server.log 07:35:57.029193 ====> Client connect 07:35:57.029226 accept_connection 3 returned 4 07:35:57.029243 accept_connection 3 returned 0 07:35:57.029257 Read 93 bytes 07:35:57.029267 Process 93 bytes request 07:35:57.029280 Got request: GET /verifiedserver HTTP/1.1 07:35:57.029290 Are-we-friendly question received 07:35:57.029325 Wrote request (93 bytes) input to log/1/server.input 07:35:57.029342 Identifying ourselves as friends 07:35:57.029405 Response sent (56 bytes) and written to log/1/server.response 07:35:57.029415 special request received, no persistency 07:35:57.029424 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1072 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stdin-for-1072 This is data we upload with PUT it comes from stdin so MUST be sent with chunked encoding which is impossible in HTTP/1.0 === End of file stdin-for-1072 === Start of file valgrind1072 ==130732== ==130732== Process terminating with default action of signal 4 (SIGILL) ==130732== Illegal opcode at address 0x4003082 ==130732== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130732== by 0x4003082: main (tool_main.c:234) === End of file valgrind1072 test 1073...[HTTP chunked PUT to HTTP 1.0 server with redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1073 ../src/curl -q --output log/7/curl1073.out --include --trace-ascii log/7/trace1073 --trace-config all --trace-time http://127.0.0.1:39077/1073 -T - -L log/7/stdout1073 2> log/7/stderr1073 1073: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1073 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1073 ../src/curl -q --output log/7/curl1073.out --include --trace-ascii log/7/trace1073 --trace-config all --trace-time http://127.0.0.1:39077/1073 -T - -L log/7/stdout1073 2> log/7/stderr1073 === End of file commands.log === Start of file http_server.log 07:35:57.033738 ====> Client connect 07:35:57.033768 accept_connection 3 returned 4 07:35:57.033784 accept_connection 3 returned 0 07:35:57.033796 Read 93 bytes 07:35:57.033806 Process 93 bytes request 07:35:57.033816 Got request: GET /verifiedserver HTTP/1.1 07:35:57.033825 Are-we-friendly question received 07:35:57.033848 Wrote request (93 bytes) input to log/7/server.input 07:35:57.033863 Identifying ourselves as friends 07:35:57.033913 Response sent (56 bytes) and written to log/7/server.response 07:35:57.033922 special request received, no persistency 07:35:57.033930 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1073 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file stdin-for-1073 This is data we upload with PUT it comes from stdin so MUST be sent with chunked encoding which is impossible in HTTP/1.0 === End of file stdin-for-1073 === Start of file valgrind1073 ==130747== ==130747== Process terminating with default action of signal 4 (SIGILL) ==130747== Illegal opcode at address 0x4003082 ==130747== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130747== by 0x4003082: main (tool_main.c:234) === End of file valgrind1073 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1076 ../src/curl -q --output log/9/curl1076.out --include --trace-ascii log/9/trace1076 --trace-config all --trace-time http://127.0.0.1:34999/blah/1076 -L -d "moo" --post302 > log/9/stdout1076 2> log/9/stderr1076 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1084 ../src/curl -q --output log/24/curl1084.out --include --trace-ascii log/24/trace1084 --trace-config all --trace-time http://127.0.0.1:47/1084 --interface non-existing-host.haxx.se. > log/24/stdout1084 2> log/24/stderr1084 test 1074...[HTTP downgrade to HTTP/1.0 on second request] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1074 ../src/curl -q --include --trace-ascii log/19/trace1074 --trace-config all --trace-time http://127.0.0.1:33487/want/1074 http://127.0.0.1:33487/wantmore/10740001 > log/19/stdout1074 2> log/19/stderr1074 1074: stdout FAILED: --- log/19/check-expected 2025-07-18 07:35:57.783779499 +0000 +++ log/19/check-generated 2025-07-18 07:35:57.783779499 +0000 @@ -1,11 +0,0 @@ -HTTP/1.0 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 9[CR][LF] -Connection: Keep-Alive[CR][LF] -[CR][LF] -surprise[LF] -HTTP/1.0 200 OK swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Connection: close[CR][LF] -[CR][LF] -surprise2[LF] == Contents of files in the log/19/ dir after test 1074 === Start of file check-expected HTTP/1.0 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 9[CR][LF] Connection: Keep-Alive[CR][LF] [CR][LF] surprise[LF] HTTP/1.0 200 OK swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Connection: close[CR][LF] [CR][LF] surprise2[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1074 ../src/curl -q --include --trace-ascii log/19/trace1074 --trace-config all --trace-time http://127.0.0.1:33487/want/1074 http://127.0.0.1:33487/wantmore/10740001 > log/19/stdout1074 2> log/19/stderr1074 === End of file commands.log === Start of file http_server.log 07:35:57.039111 ====> Client connect 07:35:57.039142 accept_connection 3 returned 4 07:35:57.039158 accept_connection 3 returned 0 07:35:57.039171 Read 93 bytes 07:35:57.039182 Process 93 bytes request 07:35:57.039194 Got request: GET /verifiedserver HTTP/1.1 07:35:57.039203 Are-we-friendly question received 07:35:57.039227 Wrote request (93 bytes) input to log/19/server.input 07:35:57.039243 Identifying ourselves as friends 07:35:57.039305 Response sent (56 bytes) and written to log/19/server.response 07:35:57.039315 special request received, no persistency 07:35:57.039324 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1074 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1074 ==130788== ==130788== Process terminating with default action of signal 4 (SIGILL) ==130788== Illegal opcode at address 0x4003082 ==130788== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130788== by 0x4003082: main (tool_main.c:234) === End of file valgrind1074 test 1076...[HTTP POST with 302 redirect and --post302] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1076 ../src/curl -q --output log/9/curl1076.out --include --trace-ascii log/9/trace1076 --trace-config all --trace-time http://127.0.0.1:34999/blah/1076 -L -d "moo" --post302 > log/9/stdout1076 2> log/9/stderr1076 1076: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1076 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1076 ../src/curl -q --output log/9/curl1076.out --include --trace-ascii log/9/trace1076 --trace-config all --trace-time http://127.0.0.1:34999/blah/1076 -L -d "moo" --post302 > log/9/stdout1076 2> log/9/stderr1076 === End of file commands.log === Start of file http_server.log 07:35:57.062998 ====> Client connect 07:35:57.063029 accept_connection 3 returned 4 07:35:57.063043 accept_connection 3 returned 0 07:35:57.063056 Read 93 bytes 07:35:57.063067 Process 93 bytes request 07:35:57.063079 Got request: GET /verifiedserver HTTP/1.1 07:35:57.063089 Are-we-friendly question received 07:35:57.063120 Wrote request (93 bytes) input to log/9/server.input 07:35:57.063135 Identifying ourselves as friends 07:35:57.063190 Response sent (56 bytes) and written to log/9/server.response 07:35:57.063199 special request received, no persistency 07:35:57.063206 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1076 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1076 ==130931== ==130931== Process terminating with default action of signal 4 (SIGILL) ==130931== Illegal opcode at address 0x4003082 ==130931== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130931== by 0x4003082: main (tool_main.c:234) === End of file valgrind1076 * starts no server prechecked ./server/servers resolve --ipv6 ::1 test 1085...[HTTP-IPv6 GET with invalid --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1085 ../src/curl -q --output log/12/curl1085.out --include --trace-ascii log/12/trace1085 --trace-config all --trace-time -g "http://[::1]:47/1085" --interface non-existing-host.haxx.se. > log/12/stdout1085 2> log/12/stderr1085 curl returned 132, when expecting 45 1085: exit FAILED == Contents of files in the log/12/ dir after test 1085 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1085 ../src/curl -q --output log/12/curl1085.out --include --trace-ascii log/12/trace1085 --trace-config all --trace-time -g "http://[::1]:47/1085" --interface non-existing-host.haxx.se. > log/12/stdout1085 2> log/12/stderr1085 === End of file commands.log === Start of file server.cmd Testnum 1085 === End of file server.cmd === Start of file valgrind1085 ==131013== ==131013== Process terminating with default action of signal 4 (SIGILL) ==131013== Illegal opcode at address 0x4003082 ==131013== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131013== by 0x4003082: main (tool_main.c:234) === End of file valgrind1085 * starts no server test 1084...[HTTP GET with invalid --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1084 ../src/curl -q --output log/24/curl1084.out --include --trace-ascii log/24/trace1084 --trace-config all --trace-time http://127.0.0.1:47/1084 --interface non-existing-host.haxx.se. > log/24/stdout1084 2> log/24/stCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1087 ../src/curl -q --output log/6/curl1087.out --include --trace-ascii log/6/trace1087 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10871000 -x 127.0.0.1:35775 --user iam:myself --location --anyauth > log/6/stdout1087 2> log/6/stderr1087 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1088 ../src/curl -q --output log/3/curl1088.out --include --trace-ascii log/3/trace1088 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10881000 -x 127.0.0.1:42345 --user iam:myself --location-trusted --anyauth > log/3/stdout1088 2> log/3/stderr1088 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1046 ../src/curl -q --output log/5/curl1046.out --include --trace-ascii log/5/trace1046 --trace-config all --trace-time -g "http://[::1]:44029/1046" --interface ::1 > log/5/stdout1046 2> log/5/stderr1046 derr1084 curl returned 132, when expecting 45 1084: exit FAILED == Contents of files in the log/24/ dir after test 1084 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1084 ../src/curl -q --output log/24/curl1084.out --include --trace-ascii log/24/trace1084 --trace-config all --trace-time http://127.0.0.1:47/1084 --interface non-existing-host.haxx.se. > log/24/stdout1084 2> log/24/stderr1084 === End of file commands.log === Start of file server.cmd Testnum 1084 === End of file server.cmd === Start of file valgrind1084 ==130959== ==130959== Process terminating with default action of signal 4 (SIGILL) ==130959== Illegal opcode at address 0x4003082 ==130959== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==130959== by 0x4003082: main (tool_main.c:234) === End of file valgrind1084 test 1087...[HTTP, proxy with --anyauth and Location: to new host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1087 ../src/curl -q --output log/6/curl1087.out --include --trace-ascii log/6/trace1087 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10871000 -x 127.0.0.1:35775 --user iam:myself --location --anyauth > log/6/stdout1087 2> log/6/stderr1087 1087: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1087 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1087 ../src/curl -q --output log/6/curl1087.out --include --trace-ascii log/6/trace1087 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10871000 -x 127.0.0.1:35775 --user iam:myself --location --anyauth > log/6/stdout1087 2> log/6/stderr1087 === End of file commands.log === Start of file http_server.log 07:35:57.203420 ====> Client connect 07:35:57.203449 accept_connection 3 returned 4 07:35:57.203464 accept_connection 3 returned 0 07:35:57.203477 Read 93 bytes 07:35:57.203487 Process 93 bytes request 07:35:57.203499 Got request: GET /verifiedserver HTTP/1.1 07:35:57.203508 Are-we-friendly question received 07:35:57.203531 Wrote request (93 bytes) input to log/6/server.input 07:35:57.203547 Identifying ourselves as friends 07:35:57.203596 Response sent (56 bytes) and written to log/6/server.response 07:35:57.203605 special request received, no persistency 07:35:57.203614 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1087 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1087 ==131553== ==131553== Process terminating with default action of signal 4 (SIGILL) ==131553== Illegal opcode at address 0x4003082 ==131553== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131553== by 0x4003082: main (tool_main.c:234) === End of file valgrind1087 test 1088...[HTTP, proxy with --anyauth and Location: to new host using location-trusted] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1088 ../src/curl -q --output log/3/curl1088.out --include --trace-ascii log/3/trace1088 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10881000 -x 127.0.0.1:42345 --user iam:myself --location-trusted --anyauth > log/3/stdout1088 2> log/3/stderr1088 1088: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1088 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1088 ../src/curl -q --output log/3/curl1088.out --include --trace-ascii log/3/trace1088 --trace-config all --trace-time http://first.host.it.is/we/want/that/page/10881000 -x 127.0.0.1:42345 --user iam:myself --location-trusted --anyauth > log/3/stdout1088 2> log/3/stderr1088 === End of file commands.log === Start of file http_server.log 07:35:57.204078 ====> Client connect 07:35:57.204111 accept_connection 3 returned 4 07:35:57.204127 accept_connection 3 returned 0 07:35:57.204141 Read 93 bytes 07:35:57.204150 Process 93 bytes request 07:35:57.204161 Got request: GET /verifiedserver HTTP/1.1 07:35:57.204170 Are-we-friendly question received 07:35:57.204196 Wrote request (93 bytes) input to log/3/server.input 07:35:57.204211 Identifying ourselves as friends 07:35:57.204264 Response sent (56 bytes) and written to log/3/server.response 07:35:57.204274 special request received, no persistency 07:35:57.204283 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1088 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1088 ==131552== ==131552== Process terminating with default action of signal 4 (SIGILL) ==131552== Illegal opcode at address 0x4003082 ==131552== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131552== by 0x4003082: main (tool_main.c:234) === End of file valgrind1088 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/5/server/http_ipv6_server.pid" --logfile "log/5/http_ipv6_server.log" --logdir "log/5" --portfile log/5/server/http_ipv6_server.port --config log/5/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 129143 port 44029 * pid http-ipv6 => 129143 129143 test 1046...[HTTP-IPv6 GET with numeric localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1046 ../src/curl -q --output log/5/curl1046.out --include --trace-ascii log/5/trace1046 --trace-config all --trace-time -g "http://[::1]:44029/1046" --interface ::1 > log/5/stdout1046 2> log/5/stderr1046 1046: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1046 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1046 ../src/curl -q --output log/5/curl1046.out --include --trace-ascii log/5/trace1046 --traceCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1049 ../src/curl -q --output log/23/curl1049.out --include --trace-ascii log/23/trace1049 --trace-config all --trace-time tftp://127.0.0.1:41043//1049 --interface 127.0.0.1 > log/23/stdout1049 2> log/23/stderr1049 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1086 ../src/curl -q --output log/10/curl1086.out --include --trace-ascii log/10/trace1086 --trace-config all --trace-time ftp://127.0.0.1:39731/1086 -m 5 > log/10/stdout1086 2> log/10/stderr1086 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1048 ../src/curl -q --output log/18/curl1048.out --include --trace-ascii log/18/trace1048 --trace-config all --trace-time -g "ftp://[::1]:44797/" --interface ::1 > log/18/stdout1048 2> log/18/stderr1048 * kill pid for ftp-ctrl => 81781 RUN: Process with pid 81708 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1089 ../src/curl -q --include --trace-ascii log/2/trace1089 --trace-config all --trace-time http://127.0.0.1:45457/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout1089 2> log/2/stderr1089 -config all --trace-time -g "http://[::1]:44029/1046" --interface ::1 > log/5/stdout1046 2> log/5/stderr1046 === End of file commands.log === Start of file http_ipv6_server.log 07:35:56.252058 Running HTTP IPv6 version on port 44029 07:35:56.252165 Wrote pid 129143 to log/5/server/http_ipv6_server.pid 07:35:56.252199 Wrote port 44029 to log/5/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 1046 === End of file server.cmd === Start of file valgrind1046 ==131591== ==131591== Process terminating with default action of signal 4 (SIGILL) ==131591== Illegal opcode at address 0x4003082 ==131591== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131591== by 0x4003082: main (tool_main.c:234) === End of file valgrind1046 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/23/server/tftp_server.pid" --portfile "log/23/server/tftp_server.port" --logfile "log/23/tftp_server.log" --logdir "log/23" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 129187 port 41043 * pid tftp => 129187 129187 test 1049...[TFTP retrieve with localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1049 ../src/curl -q --output log/23/curl1049.out --include --trace-ascii log/23/trace1049 --trace-config all --trace-time tftp://127.0.0.1:41043//1049 --interface 127.0.0.1 > log/23/stdout1049 2> log/23/stderr1049 1049: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1049 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1049 ../src/curl -q --output log/23/curl1049.out --include --trace-ascii log/23/trace1049 --trace-config all --trace-time tftp://127.0.0.1:41043//1049 --interface 127.0.0.1 > log/23/stdout1049 2> log/23/stderr1049 === End of file commands.log === Start of file server.cmd Testnum 1049 === End of file server.cmd === Start of file tftp_server.log 07:35:56.289326 Wrote pid 129187 to log/23/server/tftp_server.pid 07:35:56.289385 Wrote port 41043 to log/23/server/tftp_server.port 07:35:56.289399 Running IPv4 version on port UDP/41043 === End of file tftp_server.log === Start of file valgrind1049 ==131740== ==131740== Process terminating with default action of signal 4 (SIGILL) ==131740== Illegal opcode at address 0x4003082 ==131740== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131740== by 0x4003082: main (tool_main.c:234) === End of file valgrind1049 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/18/server/ftp_ipv6_server.pid" --logfile "log/18/ftp_ipv6_server.log" --logdir "log/18" --portfile "log/18/server/ftp_ipv6_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv6 --port 0 --addr "[::1]" PINGPONG runs on port 44797 (log/18/server/ftp_ipv6_server.port) RUN: FTP-IPv6 server is PID 129176 port 44797 * pid ftp-ipv6 => 129176 129176 test 1048...[FTP-IPv6 dir list PASV with localhost --interface] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1048 ../src/curl -q --output log/18/curl1048.out --include --trace-ascii log/18/trace1048 --trace-config all --trace-time -g "ftp://[::1]:44797/" --interface ::1 > log/18/stdout1048 2> log/18/stderr1048 1048: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1048 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1048 ../src/curl -q --output log/18/curl1048.out --include --trace-ascii log/18/trace1048 --trace-config all --trace-time -g "ftp://[::1]:44797/" --interface ::1 > log/18/stdout1048 2> log/18/stderr1048 === End of file commands.log === Start of file ftp_ipv6_server.log 07:35:56.446235 FTP server listens on port IPv6/44797 07:35:56.446315 logged pid 129176 in log/18/server/ftp_ipv6_server.pid 07:35:56.446339 Awaiting input === End of file ftp_ipv6_server.log === Start of file ftp_ipv6_sockctrl.log 07:35:56.291951 Running IPv6 version 07:35:56.292045 Listening on port 44797 07:35:56.292088 Wrote pid 129212 to log/18/server/ftp_ipv6_sockctrl.pid 07:35:56.292119 Wrote port 44797 to log/18/server/ftp_ipv6_server.port 07:35:56.292139 Received PING (on stdin) === End of file ftp_ipv6_sockctrl.log === Start of file server.cmd Testnum 1048 === End of file server.cmd === Start of file valgrind1048 ==131701== ==131701== Process terminating with default action of signal 4 (SIGILL) ==131701== Illegal opcode at address 0x4003082 ==131701== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131701== by 0x4003082: main (tool_main.c:234) === End of file valgrind1048 RUN: Process with pid 81708 gracefully died test 1089...[HTTP GET --write-out with redirected fetch] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1089 ../src/curl -q --include --trace-ascii log/2/trace1089 --trace-config all --trace-time http://127.0.0.1:45457/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout1089 2> log/2/stderr1089 1089: stdout FAILED: --- log/2/check-expected 2025-07-18 07:35:58.060446171 +0000 +++ log/2/check-generated 2025-07-18 07:35:58.060446171 +0000 @@ -1,20 +0,0 @@ -HTTP/1.1 302 OK swsbounce swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 8[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain[CR][LF] -Location: ./10890001[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 15[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain; charset=us-ascii[CR][LF] -[CR][LF] -bigger monster[LF] -2[LF] -1[LF] -15[LF] -http://127.0.0.1:45457/10890001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/2/ dir after test 1089 === Start of file check-expected HTTP/1.1 302 OK swsbounce swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 8[CR][LF] Connection: close[CR][LF] Content-Type: text/plain[CR][LF] Location: ./10890001[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 15[CR][LF] Connection: close[CR][LF] Content-Type: text/plain; charset=us-ascii[CR][LF] [CR][LF] bigger monster[LF] 2[LF] 1[LF] 15[LF] http://127.0.0.1:45457/10890001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1089 ../src/curl -q --include --trace-ascii log/2/trace1089 --trace-config all --trace-time http://127.0.0.1:45457/1089 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout1089 2> log/2/stderr1089 === End of file commands.log === Start of file http_server.log 07:35:57.357161 ====> Client connect 07:35:57.357207 accept_connection 3 returned 4 07:35:57.357227 accept_connection 3 returned 0 07:35:57.357244 Read 93 bytes 07:35:57.357254 Process 93 bytes request 07:35:57.357267 Got request: GET /verifiedserver HTTP/1.1 07:35:57.357277 Are-we-friendly question received 07:35:57.357301 Wrote request (93 bytes) input to log/2/server.input 07:35:57.357317 Identifying ourselves as friends 07:35:57.357390 Response sent (56 bytes) and written to log/2/server.response 07:35:57.357399 special request received, no persistency 07:35:57.357408 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1089 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1089 ==131871== ==131871== Process terminating with default action of signal 4 (SIGILL) ==131871== Illegal opcode at address 0x4003082 ==131871== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131871== by 0x4003082: main (tool_main.c:234) === End of file valgrind1089 test 1086...[FTP download with strict timeout and slow data transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1086 ../src/curl -q --output log/10/curl1086.out --include --trace-ascii log/10/trace1086 --trace-config all --trace-time ftp://127.0.0.1:39731/1086 -m 5 > log/10/stdout1086 2> log/10/stderr1086 1086: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1086 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1086 ../src/curl -q --output log/10/curl1086.out --include --trace-ascii log/10/trace1086 --trace-config all --trace-time ftp://127.0.0.1:39731/1086 -m 5 > log/10/stdout1086 2> log/10/stderr1086 === End of file commands.log === Start of file ftp_server.log 07:35:57.350066 ====> Client connect 07:35:57.350216 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.350958 < "USER anonymous" 07:35:57.350991 > "331 We are happy you popped in![CR][LF]" 07:35:57.351224 < "PASS ftp@example.com" 07:35:57.351256 > "230 Welcome you silly person[CR][LF]" 07:35:57.351420 < "PWD" 07:35:57.351453 > "257 "/" is current directory[CR][LF]" 07:35:57.351763 < "EPSV" 07:35:57.351801 ====> Passive DATA channel requested by client 07:35:57.351814 DATA sockfilt for passive data channel starting... 07:35:57.353503 DATA sockfilt for passive data channel started (pid 131547) 07:35:57.353607 DATA sockfilt for passive data channel listens on port 41477 07:35:57.353652 > "229 Entering Passive Mode (|||41477|)[LF]" 07:35:57.353670 Client has been notified that DATA conn will be accepted on port 41477 07:35:57.353899 Client connects to port 41477 07:35:57.353927 ====> Client established passive DATA connection on port 41477 07:35:57.353995 < "TYPE I" 07:35:57.354024 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.354194 < "SIZE verifiedserver" 07:35:57.354227 > "213 17[CR][LF]" 07:35:57.354373 < "RETR verifiedserver" 07:35:57.354408 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.354480 =====> Closing passive DATA connection... 07:35:57.354496 Server disconnects passive DATA connection 07:35:57.354571 Server disconnected passive DATA connection 07:35:57.354594 DATA sockfilt for passive data channel quits (pid 131547) 07:35:57.355030 DATA sockfilt for passive data channel quit (pid 131547) 07:35:57.355066 =====> Closed passive DATA connection 07:35:57.355100 > "226 File transfer complete[CR][LF]" 07:35:57.397357 < "QUIT" 07:35:57.397408 > "221 bye bye baby[CR][LF]" 07:35:57.397776 MAIN sockfilt said DISC 07:35:57.397830 ====> Client disconnected 07:35:57.397915 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.195928 ====> Client connect 07:35:57.196212 Received DATA (on stdin) 07:35:57.196225 > 160 bytes data, server => client 07:35:57.196236 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.196246 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.196255 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.196789 < 16 bytes data, client => server 07:35:57.196809 'USER anonymous\r\n' 07:35:57.196971 Received DATA (on stdin) 07:35:57.197003 > 33 bytes data, server => client 07:35:57.197015 '331 We are happy you popped in!\r\n' 07:35:57.197107 < 22 bytes data, client => server 07:35:57.197121 'PASS ftp@example.com\r\n' 07:35:57.197246 Received DATA (on stdin) 07:35:57.197262 > 30 bytes data, server => client 07:35:57.197273 '230 Welcome you silly person\r\n' 07:35:57.197335 < 5 bytes data, client => server 07:35:57.197349 'PWD\r\n' 07:35:57.197439 Received DATA (on stdiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1090 ../src/curl -q --include --trace-ascii log/22/trace1090 --trace-config all --trace-time http://127.0.0.1:46761/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/22/stdout1090 2> log/22/stderr1090 n) 07:35:57.197453 > 30 bytes data, server => client 07:35:57.197463 '257 "/" is current directory\r\n' 07:35:57.197523 < 6 bytes data, client => server 07:35:57.197542 'EPSV\r\n' 07:35:57.199661 Received DATA (on stdin) 07:35:57.199678 > 38 bytes data, server => client 07:35:57.199689 '229 Entering Passive Mode (|||41477|)\n' 07:35:57.199818 < 8 bytes data, client => server 07:35:57.199831 'TYPE I\r\n' 07:35:57.200009 Received DATA (on stdin) 07:35:57.200021 > 33 bytes data, server => client 07:35:57.200031 '200 I modify TYPE as you wanted\r\n' 07:35:57.200096 < 21 bytes data, client => server 07:35:57.200108 'SIZE verifiedserver\r\n' 07:35:57.200212 Received DATA (on stdin) 07:35:57.200223 > 8 bytes data, server => client 07:35:57.200233 '213 17\r\n' 07:35:57.200279 < 21 bytes data, client => server 07:35:57.200291 'RETR verifiedserver\r\n' 07:35:57.200483 Received DATA (on stdin) 07:35:57.200496 > 29 bytes data, server => client 07:35:57.200506 '150 Binary junk (17 bytes).\r\n' 07:35:57.201093 Received DATA (on stdin) 07:35:57.201108 > 28 bytes data, server => client 07:35:57.201120 '226 File transfer complete\r\n' 07:35:57.243128 < 6 bytes data, client => server 07:35:57.243160 'QUIT\r\n' 07:35:57.243395 Received DATA (on stdin) 07:35:57.243405 > 18 bytes data, server => client 07:35:57.243415 '221 bye bye baby\r\n' 07:35:57.243686 ====> Client disconnect 07:35:57.243892 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.199278 Running IPv4 version 07:35:57.199369 Listening on port 41477 07:35:57.199415 Wrote pid 131547 to log/10/server/ftp_sockdata.pid 07:35:57.199434 Received PING (on stdin) 07:35:57.199513 Received PORT (on stdin) 07:35:57.199822 ====> Client connect 07:35:57.200408 Received DATA (on stdin) 07:35:57.200423 > 17 bytes data, server => client 07:35:57.200433 'WE ROOLZ: 81708\r\n' 07:35:57.200481 Received DISC (on stdin) 07:35:57.200494 ====> Client forcibly disconnected 07:35:57.200587 Received QUIT (on stdin) 07:35:57.200601 quits 07:35:57.200664 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd SLOWDOWNDATA REPLY welcome 220 Hey REPLY USER 331 OK REPLY PASS 230 OK REPLY PWD 257 "/" REPLY TYPE 200 OK Testnum 1086 === End of file server.cmd === Start of file valgrind1086 ==131686== ==131686== Process terminating with default action of signal 4 (SIGILL) ==131686== Illegal opcode at address 0x4003082 ==131686== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131686== by 0x4003082: main (tool_main.c:234) === End of file valgrind1086 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1056 ../src/curl -q --output log/8/curl1056.out --include --trace-ascii log/8/trace1056 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1056 -L > log/8/stdout1056 2> log/8/stderr1056 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1091 ../src/curl -q --output log/17/curl1091.out --include --trace-ascii log/17/trace1091 --trace-config all --trace-time "ftp://127.0.0.1:39713/%2ftmp/moo/1091;type=i" --use-ascii > log/17/stdout1091 2> log/17/stderr1091 test 1090...[HTTP GET --write-out with redirected fetch and chunked reply] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1090 ../src/curl -q --include --trace-ascii log/22/trace1090 --trace-config all --trace-time http://127.0.0.1:46761/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/22/stdout1090 2> log/22/stderr1090 1090: stdout FAILED: --- log/22/check-expected 2025-07-18 07:35:58.070446171 +0000 +++ log/22/check-generated 2025-07-18 07:35:58.070446171 +0000 @@ -1,20 +0,0 @@ -HTTP/1.1 302 OK swsbounce swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 8[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain[CR][LF] -Location: ./10900001[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Transfer-Encoding: chunked[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain; charset=us-ascii[CR][LF] -[CR][LF] -bigger monster[LF] -2[LF] -1[LF] -15[LF] -http://127.0.0.1:46761/10900001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/22/ dir after test 1090 === Start of file check-expected HTTP/1.1 302 OK swsbounce swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 8[CR][LF] Connection: close[CR][LF] Content-Type: text/plain[CR][LF] Location: ./10900001[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Transfer-Encoding: chunked[CR][LF] Connection: close[CR][LF] Content-Type: text/plain; charset=us-ascii[CR][LF] [CR][LF] bigger monster[LF] 2[LF] 1[LF] 15[LF] http://127.0.0.1:46761/10900001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1090 ../src/curl -q --include --trace-ascii log/22/trace1090 --trace-config all --trace-time http://127.0.0.1:46761/1090 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/22/stdout1090 2> log/22/stderr1090 === End of file commands.log === Start of file http_server.log 07:35:57.412164 ====> Client connect 07:35:57.412204 accept_connection 3 returned 4 07:35:57.412221 accept_connection 3 returned 0 07:35:57.412237 Read 93 bytes 07:35:57.412247 Process 93 bytes request 07:35:57.412259 Got request: GET /verifiedserver HTTP/1.1 07:35:57.412268 Are-we-friendly question received 07:35:57.412291 Wrote request (93 bytes) input to log/22/server.input 07:35:57.412307 Identifying ourselves as friends 07:35:57.412384 Response sent (56 bytes) and written to log/22/server.response 07:35:57.412394 special request received, no persistency 07:35:57.412403 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1090 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1090 ==131938== ==131938== Process terminating with default action of signal 4 (SIGILL) ==131938== Illegal opcode at address 0x4003082 ==131938== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==131938== by 0x4003082: main (tool_main.c:234) === End of file valgrind1090 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/8/server/http_ipv6_server.pid" --logfile "log/8/http_ipv6_server.log" --logdir "log/8" --portfile log/8/server/http_ipv6_server.port --config log/8/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 129436 port 40739 * pid http-ipv6 => 129436 129436 prechecked /usr/bin/perl -e "print 'Test is not supported on the Windows kernel' if($^O eq 'MSWin32' || $^O eq 'msys' || $^O eq 'cygwin');" test 1056...[HTTP follow redirect from IPv4 to IPv6 with scope] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1056 ../src/curl -q --output log/8/curl1056.out --include --trace-ascii log/8/trace1056 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1056 -L > log/8/stdout1056 2> log/8/stderr1056 1056: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1056 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1056 ../src/curl -q --output log/8/curl1056.out --include --trace-ascii log/8/trace1056 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1056 -L > log/8/stdout1056 2> log/8/stderr1056 === End of file commands.log === Start of file http_ipv6_server.log 07:35:56.492959 Running HTTP IPv6 version on port 40739 07:35:56.493028 Wrote pid 129436 to log/8/server/http_ipv6_server.pid 07:35:56.493075 Wrote port 40739 to log/8/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file http_server.log 07:35:56.468667 ====> Client connect 07:35:56.468694 accept_connection 3 returned 4 07:35:56.468707 accept_connection 3 returned 0 07:35:56.468718 Read 93 bytes 07:35:56.468726 Process 93 bytes request 07:35:56.468735 Got request: GET /verifiedserver HTTP/1.1 07:35:56.468743 Are-we-friendly question received 07:35:56.468761 Wrote request (93 bytes) input to log/8/server.input 07:35:56.468775 Identifying ourselves as friends 07:35:56.468881 Response sent (56 bytes) and written to log/8/server.response 07:35:56.468897 special request received, no persistency 07:35:56.468908 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1056 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1056 ==132006== ==132006== Process terminating with default action of signal 4 (SIGILL) ==132006== Illegal opcode at address 0x4003082 ==132006== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132006== by 0x4003082: main (tool_main.c:234) === End of file valgrind1056 test 1091...[FTP URL with type=i] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1091 ../src/curl -q --output log/17/curl1091.out --include --trace-ascii log/17/trace1091 --trace-config all --trace-time "ftp://127.0.0.1:39713/%2ftmp/moo/1091;type=i" --use-ascii > log/17/stdout1091 2> log/17/stderr1091 1091: protocol FAILED! There was no content atCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1092 ../src/curl -q --output log/20/curl1092.out --include --trace-ascii log/20/trace1092 --trace-config all --trace-time "ftp://127.0.0.1:37169/we/want/that/page/1092;type=i" --use-ascii -x 127.0.0.1:37169 > log/20/stdout1092 2> log/20/stderr1092 all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1091 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1091 ../src/curl -q --output log/17/curl1091.out --include --trace-ascii log/17/trace1091 --trace-config all --trace-time "ftp://127.0.0.1:39713/%2ftmp/moo/1091;type=i" --use-ascii > log/17/stdout1091 2> log/17/stderr1091 === End of file commands.log === Start of file ftp_server.log 07:35:57.643346 ====> Client connect 07:35:57.643518 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.643862 < "USER anonymous" 07:35:57.643923 > "331 We are happy you popped in![CR][LF]" 07:35:57.644094 < "PASS ftp@example.com" 07:35:57.644120 > "230 Welcome you silly person[CR][LF]" 07:35:57.644259 < "PWD" 07:35:57.644287 > "257 "/" is current directory[CR][LF]" 07:35:57.644431 < "EPSV" 07:35:57.644455 ====> Passive DATA channel requested by client 07:35:57.644467 DATA sockfilt for passive data channel starting... 07:35:57.646655 DATA sockfilt for passive data channel started (pid 132004) 07:35:57.646778 DATA sockfilt for passive data channel listens on port 43287 07:35:57.646823 > "229 Entering Passive Mode (|||43287|)[LF]" 07:35:57.646838 Client has been notified that DATA conn will be accepted on port 43287 07:35:57.647080 Client connects to port 43287 07:35:57.647104 ====> Client established passive DATA connection on port 43287 07:35:57.647214 < "TYPE I" 07:35:57.647242 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.647382 < "SIZE verifiedserver" 07:35:57.647412 > "213 17[CR][LF]" 07:35:57.647545 < "RETR verifiedserver" 07:35:57.647574 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.647646 =====> Closing passive DATA connection... 07:35:57.647660 Server disconnects passive DATA connection 07:35:57.647869 Server disconnected passive DATA connection 07:35:57.647894 DATA sockfilt for passive data channel quits (pid 132004) 07:35:57.648103 DATA sockfilt for passive data channel quit (pid 132004) 07:35:57.648123 =====> Closed passive DATA connection 07:35:57.648147 > "226 File transfer complete[CR][LF]" 07:35:57.693653 < "QUIT" 07:35:57.693706 > "221 bye bye baby[CR][LF]" 07:35:57.694690 MAIN sockfilt said DISC 07:35:57.694721 ====> Client disconnected 07:35:57.694804 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.486139 ====> Client connect 07:35:57.489521 Received DATA (on stdin) 07:35:57.489542 > 160 bytes data, server => client 07:35:57.489554 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.489566 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.489577 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.489668 < 16 bytes data, client => server 07:35:57.489680 'USER anonymous\r\n' 07:35:57.489921 Received DATA (on stdin) 07:35:57.489933 > 33 bytes data, server => client 07:35:57.489947 '331 We are happy you popped in!\r\n' 07:35:57.489998 < 22 bytes data, client => server 07:35:57.490008 'PASS ftp@example.com\r\n' 07:35:57.490102 Received DATA (on stdin) 07:35:57.490113 > 30 bytes data, server => client 07:35:57.490125 '230 Welcome you silly person\r\n' 07:35:57.490167 < 5 bytes data, client => server 07:35:57.490178 'PWD\r\n' 07:35:57.490269 Received DATA (on stdin) 07:35:57.490280 > 30 bytes data, server => client 07:35:57.490291 '257 "/" is current directory\r\n' 07:35:57.490343 < 6 bytes data, client => server 07:35:57.490353 'EPSV\r\n' 07:35:57.492829 Received DATA (on stdin) 07:35:57.492847 > 38 bytes data, server => client 07:35:57.492859 '229 Entering Passive Mode (|||43287|)\n' 07:35:57.493103 < 8 bytes data, client => server 07:35:57.493115 'TYPE I\r\n' 07:35:57.493227 Received DATA (on stdin) 07:35:57.493238 > 33 bytes data, server => client 07:35:57.493249 '200 I modify TYPE as you wanted\r\n' 07:35:57.493293 < 21 bytes data, client => server 07:35:57.493304 'SIZE verifiedserver\r\n' 07:35:57.493395 Received DATA (on stdin) 07:35:57.493406 > 8 bytes data, server => client 07:35:57.493416 '213 17\r\n' 07:35:57.493457 < 21 bytes data, client => server 07:35:57.493468 'RETR verifiedserver\r\n' 07:35:57.493644 Received DATA (on stdin) 07:35:57.493655 > 29 bytes data, server => client 07:35:57.493665 '150 Binary junk (17 bytes).\r\n' 07:35:57.494132 Received DATA (on stdin) 07:35:57.494144 > 28 bytes data, server => client 07:35:57.494155 '226 File transfer complete\r\n' 07:35:57.539434 < 6 bytes data, client => server 07:35:57.539460 'QUIT\r\n' 07:35:57.539696 Received DATA (on stdin) 07:35:57.539709 > 18 bytes data, server => client 07:35:57.539719 '221 bye bye baby\r\n' 07:35:57.540625 ====> Client disconnect 07:35:57.541103 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.492331 Running IPv4 version 07:35:57.492404 Listening on port 43287 07:35:57.492444 Wrote pid 132004 to log/17/server/ftp_sockdata.pid 07:35:57.492587 Received PING (on stdin) 07:35:57.492676 Received PORT (on stdin) 07:35:57.493017 ====> Client connect 07:35:57.493688 Received DATA (on stdin) 07:35:57.493702 > 17 bytes data, server => client 07:35:57.493713 'WE ROOLZ: 79834\r\n' 07:35:57.493734 Received DISC (on stdin) 07:35:57.493745 ====> Client forcibly disconnected 07:35:57.493886 Received QUIT (on stdin) 07:35:57.493897 quits 07:35:57.493954 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1091 === End of file server.cmd === Start of file valgrind1091 ==132055== ==132055== Process terminating with default action of signal 4 (SIGILL) ==132055== Illegal opcode at address 0x4003082 ==132055== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132055== by 0x4003082: main (tool_main.c:234) === End of file valgrind1091 test 1092...[FTP with type=i over HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1092 ../src/curl -q --output log/20/curl1092.out --include --trace-ascii log/20/trace1092 --trace-config all --trace-time "ftp://127.0.0.1:37169/we/want/that/page/1092;type=i" --use-ascii -x 127.0.0.1:37169 > log/20/stdout1092 2> log/20/stderr1092 1092: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1092 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1092 ../src/curl -q --output log/20/curl1092.out --include --trace-ascii log/20/trace1092 --trace-config all --trace-time "ftp://127.0.0.1:37169/we/want/that/page/1092;type=i" --use-ascii -x 127.0.0.1:37169 > log/20/stdout1092 2> log/20/stderr1092 === End of file commands.log === Start of file http_server.log 07:35:57.586257 ====> Client connect 07:35:57.586285 accept_connection 3 returned 4 07:35:57.586302 accept_connection 3 returned 0 07:35:57.586317 Read 93 bytes 07:35:57.586326 Process 93 bytes request 07:35:57.586339 Got request: GET /verifiedserver HTTP/1.1 07:35:57.586348 Are-we-friendly question received 07:35:57.586370 Wrote request (93 bytes) input to log/20/server.input 07:35:57.586386 Identifying ourselves as friends 07:35:57.586431 Response sent (56 bytes) and written to log/20/server.response 07:35:57.586439 special request received, no persistency 07:35:57.586446 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * uCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1093 ../src/curl -q --output log/16/curl1093.out --include --trace-ascii log/16/trace1093 --trace-config all --trace-time "tftp://127.0.0.1:52374//1093;mode=i" --use-ascii > log/16/stdout1093 2> log/16/stderr1093 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1095 ../src/curl -q --output log/4/curl1095.out --include --trace-ascii log/4/trace1095 --trace-config all --trace-time http://127.0.0.1:33235/1095 -u testuser:testpass --digest > log/4/stdout1095 2> log/4/stderr1095 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1098 ../src/curl -q --include --trace-ascii log/14/trace1098 --trace-config all --trace-time ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://127.0.0.1:37963 > log/14/stdout1098 2> log/14/stderr1098 sing HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1092 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1092 ==132163== ==132163== Process terminating with default action of signal 4 (SIGILL) ==132163== Illegal opcode at address 0x4003082 ==132163== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132163== by 0x4003082: main (tool_main.c:234) === End of file valgrind1092 test 1093...[TFTP retrieve with mode=i] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1093 ../src/curl -q --output log/16/curl1093.out --include --trace-ascii log/16/trace1093 --trace-config all --trace-time "tftp://127.0.0.1:52374//1093;mode=i" --use-ascii > log/16/stdout1093 2> log/16/stderr1093 1093: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1093 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1093 ../src/curl -q --output log/16/curl1093.out --include --trace-ascii log/16/trace1093 --trace-config all --trace-time "tftp://127.0.0.1:52374//1093;mode=i" --use-ascii > log/16/stdout1093 2> log/16/stderr1093 === End of file commands.log === Start of file server.cmd Testnum 1093 === End of file server.cmd === Start of file tftp_server.log 07:35:57.586272 trying to get file: verifiedserver mode 1 07:35:57.586330 Are-we-friendly question received 07:35:57.586344 write 07:35:57.586371 read 07:35:57.586395 read: 4 07:35:57.586434 end of one transfer === End of file tftp_server.log === Start of file valgrind1093 ==132165== ==132165== Process terminating with default action of signal 4 (SIGILL) ==132165== Illegal opcode at address 0x4003082 ==132165== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132165== by 0x4003082: main (tool_main.c:234) === End of file valgrind1093 test 1095...[HTTP with Digest and realm with quoted quotes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1095 ../src/curl -q --output log/4/curl1095.out --include --trace-ascii log/4/trace1095 --trace-config all --trace-time http://127.0.0.1:33235/1095 -u testuser:testpass --digest > log/4/stdout1095 2> log/4/stderr1095 1095: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1095 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1095 ../src/curl -q --output log/4/curl1095.out --include --trace-ascii log/4/trace1095 --trace-config all --trace-time http://127.0.0.1:33235/1095 -u testuser:testpass --digest > log/4/stdout1095 2> log/4/stderr1095 === End of file commands.log === Start of file http_server.log 07:35:57.606344 ====> Client connect 07:35:57.606383 accept_connection 3 returned 4 07:35:57.606399 accept_connection 3 returned 0 07:35:57.606413 Read 93 bytes 07:35:57.606424 Process 93 bytes request 07:35:57.606437 Got request: GET /verifiedserver HTTP/1.1 07:35:57.606446 Are-we-friendly question received 07:35:57.606472 Wrote request (93 bytes) input to log/4/server.input 07:35:57.606488 Identifying ourselves as friends 07:35:57.606554 Response sent (56 bytes) and written to log/4/server.response 07:35:57.606563 special request received, no persistency 07:35:57.606573 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1095 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1095 ==132228== ==132228== Process terminating with default action of signal 4 (SIGILL) ==132228== Illegal opcode at address 0x4003082 ==132228== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132228== by 0x4003082: main (tool_main.c:234) === End of file valgrind1095 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1106 ../src/curl -q --output log/1/curl1106.out --include --trace-ascii log/1/trace1106 --trace-config all --trace-time ftp://127.0.0.1:23456/1106 > log/1/stdout1106 2> log/1/stderr1106 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1105 ../src/curl -q --output log/7/curl1105.out --include --trace-ascii log/7/trace1105 --trace-config all --trace-time "http://127.0.0.1:39077/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/7/cookie1105.txt -d "userid=myname&password=mypassword" > log/7/stdout1105 2> log/7/stderr1105 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1101 ../src/curl -q --output log/24/curl1101.out --include --trace-ascii log/24/trace1101 --trace-config all --trace-time http://user:secret@127.0.0.1:38675/gimme/1101 > log/24/stdout1101 2> log/24/stderr1101 test 1098...[FTP RETR twice over proxy confirming persistent connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1098 ../src/curl -q --include --trace-ascii log/14/trace1098 --trace-config all --trace-time ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://127.0.0.1:37963 > log/14/stdout1098 2> log/14/stderr1098 1098: stdout FAILED: --- log/14/check-expected 2025-07-18 07:35:58.397112845 +0000 +++ log/14/check-generated 2025-07-18 07:35:58.397112845 +0000 @@ -1,10 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 6[CR][LF] -[CR][LF] -hello[LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 6[CR][LF] -[CR][LF] -hello[LF] == Contents of files in the log/14/ dir after test 1098 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 6[CR][LF] [CR][LF] hello[LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 6[CR][LF] [CR][LF] hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1098 ../src/curl -q --include --trace-ascii log/14/trace1098 --trace-config all --trace-time ftp://ftp-site/moo/1098 ftp://ftp-site/moo/1098 --proxy http://127.0.0.1:37963 > log/14/stdout1098 2> log/14/stderr1098 === End of file commands.log === Start of file http_server.log 07:35:57.656344 ====> Client connect 07:35:57.656377 accept_connection 3 returned 4 07:35:57.656394 accept_connection 3 returned 0 07:35:57.656508 Read 93 bytes 07:35:57.656521 Process 93 bytes request 07:35:57.656534 Got request: GET /verifiedserver HTTP/1.1 07:35:57.656543 Are-we-friendly question received 07:35:57.656572 Wrote request (93 bytes) input to log/14/server.input 07:35:57.656588 Identifying ourselves as friends 07:35:57.656644 Response sent (56 bytes) and written to log/14/server.response 07:35:57.656653 special request received, no persistency 07:35:57.656662 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1098 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1098 ==132434== ==132434== Process terminating with default action of signal 4 (SIGILL) ==132434== Illegal opcode at address 0x4003082 ==132434== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132434== by 0x4003082: main (tool_main.c:234) === End of file valgrind1098 setenv ftp_proxy = http://127.0.0.1:38941/ test 1106...[FTP URL and with ftp_proxy environment variable set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1106 ../src/curl -q --output log/1/curl1106.out --include --trace-ascii log/1/trace1106 --trace-config all --trace-time ftp://127.0.0.1:23456/1106 > log/1/stdout1106 2> log/1/stderr1106 1106: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1106 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1106 ../src/curl -q --output log/1/curl1106.out --include --trace-ascii log/1/trace1106 --trace-config all --trace-time ftp://127.0.0.1:23456/1106 > log/1/stdout1106 2> log/1/stderr1106 === End of file commands.log === Start of file http_server.log 07:35:57.670463 ====> Client connect 07:35:57.670490 accept_connection 3 returned 4 07:35:57.670503 accept_connection 3 returned 0 07:35:57.670514 Read 93 bytes 07:35:57.670524 Process 93 bytes request 07:35:57.670535 Got request: GET /verifiedserver HTTP/1.1 07:35:57.670544 Are-we-friendly question received 07:35:57.670574 Wrote request (93 bytes) input to log/1/server.input 07:35:57.670592 Identifying ourselves as friends 07:35:57.670654 Response sent (56 bytes) and written to log/1/server.response 07:35:57.670664 special request received, no persistency 07:35:57.670672 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1106 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1106 ==132460== ==132460== Process terminating with default action of signal 4 (SIGILL) ==132460== Illegal opcode at address 0x4003082 ==132460== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132460== by 0x4003082: main (tool_main.c:234) === End of file valgrind1106 test 1105...[HTTP with cookie parser and header recording] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1105 ../src/curl -q --output log/7/curl1105.out --include --trace-ascii log/7/trace1105 --trace-config all --trace-time "http://127.0.0.1:39077/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/7/cookie1105.txt -d "userid=myname&password=mypassword" > log/7/stdout1105 2> log/7/stderr1105 1105: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1105 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1105 ../src/curl -q --output log/7/curl1105.out --include --trace-ascii log/7/trace1105 --trace-config all --trace-time "http://127.0.0.1:39077/we/want/1105?parm1=this*that/other/thing&parm2=foobar/1105" -c log/7/cookie1105.txt -d "userid=myname&password=mypassword" > log/7/stdout1105 2> log/7/stderr1105 === End of file commands.log === Start of file http_server.log 07:35:57.670441 ====> Client connect 07:35:57.670479 accept_connection 3 returned 4 07:35:57.670496 accept_connection 3 returned 0 07:35:57.670510 Read 93 bytes 07:35:57.670519 Process 93 bytes request 07:35:57.670531 Got request: GET /verifiedserver HTTP/1.1 07:35:57.670541 Are-we-friendly question received 07:35:57.670572 Wrote request (93 bytes) input to log/7/server.input 07:35:57.670591 Identifying ourselves as friends 07:35:57.670659 Response sent (56 bytes) and written to log/7/server.response 07:35:57.670670 special request received, no persistency 07:35:57.670679 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * ConnecteCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1096 ../src/curl -q --output log/13/curl1096.out --include --trace-ascii log/13/trace1096 --trace-config all --trace-time ftp://127.0.0.1:40375/dir/1096 ftp://127.0.0.1:40375/dir/1096 > log/13/stdout1096 2> log/13/stderr1096 d to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1105 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1105 ==132473== ==132473== Process terminating with default action of signal 4 (SIGILL) ==132473== Illegal opcode at address 0x4003082 ==132473== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132473== by 0x4003082: main (tool_main.c:234) === End of file valgrind1105 setenv no_proxy = 127.0.0.1 setenv http_proxy = http://non-existing-host.haxx.se:3128/ test 1101...[NO_PROXY test, with user name in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1101 ../src/curl -q --output log/24/curl1101.out --include --trace-ascii log/24/trace1101 --trace-config all --trace-time http://user:secret@127.0.0.1:38675/gimme/1101 > log/24/stdout1101 2> log/24/stderr1101 1101: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1101 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1101 ../src/curl -q --output log/24/curl1101.out --include --trace-ascii log/24/trace1101 --trace-config all --trace-time http://user:secret@127.0.0.1:38675/gimme/1101 > log/24/stdout1101 2> log/24/stderr1101 === End of file commands.log === Start of file http_server.log 07:35:57.667177 ====> Client connect 07:35:57.667209 accept_connection 3 returned 4 07:35:57.667224 accept_connection 3 returned 0 07:35:57.667237 Read 93 bytes 07:35:57.667246 Process 93 bytes request 07:35:57.667258 Got request: GET /verifiedserver HTTP/1.1 07:35:57.667266 Are-we-friendly question received 07:35:57.667289 Wrote request (93 bytes) input to log/24/server.input 07:35:57.667304 Identifying ourselves as friends 07:35:57.667359 Response sent (56 bytes) and written to log/24/server.response 07:35:57.667369 special request received, no persistency 07:35:57.667377 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1101 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1101 ==132454== ==132454== Process terminating with default action of signal 4 (SIGILL) ==132454== Illegal opcode at address 0x4003082 ==132454== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132454== by 0x4003082: main (tool_main.c:234) === End of file valgrind1101 test 1096...[Two FTP downloads, with failed RETR but reused control connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1096 ../src/curl -q --output log/13/curl1096.out --include --trace-ascii log/13/trace1096 --trace-config all --trace-time ftp://127.0.0.1:40375/dir/1096 ftp://127.0.0.1:40375/dir/1096 > log/13/stdout1096 2> log/13/stderr1096 1096: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1096 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1096 ../src/curl -q --output log/13/curl1096.out --include --trace-ascii log/13/trace1096 --trace-config all --trace-time ftp://127.0.0.1:40375/dir/1096 ftp://127.0.0.1:40375/dir/1096 > log/13/stdout1096 2> log/13/stderr1096 === End of file commands.log === Start of file ftp_server.log 07:35:57.760275 ====> Client connect 07:35:57.760443 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.760723 < "USER anonymous" 07:35:57.760762 > "331 We are happy you popped in![CR][LF]" 07:35:57.760926 < "PASS ftp@example.com" 07:35:57.760953 > "230 Welcome you silly person[CR][LF]" 07:35:57.761106 < "PWD" 07:35:57.761134 > "257 "/" is current directory[CR][LF]" 07:35:57.761372 < "EPSV" 07:35:57.761412 ====> Passive DATA channel requested by client 07:35:57.761427 DATA sockfilt for passive data channel starting... 07:35:57.763284 DATA sockfilt for passive data channel started (pid 132200) 07:35:57.763526 DATA sockfilt for passive data channel listens on port 40463 07:35:57.763569 > "229 Entering Passive Mode (|||40463|)[LF]" 07:35:57.763586 Client has been notified that DATA conn will be accepted on port 40463 07:35:57.763782 Client connects to port 40463 07:35:57.763813 ====> Client established passive DATA connection on port 40463 07:35:57.763887 < "TYPE I" 07:35:57.763918 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.764077 < "SIZE verifiedserver" 07:35:57.764114 > "213 17[CR][LF]" 07:35:57.764267 < "RETR verifiedserver" 07:35:57.764302 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.764383 =====> Closing passive DATA connection... 07:35:57.764400 Server disconnects passive DATA connection 07:35:57.764475 Server disconnected passive DATA connection 07:35:57.764509 DATA sockfilt for passive data channel quits (pid 132200) 07:35:57.764748 DATA sockfilt for passive data channel quit (pid 132200) 07:35:57.764771 =====> Closed passive DATA connection 07:35:57.764799 > "226 File transfer complete[CR][LF]" 07:35:57.807514 < "QUIT" 07:35:57.807605 > "221 bye bye baby[CR][LF]" 07:35:57.807807 MAIN sockfilt said DISC 07:35:57.807832 ====> Client disconnected 07:35:57.808208 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.606145 ====> Client connect 07:35:57.606443 Received DATA (on stdin) 07:35:57.606459 > 160 bytes data, server => client 07:35:57.606472 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.606483 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.606494 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.606559 < 16 bytes data, client => server 07:35:57.606572 'USER anonymous\r\n' 07:35:57.606751 Received DATA (on stdin) 07:35:57.606765 > 33 bytes data, server => client 07:35:57.606776 '331 We are happy you popped in!\r\n' 07:35:57.606824 < 22 bytes data, client => server 07:35:57.606836 'PASS ftp@example.com\r\n' 07:35:57.606938 Received DATA (on stdin) 07:35:57.606950 > 30 bytes data, server => client 07:35:57.606960 '230 Welcome you silly person\r\n' 07:35:57.607007 < 5 bytes data, client => server 07:35:57.607019 'PWD\r\n' 07:35:57.607118 Received DATA (on stdin) 07:35:57.607131 > 30 bytes data, server => client 07:35:57.607141 '257 "/" is current directory\r\n' 07:35:57.607197 < 6 bytes data, client => server 07:35:57.607210 'EPSV\r\n' 07:35CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1104 ../src/curl -q --output log/19/curl1104.out --include --trace-ascii log/19/trace1104 --trace-config all --trace-time http://127.0.0.1:33487/want/1104 -L -x 127.0.0.1:33487 -c log/19/cookies1104.jar > log/19/stdout1104 2> log/19/stderr1104 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1102 ../src/curl -q --output log/12/curl1102.out --include --trace-ascii log/12/trace1102 --trace-config all --trace-time ftp://127.0.0.1:39735/1102 > log/12/stdout1102 2> log/12/stderr1102 :57.609577 Received DATA (on stdin) 07:35:57.609591 > 38 bytes data, server => client 07:35:57.609602 '229 Entering Passive Mode (|||40463|)\n' 07:35:57.609706 < 8 bytes data, client => server 07:35:57.609717 'TYPE I\r\n' 07:35:57.609903 Received DATA (on stdin) 07:35:57.609916 > 33 bytes data, server => client 07:35:57.609927 '200 I modify TYPE as you wanted\r\n' 07:35:57.609976 < 21 bytes data, client => server 07:35:57.609990 'SIZE verifiedserver\r\n' 07:35:57.610099 Received DATA (on stdin) 07:35:57.610111 > 8 bytes data, server => client 07:35:57.610121 '213 17\r\n' 07:35:57.610168 < 21 bytes data, client => server 07:35:57.610181 'RETR verifiedserver\r\n' 07:35:57.610389 Received DATA (on stdin) 07:35:57.610402 > 29 bytes data, server => client 07:35:57.610413 '150 Binary junk (17 bytes).\r\n' 07:35:57.610784 Received DATA (on stdin) 07:35:57.610797 > 28 bytes data, server => client 07:35:57.610808 '226 File transfer complete\r\n' 07:35:57.653237 < 6 bytes data, client => server 07:35:57.653275 'QUIT\r\n' 07:35:57.653604 Received DATA (on stdin) 07:35:57.653619 > 18 bytes data, server => client 07:35:57.653630 '221 bye bye baby\r\n' 07:35:57.653746 ====> Client disconnect 07:35:57.654274 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.609066 Running IPv4 version 07:35:57.609126 Listening on port 40463 07:35:57.609161 Wrote pid 132200 to log/13/server/ftp_sockdata.pid 07:35:57.609183 Received PING (on stdin) 07:35:57.609426 Received PORT (on stdin) 07:35:57.609709 ====> Client connect 07:35:57.610334 Received DATA (on stdin) 07:35:57.610358 > 17 bytes data, server => client 07:35:57.610369 'WE ROOLZ: 87629\r\n' 07:35:57.610398 Received DISC (on stdin) 07:35:57.610411 ====> Client forcibly disconnected 07:35:57.610505 Received QUIT (on stdin) 07:35:57.610521 quits 07:35:57.610579 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY RETR 550 no such file REPLY SIZE 500 command not understood Testnum 1096 === End of file server.cmd === Start of file valgrind1096 ==132426== ==132426== Process terminating with default action of signal 4 (SIGILL) ==132426== Illegal opcode at address 0x4003082 ==132426== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132426== by 0x4003082: main (tool_main.c:234) === End of file valgrind1096 test 1104...[HTTP cookie expiry date at Jan 1 00:00:00 GMT 1970] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1104 ../src/curl -q --output log/19/curl1104.out --include --trace-ascii log/19/trace1104 --trace-config all --trace-time http://127.0.0.1:33487/want/1104 -L -x 127.0.0.1:33487 -c log/19/cookies1104.jar > log/19/stdout1104 2> log/19/stderr1104 1104: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1104 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1104 ../src/curl -q --output log/19/curl1104.out --include --trace-ascii log/19/trace1104 --trace-config all --trace-time http://127.0.0.1:33487/want/1104 -L -x 127.0.0.1:33487 -c log/19/cookies1104.jar > log/19/stdout1104 2> log/19/stderr1104 === End of file commands.log === Start of file http_server.log 07:35:57.667491 ====> Client connect 07:35:57.667525 accept_connection 3 returned 4 07:35:57.667543 accept_connection 3 returned 0 07:35:57.667556 Read 93 bytes 07:35:57.667566 Process 93 bytes request 07:35:57.667577 Got request: GET /verifiedserver HTTP/1.1 07:35:57.667585 Are-we-friendly question received 07:35:57.667611 Wrote request (93 bytes) input to log/19/server.input 07:35:57.667626 Identifying ourselves as friends 07:35:57.667676 Response sent (56 bytes) and written to log/19/server.response 07:35:57.667685 special request received, no persistency 07:35:57.667693 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1104 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1104 ==132477== ==132477== Process terminating with default action of signal 4 (SIGILL) ==132477== Illegal opcode at address 0x4003082 ==132477== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132477== by 0x4003082: main (tool_main.c:234) === End of file valgrind1104 test 1102...[FTP OS/400 server name format check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1102 ../src/curl -q --output log/12/curl1102.out --include --trace-ascii log/12/trace1102 --trace-config all --trace-time ftp://127.0.0.1:39735/1102 > log/12/stdout1102 2> log/12/stderr1102 1102: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1102 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1102 ../src/curl -q --output log/12/curl1102.out --include --trace-ascii log/12/trace1102 --trace-config all --trace-time ftp://127.0.0.1:39735/1102 > log/12/stdout1102 2> log/12/stderr1102 === End of file commands.log === Start of file ftp_server.log 07:35:57.822762 ====> Client connect 07:35:57.822908 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.823149 < "USER anonymous" 07:35:57.823180 > "331 We are happy you popped in![CR][LF]" 07:35:57.823322 < "PASS ftp@example.com" 07:35:57.823363 > "230 Welcome you silly person[CR][LF]" 07:35:57.823490 < "PWD" 07:35:57.823515 > "257 "/" is current directory[CR][LF]" 07:35:57.824059 < "EPSV" 07:35:57.824081 ====> Passive DATA channel requested by client 07:35:57.824092 DATA sockfilt for passive data channel starting... 07:35:57.825912 DATA sockfilt for passive data channel started (pid 132431) 07:35:57.826000 DATA sockfilt for passive data channel listens on port 37427 07:35:57.826031 > "229 Entering Passive Mode (|||37427|)[LF]" 07:35:57.826043 Client has been notified that DATA conn will be accepted on port 37427 07:35:57.826268 Client connects to port 37427 07:35:57.826304 ====> Client established passive DATA connection on port 37427 07:35:57.826373 < "TYPE I" 07:35:57.826402 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.826546 < "SIZE verifiedserver" 07:35:57.826575 > "213 17[CR][LF]" 07:35:57.826711 < "RETR verifiedserver" 07:35:57.826740 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.826810 =====> Closing passive DATA connection... 07:35:57.826825 Server disconnects passive DATA connection 07:35:57.826968 Server disconnected passive DATA connection 07:35:57.826986 DATA sockfilt for passive data channel quits (pid 132431) 07:35:57.827208 DATA sockfilt for passive data channel quit (pid 132431) 07:35:57.827228 =====> Closed passive DATA connection 07:35:57.827255 > "226 File transfer complete[CR][LF]CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1103 ../src/curl -q --output log/9/curl1103.out --include --trace-ascii log/9/trace1103 --trace-config all --trace-time ftp://127.0.0.1:36299/1103 > log/9/stdout1103 2> log/9/stderr1103 " 07:35:57.876937 < "QUIT" 07:35:57.876994 > "221 bye bye baby[CR][LF]" 07:35:57.878068 MAIN sockfilt said DISC 07:35:57.878163 ====> Client disconnected 07:35:57.878249 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.668440 ====> Client connect 07:35:58.668903 Received DATA (on stdin) 07:35:58.668917 > 160 bytes data, server => client 07:35:58.668929 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.668940 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.668949 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.669009 < 16 bytes data, client => server 07:35:58.669020 'USER anonymous\r\n' 07:35:58.669164 Received DATA (on stdin) 07:35:58.669175 > 33 bytes data, server => client 07:35:58.669185 '331 We are happy you popped in!\r\n' 07:35:58.669228 < 22 bytes data, client => server 07:35:58.669238 'PASS ftp@example.com\r\n' 07:35:58.669344 Received DATA (on stdin) 07:35:58.669355 > 30 bytes data, server => client 07:35:58.669364 '230 Welcome you silly person\r\n' 07:35:58.669404 < 5 bytes data, client => server 07:35:58.669413 'PWD\r\n' 07:35:58.669495 Received DATA (on stdin) 07:35:58.669505 > 30 bytes data, server => client 07:35:58.669514 '257 "/" is current directory\r\n' 07:35:58.669968 < 6 bytes data, client => server 07:35:58.669980 'EPSV\r\n' 07:35:58.672028 Received DATA (on stdin) 07:35:58.672042 > 38 bytes data, server => client 07:35:58.672050 '229 Entering Passive Mode (|||37427|)\n' 07:35:58.672190 < 8 bytes data, client => server 07:35:58.672205 'TYPE I\r\n' 07:35:58.672388 Received DATA (on stdin) 07:35:58.672400 > 33 bytes data, server => client 07:35:58.672410 '200 I modify TYPE as you wanted\r\n' 07:35:58.672457 < 21 bytes data, client => server 07:35:58.672467 'SIZE verifiedserver\r\n' 07:35:58.672558 Received DATA (on stdin) 07:35:58.672568 > 8 bytes data, server => client 07:35:58.672577 '213 17\r\n' 07:35:58.672617 < 21 bytes data, client => server 07:35:58.672633 'RETR verifiedserver\r\n' 07:35:58.672809 Received DATA (on stdin) 07:35:58.672820 > 29 bytes data, server => client 07:35:58.672830 '150 Binary junk (17 bytes).\r\n' 07:35:58.673239 Received DATA (on stdin) 07:35:58.673251 > 28 bytes data, server => client 07:35:58.673262 '226 File transfer complete\r\n' 07:35:58.722790 < 6 bytes data, client => server 07:35:58.722817 'QUIT\r\n' 07:35:58.722989 Received DATA (on stdin) 07:35:58.723009 > 18 bytes data, server => client 07:35:58.723020 '221 bye bye baby\r\n' 07:35:58.723828 ====> Client disconnect 07:35:58.724102 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.671522 Running IPv4 version 07:35:57.671583 Listening on port 37427 07:35:57.671621 Wrote pid 132431 to log/12/server/ftp_sockdata.pid 07:35:57.671838 Received PING (on stdin) 07:35:57.671915 Received PORT (on stdin) 07:35:57.672154 ====> Client connect 07:35:57.672853 Received DATA (on stdin) 07:35:57.672866 > 17 bytes data, server => client 07:35:57.672876 'WE ROOLZ: 81035\r\n' 07:35:57.672896 Received DISC (on stdin) 07:35:57.672908 ====> Client forcibly disconnected 07:35:57.672975 Received QUIT (on stdin) 07:35:57.672985 quits 07:35:57.673038 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 257 "QGPL" is the current library REPLY SYST 215 OS/400 runs this server REPLY SITE 250 Name format set to 1 Testnum 1102 === End of file server.cmd === Start of file valgrind1102 ==132732== ==132732== Process terminating with default action of signal 4 (SIGILL) ==132732== Illegal opcode at address 0x4003082 ==132732== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132732== by 0x4003082: main (tool_main.c:234) === End of file valgrind1102 test 1103...[FTP non-OS/400 server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1103 ../src/curl -q --output log/9/curl1103.out --include --trace-ascii log/9/trace1103 --trace-config all --trace-time ftp://127.0.0.1:36299/1103 > log/9/stdout1103 2> log/9/stderr1103 1103: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1103 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1103 ../src/curl -q --output log/9/curl1103.out --include --trace-ascii log/9/trace1103 --trace-config all --trace-time ftp://127.0.0.1:36299/1103 > log/9/stdout1103 2> log/9/stderr1103 === End of file commands.log === Start of file ftp_server.log 07:35:57.821812 ====> Client connect 07:35:57.821959 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.822227 < "USER anonymous" 07:35:57.822261 > "331 We are happy you popped in![CR][LF]" 07:35:57.822417 < "PASS ftp@example.com" 07:35:57.822444 > "230 Welcome you silly person[CR][LF]" 07:35:57.822639 < "PWD" 07:35:57.822693 > "257 "/" is current directory[CR][LF]" 07:35:57.822902 < "EPSV" 07:35:57.822931 ====> Passive DATA channel requested by client 07:35:57.822945 DATA sockfilt for passive data channel starting... 07:35:57.824637 DATA sockfilt for passive data channel started (pid 132428) 07:35:57.824736 DATA sockfilt for passive data channel listens on port 35215 07:35:57.824770 > "229 Entering Passive Mode (|||35215|)[LF]" 07:35:57.824786 Client has been notified that DATA conn will be accepted on port 35215 07:35:57.824988 Client connects to port 35215 07:35:57.825015 ====> Client established passive DATA connection on port 35215 07:35:57.825078 < "TYPE I" 07:35:57.825099 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.825289 < "SIZE verifiedserver" 07:35:57.825328 > "213 17[CR][LF]" 07:35:57.825583 < "RETR verifiedserver" 07:35:57.825610 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.825667 =====> Closing passive DATA connection... 07:35:57.825678 Server disconnects passive DATA connection 07:35:57.825746 Server disconnected passive DATA connection 07:35:57.825773 DATA sockfilt for passive data channel quits (pid 132428) 07:35:57.825967 DATA sockfilt for passive data channel quit (pid 132428) 07:35:57.825987 =====> Closed passive DATA connection 07:35:57.826013 > "226 File transfer complete[CR][LF]" 07:35:57.870329 < "QUIT" 07:35:57.870382 > "221 bye bye baby[CR][LF]" 07:35:57.870550 MAIN sockfilt said DISC 07:35:57.870603 ====> Client disconnected 07:35:57.870677 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.667694 ====> Client connect 07:35:57.667955 Received DATA (on stdin) 07:35:57.667983 > 160 bytes data, server => client 07:35:57.667996 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.668006 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.668016 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.668077 < 16 bytes data, client => server 07:35:57.668092 'USER anonymous\r\n' 07:35:57.668250 Received DATA (on stdin) 07:35:57.668262 > 33 bytes data, server => client 07:35:57.668273 '331 We are happy you popped in!\r\n' 07:35:57.668319 < 22 bytes data, client => server 07:35:57.668330 'PASS ftp@example.com\r\n' 07:35:57.668428 Received DATA (on stdin) 07:35:57.668440 > 30 bytes data, server => client 07:35:57.668450 '230 Welcome you silly person\r\n' 07:35:57.668496 < 5 bytes data, client => server 07:35:57.668508 'PWD\r\n' 07:35:57.668686 Received DATA (on stdin) 07:35:57.668703 > 30 bytes data, server => client 07:35:57.668714 '257 "/" is current directory\r\n' 07:35:57.668782 < 6 bytes data, client => server 07:35:57.668801 'EPSV\r\n' 07:35:57.670788 Received DATA (oCMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1119.pl /startdir/src/curl/tests/.. ../include/curl > log/16/stdout1119 2> log/16/stderr1119 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1109 ../src/curl -q --output log/5/curl1109.out --include --trace-ascii log/5/trace1109 --trace-config all --trace-time http://127.0.0.1:46675/1109#test > log/5/stdout1109 2> log/5/stderr1109 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1110 ../src/curl -q --output log/23/curl1110.out --include --trace-ascii log/23/trace1110 --trace-config all --trace-time http://127.0.0.1:45701/1110?q=foobar#fragment > log/23/stdout1110 2> log/23/stderr1110 n stdin) 07:35:57.670805 > 38 bytes data, server => client 07:35:57.670816 '229 Entering Passive Mode (|||35215|)\n' 07:35:57.670942 < 8 bytes data, client => server 07:35:57.670954 'TYPE I\r\n' 07:35:57.671079 Received DATA (on stdin) 07:35:57.671089 > 33 bytes data, server => client 07:35:57.671097 '200 I modify TYPE as you wanted\r\n' 07:35:57.671148 < 21 bytes data, client => server 07:35:57.671165 'SIZE verifiedserver\r\n' 07:35:57.671316 Received DATA (on stdin) 07:35:57.671329 > 8 bytes data, server => client 07:35:57.671339 '213 17\r\n' 07:35:57.671489 < 21 bytes data, client => server 07:35:57.671504 'RETR verifiedserver\r\n' 07:35:57.671664 Received DATA (on stdin) 07:35:57.671681 > 29 bytes data, server => client 07:35:57.671693 '150 Binary junk (17 bytes).\r\n' 07:35:57.671999 Received DATA (on stdin) 07:35:57.672013 > 28 bytes data, server => client 07:35:57.672023 '226 File transfer complete\r\n' 07:35:57.716134 < 6 bytes data, client => server 07:35:57.716161 'QUIT\r\n' 07:35:57.716369 Received DATA (on stdin) 07:35:57.716379 > 18 bytes data, server => client 07:35:57.716388 '221 bye bye baby\r\n' 07:35:57.716463 ====> Client disconnect 07:35:57.716664 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.670302 Running IPv4 version 07:35:57.670351 Listening on port 35215 07:35:57.670384 Wrote pid 132428 to log/9/server/ftp_sockdata.pid 07:35:57.670563 Received PING (on stdin) 07:35:57.670647 Received PORT (on stdin) 07:35:57.670924 ====> Client connect 07:35:57.671600 Received DATA (on stdin) 07:35:57.671618 > 17 bytes data, server => client 07:35:57.671629 'WE ROOLZ: 80150\r\n' 07:35:57.671668 Received DISC (on stdin) 07:35:57.671682 ====> Client forcibly disconnected 07:35:57.671762 Received QUIT (on stdin) 07:35:57.671772 quits 07:35:57.671823 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 257 "C:/somedir" is the current directory REPLY SYST 215 unknown-OS runs this server Testnum 1103 === End of file server.cmd === Start of file valgrind1103 ==132720== ==132720== Process terminating with default action of signal 4 (SIGILL) ==132720== Illegal opcode at address 0x4003082 ==132720== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132720== by 0x4003082: main (tool_main.c:234) === End of file valgrind1103 * starts no server test 1119...[Verify that symbols-in-versions and headers are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1119.pl /startdir/src/curl/tests/.. ../include/curl > log/16/stdout1119 2> log/16/stderr1119 valgrind SKIPPED s------e--- OK (1035 out of 1707, remaining: 00:45, took 0.256s, duration: 01:09) test 1109...[HTTP GET with URL that contains fragment after the path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1109 ../src/curl -q --output log/5/curl1109.out --include --trace-ascii log/5/trace1109 --trace-config all --trace-time http://127.0.0.1:46675/1109#test > log/5/stdout1109 2> log/5/stderr1109 1109: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1109 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1109 ../src/curl -q --output log/5/curl1109.out --include --trace-ascii log/5/trace1109 --trace-config all --trace-time http://127.0.0.1:46675/1109#test > log/5/stdout1109 2> log/5/stderr1109 === End of file commands.log === Start of file http_server.log 07:35:57.833162 ====> Client connect 07:35:57.833185 accept_connection 3 returned 4 07:35:57.833198 accept_connection 3 returned 0 07:35:57.833208 Read 93 bytes 07:35:57.833215 Process 93 bytes request 07:35:57.833224 Got request: GET /verifiedserver HTTP/1.1 07:35:57.833231 Are-we-friendly question received 07:35:57.833250 Wrote request (93 bytes) input to log/5/server.input 07:35:57.833261 Identifying ourselves as friends 07:35:57.833300 Response sent (56 bytes) and written to log/5/server.response 07:35:57.833307 special request received, no persistency 07:35:57.833313 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1109 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1109 ==132907== ==132907== Process terminating with default action of signal 4 (SIGILL) ==132907== Illegal opcode at address 0x4003082 ==132907== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132907== by 0x4003082: main (tool_main.c:234) === End of file valgrind1109 test 1110...[HTTP GET with URL that contains a fragment after the query part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1110 ../src/curl -q --output log/23/curl1110.out --include --trace-ascii log/23/trace1110 --trace-config all --trace-time http://127.0.0.1:45701/1110?q=foobar#fragment > log/23/stdout1110 2> log/23/stderr1110 1110: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1110 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1110 ../src/curl -q --output log/23/curl1110.out --include --trace-ascii log/23/trace1110 --trace-config all --trace-time http://127.0.0.1:45701/1110?q=foobar#fragment > log/23/stdout1110 2> log/23/stderr1110 === End of file commands.log === Start of file http_server.log 07:35:57.831887 ====> Client connect 07:35:57.831917 accept_connection 3 returned 4 07:35:57.831934 accept_connection 3 returned 0 07:35:57.831947 Read 93 bytes 07:35:57.831956 Process 93 bytes request 07:35:57.831969 Got request: GET /verifiedserver HTTP/1.1 07:35:57.831978 Are-we-friendly question received 07:35:57.832001 Wrote request (93 bytes) input to log/23/server.input 07:35:57.832017 Identifying ourselves as friends 07:35:57.832067 Response sent (56 bytes) and written to log/23/server.response 07:35:57.832076 special request received, no persistency 07:35:57.832085 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1110 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1110 ==132910== ==132910== Process terminating with default action of signal 4 (SIGILL) ==132910== Illegal opcode at address 0x4003082 ==1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1108 ../src/curl -q --output log/3/curl1108.out --include --trace-ascii log/3/trace1108 --trace-config all --trace-time ftp://127.0.0.1:34613/1108 --ftp-pret > log/3/stdout1108 2> log/3/stderr1108 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1111 ../src/curl -q --output log/18/curl1111.out --include --trace-ascii log/18/trace1111 --trace-config all --trace-time http://127.0.0.1:45825/1111?q=foobar#fragment#fragment2 > log/18/stdout1111 2> log/18/stderr1111 32910== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132910== by 0x4003082: main (tool_main.c:234) === End of file valgrind1110 test 1108...[FTP RETR PASV with PRET not supported] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1108 ../src/curl -q --output log/3/curl1108.out --include --trace-ascii log/3/trace1108 --trace-config all --trace-time ftp://127.0.0.1:34613/1108 --ftp-pret > log/3/stdout1108 2> log/3/stderr1108 1108: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1108 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1108 ../src/curl -q --output log/3/curl1108.out --include --trace-ascii log/3/trace1108 --trace-config all --trace-time ftp://127.0.0.1:34613/1108 --ftp-pret > log/3/stdout1108 2> log/3/stderr1108 === End of file commands.log === Start of file ftp_server.log 07:35:57.984099 ====> Client connect 07:35:57.984256 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.984446 < "USER anonymous" 07:35:57.984476 > "331 We are happy you popped in![CR][LF]" 07:35:57.984711 < "PASS ftp@example.com" 07:35:57.984755 > "230 Welcome you silly person[CR][LF]" 07:35:57.984901 < "PWD" 07:35:57.984929 > "257 "/" is current directory[CR][LF]" 07:35:57.985074 < "EPSV" 07:35:57.985096 ====> Passive DATA channel requested by client 07:35:57.985108 DATA sockfilt for passive data channel starting... 07:35:57.986937 DATA sockfilt for passive data channel started (pid 132904) 07:35:57.987042 DATA sockfilt for passive data channel listens on port 44885 07:35:57.987075 > "229 Entering Passive Mode (|||44885|)[LF]" 07:35:57.987089 Client has been notified that DATA conn will be accepted on port 44885 07:35:57.990027 Client connects to port 44885 07:35:57.990059 ====> Client established passive DATA connection on port 44885 07:35:57.990120 < "TYPE I" 07:35:57.990145 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.990351 < "SIZE verifiedserver" 07:35:57.990382 > "213 17[CR][LF]" 07:35:57.990506 < "RETR verifiedserver" 07:35:57.990529 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.990603 =====> Closing passive DATA connection... 07:35:57.990617 Server disconnects passive DATA connection 07:35:57.990676 Server disconnected passive DATA connection 07:35:57.990710 DATA sockfilt for passive data channel quits (pid 132904) 07:35:57.990924 DATA sockfilt for passive data channel quit (pid 132904) 07:35:57.990944 =====> Closed passive DATA connection 07:35:57.990972 > "226 File transfer complete[CR][LF]" 07:35:58.033870 < "QUIT" 07:35:58.033924 > "221 bye bye baby[CR][LF]" 07:35:58.034884 MAIN sockfilt said DISC 07:35:58.034913 ====> Client disconnected 07:35:58.034992 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.829990 ====> Client connect 07:35:58.830228 Received DATA (on stdin) 07:35:58.830248 > 160 bytes data, server => client 07:35:58.830259 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.830269 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.830278 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.830335 < 16 bytes data, client => server 07:35:58.830347 'USER anonymous\r\n' 07:35:58.830465 Received DATA (on stdin) 07:35:58.830482 > 33 bytes data, server => client 07:35:58.830493 '331 We are happy you popped in!\r\n' 07:35:58.830552 < 22 bytes data, client => server 07:35:58.830571 'PASS ftp@example.com\r\n' 07:35:58.830741 Received DATA (on stdin) 07:35:58.830752 > 30 bytes data, server => client 07:35:58.830762 '230 Welcome you silly person\r\n' 07:35:58.830807 < 5 bytes data, client => server 07:35:58.830818 'PWD\r\n' 07:35:58.830912 Received DATA (on stdin) 07:35:58.830923 > 30 bytes data, server => client 07:35:58.830932 '257 "/" is current directory\r\n' 07:35:58.830981 < 6 bytes data, client => server 07:35:58.830992 'EPSV\r\n' 07:35:58.833076 Received DATA (on stdin) 07:35:58.833092 > 38 bytes data, server => client 07:35:58.833102 '229 Entering Passive Mode (|||44885|)\n' 07:35:58.833205 < 8 bytes data, client => server 07:35:58.833215 'TYPE I\r\n' 07:35:58.836179 Received DATA (on stdin) 07:35:58.836192 > 33 bytes data, server => client 07:35:58.836202 '200 I modify TYPE as you wanted\r\n' 07:35:58.836259 < 21 bytes data, client => server 07:35:58.836269 'SIZE verifiedserver\r\n' 07:35:58.836365 Received DATA (on stdin) 07:35:58.836375 > 8 bytes data, server => client 07:35:58.836384 '213 17\r\n' 07:35:58.836423 < 21 bytes data, client => server 07:35:58.836433 'RETR verifiedserver\r\n' 07:35:58.836602 Received DATA (on stdin) 07:35:58.836612 > 29 bytes data, server => client 07:35:58.836623 '150 Binary junk (17 bytes).\r\n' 07:35:58.836959 Received DATA (on stdin) 07:35:58.836973 > 28 bytes data, server => client 07:35:58.836983 '226 File transfer complete\r\n' 07:35:58.879677 < 6 bytes data, client => server 07:35:58.879701 'QUIT\r\n' 07:35:58.879913 Received DATA (on stdin) 07:35:58.879926 > 18 bytes data, server => client 07:35:58.879936 '221 bye bye baby\r\n' 07:35:58.880818 ====> Client disconnect 07:35:58.880981 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.832750 Running IPv4 version 07:35:57.832808 Listening on port 44885 07:35:57.832845 Wrote pid 132904 to log/3/server/ftp_sockdata.pid 07:35:57.832861 Received PING (on stdin) 07:35:57.832950 Received PORT (on stdin) 07:35:57.833210 ====> Client connect 07:35:57.836526 Received DATA (on stdin) 07:35:57.836543 > 17 bytes data, server => client 07:35:57.836554 'WE ROOLZ: 81974\r\n' 07:35:57.836600 Received DISC (on stdin) 07:35:57.836612 ====> Client forcibly disconnected 07:35:57.836701 Received QUIT (on stdin) 07:35:57.836710 quits 07:35:57.836766 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PRET 550 unknown command Testnum 1108 === End of file server.cmd === Start of file valgrind1108 ==133054== ==133054== Process terminating with default action of signal 4 (SIGILL) ==133054== Illegal opcode at address 0x4003082 ==133054== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133054== by 0x4003082: main (tool_main.c:234) === End of file valgrind1108 test 1111...[HTTP GET with URL whose fragment contains a # (which is illegal)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1111 ../src/curl -q --output log/18/curl1111.out --include --trace-ascii log/18/trace1111 --trace-config all --trace-time http://127.0.0.1:45825/1111?q=foobar#fragment#fragment2 > log/18/stdout1111 2> log/18/stderr1111 1111: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1111 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1111 ../src/curl -q --output log/18/curl1111.out --include --trace-ascii log/18/trace1111 --trace-config all --trace-time http://127.0.0.1:45825/1111?q=foobar#fragment#fragment2 > log/18/stdout1111 2> log/18/stderr1111 === End of file commands.log === Start of file http_server.log 07:35:57.834689 ====> Client connect 07:35:57.834722 accept_connection 3 returned 4 07:35:57.834737 accept_connection 3 returned 0 07:35:57.834749 Read 93 byteCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1107 ../src/curl -q --output log/6/curl1107.out --include --trace-ascii log/6/trace1107 --trace-config all --trace-time ftp://127.0.0.1:36135/1107 --ftp-pret > log/6/stdout1107 2> log/6/stderr1107 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1132.pl /startdir/src/curl/tests/../lib > log/3/stdout1132 2> log/3/stderr1132 s 07:35:57.834758 Process 93 bytes request 07:35:57.834768 Got request: GET /verifiedserver HTTP/1.1 07:35:57.834777 Are-we-friendly question received 07:35:57.834802 Wrote request (93 bytes) input to log/18/server.input 07:35:57.834817 Identifying ourselves as friends 07:35:57.834866 Response sent (56 bytes) and written to log/18/server.response 07:35:57.834874 special request received, no persistency 07:35:57.834882 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1111 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1111 ==132924== ==132924== Process terminating with default action of signal 4 (SIGILL) ==132924== Illegal opcode at address 0x4003082 ==132924== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==132924== by 0x4003082: main (tool_main.c:234) === End of file valgrind1111 test 1107...[FTP RETR PASV with PRET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1107 ../src/curl -q --output log/6/curl1107.out --include --trace-ascii log/6/trace1107 --trace-config all --trace-time ftp://127.0.0.1:36135/1107 --ftp-pret > log/6/stdout1107 2> log/6/stderr1107 1107: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1107 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1107 ../src/curl -q --output log/6/curl1107.out --include --trace-ascii log/6/trace1107 --trace-config all --trace-time ftp://127.0.0.1:36135/1107 --ftp-pret > log/6/stdout1107 2> log/6/stderr1107 === End of file commands.log === Start of file ftp_server.log 07:35:57.977898 ====> Client connect 07:35:57.978056 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:57.978323 < "USER anonymous" 07:35:57.978357 > "331 We are happy you popped in![CR][LF]" 07:35:57.978932 < "PASS ftp@example.com" 07:35:57.978982 > "230 Welcome you silly person[CR][LF]" 07:35:57.979232 < "PWD" 07:35:57.979265 > "257 "/" is current directory[CR][LF]" 07:35:57.979458 < "EPSV" 07:35:57.979482 ====> Passive DATA channel requested by client 07:35:57.979494 DATA sockfilt for passive data channel starting... 07:35:57.981152 DATA sockfilt for passive data channel started (pid 132893) 07:35:57.981255 DATA sockfilt for passive data channel listens on port 34929 07:35:57.981290 > "229 Entering Passive Mode (|||34929|)[LF]" 07:35:57.981307 Client has been notified that DATA conn will be accepted on port 34929 07:35:57.981533 Client connects to port 34929 07:35:57.981559 ====> Client established passive DATA connection on port 34929 07:35:57.981615 < "TYPE I" 07:35:57.981638 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:57.981777 < "SIZE verifiedserver" 07:35:57.981810 > "213 17[CR][LF]" 07:35:57.981939 < "RETR verifiedserver" 07:35:57.981969 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:57.982036 =====> Closing passive DATA connection... 07:35:57.982049 Server disconnects passive DATA connection 07:35:57.982188 Server disconnected passive DATA connection 07:35:57.982205 DATA sockfilt for passive data channel quits (pid 132893) 07:35:57.982425 DATA sockfilt for passive data channel quit (pid 132893) 07:35:57.982446 =====> Closed passive DATA connection 07:35:57.982470 > "226 File transfer complete[CR][LF]" 07:35:58.027199 < "QUIT" 07:35:58.027247 > "221 bye bye baby[CR][LF]" 07:35:58.027935 MAIN sockfilt said DISC 07:35:58.027956 ====> Client disconnected 07:35:58.028019 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.823783 ====> Client connect 07:35:57.824053 Received DATA (on stdin) 07:35:57.824068 > 160 bytes data, server => client 07:35:57.824080 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.824091 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.824101 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.824168 < 16 bytes data, client => server 07:35:57.824180 'USER anonymous\r\n' 07:35:57.824343 Received DATA (on stdin) 07:35:57.824355 > 33 bytes data, server => client 07:35:57.824366 '331 We are happy you popped in!\r\n' 07:35:57.824414 < 22 bytes data, client => server 07:35:57.824426 'PASS ftp@example.com\r\n' 07:35:57.824977 Received DATA (on stdin) 07:35:57.824996 > 30 bytes data, server => client 07:35:57.825007 '230 Welcome you silly person\r\n' 07:35:57.825123 < 5 bytes data, client => server 07:35:57.825141 'PWD\r\n' 07:35:57.825248 Received DATA (on stdin) 07:35:57.825259 > 30 bytes data, server => client 07:35:57.825270 '257 "/" is current directory\r\n' 07:35:57.825333 < 6 bytes data, client => server 07:35:57.825343 'EPSV\r\n' 07:35:57.827294 Received DATA (on stdin) 07:35:57.827306 > 38 bytes data, server => client 07:35:57.827316 '229 Entering Passive Mode (|||34929|)\n' 07:35:57.827468 < 8 bytes data, client => server 07:35:57.827479 'TYPE I\r\n' 07:35:57.827625 Received DATA (on stdin) 07:35:57.827635 > 33 bytes data, server => client 07:35:57.827645 '200 I modify TYPE as you wanted\r\n' 07:35:57.827688 < 21 bytes data, client => server 07:35:57.827698 'SIZE verifiedserver\r\n' 07:35:57.827794 Received DATA (on stdin) 07:35:57.827805 > 8 bytes data, server => client 07:35:57.827814 '213 17\r\n' 07:35:57.827853 < 21 bytes data, client => server 07:35:57.827863 'RETR verifiedserver\r\n' 07:35:57.828032 Received DATA (on stdin) 07:35:57.828042 > 29 bytes data, server => client 07:35:57.828052 '150 Binary junk (17 bytes).\r\n' 07:35:57.828452 Received DATA (on stdin) 07:35:57.828464 > 28 bytes data, server => client 07:35:57.828474 '226 File transfer complete\r\n' 07:35:57.872979 < 6 bytes data, client => server 07:35:57.873005 'QUIT\r\n' 07:35:57.873213 Received DATA (on stdin) 07:35:57.873234 > 18 bytes data, server => client 07:35:57.873246 '221 bye bye baby\r\n' 07:35:57.873881 ====> Client disconnect 07:35:57.874000 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:57.826946 Running IPv4 version 07:35:57.827008 Listening on port 34929 07:35:57.827047 Wrote pid 132893 to log/6/server/ftp_sockdata.pid 07:35:57.827079 Received PING (on stdin) 07:35:57.827164 Received PORT (on stdin) 07:35:57.827443 ====> Client connect 07:35:57.828073 Received DATA (on stdin) 07:35:57.828086 > 17 bytes data, server => client 07:35:57.828096 'WE ROOLZ: 79833\r\n' 07:35:57.828116 Received DISC (on stdin) 07:35:57.828127 ====> Client forcibly disconnected 07:35:57.828192 Received QUIT (on stdin) 07:35:57.828201 quits 07:35:57.828263 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PRET 200 fine Testnum 1107 === End of file server.cmd === Start of file valgrind1107 ==133048== ==133048== Process terminating with default action of signal 4 (SIGILL) ==133048== Illegal opcode at address 0x4003082 ==133048== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133048== by 0x4003082: main (tool_main.c:234) === End of file valgrind1107 * starts no server CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl /startdir/src/curl/tests/.. > log/3/stdout1135 2> log/3/stderr1135 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1115 ../src/curl -q --output log/22/curl1115.out --include --trace-ascii log/22/trace1115 --trace-config all --trace-time http://127.0.0.1:46761/1115 > log/22/stdout1115 2> log/22/stderr1115 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1116 ../src/curl -q --output log/8/curl1116.out --include --trace-ascii log/8/trace1116 --trace-config all --trace-time http://127.0.0.1:45261/1116 -D log/8/heads1116 > log/8/stdout1116 2> log/8/stderr1116 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1117 ../src/curl -q --include --trace-ascii log/17/trace1117 --trace-config all --trace-time -r 10-22 http://127.0.0.1:39089/want/1117 http://127.0.0.1:39089/wantmore/11170001 > log/17/stdout1117 2> log/17/stderr1117 test 1132...[Verify memory #include files in libcurl's C source files] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1132.pl /startdir/src/curl/tests/../lib > log/3/stdout1132 2> log/3/stderr1132 valgrind SKIPPED -------e--- OK (1048 out of 1707, remaining: 00:43, took 0.026s, duration: 01:09) * starts no server test 1135...[Verify CURL_EXTERN order] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl /startdir/src/curl/tests/.. > log/3/stdout1135 2> log/3/stderr1135 valgrind SKIPPED s------e--- OK (1051 out of 1707, remaining: 00:43, took 0.033s, duration: 01:09) test 1115...[HTTP GET with unexpected 1xx response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1115 ../src/curl -q --output log/22/curl1115.out --include --trace-ascii log/22/trace1115 --trace-config all --trace-time http://127.0.0.1:46761/1115 > log/22/stdout1115 2> log/22/stderr1115 1115: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1115 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1115 ../src/curl -q --output log/22/curl1115.out --include --trace-ascii log/22/trace1115 --trace-config all --trace-time http://127.0.0.1:46761/1115 > log/22/stdout1115 2> log/22/stderr1115 === End of file commands.log === Start of file http_server.log 07:35:57.953411 ====> Client connect 07:35:57.953457 accept_connection 3 returned 4 07:35:57.953473 accept_connection 3 returned 0 07:35:57.953486 Read 93 bytes 07:35:57.953495 Process 93 bytes request 07:35:57.953508 Got request: GET /verifiedserver HTTP/1.1 07:35:57.953517 Are-we-friendly question received 07:35:57.953566 Wrote request (93 bytes) input to log/22/server.input 07:35:57.953581 Identifying ourselves as friends 07:35:57.953640 Response sent (56 bytes) and written to log/22/server.response 07:35:57.953650 special request received, no persistency 07:35:57.953659 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1115 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1115 ==133186== ==133186== Process terminating with default action of signal 4 (SIGILL) ==133186== Illegal opcode at address 0x4003082 ==133186== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133186== by 0x4003082: main (tool_main.c:234) === End of file valgrind1115 test 1116...[HTTP GET with chunked trailer without Trailer:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1116 ../src/curl -q --output log/8/curl1116.out --include --trace-ascii log/8/trace1116 --trace-config all --trace-time http://127.0.0.1:45261/1116 -D log/8/heads1116 > log/8/stdout1116 2> log/8/stderr1116 1116: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1116 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1116 ../src/curl -q --output log/8/curl1116.out --include --trace-ascii log/8/trace1116 --trace-config all --trace-time http://127.0.0.1:45261/1116 -D log/8/heads1116 > log/8/stdout1116 2> log/8/stderr1116 === End of file commands.log === Start of file http_server.log 07:35:57.980850 ====> Client connect 07:35:57.980882 accept_connection 3 returned 4 07:35:57.980897 accept_connection 3 returned 0 07:35:57.980911 Read 93 bytes 07:35:57.980921 Process 93 bytes request 07:35:57.980934 Got request: GET /verifiedserver HTTP/1.1 07:35:57.980943 Are-we-friendly question received 07:35:57.980965 Wrote request (93 bytes) input to log/8/server.input 07:35:57.980980 Identifying ourselves as friends 07:35:57.981030 Response sent (56 bytes) and written to log/8/server.response 07:35:57.981039 special request received, no persistency 07:35:57.981048 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1116 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1116 ==133246== ==133246== Process terminating with default action of signal 4 (SIGILL) ==133246== Illegal opcode at address 0x4003082 ==133246== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133246== by 0x4003082: main (tool_main.c:234) === End of file valgrind1116 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1118 ../src/curl -q --output log/20/curl1118.out --include --trace-ascii log/20/trace1118 --trace-config all --trace-time http://127.0.0.1:37169?email=name@example.com/1118 > log/20/stdout1118 2> log/20/stderr1118 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1139.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/17/stdout1139 2> log/17/stderr1139 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1140.pl /startdir/src/build-curl/tests/../docs/ /startdir/src/build-curl/tests/../docs/libcurl/*.3 /startdir/src/build-curl/tests/../docs/libcurl/opts/*.3 /startdir/src/build-curl/tests/../docs/*.1 /startdir/src/build-curl/tests/../docs/cmdline-opts/*.1 > log/20/stdout1140 2> log/20/stderr1140 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1120 ../src/curl -q --output log/4/curl1120.out --include --trace-ascii log/4/trace1120 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/1120 > log/4/stdout1120 2> log/4/stderr1120 test 1117...[HTTP with invalid range then another URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1117 ../src/curl -q --include --trace-ascii log/17/trace1117 --trace-config all --trace-time -r 10-22 http://127.0.0.1:39089/want/1117 http://127.0.0.1:39089/wantmore/11170001 > log/17/stdout1117 2> log/17/stderr1117 1117: stdout FAILED: --- log/17/check-expected 2025-07-18 07:35:58.783779522 +0000 +++ log/17/check-generated 2025-07-18 07:35:58.783779522 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 416 Requested Range Not Satisfiable[CR][LF] -Date: Tue, 09 Sep 2010 14:49:00 GMT[CR][LF] -Accept-Ranges: bytes[CR][LF] -Content-Length: 115[CR][LF] -[CR][LF] -This is a long error message that is large enough that the test server is[LF] -guaranteed to split it into two packets.[LF] -HTTP/1.1 206 Partial Content[CR][LF] -Date: Tue, 09 Sep 2010 14:49:01 GMT[CR][LF] -Accept-Ranges: bytes[CR][LF] -Content-Range: bytes 10-18/155[CR][LF] -Content-Length: 13[CR][LF] -Content-Type: text/plain[CR][LF] -[CR][LF] -partial body[LF] == Contents of files in the log/17/ dir after test 1117 === Start of file check-expected HTTP/1.1 416 Requested Range Not Satisfiable[CR][LF] Date: Tue, 09 Sep 2010 14:49:00 GMT[CR][LF] Accept-Ranges: bytes[CR][LF] Content-Length: 115[CR][LF] [CR][LF] This is a long error message that is large enough that the test server is[LF] guaranteed to split it into two packets.[LF] HTTP/1.1 206 Partial Content[CR][LF] Date: Tue, 09 Sep 2010 14:49:01 GMT[CR][LF] Accept-Ranges: bytes[CR][LF] Content-Range: bytes 10-18/155[CR][LF] Content-Length: 13[CR][LF] Content-Type: text/plain[CR][LF] [CR][LF] partial body[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1117 ../src/curl -q --include --trace-ascii log/17/trace1117 --trace-config all --trace-time -r 10-22 http://127.0.0.1:39089/want/1117 http://127.0.0.1:39089/wantmore/11170001 > log/17/stdout1117 2> log/17/stderr1117 === End of file commands.log === Start of file http_server.log 07:35:58.064003 ====> Client connect 07:35:58.064043 accept_connection 3 returned 4 07:35:58.064059 accept_connection 3 returned 0 07:35:58.064074 Read 93 bytes 07:35:58.064082 Process 93 bytes request 07:35:58.064095 Got request: GET /verifiedserver HTTP/1.1 07:35:58.064104 Are-we-friendly question received 07:35:58.064127 Wrote request (93 bytes) input to log/17/server.input 07:35:58.064142 Identifying ourselves as friends 07:35:58.064195 Response sent (56 bytes) and written to log/17/server.response 07:35:58.064204 special request received, no persistency 07:35:58.064213 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd writedelay: 100 Testnum 1117 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1117 ==133365== ==133365== Process terminating with default action of signal 4 (SIGILL) ==133365== Illegal opcode at address 0x4003082 ==133365== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133365== by 0x4003082: main (tool_main.c:234) === End of file valgrind1117 test 1118...[URL without slash and @-letter in query] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1118 ../src/curl -q --output log/20/curl1118.out --include --trace-ascii log/20/trace1118 --trace-config all --trace-time http://127.0.0.1:37169?email=name@example.com/1118 > log/20/stdout1118 2> log/20/stderr1118 1118: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1118 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1118 ../src/curl -q --output log/20/curl1118.out --include --trace-ascii log/20/trace1118 --trace-config all --trace-time http://127.0.0.1:37169?email=name@example.com/1118 > log/20/stdout1118 2> log/20/stderr1118 === End of file commands.log === Start of file http_server.log 07:35:58.104061 ====> Client connect 07:35:58.104096 accept_connection 3 returned 4 07:35:58.104114 accept_connection 3 returned 0 07:35:58.104132 Read 93 bytes 07:35:58.104141 Process 93 bytes request 07:35:58.104155 Got request: GET /verifiedserver HTTP/1.1 07:35:58.104165 Are-we-friendly question received 07:35:58.104189 Wrote request (93 bytes) input to log/20/server.input 07:35:58.104205 Identifying ourselves as friends 07:35:58.104263 Response sent (56 bytes) and written to log/20/server.response 07:35:58.104274 special request received, no persistency 07:35:58.104282 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1118 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1118 ==133430== ==133430== Process terminating with default action of signal 4 (SIGILL) ==133430== Illegal opcode at address 0x4003082 ==133430== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133430== by 0x4003082: main (tool_main.c:234) === End of file valgrind1118 * starts no server test 1139...[Verify that all libcurl options have man pages] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1139.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/17/stdout1139 2> log/17/stderr1139 valgrind SKIPPED -r-----e--- OK (1055 out of 1707, remaining: 00:43, took 0.035s, duration: 01:09) * starts no server test 1140...[Verify the nroff of manpages] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1140.pl /startdir/src/build-curl/tests/../docs/ /startdir/src/build-curl/tests/../docs/libcurl/*.3 /startdir/src/build-curl/tests/../docs/libcurl/opts/*.3 /startdir/src/build-curl/tests/../docs/*.1 /startdir/src/build-curl/tests/../docs/cmdline-opts/*.1 > log/20/stdout1140 2> log/20/stderr1140 valgrind SKIPPED s------e--- OK (1056 out of 1707, remaining: 00:43, took 0.053s, duration: 01:09) test 1120...[FTP with 421 timeout response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1120 ../src/curl -q --output log/4/curl1120.out --include --trace-ascii log/4/trace1120 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/1120 > log/4/stdout1120 2> log/4/stderr1120 1120: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1114 ./libtest/libtests lib576 ftp://127.0.0.1:42979/fully_simulated/DOS/* > log/2/stdout1114 2> log/2/stderr1114 ure? Returned: 132 == Contents of files in the log/4/ dir after test 1120 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1120 ../src/curl -q --output log/4/curl1120.out --include --trace-ascii log/4/trace1120 --trace-config all --trace-time ftp://127.0.0.1:37869/a/path/1120 > log/4/stdout1120 2> log/4/stderr1120 === End of file commands.log === Start of file ftp_server.log 07:35:58.291295 ====> Client connect 07:35:58.291415 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:58.291619 < "USER anonymous" 07:35:58.291644 > "331 We are happy you popped in![CR][LF]" 07:35:58.291758 < "PASS ftp@example.com" 07:35:58.291775 > "230 Welcome you silly person[CR][LF]" 07:35:58.291877 < "PWD" 07:35:58.291898 > "257 "/" is current directory[CR][LF]" 07:35:58.292002 < "EPSV" 07:35:58.292019 ====> Passive DATA channel requested by client 07:35:58.292028 DATA sockfilt for passive data channel starting... 07:35:58.293234 DATA sockfilt for passive data channel started (pid 133479) 07:35:58.293312 DATA sockfilt for passive data channel listens on port 34321 07:35:58.293352 > "229 Entering Passive Mode (|||34321|)[LF]" 07:35:58.293365 Client has been notified that DATA conn will be accepted on port 34321 07:35:58.293530 Client connects to port 34321 07:35:58.293556 ====> Client established passive DATA connection on port 34321 07:35:58.293612 < "TYPE I" 07:35:58.293636 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:58.293787 < "SIZE verifiedserver" 07:35:58.293816 > "213 17[CR][LF]" 07:35:58.293954 < "RETR verifiedserver" 07:35:58.293984 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:58.294050 =====> Closing passive DATA connection... 07:35:58.294063 Server disconnects passive DATA connection 07:35:58.294196 Server disconnected passive DATA connection 07:35:58.294218 DATA sockfilt for passive data channel quits (pid 133479) 07:35:58.294401 DATA sockfilt for passive data channel quit (pid 133479) 07:35:58.294419 =====> Closed passive DATA connection 07:35:58.294437 > "226 File transfer complete[CR][LF]" 07:35:58.340420 < "QUIT" 07:35:58.340472 > "221 bye bye baby[CR][LF]" 07:35:58.340574 MAIN sockfilt said DISC 07:35:58.340598 ====> Client disconnected 07:35:58.340660 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.137173 ====> Client connect 07:35:58.137403 Received DATA (on stdin) 07:35:58.137414 > 160 bytes data, server => client 07:35:58.137423 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.137430 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.137438 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.137492 < 16 bytes data, client => server 07:35:58.137500 'USER anonymous\r\n' 07:35:58.137625 Received DATA (on stdin) 07:35:58.137634 > 33 bytes data, server => client 07:35:58.137642 '331 We are happy you popped in!\r\n' 07:35:58.137677 < 22 bytes data, client => server 07:35:58.137685 'PASS ftp@example.com\r\n' 07:35:58.137754 Received DATA (on stdin) 07:35:58.137762 > 30 bytes data, server => client 07:35:58.137769 '230 Welcome you silly person\r\n' 07:35:58.137802 < 5 bytes data, client => server 07:35:58.137810 'PWD\r\n' 07:35:58.137875 Received DATA (on stdin) 07:35:58.137883 > 30 bytes data, server => client 07:35:58.137891 '257 "/" is current directory\r\n' 07:35:58.137928 < 6 bytes data, client => server 07:35:58.137936 'EPSV\r\n' 07:35:58.139347 Received DATA (on stdin) 07:35:58.139357 > 38 bytes data, server => client 07:35:58.139365 '229 Entering Passive Mode (|||34321|)\n' 07:35:58.139492 < 8 bytes data, client => server 07:35:58.139521 'TYPE I\r\n' 07:35:58.139620 Received DATA (on stdin) 07:35:58.139634 > 33 bytes data, server => client 07:35:58.139645 '200 I modify TYPE as you wanted\r\n' 07:35:58.139693 < 21 bytes data, client => server 07:35:58.139705 'SIZE verifiedserver\r\n' 07:35:58.139797 Received DATA (on stdin) 07:35:58.139807 > 8 bytes data, server => client 07:35:58.139815 '213 17\r\n' 07:35:58.139864 < 21 bytes data, client => server 07:35:58.139876 'RETR verifiedserver\r\n' 07:35:58.140046 Received DATA (on stdin) 07:35:58.140057 > 29 bytes data, server => client 07:35:58.140066 '150 Binary junk (17 bytes).\r\n' 07:35:58.140417 Received DATA (on stdin) 07:35:58.140427 > 28 bytes data, server => client 07:35:58.140435 '226 File transfer complete\r\n' 07:35:58.186264 < 6 bytes data, client => server 07:35:58.186293 'QUIT\r\n' 07:35:58.186436 Received DATA (on stdin) 07:35:58.186446 > 18 bytes data, server => client 07:35:58.186456 '221 bye bye baby\r\n' 07:35:58.186508 ====> Client disconnect 07:35:58.186643 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:58.139089 Running IPv4 version 07:35:58.139132 Listening on port 34321 07:35:58.139158 Wrote pid 133479 to log/4/server/ftp_sockdata.pid 07:35:58.139172 Received PING (on stdin) 07:35:58.139232 Received PORT (on stdin) 07:35:58.139455 ====> Client connect 07:35:58.140090 Received DATA (on stdin) 07:35:58.140102 > 17 bytes data, server => client 07:35:58.140112 'WE ROOLZ: 79844\r\n' 07:35:58.140133 Received DISC (on stdin) 07:35:58.140143 ====> Client forcibly disconnected 07:35:58.140213 Received QUIT (on stdin) 07:35:58.140225 quits 07:35:58.140269 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY CWD 421 Timeout Testnum 1120 === End of file server.cmd === Start of file valgrind1120 ==133514== ==133514== Process terminating with default action of signal 4 (SIGILL) ==133514== Illegal opcode at address 0x4003082 ==133514== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133514== by 0x4003082: main (tool_main.c:234) === End of file valgrind1120 test 1114...[FTP wildcard download - skip/correctness/FNMATCH_FUNCTION (DOS)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1114 ./libtest/libtests lib576 ftp://127.0.0.1:42979/fully_simulated/DOS/* > log/2/stdout1114 2> log/2/stderr1114 1114: stdout FAILED: --- log/2/check-expected 2025-07-18 07:35:58.987112860 +0000 +++ log/2/check-generated 2025-07-18 07:35:58.987112860 +0000 @@ -1,96 +0,0 @@ -=============================================================[LF] -Remains: 12[LF] -Filename: .[LF] -Size: 0B[LF] -Time: 04-27-10 05:12AM[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 11[LF] -Filename: ..[LF] -Size: 0B[LF] -Time: 04-23-10 03:12AM[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 10[LF] -Filename: chmod1[LF] -Size: 38B[LF] -Time: 01-11-10 10:00AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 444[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 9[LF] -Filename: chmod2[LF] -Size: 38B[LF] -Time: 02-01-10 08:00AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 666[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 8[LF] -Filename: chmod3[LF] -Size: 38B[LF] -Time: 02-01-10 08:00AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This file should have permissions 777[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 7[LF] -Filename: chmod4[LF] -Size: 0B[LF] -Time: 05-04-10 04:31AM[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 6[LF] -Filename: chmod5[LF] -Size: 0B[LF] -Time: 05-04-10 04:31AM[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 5[LF] -Filename: empty_file.dat[LF] -Size: 0B[LF] -Time: 04-27-10 11:01AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 4[LF] -Filename: file.txt[LF] -Size: 35B[LF] -Time: 04-27-10 11:01AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -This is content of file "file.txt"[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 3[LF] -Filename: .NeXT[LF] -Size: 0B[LF] -Time: 01-23-05 02:05AM[LF] -Filetype: directory[LF] -=============================================================[LF] -Remains: 2[LF] -Filename: someothertext.txt[LF] -Size: 47B[LF] -Time: 04-27-10 11:01AM[LF] -Filetype: regular file[LF] -Content:[LF] --------------------------------------------------------------[LF] -# THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #[LF] --------------------------------------------------------------[LF] -=============================================================[LF] -Remains: 1[LF] -Filename: weirddir.txt[LF] -Size: 0B[LF] -Time: 04-23-10 03:12AM[LF] -Filetype: directory[LF] -=============================================================[LF] == Contents of files in the log/2/ dir after test 1114 === Start of file check-expected =============================================================[LF] Remains: 12[LF] Filename: .[LF] Size: 0B[LF] Time: 04-27-10 05:12AM[LF] Filetype: directory[LF] =============================================================[LF] Remains: 11[LF] Filename: ..[LF] Size: 0B[LF] Time: 04-23-10 03:12AM[LF] Filetype: directory[LF] =============================================================[LF] Remains: 10[LF] Filename: chmod1[LF] Size: 38B[LF] Time: 01-11-10 10:00AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 444[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 9[LF] Filename: chmod2[LF] Size: 38B[LF] Time: 02-01-10 08:00AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 666[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 8[LF] Filename: chmod3[LF] Size: 38B[LF] Time: 02-01-10 08:00AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This file should have permissions 777[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 7[LF] Filename: chmod4[LF] Size: 0B[LF] Time: 05-04-10 04:31AM[LF] Filetype: directory[LF] =============================================================[LF] Remains: 6[LF] Filename: chmod5[LF] Size: 0B[LF] Time: 05-04-10 04:31AM[LF] Filetype: directory[LF] =============================================================[LF] Remains: 5[LF] Filename: empty_file.dat[LF] Size: 0B[LF] Time: 04-27-10 11:01AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 4[LF] Filename: file.txt[LF] Size: 35B[LF] Time: 04-27-10 11:01AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] This is content of file "file.txt"[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 3[LF] Filename: .NeXT[LF] Size: 0B[LF] Time: 01-23-05 02:05AM[LF] Filetype: directory[LF] =============================================================[LF] Remains: 2[LF] Filename: someothertext.txt[LF] Size: 47B[LF] Time: 04-27-10 11:01AM[LF] Filetype: regular file[LF] Content:[LF] -------------------------------------------------------------[LF] # THIS CONTENT WAS SKIPPED IN CHUNK_BGN CALLBACK #[LF] -------------------------------------------------------------[LF] =============================================================[LF] Remains: 1[LF] Filename: weirddir.txt[LF] Size: 0B[LF] Time: 04-23-10 03:12AM[LF] Filetype: directory[LF] =============================================================[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1114 ./libtest/libtests lib576 ftp://127.0.0.1:42979/fully_simulated/DOS/* > log/2/stdout1114 2> log/2/stderr1114 === End of file commands.log === Start of file ftp_server.log 07:35:58.099020 ====> Client connect 07:35:58.099196 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:58.099473 < "USER anonymous" 07:35:58.099504 > "331 We are happy you popped in![CR][LF]" 07:35:58.100461 < "PASS ftp@example.com" 07:35:58.100495 > "230 Welcome you silly person[CR][LF]" 07:35:58.100874 < "PWD" 07:35:58.100922 > "257 "/" is current directory[CR][LF]" 07:35:58.101116 < "EPSV" 07:35:58.101139 ====> Passive DATA channel requested by client 07:35:58.101152 DATA sockfilt for passive data channel starting... 07:35:58.103054 DATA sockfilt for passive data channel started (pid 133182) 07:35:58.103158 DATA sockfilt for passive data channel listens on port 41123 07:35:58.103199 > "229 Entering Passive Mode (|||41123|)[LF]" 07:35:58.103220 Client has been notified that DATA conn will be accepted on port 41123 07:35:58.103531 Client connects to port 41123 07:35:58.103559 ====> Client established passive DATA connection on port 41123 07:35:58.103626 < "TYPE I" 07:35:58.103651 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:58.103754 < "SIZE verifiedserver" 07:35:58.103782 > "213 17[CR][LF]" 07:35:58.104012 < "RETR verifiedserver" 07:35:58.104051 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:58.104124 =====> Closing passive DATA connection... 07:35:58.104141 Server disconnects passive DATA connection 07:35:58.104219 Server disconnected passive DATA connection 07:35:58.104245 DATA sockfilt for passive data channel quits (pid 133182) 07:35:58.104462 DATA sockfilt for passive data channel quit (pid 133182) 07:35:58.104487 =====> Closed passive DATA connection 07:35:58.104511 > "226 File transfer complete[CR][LF]" 07:35:58.151111 < "QUIT" 07:35:58.151160 > "221 bye bye baby[CR][LF]" 07:35:58.151763 MAIN sockfilt said DISC 07:35:58.151789 ====> Client disconnected 07:35:58.151864 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:57.944874 ====> Client connect 07:35:57.945194 Received DATA (on stdin) 07:35:57.945209 > 160 bytes data, server => client 07:35:57.945221 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:57.945231 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:57.945241 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:57.945319 < 16 bytes data, client => server 07:35:57.945331 'USER anonymous\r\n' 07:35:57.945489 Received DATA (on stdin) 07:35:57.945500 > 33 bytes data, server => client 07:35:57.945511 '331 We are happy you popped in!\r\n' 07:35:57.945554 < 22 bytes data, client => server 07:35:57.945569 'PASS ftp@example.com\r\n' 07:35:57.946483 Received DATA (on stdin) 07:35:57.946496 > 30 bytes data, server => client 07:35:57.946506 '230 Welcome you silly person\r\n' 07:35:57.946713 < 5 bytes data, client => server 07:35:57.946744 'PWD\r\n' 07:35:57.946908 Received DATA (on stdin) 07:35:57.946920 > 30 bytes data, server => client 07:35:57.946930 '257 "/" is current directory\r\n' 07:35:57.947023 < 6 bytes data, client => server 07:35:57.947034 'EPSV\r\n' 07:35:57.949212 Received DATA (on stdin) 07:35:57.949227 > 38 bytes data, server => client 07:35:57.949238 '229 Entering Passive Mode (|||41123|)\n' 07:35:57.949461 < 8 bytes data, client => server 07:35:57.949476 'TYPE I\r\n' 07:35:57.949617 Received DATA (on stdin) 07:35:57.949629 > 33 bytes data, server => client 07:35:57.949639 '200 I modify TYPE as you wanted\r\n' 07:35:57.949689 < 21 bytes data, client => server 07:35:57.949701 'SIZE verifiedserver\r\n' 07:35:57.949764 Received DATA (on stdin) 07:35:57.949777 > 8 bytes data, server => client 07:35:57.949786 '213 17\r\n' 07:35:57.949833 < 21 bytes data, client => server 07:35:57.949846 'RETR verifiedserver\r\n' 07:35:57.950127 Received DATA (on stdin) 07:35:57.950140 > 29 bytes data, server => client 07:35:57.950152 '150 Binary junk (17 bytes).\r\n' 07:35:57.950496 Received DATA (on stdin) 07:35:57.950518 > 28 bytes data, server => client 07:35:57.950528 '226 File transfer complete\r\n' 07:35:57.996909 < 6 bytes data, client => server 07:35:57.996941 'QUIT\r\n' 07:35:57.997150 Received DATA (on stdin) 07:35:57.997162 > 18 bytes data, server => client 07:35:57.997172 '221 bye bye baby\r\n' 07:35:57.997698 ====> Client disconnect 07:35:57.997846 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:58.948772 Running IPv4 version 07:35:58.948825 Listening on port 41123 07:35:58.948858 Wrote pid 133182 to log/2/server/ftp_sockdata.pid 07:35:58.948989 Received PING (on stdin) 07:35:58.949063 Received PORT (on stdin) 07:35:58.949461 ====> Client connect 07:35:58.950043 Received DATA (on stdin) 07:35:58.950055 > 17 bytes data, server => client 07:35:58.950065 'WE ROOLZ: 79845\r\n' 07:35:58.950124 Received DISC (on stdin) 07:35:58.950135 ====> Client forcibly disconnected 07:35:58.950239 Received QUIT (on stdin) 07:35:58.950252 quits 07:35:58.950306 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1114 === End of file server.cmd === Start of file stderr1114 URL: ftp://127.0.0.1:42979/fully_simulated/DOS/* === End of file stderr1114 === Start of file valgrind1114 ==133282== ==133282== Process terminating with default action of signal 4 (SIGILL) ==133282== Illegal opcode at address 0x51C2DB3 ==133282== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==133282== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==133282== by 0x51C2DB3: Curl_open (url.c:541) ==133282== by 0x513D46F: curl_easy_init (easy.c:372) ==133282== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==133282== by 0x4003443: main (first.c:167) ==133282== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x533CFA5: __tsearch (tsearch.c:337) ==133282== by 0x533CFA5: tsearch (tsearch.c:290) ==133282== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==133282== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==133282== by 0x524F3F0: add_alias (gconv_conf.c:178) ==133282== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==133282== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==133282== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== ==133282== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x533CFA5: __tsearch (tsearch.c:337) ==133282== by 0x533CFA5: tsearch (tsearch.c:290) ==133282== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==133282== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==133282== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== ==133282== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==133282== by 0x524F3F0: add_alias2 (gconv_confCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1130 ../src/curl -q --include --trace-ascii log/5/trace1130 --trace-config all --trace-time -d @log/5/file1130 http://127.0.0.1:46675/1130 http://127.0.0.1:46675/11300001 -H "Expect: 100-continue" --expect100-timeout 99 > log/5/stdout1130 2> log/5/stderr1130 .c:176) ==133282== by 0x524F3F0: add_alias (gconv_conf.c:178) ==133282== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==133282== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==133282== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== ==133282== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==133282== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==133282== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== ==133282== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==133282== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==133282== by 0x51C2D03: Curl_open (url.c:520) ==133282== by 0x513D46F: curl_easy_init (easy.c:372) ==133282== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==133282== by 0x4003443: main (first.c:167) ==133282== ==133282== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x533CFA5: __tsearch (tsearch.c:337) ==133282== by 0x533CFA5: tsearch (tsearch.c:290) ==133282== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==133282== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==133282== by 0x524F3F0: add_alias (gconv_conf.c:178) ==133282== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==133282== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==133282== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== ==133282== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==133282== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==133282== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==133282== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==133282== by 0x524F3F0: add_alias (gconv_conf.c:178) ==133282== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==133282== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==133282== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==133282== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==133282== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==133282== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==133282== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==133282== by 0x525A142: setlocale (setlocale.c:337) ==133282== by 0x400336E: main (first.c:123) ==133282== === End of file valgrind1114 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1129 ../src/curl -q --include --trace-ascii log/16/trace1129 --trace-config all --trace-time -d @log/16/file1129 --expect100-timeout 99 http://127.0.0.1:46739/1129 http://127.0.0.1:46739/11290001 > log/16/stdout1129 2> log/16/stderr1129 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1125 ../src/curl -q --output log/13/curl1125.out --include --trace-ascii log/13/trace1125 --trace-config all --trace-time http://127.0.0.1:33627/1125 --tr-encoding -H "Connection: close" > log/13/stdout1125 2> log/13/stderr1125 test 1130...[HTTP POST forced expect 100-continue with a 404] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1130 ../src/curl -q --include --trace-ascii log/5/trace1130 --trace-config all --trace-time -d @log/5/file1130 http://127.0.0.1:46675/1130 http://127.0.0.1:46675/11300001 -H "Expect: 100-continue" --expect100-timeout 99 > log/5/stdout1130 2> log/5/stderr1130 1130: stdout FAILED: --- log/5/check-expected 2025-07-18 07:35:59.027112861 +0000 +++ log/5/check-generated 2025-07-18 07:35:59.027112861 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 404 NOOOOOOOOO[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 6[LF] -Content-Type: text/html[LF] -[LF] --foo-[LF] -HTTP/1.1 404 NEITHER[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 6[LF] -Content-Type: text/html[LF] -[LF] --foo-[LF] == Contents of files in the log/5/ dir after test 1130 === Start of file check-expected HTTP/1.1 404 NOOOOOOOOO[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 6[LF] Content-Type: text/html[LF] [LF] -foo-[LF] HTTP/1.1 404 NEITHER[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 6[LF] Content-Type: text/html[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1130 ../src/curl -q --include --trace-ascii log/5/trace1130 --trace-config all --trace-time -d @log/5/file1130 http://127.0.0.1:46675/1130 http://127.0.0.1:46675/11300001 -H "Expect: 100-continue" --expect100-timeout 99 > log/5/stdout1130 2> log/5/stderr1130 === End of file commands.log === Start of file file1130 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX === End of file file1130 === Start of file http_server.log 07:35:58.408831 ====> Client connect 07:35:58.408869 accept_connection 3 returned 4 07:35:58.408898 accept_connection 3 returned 0 07:35:58.408913 Read 93 bytes 07:35:58.408923 Process 93 bytes request 07:35:58.408937 Got request: GET /verifiedserver HTTP/1.1 07:35:58.408946 Are-we-friendly question received 07:35:58.408974 Wrote request (93 bytes) input to log/5/server.input 07:35:58.408990 Identifying ourselves as friends 07:35:58.409063 Response sent (56 bytes) and written to log/5/server.response 07:35:58.409073 special request received, no persistency 07:35:58.409082 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd skip: 100 Testnum 1130 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1130 ==134184== ==134184== Process terminating with default action of signal 4 (SIGILL) ==134184== Illegal opcode at address 0x4003082 ==134184== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134184== by 0x4003082: main (tool_main.c:234) === End of file valgrind1130 test 1129...[HTTP POST expect 100-continue with a 404] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1129 ../src/curl -q --include --trace-ascii log/16/trace1129 --trace-config all --trace-time -d @log/16/file1129 --expect100-timeout 99 http://127.0.0.1:46739/1129 http://127.0.0.1:46739/11290001 > log/16/stdout1129 2> log/16/stderr1129 1129: stdout FAILED: --- log/16/check-expected 2025-07-18 07:35:59.037112861 +0000 +++ log/16/check-generated 2025-07-18 07:35:59.037112861 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 404 NOOOOOOOOO[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 6[LF] -Content-Type: text/html[LF] -[LF] --foo-[LF] -HTTP/1.1 404 NEITHER[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 6[LF] -Content-Type: text/html[LF] -[LF] --foo-[LF] == Contents of files in the log/16/ dir after test 1129 === Start of file check-expected HTTP/1.1 404 NOOOOOOOOO[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 6[LF] Content-Type: text/html[LF] [LF] -foo-[LF] HTTP/1.1 404 NEITHER[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 6[LF] Content-Type: text/html[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1129 ../src/curl -q --include --trace-ascii log/16/trace1129 --trace-config all --trace-time -d @log/16/file1129 --expect100-timeout 99 http://127.0.0.1:46739/1129 http://127.0.0.1:46739/11290001 > log/16/stdout1129 2> log/16/stderr1129 === End of file commands.log === Start of file file1129 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1121 ../src/curl -q --output log/14/curl1121.out --include --trace-ascii log/14/trace1121 --trace-config all --trace-time -H "Host: host1" -H "Host: host2" -H "Host: host3" http://127.0.0.1:37963/1121 > log/14/stdout1121 2> log/14/stderr1121 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx === End of file file1129 === Start of file http_server.log 07:35:58.375535 ====> Client connect 07:35:58.375567 accept_connection 3 returned 4 07:35:58.375582 accept_connection 3 returned 0 07:35:58.375597 Read 93 bytes 07:35:58.375607 Process 93 bytes request 07:35:58.375622 Got request: GET /verifiedserver HTTP/1.1 07:35:58.375632 Are-we-friendly question received 07:35:58.375654 Wrote request (93 bytes) input to log/16/server.input 07:35:58.375671 Identifying ourselves as friends 07:35:58.375721 Response sent (56 bytes) and written to log/16/server.response 07:35:58.375730 special request received, no persistency 07:35:58.375739 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start oCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1124 ../src/curl -q --output log/24/curl1124.out --include --trace-ascii log/24/trace1124 --trace-config all --trace-time http://127.0.0.1:38675/1124 --tr-encoding > log/24/stdout1124 2> log/24/stderr1124 f file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd skip: 1053700 Testnum 1129 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1129 ==134142== ==134142== Process terminating with default action of signal 4 (SIGILL) ==134142== Illegal opcode at address 0x4003082 ==134142== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134142== by 0x4003082: main (tool_main.c:234) === End of file valgrind1129 test 1125...[HTTP GET transfer-encoding with custom Connection:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1125 ../src/curl -q --output log/13/curl1125.out --include --trace-ascii log/13/trace1125 --trace-config all --trace-time http://127.0.0.1:33627/1125 --tr-encoding -H "Connection: close" > log/13/stdout1125 2> log/13/stderr1125 1125: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1125 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1125 ../src/curl -q --output log/13/curl1125.out --include --trace-ascii log/13/trace1125 --trace-config all --trace-time http://127.0.0.1:33627/1125 --tr-encoding -H "Connection: close" > log/13/stdout1125 2> log/13/stderr1125 === End of file commands.log === Start of file http_server.log 07:35:58.297191 ====> Client connect 07:35:58.297228 accept_connection 3 returned 4 07:35:58.297247 accept_connection 3 returned 0 07:35:58.297262 Read 93 bytes 07:35:58.297273 Process 93 bytes request 07:35:58.297287 Got request: GET /verifiedserver HTTP/1.1 07:35:58.297299 Are-we-friendly question received 07:35:58.297564 Wrote request (93 bytes) input to log/13/server.input 07:35:58.297594 Identifying ourselves as friends 07:35:58.297657 Response sent (56 bytes) and written to log/13/server.response 07:35:58.297668 special request received, no persistency 07:35:58.297679 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1125 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1125 ==133724== ==133724== Process terminating with default action of signal 4 (SIGILL) ==133724== Illegal opcode at address 0x4003082 ==133724== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133724== by 0x4003082: main (tool_main.c:234) === End of file valgrind1125 test 1121...[HTTP multiple provided Host: headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1121 ../src/curl -q --output log/14/curl1121.out --include --trace-ascii log/14/trace1121 --trace-config all --trace-time -H "Host: host1" -H "Host: host2" -H "Host: host3" http://127.0.0.1:37963/1121 > log/14/stdout1121 2> log/14/stderr1121 1121: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1121 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1121 ../src/curl -q --output log/14/curl1121.out --include --trace-ascii log/14/trace1121 --trace-config all --trace-time -H "Host: host1" -H "Host: host2" -H "Host: host3" http://127.0.0.1:37963/1121 > log/14/stdout1121 2> log/14/stderr1121 === End of file commands.log === Start of file http_server.log 07:35:58.279853 ====> Client connect 07:35:58.279889 accept_connection 3 returned 4 07:35:58.279906 accept_connection 3 returned 0 07:35:58.279920 Read 93 bytes 07:35:58.279932 Process 93 bytes request 07:35:58.279947 Got request: GET /verifiedserver HTTP/1.1 07:35:58.279957 Are-we-friendly question received 07:35:58.279984 Wrote request (93 bytes) input to log/14/server.input 07:35:58.280002 Identifying ourselves as friends 07:35:58.280061 Response sent (56 bytes) and written to log/14/server.response 07:35:58.280072 special request received, no persistency 07:35:58.280081 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1121 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1121 ==133664== ==133664== Process terminating with default action of signal 4 (SIGILL) ==133664== Illegal opcode at address 0x4003082 ==133664== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133664== by 0x4003082: main (tool_main.c:234) === End of file valgrind1121 test 1124...[HTTP GET gzip+chunked transfer-encoded content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1124 ../src/curl -q --output log/24/curl1124.out --include --trace-ascii log/24/trace1124 --trace-config all --trace-time http://127.0.0.1:38675/1124 --tr-encoding > log/24/stdout1124 2> log/24/stderr1124 1124: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1124 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1124 ../src/curl -q --output log/24/curl1124.out --include --trace-ascii log/24/trace1124 --trace-config all --trace-time http://127.0.0.1:38675/1124 --tr-encoding > log/24/stdout1124 2> log/24/stderr1124 === End of file commands.log === Start of file http_server.log 07:35:58.296974 ====> Client connect 07:35:58.297007 accept_connection 3 returned 4 07:35:58.297023 accept_connection 3 returned 0 07:35:58.297036 Read 93 bytes 07:35:58.297046 Process 93 bytes request 07:35:58.297058 Got request: GET /verifiedserver HTTP/1.1 07:35:58.297068 Are-we-friendly question received 07:35:58.297094 Wrote request (93 bytes) input to log/24/server.input 07:35:58.297112 Identifying ourselves as friends 07:35:58.297170 Response sent (56 bytes) and written to log/24/server.response 07:35:58.297180 special request received, no persistency 07:35:58.297189 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1123 ../src/curl -q --output log/7/curl1123.out --include --trace-ascii log/7/trace1123 --trace-config all --trace-time http://127.0.0.1:39077/1123 --tr-encoding > log/7/stdout1123 2> log/7/stderr1123 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1126 ../src/curl -q --output log/19/curl1126.out --include --trace-ascii log/19/trace1126 --trace-config all --trace-time http://127.0.0.1:33487/1126 -z "dec 12 12:00:00 1999 GMT" > log/19/stdout1126 2> log/19/stderr1126 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1122 ../src/curl -q --output log/1/curl1122.out --include --trace-ascii log/1/trace1122 --trace-config all --trace-time http://127.0.0.1:38941/1122 --tr-encoding > log/1/stdout1122 2> log/1/stderr1122 TTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1124 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1124 ==133714== ==133714== Process terminating with default action of signal 4 (SIGILL) ==133714== Illegal opcode at address 0x4003082 ==133714== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133714== by 0x4003082: main (tool_main.c:234) === End of file valgrind1124 test 1123...[HTTP GET deflate transfer-encoded content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1123 ../src/curl -q --output log/7/curl1123.out --include --trace-ascii log/7/trace1123 --trace-config all --trace-time http://127.0.0.1:39077/1123 --tr-encoding > log/7/stdout1123 2> log/7/stderr1123 1123: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1123 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1123 ../src/curl -q --output log/7/curl1123.out --include --trace-ascii log/7/trace1123 --trace-config all --trace-time http://127.0.0.1:39077/1123 --tr-encoding > log/7/stdout1123 2> log/7/stderr1123 === End of file commands.log === Start of file http_server.log 07:35:58.296970 ====> Client connect 07:35:58.297007 accept_connection 3 returned 4 07:35:58.297024 accept_connection 3 returned 0 07:35:58.297038 Read 93 bytes 07:35:58.297049 Process 93 bytes request 07:35:58.297060 Got request: GET /verifiedserver HTTP/1.1 07:35:58.297070 Are-we-friendly question received 07:35:58.297097 Wrote request (93 bytes) input to log/7/server.input 07:35:58.297116 Identifying ourselves as friends 07:35:58.297185 Response sent (56 bytes) and written to log/7/server.response 07:35:58.297197 special request received, no persistency 07:35:58.297207 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1123 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1123 ==133803== ==133803== Process terminating with default action of signal 4 (SIGILL) ==133803== Illegal opcode at address 0x4003082 ==133803== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133803== by 0x4003082: main (tool_main.c:234) === End of file valgrind1123 test 1126...[HTTP 200 If-Modified-Since with newer document] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1126 ../src/curl -q --output log/19/curl1126.out --include --trace-ascii log/19/trace1126 --trace-config all --trace-time http://127.0.0.1:33487/1126 -z "dec 12 12:00:00 1999 GMT" > log/19/stdout1126 2> log/19/stderr1126 1126: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1126 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1126 ../src/curl -q --output log/19/curl1126.out --include --trace-ascii log/19/trace1126 --trace-config all --trace-time http://127.0.0.1:33487/1126 -z "dec 12 12:00:00 1999 GMT" > log/19/stdout1126 2> log/19/stderr1126 === End of file commands.log === Start of file http_server.log 07:35:58.298838 ====> Client connect 07:35:58.298869 accept_connection 3 returned 4 07:35:58.298885 accept_connection 3 returned 0 07:35:58.298898 Read 93 bytes 07:35:58.298908 Process 93 bytes request 07:35:58.298919 Got request: GET /verifiedserver HTTP/1.1 07:35:58.298928 Are-we-friendly question received 07:35:58.298953 Wrote request (93 bytes) input to log/19/server.input 07:35:58.298968 Identifying ourselves as friends 07:35:58.299024 Response sent (56 bytes) and written to log/19/server.response 07:35:58.299035 special request received, no persistency 07:35:58.299044 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1126 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1126 ==133717== ==133717== Process terminating with default action of signal 4 (SIGILL) ==133717== Illegal opcode at address 0x4003082 ==133717== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133717== by 0x4003082: main (tool_main.c:234) === End of file valgrind1126 test 1122...[HTTP GET gzip transfer-encoded content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1122 ../src/curl -q --output log/1/curl1122.out --include --trace-ascii log/1/trace1122 --trace-config all --trace-time http://127.0.0.1:38941/1122 --tr-encoding > log/1/stdout1122 2> log/1/stderr1122 1122: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1122 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1122 ../src/curl -q --output log/1/curl1122.out --include --trace-ascii log/1/trace1122 --trace-config all --trace-time http://127.0.0.1:38941/1122 --tr-encoding > log/1/stdout1122 2> log/1/stderr1122 === End of file commands.log === Start of file http_server.log 07:35:58.289689 ====> Client connect 07:35:58.289719 accept_connection 3 returned 4 07:35:58.289735 accept_connection 3 returned 0 07:35:58.289749 Read 93 bytes 07:35:58.289759 Process 93 bytes request 07:35:58.289772 Got request: GET /verifiedserver HTTP/1.1 07:35:58.289781 Are-we-friendly question received 07:35:58.289804 Wrote request (93 bytes) input to log/1/server.input 07:35:58.289820 Identifying ourselves as friends 07:35:58.289870 Response sent (56 bytes) and written to log/1/server.response 07:35:58.289880 special request received, no persistency 07:35:58.289889 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verifyCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1127 ../src/curl -q --output log/12/curl1127.out --include --trace-ascii log/12/trace1127 --trace-config all --trace-time http://127.0.0.1:37285/1127 -z "dec 12 12:00:00 1999 GMT" > log/12/stdout1127 2> log/12/stderr1127 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1128 ../src/curl -q --include --trace-ascii log/9/trace1128 --trace-config all --trace-time http://127.0.0.1:34999/1128 http://127.0.0.1:34999/11280001 -z "dec 12 12:00:00 1999 GMT" > log/9/stdout1128 2> log/9/stderr1128 .log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1122 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1122 ==133685== ==133685== Process terminating with default action of signal 4 (SIGILL) ==133685== Illegal opcode at address 0x4003082 ==133685== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133685== by 0x4003082: main (tool_main.c:234) === End of file valgrind1122 test 1127...[HTTP 200 If-Modified-Since with older document] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1127 ../src/curl -q --output log/12/curl1127.out --include --trace-ascii log/12/trace1127 --trace-config all --trace-time http://127.0.0.1:37285/1127 -z "dec 12 12:00:00 1999 GMT" > log/12/stdout1127 2> log/12/stderr1127 1127: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1127 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1127 ../src/curl -q --output log/12/curl1127.out --include --trace-ascii log/12/trace1127 --trace-config all --trace-time http://127.0.0.1:37285/1127 -z "dec 12 12:00:00 1999 GMT" > log/12/stdout1127 2> log/12/stderr1127 === End of file commands.log === Start of file http_server.log 07:35:58.319504 ====> Client connect 07:35:58.319538 accept_connection 3 returned 4 07:35:58.319558 accept_connection 3 returned 0 07:35:58.319571 Read 93 bytes 07:35:58.319580 Process 93 bytes request 07:35:58.319591 Got request: GET /verifiedserver HTTP/1.1 07:35:58.319600 Are-we-friendly question received 07:35:58.319625 Wrote request (93 bytes) input to log/12/server.input 07:35:58.319640 Identifying ourselves as friends 07:35:58.319694 Response sent (56 bytes) and written to log/12/server.response 07:35:58.319704 special request received, no persistency 07:35:58.319713 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1127 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1127 ==133872== ==133872== Process terminating with default action of signal 4 (SIGILL) ==133872== Illegal opcode at address 0x4003082 ==133872== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133872== by 0x4003082: main (tool_main.c:234) === End of file valgrind1127 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1131 ../src/curl -q --include --trace-ascii log/23/trace1131 --trace-config all --trace-time -H "Expect: 100-continue" -T log/23/file1131 http://127.0.0.1:45701/1131 -T log/23/file1131 http://127.0.0.1:45701/11310001 --expect100-timeout 99 > log/23/stdout1131 2> log/23/stderr1131 test 1128...[HTTP 200 If-Modified-Since with old+new documents] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1128 ../src/curl -q --include --trace-ascii log/9/trace1128 --trace-config all --trace-time http://127.0.0.1:34999/1128 http://127.0.0.1:34999/11280001 -z "dec 12 12:00:00 1999 GMT" > log/9/stdout1128 2> log/9/stderr1128 1128: stdout FAILED: --- log/9/check-expected 2025-07-18 07:35:59.073779529 +0000 +++ log/9/check-generated 2025-07-18 07:35:59.073779529 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT[LF] -Content-Length: 11[LF] -Content-Type: text/html[LF] -[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:01 GMT[LF] -Server: test-server/fake[LF] -Last-Modified: Tue, 13 Jun 2002 12:10:00 GMT[LF] -Content-Length: 11[LF] -Content-Type: text/html[LF] -[LF] -0123456789[LF] == Contents of files in the log/9/ dir after test 1128 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Last-Modified: Tue, 13 Jun 1980 12:10:00 GMT[LF] Content-Length: 11[LF] Content-Type: text/html[LF] [LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:01 GMT[LF] Server: test-server/fake[LF] Last-Modified: Tue, 13 Jun 2002 12:10:00 GMT[LF] Content-Length: 11[LF] Content-Type: text/html[LF] [LF] 0123456789[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1128 ../src/curl -q --include --trace-ascii log/9/trace1128 --trace-config all --trace-time http://127.0.0.1:34999/1128 http://127.0.0.1:34999/11280001 -z "dec 12 12:00:00 1999 GMT" > log/9/stdout1128 2> log/9/stderr1128 === End of file commands.log === Start of file http_server.log 07:35:58.319480 ====> Client connect 07:35:58.319514 accept_connection 3 returned 4 07:35:58.319528 accept_connection 3 returned 0 07:35:58.319541 Read 93 bytes 07:35:58.319554 Process 93 bytes request 07:35:58.319567 Got request: GET /verifiedserver HTTP/1.1 07:35:58.319576 Are-we-friendly question received 07:35:58.319600 Wrote request (93 bytes) input to log/9/server.input 07:35:58.319615 Identifying ourselves as friends 07:35:58.319670 Response sent (56 bytes) and written to log/9/server.response 07:35:58.319680 special request received, no persistency 07:35:58.319689 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1128 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1128 ==133886== ==133886== Process terminating with default action of signal 4 (SIGILL) ==133886== Illegal opcode at address 0x4003082 ==133886== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==133886== by 0x4003082: main (tool_main.c:234) === End of file valgrind1128 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1136 ../src/curl -q --output log/3/curl1136.out --include --trace-ascii log/3/trace1136 --trace-config all --trace-time http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/3/jar1136.txt -x 127.0.0.1:42345 > log/3/stdout1136 2> log/3/stderr1136 test 1131...[HTTP PUT expect 100-continue with a 400] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1131 ../src/curl -q --include --trace-ascii log/23/trace1131 --trace-config all --trace-time -H "Expect: 100-continue" -T log/23/file1131 http://127.0.0.1:45701/1131 -T log/23/file1131 http://127.0.0.1:45701/11310001 --expect100-timeout 99 > log/23/stdout1131 2> log/23/stderr1131 1131: stdout FAILED: --- log/23/check-expected 2025-07-18 07:35:59.130446196 +0000 +++ log/23/check-generated 2025-07-18 07:35:59.130446196 +0000 @@ -1,14 +0,0 @@ -HTTP/1.1 400 NOOOOOOOOO[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 9[LF] -Content-Type: text/html[LF] -[LF] -FAILURE1[LF] -HTTP/1.1 400 NEITHER[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 9[LF] -Content-Type: text/html[LF] -[LF] -FAILURE2[LF] == Contents of files in the log/23/ dir after test 1131 === Start of file check-expected HTTP/1.1 400 NOOOOOOOOO[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 9[LF] Content-Type: text/html[LF] [LF] FAILURE1[LF] HTTP/1.1 400 NEITHER[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 9[LF] Content-Type: text/html[LF] [LF] FAILURE2[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1131 ../src/curl -q --include --trace-ascii log/23/trace1131 --trace-config all --trace-time -H "Expect: 100-continue" -T log/23/file1131 http://127.0.0.1:45701/1131 -T log/23/file1131 http://127.0.0.1:45701/11310001 --expect100-timeout 99 > log/23/stdout1131 2> log/23/stderr1131 === End of file commands.log === Start of file file1131 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX === End of file file1131 === Start of file http_server.log 07:35:58.408868 ====> Client connect 07:35:58.408906 accept_connection 3 returned 4 07:35:58.408923 accept_connection 3 returned 0 07:35:58.408938 Read 93 bytes 07:35:58.408949 Process 93 bytes request 07:35:58.408963 Got request: GET /verifiedserver HTTP/1.1 07:35:58.408973 Are-we-friendly question received 07:35:58.409001 Wrote request (93 bytes) input to log/23/server.input 07:35:58.409018 Identifying ourselves as friends 07:35:58.409073 Response sent (56 bytes) and written to log/23/server.response 07:35:58.409083 special request received, no persistency 07:35:58.409093 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd skip: 100 Testnum 1131 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1131 ==134185== ==134185== Process terminating with default action of signal 4 (SIGILL) ==134185== Illegal opcode at address 0x4003082 ==134185== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134185== by 0x4003082: main (tool_main.c:234) === End of file valgrind1131 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1134 ../src/curl -q --output log/6/curl1134.out --include --trace-ascii log/6/trace1134 --trace-config all --trace-time http://127.0.0.1:35775/1134 -u user1:password1 --next http://127.0.0.1:35775/11340001 -u 2user:password2 > log/6/stdout1134 2> log/6/stderr1134 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1133 ../src/curl -q --output log/18/curl1133.out --include --trace-ascii log/18/trace1133 --trace-config all --trace-time http://127.0.0.1:45825/we/want/1133 -F "file=@\"log/18/test1133,and;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/18/test1133,and;.txt"' -F 'file3=@"log/18/test1133,and;.txt";type=m/f,"log/18/test1133,and;.txt"' -F a="{\"field1\":\"value1\",\"field2\":\"value2\"}" -F 'b=" \\value1;type=\"whatever\" "; type=text/foo; charset=utf-8 ; filename=param_b' > log/18/stdout1133 2> log/18/stderr1133 setenv TZ = GMT test 1136...[Check cookies against PSL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1136 ../src/curl -q --output log/3/curl1136.out --include --trace-ascii log/3/trace1136 --trace-config all --trace-time http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/3/jar1136.txt -x 127.0.0.1:42345 > log/3/stdout1136 2> log/3/stderr1136 1136: data FAILED: --- log/3/check-expected 2025-07-18 07:35:59.160446196 +0000 +++ log/3/check-generated 2025-07-18 07:35:59.160446196 +0000 @@ -1,13 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Content-Length: 4[LF] -Content-Type: text/html[LF] -Funny-head: yesyes[LF] -Set-Cookie: test1=forbidden1; domain=example.ck; path=/;[LF] -Set-Cookie: test2=allowed2; domain=www.example.ck; path=/;[LF] -Set-Cookie: test3=forbidden3; domain=ck; path=/;[LF] -Set-Cookie: test4=allowed4; domain=www.ck; path=/;[LF] -Set-Cookie: test5=forbidden5; domain=z-1.compute-1.amazonaws.com; path=/;[LF] -[LF] -boo[LF] == Contents of files in the log/3/ dir after test 1136 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Content-Length: 4[LF] Content-Type: text/html[LF] Funny-head: yesyes[LF] Set-Cookie: test1=forbidden1; domain=example.ck; path=/;[LF] Set-Cookie: test2=allowed2; domain=www.example.ck; path=/;[LF] Set-Cookie: test3=forbidden3; domain=ck; path=/;[LF] Set-Cookie: test4=allowed4; domain=www.ck; path=/;[LF] Set-Cookie: test5=forbidden5; domain=z-1.compute-1.amazonaws.com; path=/;[LF] [LF] boo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1136 ../src/curl -q --output log/3/curl1136.out --include --trace-ascii log/3/trace1136 --trace-config all --trace-time http://www.example.ck/1136 http://www.ck/1136 http://z-1.compute-1.amazonaws.com/1136 -b none -c log/3/jar1136.txt -x 127.0.0.1:42345 > log/3/stdout1136 2> log/3/stderr1136 === End of file commands.log === Start of file http_server.log 07:35:58.468598 ====> Client connect 07:35:58.468640 accept_connection 3 returned 4 07:35:58.468658 accept_connection 3 returned 0 07:35:58.468673 Read 93 bytes 07:35:58.468684 Process 93 bytes request 07:35:58.468696 Got request: GET /verifiedserver HTTP/1.1 07:35:58.468706 Are-we-friendly question received 07:35:58.468729 Wrote request (93 bytes) input to log/3/server.input 07:35:58.468744 Identifying ourselves as friends 07:35:58.468817 Response sent (56 bytes) and written to log/3/server.response 07:35:58.468828 special request received, no persistency 07:35:58.468837 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1136 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1136 ==134447== ==134447== Process terminating with default action of signal 4 (SIGILL) ==134447== Illegal opcode at address 0x4003082 ==134447== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134447== by 0x4003082: main (tool_main.c:234) === End of file valgrind1136 test 1134...[HTTP connection reuse with different credentials] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1134 ../src/curl -q --output log/6/curl1134.out --include --trace-ascii log/6/trace1134 --trace-config all --trace-time http://127.0.0.1:35775/1134 -u user1:password1 --next http://127.0.0.1:35775/11340001 -u 2user:password2 > log/6/stdout1134 2> log/6/stderr1134 1134: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1134 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1134 ../src/curl -q --output log/6/curl1134.out --include --trace-ascii log/6/trace1134 --trace-config all --trace-time http://127.0.0.1:35775/1134 -u user1:password1 --next http://127.0.0.1:35775/11340001 -u 2user:password2 > log/6/stdout1134 2> log/6/stderr1134 === End of file commands.log === Start of file http_server.log 07:35:58.422421 ====> Client connect 07:35:58.422451 accept_connection 3 returned 4 07:35:58.422467 accept_connection 3 returned 0 07:35:58.422480 Read 93 bytes 07:35:58.422490 Process 93 bytes request 07:35:58.422503 Got request: GET /verifiedserver HTTP/1.1 07:35:58.422513 Are-we-friendly question received 07:35:58.422535 Wrote request (93 bytes) input to log/6/server.input 07:35:58.422552 Identifying ourselves as friends 07:35:58.422604 Response sent (56 bytes) and written to log/6/server.response 07:35:58.422614 special request received, no persistency 07:35:58.422623 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1134 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1134 ==134223== ==134223== Process terminating with default action of signal 4 (SIGILL) ==134223== Illegal opcode at address 0x4003082 ==134223== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134223== by 0x4003082: main (tool_main.c:234) === End of file valgrind1134 test 1133...[HTTP RFC1867-type formposting with filename/data contains ',', ';', '"'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1133 ../src/curl -q --output log/18/curl1133.out --include --trace-ascii log/18/trace1133 --trace-config all --trace-time http://127.0.0.1:45825/we/want/1133 -F "file=@\"log/18/test1133,and;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/18/test1133,and;.txt"' -F 'file3=@"log/18/test1133,and;.txt";type=m/f,"log/18/test1133,and;.txt"' -F a="{\"field1\":\"value1\",\"field2\":\"value2\"}" -F 'b=" \\value1;type=\"whatever\" "; type=text/foo; charset=utf-8 ; filename=param_b' > log/18/stdout1133 2> log/18/stderr1133 1133: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1133 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1133 ../src/curl -q --output log/18/curl1133.ouCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1138 ../src/curl -q --output log/8/curl1138.out --include --trace-ascii log/8/trace1138 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1138 -L > log/8/stdout1138 2> log/8/stderr1138 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1137 ../src/curl -q --output log/22/curl1137.out --include --trace-ascii log/22/trace1137 --trace-config all --trace-time ftp://127.0.0.1:42651/1137 --ignore-content-length > log/22/stdout1137 2> log/22/stderr1137 t --include --trace-ascii log/18/trace1133 --trace-config all --trace-time http://127.0.0.1:45825/we/want/1133 -F "file=@\"log/18/test1133,and;.txt\";type=mo/foo;filename=\"faker,and;.txt\"" -F 'file2=@"log/18/test1133,and;.txt"' -F 'file3=@"log/18/test1133,and;.txt";type=m/f,"log/18/test1133,and;.txt"' -F a="{\"field1\":\"value1\",\"field2\":\"value2\"}" -F 'b=" \\value1;type=\"whatever\" "; type=text/foo; charset=utf-8 ; filename=param_b' > log/18/stdout1133 2> log/18/stderr1133 === End of file commands.log === Start of file http_server.log 07:35:58.416700 ====> Client connect 07:35:58.416738 accept_connection 3 returned 4 07:35:58.416753 accept_connection 3 returned 0 07:35:58.416767 Read 93 bytes 07:35:58.416776 Process 93 bytes request 07:35:58.416787 Got request: GET /verifiedserver HTTP/1.1 07:35:58.416797 Are-we-friendly question received 07:35:58.416823 Wrote request (93 bytes) input to log/18/server.input 07:35:58.416840 Identifying ourselves as friends 07:35:58.416895 Response sent (56 bytes) and written to log/18/server.response 07:35:58.416905 special request received, no persistency 07:35:58.416914 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1133 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file test1133,and;.txt foo bar This is a bar foo bar foo === End of file test1133,and;.txt === Start of file valgrind1133 ==134220== ==134220== Process terminating with default action of signal 4 (SIGILL) ==134220== Illegal opcode at address 0x4003082 ==134220== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134220== by 0x4003082: main (tool_main.c:234) === End of file valgrind1133 test 1138...[HTTP redirect with UTF-8 characters] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1138 ../src/curl -q --output log/8/curl1138.out --include --trace-ascii log/8/trace1138 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1138 -L > log/8/stdout1138 2> log/8/stderr1138 1138: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1138 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1138 ../src/curl -q --output log/8/curl1138.out --include --trace-ascii log/8/trace1138 --trace-config all --trace-time http://127.0.0.1:45261/we/are/all/twits/1138 -L > log/8/stdout1138 2> log/8/stderr1138 === End of file commands.log === Start of file http_server.log 07:35:58.513937 ====> Client connect 07:35:58.513967 accept_connection 3 returned 4 07:35:58.513982 accept_connection 3 returned 0 07:35:58.513995 Read 93 bytes 07:35:58.514004 Process 93 bytes request 07:35:58.514017 Got request: GET /verifiedserver HTTP/1.1 07:35:58.514026 Are-we-friendly question received 07:35:58.514047 Wrote request (93 bytes) input to log/8/server.input 07:35:58.514062 Identifying ourselves as friends 07:35:58.514113 Response sent (56 bytes) and written to log/8/server.response 07:35:58.514122 special request received, no persistency 07:35:58.514130 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1138 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1138 ==134536== ==134536== Process terminating with default action of signal 4 (SIGILL) ==134536== Illegal opcode at address 0x4003082 ==134536== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134536== by 0x4003082: main (tool_main.c:234) === End of file valgrind1138 test 1137...[FTP RETR --ignore-content-length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1137 ../src/curl -q --output log/22/curl1137.out --include --trace-ascii log/22/trace1137 --trace-config all --trace-time ftp://127.0.0.1:42651/1137 --ignore-content-length > log/22/stdout1137 2> log/22/stderr1137 1137: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1137 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1137 ../src/curl -q --output log/22/curl1137.out --include --trace-ascii log/22/trace1137 --trace-config all --trace-time ftp://127.0.0.1:42651/1137 --ignore-content-length > log/22/stdout1137 2> log/22/stderr1137 === End of file commands.log === Start of file ftp_server.log 07:35:58.661663 ====> Client connect 07:35:58.661859 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:58.662190 < "USER anonymous" 07:35:58.662222 > "331 We are happy you popped in![CR][LF]" 07:35:58.662371 < "PASS ftp@example.com" 07:35:58.662395 > "230 Welcome you silly person[CR][LF]" 07:35:58.662528 < "PWD" 07:35:58.662557 > "257 "/" is current directory[CR][LF]" 07:35:58.662696 < "EPSV" 07:35:58.662718 ====> Passive DATA channel requested by client 07:35:58.662731 DATA sockfilt for passive data channel starting... 07:35:58.664618 DATA sockfilt for passive data channel started (pid 134512) 07:35:58.664724 DATA sockfilt for passive data channel listens on port 43761 07:35:58.664766 > "229 Entering Passive Mode (|||43761|)[LF]" 07:35:58.664784 Client has been notified that DATA conn will be accepted on port 43761 07:35:58.665019 Client connects to port 43761 07:35:58.665045 ====> Client established passive DATA connection on port 43761 07:35:58.665115 < "TYPE I" 07:35:58.665143 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:58.665387 < "SIZE verifiedserver" 07:35:58.665457 > "213 17[CR][LF]" 07:35:58.665646 < "RETR verifiedserver" 07:35:58.665683 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:58.665773 =====> Closing passive DATA connection... 07:35:58.665794 Server disconnects passive DATA connection 07:35:58.666023 Server disconnected passive DATA connection 07:35:58.666060 DATA sockfilt for passive data channel quits (pid 134512) 07:35:58.666356 DATA sockfilt for passive data channel quit (pid 134512) 07:35:58.666384 =====> Closed passive DATA connection 07:35:58.666418 > "226 File transfer complete[CR][LF]" 07:35:58.707054 < "QUIT" 07:35:58.707113 > "221 bye bye baby[CR][LF]" 07:35:58.707820 MAIN sockfilt said DISC 07:35:58.707873 ====> Client disconnected 07:35:58.7CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1094 ../src/curl -q --output log/11/curl1094.out --include --trace-ascii log/11/trace1094 --trace-config all --trace-time "tftp://127.0.0.1:32896//1094;mode=netascii" > log/11/stdout1094 2> log/11/stderr1094 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1099 ../src/curl -q --include --trace-ascii log/21/trace1099 --trace-config all --trace-time tftp://127.0.0.1:38252/an/invalid-file tftp://127.0.0.1:38252//1099 > log/21/stdout1099 2> log/21/stderr1099 07964 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.507534 ====> Client connect 07:35:58.507860 Received DATA (on stdin) 07:35:58.507882 > 160 bytes data, server => client 07:35:58.507894 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.507904 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.507914 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.508035 < 16 bytes data, client => server 07:35:58.508048 'USER anonymous\r\n' 07:35:58.508208 Received DATA (on stdin) 07:35:58.508219 > 33 bytes data, server => client 07:35:58.508229 '331 We are happy you popped in!\r\n' 07:35:58.508275 < 22 bytes data, client => server 07:35:58.508286 'PASS ftp@example.com\r\n' 07:35:58.508377 Received DATA (on stdin) 07:35:58.508388 > 30 bytes data, server => client 07:35:58.508398 '230 Welcome you silly person\r\n' 07:35:58.508439 < 5 bytes data, client => server 07:35:58.508449 'PWD\r\n' 07:35:58.508539 Received DATA (on stdin) 07:35:58.508550 > 30 bytes data, server => client 07:35:58.508559 '257 "/" is current directory\r\n' 07:35:58.508608 < 6 bytes data, client => server 07:35:58.508618 'EPSV\r\n' 07:35:58.510774 Received DATA (on stdin) 07:35:58.510789 > 38 bytes data, server => client 07:35:58.510800 '229 Entering Passive Mode (|||43761|)\n' 07:35:58.510951 < 8 bytes data, client => server 07:35:58.510963 'TYPE I\r\n' 07:35:58.511129 Received DATA (on stdin) 07:35:58.511141 > 33 bytes data, server => client 07:35:58.511152 '200 I modify TYPE as you wanted\r\n' 07:35:58.511219 < 21 bytes data, client => server 07:35:58.511245 'SIZE verifiedserver\r\n' 07:35:58.511445 Received DATA (on stdin) 07:35:58.511458 > 8 bytes data, server => client 07:35:58.511468 '213 17\r\n' 07:35:58.511551 < 21 bytes data, client => server 07:35:58.511562 'RETR verifiedserver\r\n' 07:35:58.511732 Received DATA (on stdin) 07:35:58.511756 > 29 bytes data, server => client 07:35:58.511768 '150 Binary junk (17 bytes).\r\n' 07:35:58.512411 Received DATA (on stdin) 07:35:58.512428 > 28 bytes data, server => client 07:35:58.512439 '226 File transfer complete\r\n' 07:35:58.552837 < 6 bytes data, client => server 07:35:58.552876 'QUIT\r\n' 07:35:58.553104 Received DATA (on stdin) 07:35:58.553117 > 18 bytes data, server => client 07:35:58.553127 '221 bye bye baby\r\n' 07:35:58.553730 ====> Client disconnect 07:35:58.553957 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:58.510410 Running IPv4 version 07:35:58.510476 Listening on port 43761 07:35:58.510520 Wrote pid 134512 to log/22/server/ftp_sockdata.pid 07:35:58.510539 Received PING (on stdin) 07:35:58.510628 Received PORT (on stdin) 07:35:58.510923 ====> Client connect 07:35:58.511811 Received DATA (on stdin) 07:35:58.511832 > 17 bytes data, server => client 07:35:58.511843 'WE ROOLZ: 79849\r\n' 07:35:58.511878 Received DISC (on stdin) 07:35:58.511892 ====> Client forcibly disconnected 07:35:58.512056 Received QUIT (on stdin) 07:35:58.512068 quits 07:35:58.512137 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1137 === End of file server.cmd === Start of file valgrind1137 ==134586== ==134586== Process terminating with default action of signal 4 (SIGILL) ==134586== Illegal opcode at address 0x4003082 ==134586== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134586== by 0x4003082: main (tool_main.c:234) === End of file valgrind1137 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/11/server/tftp_server.pid" --portfile "log/11/server/tftp_server.port" --logfile "log/11/tftp_server.log" --logdir "log/11" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 132109 port 32896 * pid tftp => 132109 132109 test 1094...[TFTP retrieve with mode=netascii] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1094 ../src/curl -q --output log/11/curl1094.out --include --trace-ascii log/11/trace1094 --trace-config all --trace-time "tftp://127.0.0.1:32896//1094;mode=netascii" > log/11/stdout1094 2> log/11/stderr1094 1094: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1094 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1094 ../src/curl -q --output log/11/curl1094.out --include --trace-ascii log/11/trace1094 --trace-config all --trace-time "tftp://127.0.0.1:32896//1094;mode=netascii" > log/11/stdout1094 2> log/11/stderr1094 === End of file commands.log === Start of file server.cmd Testnum 1094 === End of file server.cmd === Start of file tftp_server.log 07:35:57.594021 Wrote pid 132109 to log/11/server/tftp_server.pid 07:35:57.594074 Wrote port 32896 to log/11/server/tftp_server.port 07:35:57.594087 Running IPv4 version on port UDP/32896 === End of file tftp_server.log === Start of file valgrind1094 ==134616== ==134616== Process terminating with default action of signal 4 (SIGILL) ==134616== Illegal opcode at address 0x4003082 ==134616== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134616== by 0x4003082: main (tool_main.c:234) === End of file valgrind1094 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1141 ../src/curl -q --output log/17/curl1141.out --include --trace-ascii log/17/trace1141 --trace-config all --trace-time 127.0.0.1:39089/want/1141 -L -x http://127.0.0.1:39089 > log/17/stdout1141 2> log/17/stderr1141 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1142 ../src/curl -q --output log/20/curl1142.out --include --trace-ascii log/20/trace1142 --trace-config all --trace-time 127.0.0.1:37169/want/1142 -L -x http://127.0.0.1:37169 > log/20/stdout1142 2> log/20/stderr1142 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1143 ../src/curl -q --output log/4/curl1143.out --include --trace-ascii log/4/trace1143 --trace-config all --trace-time http:/127.0.0.1:33235/want/1143 > log/4/stdout1143 2> log/4/stderr1143 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/21/server/tftp_server.pid" --portfile "log/21/server/tftp_server.port" --logfile "log/21/tftp_server.log" --logdir "log/21" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 132302 port 38252 * pid tftp => 132302 132302 test 1099...[TFTP get first a non-existing file then an existing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1099 ../src/curl -q --include --trace-ascii log/21/trace1099 --trace-config all --trace-time tftp://127.0.0.1:38252/an/invalid-file tftp://127.0.0.1:38252//1099 > log/21/stdout1099 2> log/21/stderr1099 1099: stdout FAILED: --- log/21/check-expected 2025-07-18 07:35:59.360446202 +0000 +++ log/21/check-generated 2025-07-18 07:35:59.360446202 +0000 @@ -1 +0,0 @@ -data for 1099[LF] == Contents of files in the log/21/ dir after test 1099 === Start of file check-expected data for 1099[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1099 ../src/curl -q --include --trace-ascii log/21/trace1099 --trace-config all --trace-time tftp://127.0.0.1:38252/an/invalid-file tftp://127.0.0.1:38252//1099 > log/21/stdout1099 2> log/21/stderr1099 === End of file commands.log === Start of file server.cmd Testnum 1099 === End of file server.cmd === Start of file tftp_server.log 07:35:57.663641 Wrote pid 132302 to log/21/server/tftp_server.pid 07:35:57.663794 Wrote port 38252 to log/21/server/tftp_server.port 07:35:57.663806 Running IPv4 version on port UDP/38252 === End of file tftp_server.log === Start of file valgrind1099 ==134693== ==134693== Process terminating with default action of signal 4 (SIGILL) ==134693== Illegal opcode at address 0x4003082 ==134693== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134693== by 0x4003082: main (tool_main.c:234) === End of file valgrind1099 test 1141...[HTTP redirect to http:/// (three slashes!)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1141 ../src/curl -q --output log/17/curl1141.out --include --trace-ascii log/17/trace1141 --trace-config all --trace-time 127.0.0.1:39089/want/1141 -L -x http://127.0.0.1:39089 > log/17/stdout1141 2> log/17/stderr1141 1141: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1141 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1141 ../src/curl -q --output log/17/curl1141.out --include --trace-ascii log/17/trace1141 --trace-config all --trace-time 127.0.0.1:39089/want/1141 -L -x http://127.0.0.1:39089 > log/17/stdout1141 2> log/17/stderr1141 === End of file commands.log === Start of file http_server.log 07:35:58.699906 ====> Client connect 07:35:58.699939 accept_connection 3 returned 4 07:35:58.699955 accept_connection 3 returned 0 07:35:58.700076 Read 93 bytes 07:35:58.700118 Process 93 bytes request 07:35:58.700131 Got request: GET /verifiedserver HTTP/1.1 07:35:58.700140 Are-we-friendly question received 07:35:58.700166 Wrote request (93 bytes) input to log/17/server.input 07:35:58.700182 Identifying ourselves as friends 07:35:58.700234 Response sent (56 bytes) and written to log/17/server.response 07:35:58.700244 special request received, no persistency 07:35:58.700252 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1141 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1141 ==134773== ==134773== Process terminating with default action of signal 4 (SIGILL) ==134773== Illegal opcode at address 0x4003082 ==134773== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134773== by 0x4003082: main (tool_main.c:234) === End of file valgrind1141 test 1142...[HTTP redirect to http://// (four slashes!)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1142 ../src/curl -q --output log/20/curl1142.out --include --trace-ascii log/20/trace1142 --trace-config all --trace-time 127.0.0.1:37169/want/1142 -L -x http://127.0.0.1:37169 > log/20/stdout1142 2> log/20/stderr1142 1142: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1142 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1142 ../src/curl -q --output log/20/curl1142.out --include --trace-ascii log/20/trace1142 --trace-config all --trace-time 127.0.0.1:37169/want/1142 -L -x http://127.0.0.1:37169 > log/20/stdout1142 2> log/20/stderr1142 === End of file commands.log === Start of file http_server.log 07:35:58.717781 ====> Client connect 07:35:58.717813 accept_connection 3 returned 4 07:35:58.717829 accept_connection 3 returned 0 07:35:58.717844 Read 93 bytes 07:35:58.717854 Process 93 bytes request 07:35:58.717867 Got request: GET /verifiedserver HTTP/1.1 07:35:58.717876 Are-we-friendly question received 07:35:58.717898 Wrote request (93 bytes) input to log/20/server.input 07:35:58.717913 Identifying ourselves as friends 07:35:58.717962 Response sent (56 bytes) and written to log/20/server.response 07:35:58.717972 special request received, no persistency 07:35:58.717980 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1142 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1142 ==134794== ==134794== Process terminating with default action of signal 4 (SIGILL) ==134794== Illegal opcode at address 0x4003082 ==134794== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134794== by 0x4003082: main (tool_main.c:234) === End of file valgrind1142 setenv MSYS2_ARG_CONV_EXCL = http:/ test 1143...[HTTP URL with http:/ (one slash!)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1143 ../src/curl -q --output log/4/curl1143.out --include --trace-ascii log/4/trace1143 --trace-config all --trace-CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1165.pl /startdir/src/curl/tests/.. > log/4/stdout1165 2> log/4/stderr1165 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1144 ../src/curl -q --output log/2/curl1144.out --include --trace-ascii log/2/trace1144 --trace-config all --trace-time -I http://127.0.0.1:45457/1144 --http0.9 > log/2/stdout1144 2> log/2/stderr1144 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1145 ../src/curl -q --output log/5/curl1145.out --include --trace-ascii log/5/trace1145 --trace-config all --trace-time file://bad-host/startdir/src/build-curl/tests/log/5/test1145.txt > log/5/stdout1145 2> log/5/stderr1145 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1152 ../src/curl -q --output log/1/curl1152.out --include --trace-ascii log/1/trace1152 --trace-config all --trace-time ftp://127.0.0.1:34427/test-1152/ > log/1/stdout1152 2> log/1/stderr1152 time http:/127.0.0.1:33235/want/1143 > log/4/stdout1143 2> log/4/stderr1143 1143: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1143 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1143 ../src/curl -q --output log/4/curl1143.out --include --trace-ascii log/4/trace1143 --trace-config all --trace-time http:/127.0.0.1:33235/want/1143 > log/4/stdout1143 2> log/4/stderr1143 === End of file commands.log === Start of file http_server.log 07:35:58.760093 ====> Client connect 07:35:58.760136 accept_connection 3 returned 4 07:35:58.760153 accept_connection 3 returned 0 07:35:58.760170 Read 93 bytes 07:35:58.760180 Process 93 bytes request 07:35:58.760194 Got request: GET /verifiedserver HTTP/1.1 07:35:58.760203 Are-we-friendly question received 07:35:58.760230 Wrote request (93 bytes) input to log/4/server.input 07:35:58.760247 Identifying ourselves as friends 07:35:58.760323 Response sent (56 bytes) and written to log/4/server.response 07:35:58.760334 special request received, no persistency 07:35:58.760343 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1143 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1143 ==134886== ==134886== Process terminating with default action of signal 4 (SIGILL) ==134886== Illegal opcode at address 0x4003082 ==134886== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134886== by 0x4003082: main (tool_main.c:234) === End of file valgrind1143 * starts no server test 1165...[Verify configure.ac and source code CURL_DISABLE_-sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1165.pl /startdir/src/curl/tests/.. > log/4/stdout1165 2> log/4/stderr1165 valgrind SKIPPED -------e--- OK (1081 out of 1707, remaining: 00:40, took 0.051s, duration: 01:10) test 1144...[HTTP HEAD, receive no headers only body] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1144 ../src/curl -q --output log/2/curl1144.out --include --trace-ascii log/2/trace1144 --trace-config all --trace-time -I http://127.0.0.1:45457/1144 --http0.9 > log/2/stdout1144 2> log/2/stderr1144 1144: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1144 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1144 ../src/curl -q --output log/2/curl1144.out --include --trace-ascii log/2/trace1144 --trace-config all --trace-time -I http://127.0.0.1:45457/1144 --http0.9 > log/2/stdout1144 2> log/2/stderr1144 === End of file commands.log === Start of file http_server.log 07:35:58.864505 ====> Client connect 07:35:58.864542 accept_connection 3 returned 4 07:35:58.864558 accept_connection 3 returned 0 07:35:58.864572 Read 93 bytes 07:35:58.864583 Process 93 bytes request 07:35:58.864596 Got request: GET /verifiedserver HTTP/1.1 07:35:58.864605 Are-we-friendly question received 07:35:58.864630 Wrote request (93 bytes) input to log/2/server.input 07:35:58.864646 Identifying ourselves as friends 07:35:58.864702 Response sent (56 bytes) and written to log/2/server.response 07:35:58.864713 special request received, no persistency 07:35:58.864721 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1144 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1144 ==134955== ==134955== Process terminating with default action of signal 4 (SIGILL) ==134955== Illegal opcode at address 0x4003082 ==134955== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134955== by 0x4003082: main (tool_main.c:234) === End of file valgrind1144 test 1145...[file:// bad host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1145 ../src/curl -q --output log/5/curl1145.out --include --trace-ascii log/5/trace1145 --trace-config all --trace-time file://bad-host/startdir/src/build-curl/tests/log/5/test1145.txt > log/5/stdout1145 2> log/5/stderr1145 curl returned 132, when expecting 3 1145: exit FAILED == Contents of files in the log/5/ dir after test 1145 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1145 ../src/curl -q --output log/5/curl1145.out --include --trace-ascii log/5/trace1145 --trace-config all --trace-time file://bad-host/startdir/src/build-curl/tests/log/5/test1145.txt > log/5/stdout1145 2> log/5/stderr1145 === End of file commands.log === Start of file server.cmd Testnum 1145 === End of file server.cmd === Start of file test1145.txt foo bar bar foo moo === End of file test1145.txt === Start of file valgrind1145 ==134998== ==134998== Process terminating with default action of signal 4 (SIGILL) ==134998== Illegal opcode at address 0x4003082 ==134998== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==134998== by 0x4003082: main (tool_main.c:234) === End of file valgrind1145 test 1152...[FTP with uneven quote in PWD response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1152 ../src/curl -q --output log/1/curl1152.out --include --trace-ascii log/1/trace1152 --trace-config all --trace-time ftp://127.0.0.1:34427/test-1152/ > log/1/stdout1152 2> log/1/stderr1152 1152: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1152 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1152 ../src/curl -q --output log/1/curl1152.out --include --trace-ascii log/1/trace1152 --trace-config all --trace-time ftp://127.0.0.1:34427/test-1152/ > log/1/stdout1152 2> log/1/stderr1152 === End of file commands.log === Start of file ftp_server.log 07:35:59.098108 ====> Client connect 07:35:59.098258 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1146 ../src/curl -q --output log/16/curl1146.out --trace-ascii log/16/trace1146 --trace-config all --trace-time --proto-default file /startdir/src/build-curl/tests/log/16/test1146.txt > log/16/stdout1146 2> log/16/stderr1146 / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.098539 < "USER anonymous" 07:35:59.098588 > "331 We are happy you popped in![CR][LF]" 07:35:59.098767 < "PASS ftp@example.com" 07:35:59.098792 > "230 Welcome you silly person[CR][LF]" 07:35:59.098924 < "PWD" 07:35:59.098949 > "257 "/" is current directory[CR][LF]" 07:35:59.099076 < "EPSV" 07:35:59.099101 ====> Passive DATA channel requested by client 07:35:59.099113 DATA sockfilt for passive data channel starting... 07:35:59.100695 DATA sockfilt for passive data channel started (pid 135235) 07:35:59.100847 DATA sockfilt for passive data channel listens on port 37811 07:35:59.100895 > "229 Entering Passive Mode (|||37811|)[LF]" 07:35:59.100914 Client has been notified that DATA conn will be accepted on port 37811 07:35:59.101136 Client connects to port 37811 07:35:59.101162 ====> Client established passive DATA connection on port 37811 07:35:59.101227 < "TYPE I" 07:35:59.101255 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:59.101437 < "SIZE verifiedserver" 07:35:59.101488 > "213 17[CR][LF]" 07:35:59.101816 < "RETR verifiedserver" 07:35:59.101849 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:59.101920 =====> Closing passive DATA connection... 07:35:59.101935 Server disconnects passive DATA connection 07:35:59.102041 Server disconnected passive DATA connection 07:35:59.102071 DATA sockfilt for passive data channel quits (pid 135235) 07:35:59.102362 DATA sockfilt for passive data channel quit (pid 135235) 07:35:59.102386 =====> Closed passive DATA connection 07:35:59.102408 > "226 File transfer complete[CR][LF]" 07:35:59.143923 < "QUIT" 07:35:59.143971 > "221 bye bye baby[CR][LF]" 07:35:59.144168 MAIN sockfilt said DISC 07:35:59.144196 ====> Client disconnected 07:35:59.144270 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.943773 ====> Client connect 07:35:58.944251 Received DATA (on stdin) 07:35:58.944266 > 160 bytes data, server => client 07:35:58.944278 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.944289 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.944298 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.944376 < 16 bytes data, client => server 07:35:58.944388 'USER anonymous\r\n' 07:35:58.944579 Received DATA (on stdin) 07:35:58.944595 > 33 bytes data, server => client 07:35:58.944606 '331 We are happy you popped in!\r\n' 07:35:58.944667 < 22 bytes data, client => server 07:35:58.944678 'PASS ftp@example.com\r\n' 07:35:58.944774 Received DATA (on stdin) 07:35:58.944794 > 30 bytes data, server => client 07:35:58.944805 '230 Welcome you silly person\r\n' 07:35:58.944855 < 5 bytes data, client => server 07:35:58.944867 'PWD\r\n' 07:35:58.944932 Received DATA (on stdin) 07:35:58.944945 > 30 bytes data, server => client 07:35:58.944955 '257 "/" is current directory\r\n' 07:35:58.945006 < 6 bytes data, client => server 07:35:58.945018 'EPSV\r\n' 07:35:58.946903 Received DATA (on stdin) 07:35:58.946917 > 38 bytes data, server => client 07:35:58.946929 '229 Entering Passive Mode (|||37811|)\n' 07:35:58.947038 < 8 bytes data, client => server 07:35:58.947054 'TYPE I\r\n' 07:35:58.947240 Received DATA (on stdin) 07:35:58.947253 > 33 bytes data, server => client 07:35:58.947265 '200 I modify TYPE as you wanted\r\n' 07:35:58.947316 < 21 bytes data, client => server 07:35:58.947328 'SIZE verifiedserver\r\n' 07:35:58.947479 Received DATA (on stdin) 07:35:58.947494 > 8 bytes data, server => client 07:35:58.947504 '213 17\r\n' 07:35:58.947716 < 21 bytes data, client => server 07:35:58.947731 'RETR verifiedserver\r\n' 07:35:58.947924 Received DATA (on stdin) 07:35:58.947944 > 29 bytes data, server => client 07:35:58.947956 '150 Binary junk (17 bytes).\r\n' 07:35:58.948571 Received DATA (on stdin) 07:35:58.948588 > 28 bytes data, server => client 07:35:58.948599 '226 File transfer complete\r\n' 07:35:58.989733 < 6 bytes data, client => server 07:35:58.989762 'QUIT\r\n' 07:35:58.989941 Received DATA (on stdin) 07:35:58.989969 > 18 bytes data, server => client 07:35:58.989981 '221 bye bye baby\r\n' 07:35:58.990100 ====> Client disconnect 07:35:58.990228 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:59.946524 Running IPv4 version 07:35:59.946574 Listening on port 37811 07:35:59.946611 Wrote pid 135235 to log/1/server/ftp_sockdata.pid 07:35:59.946629 Received PING (on stdin) 07:35:59.946738 Received PORT (on stdin) 07:35:59.947075 ====> Client connect 07:35:59.947927 Received DATA (on stdin) 07:35:59.947944 > 17 bytes data, server => client 07:35:59.947955 'WE ROOLZ: 80151\r\n' 07:35:59.947982 Received DISC (on stdin) 07:35:59.947993 ====> Client forcibly disconnected 07:35:59.948074 Received QUIT (on stdin) 07:35:59.948086 quits 07:35:59.948145 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 257 "just one Testnum 1152 === End of file server.cmd === Start of file valgrind1152 ==135533== ==135533== Process terminating with default action of signal 4 (SIGILL) ==135533== Illegal opcode at address 0x4003082 ==135533== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135533== by 0x4003082: main (tool_main.c:234) === End of file valgrind1152 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1148 ../src/curl -q --output log/13/curl1148.out --include --trace-ascii log/13/trace1148 --trace-config all --trace-time http://127.0.0.1:33627/1148 -# --stderr log/13/stderrlog1148 > log/13/stdout1148 2> log/13/stderr1148 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1157 ../src/curl -q --output log/18/curl1157.out --include --trace-ascii log/18/trace1157 --trace-config all --trace-time http://127.0.0.1:45825/1157 -H @log/18/heads1157.txt > log/18/stdout1157 2> log/18/stderr1157 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1158 ../src/curl -q --output log/6/curl1158.out --include --trace-ascii log/6/trace1158 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1158 -F "file=@\"log/6/test1158\\\".txt\";type=mo/foo;filename=\"test1158\\\".txt\"" -F 'file2=@"log/6/test1158\".txt"' -F 'file3=@"log/6/test1158\".txt";type=m/f,"log/6/test1158\".txt"' > log/6/stdout1158 2> log/6/stderr1158 test 1146...[--proto-default file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1146 ../src/curl -q --output log/16/curl1146.out --trace-ascii log/16/trace1146 --trace-config all --trace-time --proto-default file /startdir/src/build-curl/tests/log/16/test1146.txt > log/16/stdout1146 2> log/16/stderr1146 1146: data FAILED: --- log/16/check-expected 2025-07-18 07:35:59.660446209 +0000 +++ log/16/check-generated 2025-07-18 07:35:59.660446209 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/16/ dir after test 1146 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1146 ../src/curl -q --output log/16/curl1146.out --trace-ascii log/16/trace1146 --trace-config all --trace-time --proto-default file /startdir/src/build-curl/tests/log/16/test1146.txt > log/16/stdout1146 2> log/16/stderr1146 === End of file commands.log === Start of file server.cmd Testnum 1146 === End of file server.cmd === Start of file test1146.txt foo bar bar foo moo === End of file test1146.txt === Start of file valgrind1146 ==135024== ==135024== Process terminating with default action of signal 4 (SIGILL) ==135024== Illegal opcode at address 0x4003082 ==135024== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135024== by 0x4003082: main (tool_main.c:234) === End of file valgrind1146 setenv LC_ALL = setenv LC_NUMERIC = en_US.UTF-8 test 1148...[progress-bar] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1148 ../src/curl -q --output log/13/curl1148.out --include --trace-ascii log/13/trace1148 --trace-config all --trace-time http://127.0.0.1:33627/1148 -# --stderr log/13/stderrlog1148 > log/13/stdout1148 2> log/13/stderr1148 1148: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1148 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1148 ../src/curl -q --output log/13/curl1148.out --include --trace-ascii log/13/trace1148 --trace-config all --trace-time http://127.0.0.1:33627/1148 -# --stderr log/13/stderrlog1148 > log/13/stdout1148 2> log/13/stderr1148 === End of file commands.log === Start of file http_server.log 07:35:58.925624 ====> Client connect 07:35:58.925651 accept_connection 3 returned 4 07:35:58.925665 accept_connection 3 returned 0 07:35:58.925675 Read 93 bytes 07:35:58.925683 Process 93 bytes request 07:35:58.925692 Got request: GET /verifiedserver HTTP/1.1 07:35:58.925699 Are-we-friendly question received 07:35:58.925717 Wrote request (93 bytes) input to log/13/server.input 07:35:58.925731 Identifying ourselves as friends 07:35:58.925783 Response sent (56 bytes) and written to log/13/server.response 07:35:58.925792 special request received, no persistency 07:35:58.925800 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1148 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1148 ==135188== ==135188== Process terminating with default action of signal 4 (SIGILL) ==135188== Illegal opcode at address 0x4003082 ==135188== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135188== by 0x4003082: main (tool_main.c:234) === End of file valgrind1148 test 1157...[Get -H headers from empty file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1157 ../src/curl -q --output log/18/curl1157.out --include --trace-ascii log/18/trace1157 --trace-config all --trace-time http://127.0.0.1:45825/1157 -H @log/18/heads1157.txt > log/18/stdout1157 2> log/18/stderr1157 1157: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1157 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1157 ../src/curl -q --output log/18/curl1157.out --include --trace-ascii log/18/trace1157 --trace-config all --trace-time http://127.0.0.1:45825/1157 -H @log/18/heads1157.txt > log/18/stdout1157 2> log/18/stderr1157 === End of file commands.log === Start of file http_server.log 07:35:59.045355 ====> Client connect 07:35:59.045390 accept_connection 3 returned 4 07:35:59.045407 accept_connection 3 returned 0 07:35:59.045421 Read 93 bytes 07:35:59.045430 Process 93 bytes request 07:35:59.045442 Got request: GET /verifiedserver HTTP/1.1 07:35:59.045451 Are-we-friendly question received 07:35:59.045479 Wrote request (93 bytes) input to log/18/server.input 07:35:59.045496 Identifying ourselves as friends 07:35:59.045556 Response sent (56 bytes) and written to log/18/server.response 07:35:59.045567 special request received, no persistency 07:35:59.045576 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1157 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1157 ==135777== ==135777== Process terminating with default action of signal 4 (SIGILL) ==135777== Illegal opcode at address 0x4003082 ==135777== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135777== by 0x4003082: main (tool_main.c:234) === End of file valgrind1157 test 1158...[HTTP RFC1867-type formposting with filename containing '"'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1158 ../src/curl -q --output log/6/curl1158.out --include --trace-ascii log/6/trace1158 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1158 -F "file=@\"log/6/test1158\\\".txt\";type=mo/foo;filename=\"test1158\\\".txt\"" -F 'file2=@"log/6/test1158\".txt"' -F 'file3=@"log/6/test1158\".txt";type=m/f,"log/6/test1158\".txt"' > log/6/stdout1158 2> log/6/stderr1158 1158: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dirCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1147 ../src/curl -q --output log/14/curl1147.out --include --trace-ascii log/14/trace1147 --trace-config all --trace-time http://127.0.0.1:37963/1147 -H @log/14/heads1147.txt > log/14/stdout1147 2> log/14/stderr1147 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1151 ../src/curl -q --output log/19/curl1151.out --include --trace-ascii log/19/trace1151 --trace-config all --trace-time http://127.0.0.1:33487/1151 -c log/19/cookies1151.txt > log/19/stdout1151 2> log/19/stderr1151 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1154 ../src/curl -q --output log/9/curl1154.out --include --trace-ascii log/9/trace1154 --trace-config all --trace-time http://127.0.0.1:34999/1154 > log/9/stdout1154 2> log/9/stderr1154 after test 1158 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1158 ../src/curl -q --output log/6/curl1158.out --include --trace-ascii log/6/trace1158 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1158 -F "file=@\"log/6/test1158\\\".txt\";type=mo/foo;filename=\"test1158\\\".txt\"" -F 'file2=@"log/6/test1158\".txt"' -F 'file3=@"log/6/test1158\".txt";type=m/f,"log/6/test1158\".txt"' > log/6/stdout1158 2> log/6/stderr1158 === End of file commands.log === Start of file http_server.log 07:35:59.047674 ====> Client connect 07:35:59.047698 accept_connection 3 returned 4 07:35:59.047710 accept_connection 3 returned 0 07:35:59.047721 Read 93 bytes 07:35:59.047729 Process 93 bytes request 07:35:59.047738 Got request: GET /verifiedserver HTTP/1.1 07:35:59.047745 Are-we-friendly question received 07:35:59.047763 Wrote request (93 bytes) input to log/6/server.input 07:35:59.047775 Identifying ourselves as friends 07:35:59.047818 Response sent (56 bytes) and written to log/6/server.response 07:35:59.047826 special request received, no persistency 07:35:59.047832 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1158 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file test1158".txt foo bar This is a bar foo bar foo === End of file test1158".txt === Start of file valgrind1158 ==135810== ==135810== Process terminating with default action of signal 4 (SIGILL) ==135810== Illegal opcode at address 0x4003082 ==135810== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135810== by 0x4003082: main (tool_main.c:234) === End of file valgrind1158 test 1147...[Get -H headers from a file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1147 ../src/curl -q --output log/14/curl1147.out --include --trace-ascii log/14/trace1147 --trace-config all --trace-time http://127.0.0.1:37963/1147 -H @log/14/heads1147.txt > log/14/stdout1147 2> log/14/stderr1147 1147: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1147 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1147 ../src/curl -q --output log/14/curl1147.out --include --trace-ascii log/14/trace1147 --trace-config all --trace-time http://127.0.0.1:37963/1147 -H @log/14/heads1147.txt > log/14/stdout1147 2> log/14/stderr1147 === End of file commands.log === Start of file heads1147.txt One: 1 Two: 2 no-colon And A Funny One : wohoo User-Agent: === End of file heads1147.txt === Start of file http_server.log 07:35:58.924098 ====> Client connect 07:35:58.924138 accept_connection 3 returned 4 07:35:58.924155 accept_connection 3 returned 0 07:35:58.924170 Read 93 bytes 07:35:58.924180 Process 93 bytes request 07:35:58.924192 Got request: GET /verifiedserver HTTP/1.1 07:35:58.924201 Are-we-friendly question received 07:35:58.924228 Wrote request (93 bytes) input to log/14/server.input 07:35:58.924243 Identifying ourselves as friends 07:35:58.924323 Response sent (56 bytes) and written to log/14/server.response 07:35:58.924332 special request received, no persistency 07:35:58.924341 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1147 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1147 ==135186== ==135186== Process terminating with default action of signal 4 (SIGILL) ==135186== Illegal opcode at address 0x4003082 ==135186== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135186== by 0x4003082: main (tool_main.c:234) === End of file valgrind1147 test 1151...[HTTP with too long cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1151 ../src/curl -q --output log/19/curl1151.out --include --trace-ascii log/19/trace1151 --trace-config all --trace-time http://127.0.0.1:33487/1151 -c log/19/cookies1151.txt > log/19/stdout1151 2> log/19/stderr1151 1151: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1151 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1151 ../src/curl -q --output log/19/curl1151.out --include --trace-ascii log/19/trace1151 --trace-config all --trace-time http://127.0.0.1:33487/1151 -c log/19/cookies1151.txt > log/19/stdout1151 2> log/19/stderr1151 === End of file commands.log === Start of file http_server.log 07:35:58.944867 ====> Client connect 07:35:58.944898 accept_connection 3 returned 4 07:35:58.944914 accept_connection 3 returned 0 07:35:58.944927 Read 93 bytes 07:35:58.944937 Process 93 bytes request 07:35:58.944949 Got request: GET /verifiedserver HTTP/1.1 07:35:58.944958 Are-we-friendly question received 07:35:58.944985 Wrote request (93 bytes) input to log/19/server.input 07:35:58.945001 Identifying ourselves as friends 07:35:58.945051 Response sent (56 bytes) and written to log/19/server.response 07:35:58.945062 special request received, no persistency 07:35:58.945070 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1151 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1151 ==135303== ==135303== Process terminating with default action of signal 4 (SIGILL) ==135303== Illegal opcode at address 0x4003082 ==135303== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135303== by 0x4003082: main (tool_main.c:234) === End of file valgrind1151 test 1154...[HTTP GET with 100K (too long) response header] ../libtool --mode=execute /CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1150 ../src/curl -q --output log/7/curl1150.out --include --trace-ascii log/7/trace1150 --trace-config all --trace-time --proxy http://127.0.0.1:39077 http://test.remote.example.com.1150:150/path http://test.remote.example.com.1150:1234/path/ > log/7/stdout1150 2> log/7/stderr1150 CMD (31488): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/runtests.pl -L /startdir/src/build-curl/tests/log/1/test1169-library.pl > log/1/stdout1169 2> log/1/stderr1169 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1175.pl /startdir/src/curl/tests/.. > log/19/stdout1175 2> log/19/stderr1175 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1177.pl /startdir/src/build-curl/tests/../docs/libcurl/curl_version_info.3 /startdir/src/curl/tests/../include/curl/curl.h /startdir/src/curl/tests/../lib/version.c > log/7/stdout1177 2> log/7/stderr1177 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1153 ../src/curl -q --output log/12/curl1153.out --include --trace-ascii log/12/trace1153 --trace-config all --trace-time ftp://127.0.0.1:39735/test-1153/ > log/12/stdout1153 2> log/12/stderr1153 usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1154 ../src/curl -q --output log/9/curl1154.out --include --trace-ascii log/9/trace1154 --trace-config all --trace-time http://127.0.0.1:34999/1154 > log/9/stdout1154 2> log/9/stderr1154 1154: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1154 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1154 ../src/curl -q --output log/9/curl1154.out --include --trace-ascii log/9/trace1154 --trace-config all --trace-time http://127.0.0.1:34999/1154 > log/9/stdout1154 2> log/9/stderr1154 === End of file commands.log === Start of file http_server.log 07:35:58.956334 ====> Client connect 07:35:58.956368 accept_connection 3 returned 4 07:35:58.956385 accept_connection 3 returned 0 07:35:58.956398 Read 93 bytes 07:35:58.956407 Process 93 bytes request 07:35:58.956420 Got request: GET /verifiedserver HTTP/1.1 07:35:58.956430 Are-we-friendly question received 07:35:58.956455 Wrote request (93 bytes) input to log/9/server.input 07:35:58.956473 Identifying ourselves as friends 07:35:58.956533 Response sent (56 bytes) and written to log/9/server.response 07:35:58.956543 special request received, no persistency 07:35:58.956551 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1154 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1154 ==135366== ==135366== Process terminating with default action of signal 4 (SIGILL) ==135366== Illegal opcode at address 0x4003082 ==135366== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135366== by 0x4003082: main (tool_main.c:234) === End of file valgrind1154 test 1150...[HTTP proxy with URLs using different ports] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1150 ../src/curl -q --output log/7/curl1150.out --include --trace-ascii log/7/trace1150 --trace-config all --trace-time --proxy http://127.0.0.1:39077 http://test.remote.example.com.1150:150/path http://test.remote.example.com.1150:1234/path/ > log/7/stdout1150 2> log/7/stderr1150 1150: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1150 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1150 ../src/curl -q --output log/7/curl1150.out --include --trace-ascii log/7/trace1150 --trace-config all --trace-time --proxy http://127.0.0.1:39077 http://test.remote.example.com.1150:150/path http://test.remote.example.com.1150:1234/path/ > log/7/stdout1150 2> log/7/stderr1150 === End of file commands.log === Start of file http_server.log 07:35:58.941853 ====> Client connect 07:35:58.941882 accept_connection 3 returned 4 07:35:58.941895 accept_connection 3 returned 0 07:35:58.941996 Read 93 bytes 07:35:58.942023 Process 93 bytes request 07:35:58.942037 Got request: GET /verifiedserver HTTP/1.1 07:35:58.942046 Are-we-friendly question received 07:35:58.942113 Wrote request (93 bytes) input to log/7/server.input 07:35:58.942137 Identifying ourselves as friends 07:35:58.942213 Response sent (56 bytes) and written to log/7/server.response 07:35:58.942223 special request received, no persistency 07:35:58.942231 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1150 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1150 ==135285== ==135285== Process terminating with default action of signal 4 (SIGILL) ==135285== Illegal opcode at address 0x4003082 ==135285== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135285== by 0x4003082: main (tool_main.c:234) === End of file valgrind1150 * starts no server test 1169...[Verify that runtests.pl accepts an -L option] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/runtests.pl -L /startdir/src/build-curl/tests/log/1/test1169-library.pl > log/1/stdout1169 2> log/1/stderr1169 valgrind SKIPPED -------e--- OK (1085 out of 1707, remaining: 00:40, took 0.085s, duration: 01:10) * starts no server test 1175...[Verify that symbols-in-versions and libcurl-errors.3 are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1175.pl /startdir/src/curl/tests/.. > log/19/stdout1175 2> log/19/stderr1175 valgrind SKIPPED -------e--- OK (1091 out of 1707, remaining: 00:40, took 0.017s, duration: 01:10) * starts no server test 1177...[Verify that feature names and CURL_VERSION_* in lib and docs are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1177.pl /startdir/src/build-curl/tests/../docs/libcurl/curl_version_info.3 /startdir/src/curl/tests/../include/curl/curl.h /startdir/src/curl/tests/../lib/version.c > log/7/stdout1177 2> log/7/stderr1177 valgrind SKIPPED -------e--- OK (1093 out of 1707, remaining: 00:39, took 0.015s, duration: 01:10) test 1153...[FTP with quoted double quotes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1153 ../src/curl -q --output log/12/curl1153.out --include --trace-ascii log/12/trace1153 --trace-config all --trace-time ftp://127.0.0.1:39735/test-1153/ > log/12/stdout1153 2> log/12/stderr1153 1153: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1153 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1153 ../src/curl -q --output log/12/curl1153.out --include --trace-ascii log/12/trace1153 --trace-config all --trace-time ftp://127.0.0.1:39735/test-1153/ > log/12/stdout1153 2> log/12/stderr1153 === End of file commands.log === Start of file ftp_server.log 07:35:59.100215 ====> Client connect 07:35:59.100355 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.100787 < "USER anonymous" 07:35:59.100824 > "331 We are happy you popped in![CR][LF]CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1149 ../src/curl -q --output log/24/curl1149.out --include --trace-ascii log/24/trace1149 --trace-config all --trace-time ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method multicwd --next ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method nocwd > log/24/stdout1149 2> log/24/stderr1149 " 07:35:59.101323 < "PASS ftp@example.com" 07:35:59.101353 > "230 Welcome you silly person[CR][LF]" 07:35:59.101530 < "PWD" 07:35:59.101566 > "257 "/" is current directory[CR][LF]" 07:35:59.101705 < "EPSV" 07:35:59.101741 ====> Passive DATA channel requested by client 07:35:59.101755 DATA sockfilt for passive data channel starting... 07:35:59.103691 DATA sockfilt for passive data channel started (pid 135254) 07:35:59.103796 DATA sockfilt for passive data channel listens on port 39287 07:35:59.103833 > "229 Entering Passive Mode (|||39287|)[LF]" 07:35:59.103847 Client has been notified that DATA conn will be accepted on port 39287 07:35:59.104038 Client connects to port 39287 07:35:59.104065 ====> Client established passive DATA connection on port 39287 07:35:59.104171 < "TYPE I" 07:35:59.104199 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:59.104330 < "SIZE verifiedserver" 07:35:59.104358 > "213 17[CR][LF]" 07:35:59.104553 < "RETR verifiedserver" 07:35:59.104593 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:59.104662 =====> Closing passive DATA connection... 07:35:59.104676 Server disconnects passive DATA connection 07:35:59.104848 Server disconnected passive DATA connection 07:35:59.104873 DATA sockfilt for passive data channel quits (pid 135254) 07:35:59.105095 DATA sockfilt for passive data channel quit (pid 135254) 07:35:59.105121 =====> Closed passive DATA connection 07:35:59.105148 > "226 File transfer complete[CR][LF]" 07:35:59.147307 < "QUIT" 07:35:59.147392 > "221 bye bye baby[CR][LF]" 07:35:59.147592 MAIN sockfilt said DISC 07:35:59.147619 ====> Client disconnected 07:35:59.147725 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:59.946104 ====> Client connect 07:35:59.946350 Received DATA (on stdin) 07:35:59.946364 > 160 bytes data, server => client 07:35:59.946376 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:59.946387 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:59.946397 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:59.946459 < 16 bytes data, client => server 07:35:59.946472 'USER anonymous\r\n' 07:35:59.946810 Received DATA (on stdin) 07:35:59.946823 > 33 bytes data, server => client 07:35:59.946833 '331 We are happy you popped in!\r\n' 07:35:59.947203 < 22 bytes data, client => server 07:35:59.947224 'PASS ftp@example.com\r\n' 07:35:59.947332 Received DATA (on stdin) 07:35:59.947352 > 30 bytes data, server => client 07:35:59.947363 '230 Welcome you silly person\r\n' 07:35:59.947417 < 5 bytes data, client => server 07:35:59.947428 'PWD\r\n' 07:35:59.947551 Received DATA (on stdin) 07:35:59.947563 > 30 bytes data, server => client 07:35:59.947573 '257 "/" is current directory\r\n' 07:35:59.947629 < 6 bytes data, client => server 07:35:59.947643 'EPSV\r\n' 07:35:59.949837 Received DATA (on stdin) 07:35:59.949854 > 38 bytes data, server => client 07:35:59.949865 '229 Entering Passive Mode (|||39287|)\n' 07:35:59.950061 < 8 bytes data, client => server 07:35:59.950072 'TYPE I\r\n' 07:35:59.950181 Received DATA (on stdin) 07:35:59.950191 > 33 bytes data, server => client 07:35:59.950201 '200 I modify TYPE as you wanted\r\n' 07:35:59.950241 < 21 bytes data, client => server 07:35:59.950252 'SIZE verifiedserver\r\n' 07:35:59.950339 Received DATA (on stdin) 07:35:59.950348 > 8 bytes data, server => client 07:35:59.950358 '213 17\r\n' 07:35:59.950423 < 21 bytes data, client => server 07:35:59.950444 'RETR verifiedserver\r\n' 07:35:59.950602 Received DATA (on stdin) 07:35:59.950623 > 29 bytes data, server => client 07:35:59.950634 '150 Binary junk (17 bytes).\r\n' 07:35:59.951135 Received DATA (on stdin) 07:35:59.951150 > 28 bytes data, server => client 07:35:59.951160 '226 File transfer complete\r\n' 07:35:59.993140 < 6 bytes data, client => server 07:35:59.993160 'QUIT\r\n' 07:35:59.993385 Received DATA (on stdin) 07:35:59.993397 > 18 bytes data, server => client 07:35:59.993408 '221 bye bye baby\r\n' 07:35:59.993506 ====> Client disconnect 07:35:59.993711 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:59.949391 Running IPv4 version 07:35:59.949451 Listening on port 39287 07:35:59.949484 Wrote pid 135254 to log/12/server/ftp_sockdata.pid 07:35:59.949618 Received PING (on stdin) 07:35:59.949700 Received PORT (on stdin) 07:35:59.949976 ====> Client connect 07:35:59.950706 Received DATA (on stdin) 07:35:59.950726 > 17 bytes data, server => client 07:35:59.950738 'WE ROOLZ: 81035\r\n' 07:35:59.950767 Received DISC (on stdin) 07:35:59.950780 ====> Client forcibly disconnected 07:35:59.950863 Received QUIT (on stdin) 07:35:59.950881 quits 07:35:59.950930 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 257 "/""hello""" Testnum 1153 === End of file server.cmd === Start of file valgrind1153 ==135558== ==135558== Process terminating with default action of signal 4 (SIGILL) ==135558== Illegal opcode at address 0x4003082 ==135558== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135558== by 0x4003082: main (tool_main.c:234) === End of file valgrind1153 test 1149...[FTP dir list multicwd then again nocwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1149 ../src/curl -q --output log/24/curl1149.out --include --trace-ascii log/24/trace1149 --trace-config all --trace-time ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method multicwd --next ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method nocwd > log/24/stdout1149 2> log/24/stderr1149 1149: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1149 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1149 ../src/curl -q --output log/24/curl1149.out --include --trace-ascii log/24/trace1149 --trace-config all --trace-time ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method multicwd --next ftp://127.0.0.1:38657/list/this/path/1149/ --ftp-method nocwd > log/24/stdout1149 2> log/24/stderr1149 === End of file commands.log === Start of file ftp_server.log 07:35:59.088933 ====> Client connect 07:35:59.089078 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.089332 < "USER anonymous" 07:35:59.089365 > "331 We are happy you popped in![CR][LF]" 07:35:59.089570 < "PASS ftp@example.com" 07:35:59.089617 > "230 Welcome you silly person[CR][LF]" 07:35:59.089820 < "PWD" 07:35:59.089849 > "257 "/" is current directory[CR][LF]" 07:35:59.090011 < "EPSV" 07:35:59.090036 ====> Passive DATA channel requested by client 07:35:59.090049 DATA sockfilt for passive data channel starting... 07:35:59.093029 DATA sockfilt for passive data channel started (pid 135165) 07:35:59.093166 DATA sockfilt for passive data channel listens on port 44867 07:35:59.093207 > "229 Entering Passive Mode (|||44867|)[LF]" 07:35:59.093227 Client has been notified that DATA conn will be accepted on port 44867 07:35:59.093489 Client connects to port 44867 07:35:59.093514 ====> Client established passive DATA connection on port 44867 07:35:59.093577 < "TYPE I" 07:35:59.093604 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:59.093743 < "SIZE verifiedserver" 07:35:59.093782 > "213 17[CR][LF]" 07:35:59.093909 < "RETR verifiedserver" 07:35:59.093940 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:59.094017 =====> Closing passive DATA connection... 07:35:59.094031 Server disconnects passive DATA connection 07:35:59.094174 Server disconnected passive DATA connection 07:35:59.094228 DATA sockfilt for passive data channel quitCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1155 ../src/curl -q --output log/23/curl1155.out --include --trace-ascii log/23/trace1155 --trace-config all --trace-time http://127.0.0.1:45701/1155 -c log/23/cookies1155.txt > log/23/stdout1155 2> log/23/stderr1155 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1159 ../src/curl -q --include --trace-ascii log/8/trace1159 --trace-config all --trace-time http://127.0.0.1:45261/we/want/our/1159 -w '%{redirect_url}\n' > log/8/stdout1159 2> log/8/stderr1159 s (pid 135165) 07:35:59.094502 DATA sockfilt for passive data channel quit (pid 135165) 07:35:59.094530 =====> Closed passive DATA connection 07:35:59.094557 > "226 File transfer complete[CR][LF]" 07:35:59.137205 < "QUIT" 07:35:59.137250 > "221 bye bye baby[CR][LF]" 07:35:59.137499 MAIN sockfilt said DISC 07:35:59.137554 ====> Client disconnected 07:35:59.137623 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.934821 ====> Client connect 07:35:58.935072 Received DATA (on stdin) 07:35:58.935086 > 160 bytes data, server => client 07:35:58.935098 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:58.935108 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:58.935118 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:58.935186 < 16 bytes data, client => server 07:35:58.935197 'USER anonymous\r\n' 07:35:58.935351 Received DATA (on stdin) 07:35:58.935364 > 33 bytes data, server => client 07:35:58.935373 '331 We are happy you popped in!\r\n' 07:35:58.935422 < 22 bytes data, client => server 07:35:58.935435 'PASS ftp@example.com\r\n' 07:35:58.935610 Received DATA (on stdin) 07:35:58.935630 > 30 bytes data, server => client 07:35:58.935640 '230 Welcome you silly person\r\n' 07:35:58.935723 < 5 bytes data, client => server 07:35:58.935735 'PWD\r\n' 07:35:58.935833 Received DATA (on stdin) 07:35:58.935844 > 30 bytes data, server => client 07:35:58.935854 '257 "/" is current directory\r\n' 07:35:58.935908 < 6 bytes data, client => server 07:35:58.935919 'EPSV\r\n' 07:35:58.939227 Received DATA (on stdin) 07:35:58.939241 > 38 bytes data, server => client 07:35:58.939252 '229 Entering Passive Mode (|||44867|)\n' 07:35:58.939422 < 8 bytes data, client => server 07:35:58.939433 'TYPE I\r\n' 07:35:58.939588 Received DATA (on stdin) 07:35:58.939599 > 33 bytes data, server => client 07:35:58.939609 '200 I modify TYPE as you wanted\r\n' 07:35:58.939654 < 21 bytes data, client => server 07:35:58.939665 'SIZE verifiedserver\r\n' 07:35:58.939763 Received DATA (on stdin) 07:35:58.939774 > 8 bytes data, server => client 07:35:58.939783 '213 17\r\n' 07:35:58.939823 < 21 bytes data, client => server 07:35:58.939833 'RETR verifiedserver\r\n' 07:35:58.940015 Received DATA (on stdin) 07:35:58.940027 > 29 bytes data, server => client 07:35:58.940037 '150 Binary junk (17 bytes).\r\n' 07:35:58.940542 Received DATA (on stdin) 07:35:58.940554 > 28 bytes data, server => client 07:35:58.940565 '226 File transfer complete\r\n' 07:35:58.983040 < 6 bytes data, client => server 07:35:58.983063 'QUIT\r\n' 07:35:58.983236 Received DATA (on stdin) 07:35:58.983246 > 18 bytes data, server => client 07:35:58.983256 '221 bye bye baby\r\n' 07:35:58.983416 ====> Client disconnect 07:35:58.983609 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:59.937820 Running IPv4 version 07:35:59.937886 Listening on port 44867 07:35:59.938027 Wrote pid 135165 to log/24/server/ftp_sockdata.pid 07:35:59.938050 Received PING (on stdin) 07:35:59.939051 Received PORT (on stdin) 07:35:59.939395 ====> Client connect 07:35:59.940064 Received DATA (on stdin) 07:35:59.940076 > 17 bytes data, server => client 07:35:59.940087 'WE ROOLZ: 81588\r\n' 07:35:59.940109 Received DISC (on stdin) 07:35:59.940119 ====> Client forcibly disconnected 07:35:59.940225 Received QUIT (on stdin) 07:35:59.940238 quits 07:35:59.940299 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1149 === End of file server.cmd === Start of file valgrind1149 ==135508== ==135508== Process terminating with default action of signal 4 (SIGILL) ==135508== Illegal opcode at address 0x4003082 ==135508== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135508== by 0x4003082: main (tool_main.c:234) === End of file valgrind1149 test 1155...[HTTP cookie with parameter word as name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1155 ../src/curl -q --output log/23/curl1155.out --include --trace-ascii log/23/trace1155 --trace-config all --trace-time http://127.0.0.1:45701/1155 -c log/23/cookies1155.txt > log/23/stdout1155 2> log/23/stderr1155 1155: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1155 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1155 ../src/curl -q --output log/23/curl1155.out --include --trace-ascii log/23/trace1155 --trace-config all --trace-time http://127.0.0.1:45701/1155 -c log/23/cookies1155.txt > log/23/stdout1155 2> log/23/stderr1155 === End of file commands.log === Start of file http_server.log 07:35:59.015612 ====> Client connect 07:35:59.015647 accept_connection 3 returned 4 07:35:59.015662 accept_connection 3 returned 0 07:35:59.015676 Read 93 bytes 07:35:59.015686 Process 93 bytes request 07:35:59.015699 Got request: GET /verifiedserver HTTP/1.1 07:35:59.015708 Are-we-friendly question received 07:35:59.015751 Wrote request (93 bytes) input to log/23/server.input 07:35:59.015767 Identifying ourselves as friends 07:35:59.015816 Response sent (56 bytes) and written to log/23/server.response 07:35:59.015825 special request received, no persistency 07:35:59.015833 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1155 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1155 ==135623== ==135623== Process terminating with default action of signal 4 (SIGILL) ==135623== Illegal opcode at address 0x4003082 ==135623== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135623== by 0x4003082: main (tool_main.c:234) === End of file valgrind1155 CMD (1280): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/checksrc.pl -bmagicbad -balsobad log/24/code1185.c > log/24/stdout1185 2> log/24/stderr1185 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1167.pl /startdir/src/curl/tests/.. > log/2/stdout1167 2> log/2/stderr1167 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1173.pl /startdir/src/curl/tests/../docs/libcurl/symbols-in-versions /startdir/src/build-curl/tests/../docs/*.1 /startdir/src/build-curl/tests/../docs/cmdline-opts/*.1 /startdir/src/build-curl/tests/../docs/libcurl/*.3 /startdir/src/build-curl/tests/../docs/libcurl/opts/*.3 > log/6/stdout1173 2> log/6/stderr1173 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1160 ../src/curl -q --output log/22/curl1160.out --include --trace-ascii log/22/trace1160 --trace-config all --trace-time http://127.0.0.1:46761/1160 -c log/22/cookies1160.txt > log/22/stdout1160 2> log/22/stderr1160 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1161 ../src/curl -q --output log/11/curl1161.out --include --trace-ascii log/11/trace1161 --trace-config all --trace-time http://127.0.0.1:41173/1161 -c log/11/cookies1161.txt > log/11/stdout1161 2> log/11/stderr1161 test 1159...[HTTP Location: and 'redirect_url' with non-supported scheme] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1159 ../src/curl -q --include --trace-ascii log/8/trace1159 --trace-config all --trace-time http://127.0.0.1:45261/we/want/our/1159 -w '%{redirect_url}\n' > log/8/stdout1159 2> log/8/stderr1159 1159: stdout FAILED: --- log/8/check-expected 2025-07-18 07:35:59.773779545 +0000 +++ log/8/check-generated 2025-07-18 07:35:59.773779545 +0000 @@ -1,7 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: ht3p://localhost/[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -This server reply is for testing a simple Location: following[LF] -ht3p://localhost/[LF] == Contents of files in the log/8/ dir after test 1159 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: ht3p://localhost/[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] This server reply is for testing a simple Location: following[LF] ht3p://localhost/[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1159 ../src/curl -q --include --trace-ascii log/8/trace1159 --trace-config all --trace-time http://127.0.0.1:45261/we/want/our/1159 -w '%{redirect_url}\n' > log/8/stdout1159 2> log/8/stderr1159 === End of file commands.log === Start of file http_server.log 07:35:59.055291 ====> Client connect 07:35:59.055319 accept_connection 3 returned 4 07:35:59.055336 accept_connection 3 returned 0 07:35:59.055350 Read 93 bytes 07:35:59.055360 Process 93 bytes request 07:35:59.055372 Got request: GET /verifiedserver HTTP/1.1 07:35:59.055382 Are-we-friendly question received 07:35:59.055405 Wrote request (93 bytes) input to log/8/server.input 07:35:59.055423 Identifying ourselves as friends 07:35:59.055477 Response sent (56 bytes) and written to log/8/server.response 07:35:59.055488 special request received, no persistency 07:35:59.055497 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1159 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1159 ==135818== ==135818== Process terminating with default action of signal 4 (SIGILL) ==135818== Illegal opcode at address 0x4003082 ==135818== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==135818== by 0x4003082: main (tool_main.c:234) === End of file valgrind1159 * starts no server test 1185...[checksrc] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/checksrc.pl -bmagicbad -balsobad log/24/code1185.c > log/24/stdout1185 2> log/24/stderr1185 valgrind SKIPPED s------e--- OK (1098 out of 1707, remaining: 00:39, took 0.044s, duration: 01:10) * starts no server test 1167...[Verify curl prefix of public symbols in header files] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1167.pl /startdir/src/curl/tests/.. > log/2/stdout1167 2> log/2/stderr1167 valgrind SKIPPED -------e--- OK (1083 out of 1707, remaining: 00:40, took 0.186s, duration: 01:10) * starts no server test 1173...[Manpage syntax checks] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1173.pl /startdir/src/curl/tests/../docs/libcurl/symbols-in-versions /startdir/src/build-curl/tests/../docs/*.1 /startdir/src/build-curl/tests/../docs/cmdline-opts/*.1 /startdir/src/build-curl/tests/../docs/libcurl/*.3 /startdir/src/build-curl/tests/../docs/libcurl/opts/*.3 > log/6/stdout1173 2> log/6/stderr1173 valgrind SKIPPED -r-----e--- OK (1089 out of 1707, remaining: 00:40, took 0.127s, duration: 01:10) test 1160...[HTTP with long funny format cookie] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1160 ../src/curl -q --output log/22/curl1160.out --include --trace-ascii log/22/trace1160 --trace-config all --trace-time http://127.0.0.1:46761/1160 -c log/22/cookies1160.txt > log/22/stdout1160 2> log/22/stderr1160 1160: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1160 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1160 ../src/curl -q --output log/22/curl1160.out --include --trace-ascii log/22/trace1160 --trace-config all --trace-time http://127.0.0.1:46761/1160 -c log/22/cookies1160.txt > log/22/stdout1160 2> log/22/stderr1160 === End of file commands.log === Start of file http_server.log 07:35:59.134139 ====> Client connect 07:35:59.134174 accept_connection 3 returned 4 07:35:59.134191 accept_connection 3 returned 0 07:35:59.134205 Read 93 bytes 07:35:59.134215 Process 93 bytes request 07:35:59.134228 Got request: GET /verifiedserver HTTP/1.1 07:35:59.134237 Are-we-friendly question received 07:35:59.134261 Wrote request (93 bytes) input to log/22/server.input 07:35:59.134278 Identifying ourselves as friends 07:35:59.134332 Response sent (56 bytes) and written to log/22/server.response 07:35:59.134342 special request received, no persistency 07:35:59.134351 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1160 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1160 ==136033== ==136033== Process terminating with default action of signal 4 (SIGILL) ==136033== Illegal opcode at address 0x4003082 ==136033== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136033== by 0x4003082: main (tool_main.c:234) === End of file valgrind1160 test 1161...[HTTP cookie with path set twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1161 ../src/curl -q --output log/11/curl1161.out --include --trace-ascii log/11/trace1161 --trace-config all --trace-time http://127.0.0.1:41173/1161 -c log/11/cookies1161.txt > log/11/stdout1161 2> log/11/stderr1161 1161: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1161 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind11CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1164 ../src/curl -q --output log/20/curl1164.out --include --trace-ascii log/20/trace1164 --trace-config all --trace-time http://127.0.0.1:37169/1164 -w '%{size_download}\n' --http0.9 > log/20/stdout1164 2> log/20/stderr1164 61 ../src/curl -q --output log/11/curl1161.out --include --trace-ascii log/11/trace1161 --trace-config all --trace-time http://127.0.0.1:41173/1161 -c log/11/cookies1161.txt > log/11/stdout1161 2> log/11/stderr1161 === End of file commands.log === Start of file http_server.log 07:35:59.151689 ====> Client connect 07:35:59.151724 accept_connection 3 returned 4 07:35:59.151742 accept_connection 3 returned 0 07:35:59.151757 Read 93 bytes 07:35:59.151768 Process 93 bytes request 07:35:59.151782 Got request: GET /verifiedserver HTTP/1.1 07:35:59.151792 Are-we-friendly question received 07:35:59.151847 Wrote request (93 bytes) input to log/11/server.input 07:35:59.151866 Identifying ourselves as friends 07:35:59.151924 Response sent (56 bytes) and written to log/11/server.response 07:35:59.151935 special request received, no persistency 07:35:59.151945 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1161 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1161 ==136057== ==136057== Process terminating with default action of signal 4 (SIGILL) ==136057== Illegal opcode at address 0x4003082 ==136057== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136057== by 0x4003082: main (tool_main.c:234) === End of file valgrind1161 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1113 ./libtest/libtests lib574 "ftp://127.0.0.1:34951/fully_simulated/DOS/*.txt" > log/10/stdout1113 2> log/10/stderr1113 test 1164...[HTTP/0.9 GET and all zeroes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1164 ../src/curl -q --output log/20/curl1164.out --include --trace-ascii log/20/trace1164 --trace-config all --trace-time http://127.0.0.1:37169/1164 -w '%{size_download}\n' --http0.9 > log/20/stdout1164 2> log/20/stderr1164 1164: stdout FAILED: --- log/20/check-expected 2025-07-18 07:36:00.050446218 +0000 +++ log/20/check-generated 2025-07-18 07:36:00.050446218 +0000 @@ -1 +0,0 @@ -208[CR][LF] == Contents of files in the log/20/ dir after test 1164 === Start of file check-expected 208[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1164 ../src/curl -q --output log/20/curl1164.out --include --trace-ascii log/20/trace1164 --trace-config all --trace-time http://127.0.0.1:37169/1164 -w '%{size_download}\n' --http0.9 > log/20/stdout1164 2> log/20/stderr1164 === End of file commands.log === Start of file http_server.log 07:35:59.298510 ====> Client connect 07:35:59.298541 accept_connection 3 returned 4 07:35:59.298558 accept_connection 3 returned 0 07:35:59.298571 Read 93 bytes 07:35:59.298581 Process 93 bytes request 07:35:59.298595 Got request: GET /verifiedserver HTTP/1.1 07:35:59.298605 Are-we-friendly question received 07:35:59.298628 Wrote request (93 bytes) input to log/20/server.input 07:35:59.298644 Identifying ourselves as friends 07:35:59.298698 Response sent (56 bytes) and written to log/20/server.response 07:35:59.298708 special request received, no persistency 07:35:59.298717 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1164 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1164 ==136191== ==136191== Process terminating with default action of signal 4 (SIGILL) ==136191== Illegal opcode at address 0x4003082 ==136191== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136191== by 0x4003082: main (tool_main.c:234) === End of file valgrind1164 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/10/server/ftp_server.pid" --logfile "log/10/ftp_server.log" --logdir "log/10" --portfile "log/10/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 34951 (log/10/server/ftp_server.port) RUN: FTP server is PID 133133 port 34951 * pid ftp => 133133 133133 test 1113...[FTP wildcard download - changed fnmatch, 2x perform (DOS LIST response)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1113 ./libtest/libtests lib574 "ftp://127.0.0.1:34951/fully_simulated/DOS/*.txt" > log/10/stdout1113 2> log/10/stderr1113 1113: stdout FAILED: --- log/10/check-expected 2025-07-18 07:36:00.060446218 +0000 +++ log/10/check-generated 2025-07-18 07:36:00.060446218 +0000 @@ -1,10 +0,0 @@ -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] -This file should have permissions 444[LF] -This file should have permissions 666[LF] -This file should have permissions 777[LF] -This is content of file "file.txt"[LF] -Some junk ;-) This file does not really exist.[LF] == Contents of files in the log/10/ dir after test 1113 === Start of file check-expected This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] This file should have permissions 444[LF] This file should have permissions 666[LF] This file should have permissions 777[LF] This is content of file "file.txt"[LF] Some junk ;-) This file does not really exist.[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1113 ./libtest/libtests lib574 "ftp://127.0.0.1:34951/fully_simulated/DOS/*.txt" > log/10/stdout1113 2> log/10/stderr1113 === End of file commands.log === Start of file ftp_server.log 07:35:58.116954 FTP server listens on port IPv4/34951 07:35:58.117023 logged pid 133133 in log/10/server/ftp_server.pid 07:35:58.117045 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:58.962685 Running IPv4 version 07:35:58.962741 Listening on port 34951 07:35:58.962779 Wrote pid 133183 to log/10/server/ftp_sockctrl.pid 07:35:58.962811 Wrote port 34951 to log/10/server/ftp_server.port 07:35:58.962834 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file server.cmd Testnum 1113 === End of file server.cmd === Start of file stderr1113 URL: ftp://127.0.0.1:34951/fully_simulated/DOS/*.txt === End of file stderr1113 === Start of file valgrind1113 ==135184== ==135184== Process terminating with default action of signal 4 (SIGILL) ==135184== Illegal opcode at address 0x51C2DB3 ==135184== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==135184== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==135184== by 0x51C2DB3: Curl_open (url.c:541) ==135184== by 0x513D46F: curl_easy_init (easy.c:372) ==135184== by 0x4014326: test_lib574.lto_priv.0 (lib574.c:47) ==135184== by 0x4003443: main (first.c:167) ==135184== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x533CFA5: __tsearch (tsearch.c:337) ==135184== by 0x533CFA5: tsearch (tsearch.c:290) ==135184== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135184== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135184== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135184== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135184== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135184== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== ==135184== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x533CFA5: __tsearch (tsearch.c:337) ==135184== by 0x533CFA5: tsearch (tsearch.c:290) ==135184== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135184== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==135184== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== ==135184== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==135184== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135184== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135184== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135184== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135184== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== ==135184== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==135184== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==135184== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== ==135184== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==135184== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==135184== by 0x51C2D03: Curl_open (url.c:520) ==135184== by 0x513D46F: curl_easy_init (easy.c:372) ==135184== by 0x4014326: test_lib574.lto_priv.0 (lib574.c:47) ==135184== by 0x4003443: main (first.c:167) ==135184== ==135184== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x533CFA5: __tsearch (tsearch.c:337) ==135184== by 0x533CFA5: tsearch (tsearch.c:290) ==135184== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135184== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135184== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135184== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135184== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135184== by 0x524F775: __gconv_reaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1166 ../src/curl -q --output log/4/curl1166.out --include --trace-ascii log/4/trace1166 --trace-config all --trace-time http://127.0.0.1:33235/want/1166 http://127.0.0.1:33235/want/1166 > log/4/stdout1166 2> log/4/stderr1166 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1156 ./libtest/libtests lib1156 http://127.0.0.1:42345/want/1156 > log/3/stdout1156 2> log/3/stderr1156 d_conf (gconv_conf.c:480) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== ==135184== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==135184== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135184== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==135184== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135184== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135184== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135184== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135184== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==135184== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135184== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135184== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135184== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135184== by 0x525A142: setlocale (setlocale.c:337) ==135184== by 0x400336E: main (first.c:123) ==135184== === End of file valgrind1113 test 1166...[HTTP response with cookies but not receiving!] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1166 ../src/curl -q --output log/4/curl1166.out --include --trace-ascii log/4/trace1166 --trace-config all --trace-time http://127.0.0.1:33235/want/1166 http://127.0.0.1:33235/want/1166 > log/4/stdout1166 2> log/4/stderr1166 1166: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1166 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1166 ../src/curl -q --output log/4/curl1166.out --include --trace-ascii log/4/trace1166 --trace-config all --trace-time http://127.0.0.1:33235/want/1166 http://127.0.0.1:33235/want/1166 > log/4/stdout1166 2> log/4/stderr1166 === End of file commands.log === Start of file http_server.log 07:35:59.394990 ====> Client connect 07:35:59.395028 accept_connection 3 returned 4 07:35:59.395045 accept_connection 3 returned 0 07:35:59.395061 Read 93 bytes 07:35:59.395071 Process 93 bytes request 07:35:59.395084 Got request: GET /verifiedserver HTTP/1.1 07:35:59.395094 Are-we-friendly question received 07:35:59.395121 Wrote request (93 bytes) input to log/4/server.input 07:35:59.395138 Identifying ourselves as friends 07:35:59.395196 Response sent (56 bytes) and written to log/4/server.response 07:35:59.395208 special request received, no persistency 07:35:59.395217 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1166 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1166 ==136350== ==136350== Process terminating with default action of signal 4 (SIGILL) ==136350== Illegal opcode at address 0x4003082 ==136350== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136350== by 0x4003082: main (tool_main.c:234) === End of file valgrind1166 test 1156...[HTTP resume/range fail range-error content-range combinations] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1156 ./libtest/libtests lib1156 http://127.0.0.1:42345/want/1156 > log/3/stdout1156 2> log/3/stderr1156 1156: stdout FAILED: --- log/3/check-expected 2025-07-18 07:36:00.183779554 +0000 +++ log/3/check-generated 2025-07-18 07:36:00.183779554 +0000 @@ -1 +0,0 @@ -0[LF] == Contents of files in the log/3/ dir after test 1156 === Start of file check-expected 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1156 ./libtest/libtests lib1156 http://127.0.0.1:42345/want/1156 > log/3/stdout1156 2> log/3/stderr1156 === End of file commands.log === Start of file http_server.log 07:35:59.045143 ====> Client connect 07:35:59.045179 accept_connection 3 returned 4 07:35:59.045196 accept_connection 3 returned 0 07:35:59.045211 Read 93 bytes 07:35:59.045222 Process 93 bytes request 07:35:59.045236 Got request: GET /verifiedserver HTTP/1.1 07:35:59.045245 Are-we-friendly question received 07:35:59.045269 Wrote request (93 bytes) input to log/3/server.input 07:35:59.045285 Identifying ourselves as friends 07:35:59.045338 Response sent (56 bytes) and written to log/3/server.response 07:35:59.045348 special request received, no persistency 07:35:59.045357 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1156 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr1156 URL: http://127.0.0.1:42345/want/1156 === End of file stderr1156 === Start of file valgrind1156 ==135782== ==135782== Process terminating with default action of signal 4 (SIGILL) ==135782== Illegal opcode at address 0x51C2DB3 ==135782== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==135782== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==135782== by 0x51C2DB3: Curl_open (url.c:541) ==135782== by 0x513D46F: curl_easy_init (easy.c:372) ==135782== by 0x40211F5: test_lib1156.lto_priv.0 (lib1156.c:147) ==135782== by 0x4003443: main (first.c:167) ==135782== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x533CFA5: __tsearch (tsearch.c:337) ==135782== by 0x533CFA5: tsearch (tsearch.c:290) ==135782== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135782== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135782== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135782== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135782== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135782== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== ==135782== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x533CFA5: __tsearch (tsearch.c:337) ==135782== by 0x533CFA5: tsearch (tsearch.c:290) ==135782== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135782== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==135782== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== ==135782== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==135782== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135782== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135782== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135782== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==135782== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== ==135782== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==135782== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==135782== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== ==135782== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==135782== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==135782== by 0x51C2D03: Curl_open (url.c:520) ==135782== by 0x513D46F: curl_easy_init (easy.c:372) ==135782== by 0x40211F5: test_lib1156.lto_priv.0 (lib1156.c:147) ==135782== by 0x4003443: main (first.c:167) ==135782== ==135782== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x533CFA5: __tsearch (tsearch.c:337) ==135782== by 0x533CFA5: tsearch (tsearch.c:290) ==135782== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==135782== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135782== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135782== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135782== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135782== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== ==135782== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==135782== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==135782== by 0x524F0A9: add_alias2.part.0 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1180 ../src/curl -q --output log/19/curl1180.out --include --trace-ascii log/19/trace1180 --trace-config all --trace-time --proxy http://127.0.0.1:33487 -H "Proxy-Connection: Keep-Alive" http://127.0.0.1:33487/1180 > log/19/stdout1180 2> log/19/stderr1180 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1183 ../src/curl -q --output log/12/curl1183.out --include --trace-ascii log/12/trace1183 --trace-config all --trace-time http://127.0.0.1:37285/1183 > log/12/stdout1183 2> log/12/stderr1183 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1188 ../src/curl -q --output log/24/curl1188.out --include --trace-ascii log/24/trace1188 --trace-config all --trace-time -f -s -w '%{onerror}%{stderr}%{urlnum} says %{exitcode} %{errormsg}\n' http://127.0.0.1:38675/we/want/our/1188 http://127.0.0.1:38675/we/want/our/1188 > log/24/stdout1188 2> log/24/stderr1188 (gconv_conf.c:132) ==135782== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==135782== by 0x524F3F0: add_alias (gconv_conf.c:178) ==135782== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==135782== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==135782== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==135782== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==135782== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==135782== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==135782== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==135782== by 0x525A142: setlocale (setlocale.c:337) ==135782== by 0x400336E: main (first.c:123) ==135782== === End of file valgrind1156 test 1180...[HTTP GET request with proxy and -H "Proxy-Connection: keep-alive"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1180 ../src/curl -q --output log/19/curl1180.out --include --trace-ascii log/19/trace1180 --trace-config all --trace-time --proxy http://127.0.0.1:33487 -H "Proxy-Connection: Keep-Alive" http://127.0.0.1:33487/1180 > log/19/stdout1180 2> log/19/stderr1180 1180: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1180 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1180 ../src/curl -q --output log/19/curl1180.out --include --trace-ascii log/19/trace1180 --trace-config all --trace-time --proxy http://127.0.0.1:33487 -H "Proxy-Connection: Keep-Alive" http://127.0.0.1:33487/1180 > log/19/stdout1180 2> log/19/stderr1180 === End of file commands.log === Start of file http_server.log 07:35:59.618933 ====> Client connect 07:35:59.618971 accept_connection 3 returned 4 07:35:59.618987 accept_connection 3 returned 0 07:35:59.619001 Read 93 bytes 07:35:59.619011 Process 93 bytes request 07:35:59.619022 Got request: GET /verifiedserver HTTP/1.1 07:35:59.619031 Are-we-friendly question received 07:35:59.619058 Wrote request (93 bytes) input to log/19/server.input 07:35:59.619073 Identifying ourselves as friends 07:35:59.619126 Response sent (56 bytes) and written to log/19/server.response 07:35:59.619134 special request received, no persistency 07:35:59.619144 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1180 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1180 ==136858== ==136858== Process terminating with default action of signal 4 (SIGILL) ==136858== Illegal opcode at address 0x4003082 ==136858== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136858== by 0x4003082: main (tool_main.c:234) === End of file valgrind1180 test 1183...[1183 used instead of actual test number] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1183 ../src/curl -q --output log/12/curl1183.out --include --trace-ascii log/12/trace1183 --trace-config all --trace-time http://127.0.0.1:37285/1183 > log/12/stdout1183 2> log/12/stderr1183 1183: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1183 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1183 ../src/curl -q --output log/12/curl1183.out --include --trace-ascii log/12/trace1183 --trace-config all --trace-time http://127.0.0.1:37285/1183 > log/12/stdout1183 2> log/12/stderr1183 === End of file commands.log === Start of file http_server.log 07:35:59.635621 ====> Client connect 07:35:59.635657 accept_connection 3 returned 4 07:35:59.635673 accept_connection 3 returned 0 07:35:59.635688 Read 93 bytes 07:35:59.635698 Process 93 bytes request 07:35:59.635711 Got request: GET /verifiedserver HTTP/1.1 07:35:59.635720 Are-we-friendly question received 07:35:59.635747 Wrote request (93 bytes) input to log/12/server.input 07:35:59.635764 Identifying ourselves as friends 07:35:59.635824 Response sent (56 bytes) and written to log/12/server.response 07:35:59.635836 special request received, no persistency 07:35:59.635845 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1183 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1183 ==136941== ==136941== Process terminating with default action of signal 4 (SIGILL) ==136941== Illegal opcode at address 0x4003082 ==136941== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136941== by 0x4003082: main (tool_main.c:234) === End of file valgrind1183 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1168 ../src/curl -q --output log/5/curl1168.out --include --trace-ascii log/5/trace1168 --trace-config all --trace-time http://127.0.0.1:46675/want/1168 -L -u "catmai#d:#DZaRJYrixKE*gFY" > log/5/stdout1168 2> log/5/stderr1168 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1186 ../src/curl -q --output log/23/curl1186.out --include --trace-ascii log/23/trace1186 --trace-config all --trace-time http://127.0.0.1:45701/we/want/1186 --form-escape -F "file=@\"log/23/test1186\\\".txt\";type=mo/foo;filename=\"test1186\\\".txt\"" -F 'file2=@"log/23/test1186\".txt"' -F 'file3=@"log/23/test1186\".txt";type=m/f,"log/23/test1186\".txt"' > log/23/stdout1186 2> log/23/stderr1186 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1171 ../src/curl -q --output log/13/curl1171.out --include --trace-ascii log/13/trace1171 --trace-config all --trace-time http://127.0.0.1:33627/1171 --tr-encoding -H "Connection;" > log/13/stdout1171 2> log/13/stderr1171 test 1188...[--write-out with %{onerror} and %{urlnum} to stderr] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1188 ../src/curl -q --output log/24/curl1188.out --include --trace-ascii log/24/trace1188 --trace-config all --trace-time -f -s -w '%{onerror}%{stderr}%{urlnum} says %{exitcode} %{errormsg}\n' http://127.0.0.1:38675/we/want/our/1188 http://127.0.0.1:38675/we/want/our/1188 > log/24/stdout1188 2> log/24/stderr1188 1188: stderr FAILED: --- log/24/check-expected 2025-07-18 07:36:00.267112890 +0000 +++ log/24/check-generated 2025-07-18 07:36:00.267112890 +0000 @@ -1,2 +0,0 @@ -0 says 22 The requested URL returned error: 404[CR][LF] -1 says 22 The requested URL returned error: 404[CR][LF] == Contents of files in the log/24/ dir after test 1188 === Start of file check-expected 0 says 22 The requested URL returned error: 404[CR][LF] 1 says 22 The requested URL returned error: 404[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1188 ../src/curl -q --output log/24/curl1188.out --include --trace-ascii log/24/trace1188 --trace-config all --trace-time -f -s -w '%{onerror}%{stderr}%{urlnum} says %{exitcode} %{errormsg}\n' http://127.0.0.1:38675/we/want/our/1188 http://127.0.0.1:38675/we/want/our/1188 > log/24/stdout1188 2> log/24/stderr1188 === End of file commands.log === Start of file http_server.log 07:35:59.688727 ====> Client connect 07:35:59.688761 accept_connection 3 returned 4 07:35:59.688777 accept_connection 3 returned 0 07:35:59.688792 Read 93 bytes 07:35:59.688801 Process 93 bytes request 07:35:59.688815 Got request: GET /verifiedserver HTTP/1.1 07:35:59.688824 Are-we-friendly question received 07:35:59.688849 Wrote request (93 bytes) input to log/24/server.input 07:35:59.688865 Identifying ourselves as friends 07:35:59.688917 Response sent (56 bytes) and written to log/24/server.response 07:35:59.688926 special request received, no persistency 07:35:59.688935 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1188 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1188 ==137219== ==137219== Process terminating with default action of signal 4 (SIGILL) ==137219== Illegal opcode at address 0x4003082 ==137219== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137219== by 0x4003082: main (tool_main.c:234) === End of file valgrind1188 test 1168...[HTTP redirect with credentials using # in user and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1168 ../src/curl -q --output log/5/curl1168.out --include --trace-ascii log/5/trace1168 --trace-config all --trace-time http://127.0.0.1:46675/want/1168 -L -u "catmai#d:#DZaRJYrixKE*gFY" > log/5/stdout1168 2> log/5/stderr1168 1168: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1168 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1168 ../src/curl -q --output log/5/curl1168.out --include --trace-ascii log/5/trace1168 --trace-config all --trace-time http://127.0.0.1:46675/want/1168 -L -u "catmai#d:#DZaRJYrixKE*gFY" > log/5/stdout1168 2> log/5/stderr1168 === End of file commands.log === Start of file http_server.log 07:35:59.524014 ====> Client connect 07:35:59.524050 accept_connection 3 returned 4 07:35:59.524067 accept_connection 3 returned 0 07:35:59.524081 Read 93 bytes 07:35:59.524090 Process 93 bytes request 07:35:59.524102 Got request: GET /verifiedserver HTTP/1.1 07:35:59.524111 Are-we-friendly question received 07:35:59.524145 Wrote request (93 bytes) input to log/5/server.input 07:35:59.524160 Identifying ourselves as friends 07:35:59.524243 Response sent (56 bytes) and written to log/5/server.response 07:35:59.524252 special request received, no persistency 07:35:59.524261 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1168 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1168 ==136452== ==136452== Process terminating with default action of signal 4 (SIGILL) ==136452== Illegal opcode at address 0x4003082 ==136452== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136452== by 0x4003082: main (tool_main.c:234) === End of file valgrind1168 test 1186...[Multipart formposting with backslash-escaping filename containing '"'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1186 ../src/curl -q --output log/23/curl1186.out --include --trace-ascii log/23/trace1186 --trace-config all --trace-time http://127.0.0.1:45701/we/want/1186 --form-escape -F "file=@\"log/23/test1186\\\".txt\";type=mo/foo;filename=\"test1186\\\".txt\"" -F 'file2=@"log/23/test1186\".txt"' -F 'file3=@"log/23/test1186\".txt";type=m/f,"log/23/test1186\".txt"' > log/23/stdout1186 2> log/23/stderr1186 1186: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1186 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1186 ../src/curl -q --output log/23/curl1186.out --include --trace-ascii log/23/trace1186 --trace-config all --trace-time http://127.0.0.1:45701/we/want/1186 --form-escape -F "file=@\"log/23/test1186\\\".txt\";type=mo/foo;filename=\"test1186\\\".txt\"" -F 'file2=@"log/23/test1186\".txt"' -F 'file3=@"log/23/test1186\".txt";type=m/f,"log/23/test1186\".txt"' > log/23/stdout1186 2> log/23/stderr1186 === End of file commands.log === Start of file http_server.log 07:35:59.647557 ====> Client connect 07:35:59.647584 accept_connection 3 returned 4 07:35:59.647600 accept_connection 3 returned 0 07:35:59.647613 Read 93 bytes 07:35:59.647623 Process 93 bytes request 07:35:59.647635 Got request: GET /verifiedserver HTTP/1.1 07:35:59.647644 Are-we-friendly question received 07:35:59.647669 Wrote request (93 bytes) input to log/23/server.input 07:35:59.647684 Identifying ourselves as friends 07:35:59.647734 Response sent (56 bytes) and written to log/23/server.respCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1170 ../src/curl -q --output log/16/curl1170.out --include --trace-ascii log/16/trace1170 --trace-config all --trace-time http://127.0.0.1:46739/1170 --tr-encoding -H "Connection:" > log/16/stdout1170 2> log/16/stderr1170 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1174 ../src/curl -q --output log/14/curl1174.out --include --trace-ascii log/14/trace1174 --trace-config all --trace-time http://127.0.0.1:37963/1174 > log/14/stdout1174 2> log/14/stderr1174 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1181 ../src/curl -q --output log/7/curl1181.out --include --trace-ascii log/7/trace1181 --trace-config all --trace-time --proxy http://127.0.0.1:39077 --proxy-header "Proxy-Connection: Keep-Alive" http://127.0.0.1:39077/1181 > log/7/stdout1181 2> log/7/stderr1181 onse 07:35:59.647743 special request received, no persistency 07:35:59.647752 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1186 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file test1186".txt foo bar This is a bar foo bar foo === End of file test1186".txt === Start of file valgrind1186 ==137058== ==137058== Process terminating with default action of signal 4 (SIGILL) ==137058== Illegal opcode at address 0x4003082 ==137058== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137058== by 0x4003082: main (tool_main.c:234) === End of file valgrind1186 test 1171...[HTTP GET transfer-encoding with blanked Connection:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1171 ../src/curl -q --output log/13/curl1171.out --include --trace-ascii log/13/trace1171 --trace-config all --trace-time http://127.0.0.1:33627/1171 --tr-encoding -H "Connection;" > log/13/stdout1171 2> log/13/stderr1171 1171: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1171 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1171 ../src/curl -q --output log/13/curl1171.out --include --trace-ascii log/13/trace1171 --trace-config all --trace-time http://127.0.0.1:33627/1171 --tr-encoding -H "Connection;" > log/13/stdout1171 2> log/13/stderr1171 === End of file commands.log === Start of file http_server.log 07:35:59.559100 ====> Client connect 07:35:59.559129 accept_connection 3 returned 4 07:35:59.559144 accept_connection 3 returned 0 07:35:59.559157 Read 93 bytes 07:35:59.559167 Process 93 bytes request 07:35:59.559179 Got request: GET /verifiedserver HTTP/1.1 07:35:59.559188 Are-we-friendly question received 07:35:59.559210 Wrote request (93 bytes) input to log/13/server.input 07:35:59.559225 Identifying ourselves as friends 07:35:59.559279 Response sent (56 bytes) and written to log/13/server.response 07:35:59.559532 special request received, no persistency 07:35:59.559552 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1171 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1171 ==136550== ==136550== Process terminating with default action of signal 4 (SIGILL) ==136550== Illegal opcode at address 0x4003082 ==136550== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136550== by 0x4003082: main (tool_main.c:234) === End of file valgrind1171 test 1174...[HTTP/0.9 GET response denied by default] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1174 ../src/curl -q --output log/14/curl1174.out --include --trace-ascii log/14/trace1174 --trace-config all --trace-time http://127.0.0.1:37963/1174 > log/14/stdout1174 2> log/14/stderr1174 1174: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1174 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1174 ../src/curl -q --output log/14/curl1174.out --include --trace-ascii log/14/trace1174 --trace-config all --trace-time http://127.0.0.1:37963/1174 > log/14/stdout1174 2> log/14/stderr1174 === End of file commands.log === Start of file http_server.log 07:35:59.587288 ====> Client connect 07:35:59.587321 accept_connection 3 returned 4 07:35:59.587337 accept_connection 3 returned 0 07:35:59.587351 Read 93 bytes 07:35:59.587361 Process 93 bytes request 07:35:59.587373 Got request: GET /verifiedserver HTTP/1.1 07:35:59.587382 Are-we-friendly question received 07:35:59.587408 Wrote request (93 bytes) input to log/14/server.input 07:35:59.587423 Identifying ourselves as friends 07:35:59.587477 Response sent (56 bytes) and written to log/14/server.response 07:35:59.587487 special request received, no persistency 07:35:59.587496 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1174 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1174 ==136682== ==136682== Process terminating with default action of signal 4 (SIGILL) ==136682== Illegal opcode at address 0x4003082 ==136682== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136682== by 0x4003082: main (tool_main.c:234) === End of file valgrind1174 test 1170...[HTTP GET transfer-encoding with removed Connection:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1170 ../src/curl -q --output log/16/curl1170.out --include --trace-ascii log/16/trace1170 --trace-config all --trace-time http://127.0.0.1:46739/1170 --tr-encoding -H "Connection:" > log/16/stdout1170 2> log/16/stderr1170 1170: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1170 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1170 ../src/curl -q --output log/16/curl1170.out --include --trace-ascii log/16/trace1170 --trace-config all --trace-time http://127.0.0.1:46739/1170 --tr-encoding -H "Connection:" > log/16/stdout1170 2> log/16/stderr1170 === End of file commands.log === Start of file http_server.log 07:35:59.544350 ====> Client connect 07:35:59.544380 accept_connection 3 returned 4 07:35:59.544396 accept_connection 3 returned 0 07:35:59.544408 Read 93 bytes 07:35:59.544418 Process 93 bytes request 07:35:59.544431 Got requesCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1172 ../src/curl -q --output log/18/curl1172.out --include --trace-ascii log/18/trace1172 --trace-config all --trace-time http://127.0.0.1:45825/1172 --no-http0.9 > log/18/stdout1172 2> log/18/stderr1172 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1176 ../src/curl -q --include --trace-ascii log/9/trace1176 --trace-config all --trace-time http://127.0.0.1:34999/1176 -o 'log/9/base-#0' > log/9/stdout1176 2> log/9/stderr1176 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1178 ../src/curl -q --output log/1/curl1178.out --include --trace-ascii log/1/trace1178 --trace-config all --trace-time http://127.0.0.1:38941/we/want/that/page/1178 -x http://127.0.0.1:38941 -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB > log/1/stdout1178 2> log/1/stderr1178 t: GET /verifiedserver HTTP/1.1 07:35:59.544440 Are-we-friendly question received 07:35:59.544461 Wrote request (93 bytes) input to log/16/server.input 07:35:59.544476 Identifying ourselves as friends 07:35:59.544527 Response sent (56 bytes) and written to log/16/server.response 07:35:59.544536 special request received, no persistency 07:35:59.544545 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1170 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1170 ==136494== ==136494== Process terminating with default action of signal 4 (SIGILL) ==136494== Illegal opcode at address 0x4003082 ==136494== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136494== by 0x4003082: main (tool_main.c:234) === End of file valgrind1170 test 1181...[HTTP GET request with proxy and "Proxy-Connection: Keep-Alive"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1181 ../src/curl -q --output log/7/curl1181.out --include --trace-ascii log/7/trace1181 --trace-config all --trace-time --proxy http://127.0.0.1:39077 --proxy-header "Proxy-Connection: Keep-Alive" http://127.0.0.1:39077/1181 > log/7/stdout1181 2> log/7/stderr1181 1181: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1181 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1181 ../src/curl -q --output log/7/curl1181.out --include --trace-ascii log/7/trace1181 --trace-config all --trace-time --proxy http://127.0.0.1:39077 --proxy-header "Proxy-Connection: Keep-Alive" http://127.0.0.1:39077/1181 > log/7/stdout1181 2> log/7/stderr1181 === End of file commands.log === Start of file http_server.log 07:35:59.626034 ====> Client connect 07:35:59.626072 accept_connection 3 returned 4 07:35:59.626102 accept_connection 3 returned 0 07:35:59.626116 Read 93 bytes 07:35:59.626127 Process 93 bytes request 07:35:59.626141 Got request: GET /verifiedserver HTTP/1.1 07:35:59.626158 Are-we-friendly question received 07:35:59.626184 Wrote request (93 bytes) input to log/7/server.input 07:35:59.626200 Identifying ourselves as friends 07:35:59.626261 Response sent (56 bytes) and written to log/7/server.response 07:35:59.626271 special request received, no persistency 07:35:59.626280 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1181 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1181 ==136862== ==136862== Process terminating with default action of signal 4 (SIGILL) ==136862== Illegal opcode at address 0x4003082 ==136862== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136862== by 0x4003082: main (tool_main.c:234) === End of file valgrind1181 test 1172...[HTTP/0.9 GET response denied] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1172 ../src/curl -q --output log/18/curl1172.out --include --trace-ascii log/18/trace1172 --trace-config all --trace-time http://127.0.0.1:45825/1172 --no-http0.9 > log/18/stdout1172 2> log/18/stderr1172 1172: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1172 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1172 ../src/curl -q --output log/18/curl1172.out --include --trace-ascii log/18/trace1172 --trace-config all --trace-time http://127.0.0.1:45825/1172 --no-http0.9 > log/18/stdout1172 2> log/18/stderr1172 === End of file commands.log === Start of file http_server.log 07:35:59.576768 ====> Client connect 07:35:59.576802 accept_connection 3 returned 4 07:35:59.576818 accept_connection 3 returned 0 07:35:59.576831 Read 93 bytes 07:35:59.576840 Process 93 bytes request 07:35:59.576853 Got request: GET /verifiedserver HTTP/1.1 07:35:59.576862 Are-we-friendly question received 07:35:59.576887 Wrote request (93 bytes) input to log/18/server.input 07:35:59.576902 Identifying ourselves as friends 07:35:59.576955 Response sent (56 bytes) and written to log/18/server.response 07:35:59.576966 special request received, no persistency 07:35:59.576984 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1172 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1172 ==136621== ==136621== Process terminating with default action of signal 4 (SIGILL) ==136621== Illegal opcode at address 0x4003082 ==136621== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136621== by 0x4003082: main (tool_main.c:234) === End of file valgrind1172 test 1176...[--output using #0] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1176 ../src/curl -q --include --trace-ascii log/9/trace1176 --trace-config all --trace-time http://127.0.0.1:34999/1176 -o 'log/9/base-#0' > log/9/stdout1176 2> log/9/stderr1176 1176: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1176 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1176 ../src/curl -q --include --trace-ascii log/9/trace1176 --trace-config all --trace-time http://127.0.0.1:34999/1176 -o 'log/9/base-#0' > log/9/stdout1176 2> log/9/stderr1176 === End of file commands.log === Start of file http_server.log 07:35:59.599644 ====> Client connect 07:35:59.599680 accept_connection 3 returned 4 07:35:59.599697 accept_CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1187 ../src/curl -q --output log/8/curl1187.out --include --trace-ascii log/8/trace1187 --trace-config all --trace-time smtp://127.0.0.1:41381/1187 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"' log/8/stdout1187 2> log/8/stderr1187 connection 3 returned 0 07:35:59.599721 Read 93 bytes 07:35:59.599732 Process 93 bytes request 07:35:59.599748 Got request: GET /verifiedserver HTTP/1.1 07:35:59.599757 Are-we-friendly question received 07:35:59.599784 Wrote request (93 bytes) input to log/9/server.input 07:35:59.599800 Identifying ourselves as friends 07:35:59.599860 Response sent (56 bytes) and written to log/9/server.response 07:35:59.599870 special request received, no persistency 07:35:59.599879 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1176 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1176 ==136751== ==136751== Process terminating with default action of signal 4 (SIGILL) ==136751== Illegal opcode at address 0x4003082 ==136751== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136751== by 0x4003082: main (tool_main.c:234) === End of file valgrind1176 test 1178...[HTTP proxy auth with credentials longer than 256 bytes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1178 ../src/curl -q --output log/1/curl1178.out --include --trace-ascii log/1/trace1178 --trace-config all --trace-time http://127.0.0.1:38941/we/want/that/page/1178 -x http://127.0.0.1:38941 -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB > log/1/stdout1178 2> log/1/stderr1178 1178: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1178 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1178 ../src/curl -q --output log/1/curl1178.out --include --trace-ascii log/1/trace1178 --trace-config all --trace-time http://127.0.0.1:38941/we/want/that/page/1178 -x http://127.0.0.1:38941 -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB > log/1/stdout1178 2> log/1/stderr1178 === End of file commands.log === Start of file http_server.log 07:35:59.616136 ====> Client connect 07:35:59.616173 accept_connection 3 returned 4 07:35:59.616189 accept_connection 3 returned 0 07:35:59.616203 Read 93 bytes 07:35:59.616212 Process 93 bytes request 07:35:59.616225 Got request: GET /verifiedserver HTTP/1.1 07:35:59.616234 Are-we-friendly question received 07:35:59.616258 Wrote request (93 bytes) input to log/1/server.input 07:35:59.616273 Identifying ourselves as friends 07:35:59.616331 Response sent (56 bytes) and written to log/1/server.response 07:35:59.616341 special request received, no persistency 07:35:59.616350 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1178 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1178 ==136859== ==136859== Process terminating with default action of signal 4 (SIGILL) ==136859== Illegal opcode at address 0x4003082 ==136859== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==136859== by 0x4003082: main (tool_main.c:234) === End of file valgrind1178 test 1187...[SMTP multipart with file name escaping] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1187 ../src/curl -q --output log/8/curl1187.out --include --trace-ascii log/8/trace1187 --trace-config all --trace-time smtp://127.0.0.1:41381/1187 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"' log/8/stdout1187 2> log/8/stderr1187 1187: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1187 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1187 ../src/curl -q --output log/8/curl1187.out --include --trace-ascii log/8/trace1187 --trace-config all --trace-time smtp://127.0.0.1:41381/1187 --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"' log/8/stdout1187 2> log/8/stderr1187 === End of file commands.log === Start of file server.cmd Testnum 1187 === End of file server.cmd === Start of file smtp_server.log 07:35:59.809899 ====> Client connect 07:35:59.810073 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.810328 < "EHLO verifiedserver" 07:35:59.810367 > "250 ESMTP pingpong test sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1189 ../src/curl -q --output log/2/curl1189.out --include --trace-ascii log/2/trace1189 --trace-config all --trace-time http://127.0.0.1:45457/we/want/1189 --form-escape -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/2/stdout1189 2> log/2/stderr1189 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1163 ./libtest/libtests lib576 "ftp://127.0.0.1:39713/fully_simulated/DOS/*[][" > log/17/stdout1163 2> log/17/stderr1163 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1162 ./libtest/libtests lib576 "ftp://127.0.0.1:38701/fully_simulated/DOS/[*\\s-'tl" > log/21/stdout1162 2> log/21/stderr1162 erver Hello verifiedserver[CR][LF]" 07:35:59.810610 < "HELP" 07:35:59.810682 > "214 WE ROOLZ: 120960[CR][LF]" 07:35:59.810699 return proof we are we 07:35:59.811046 < "QUIT" 07:35:59.811078 > "221 curl ESMTP server signing off[CR][LF]" 07:35:59.811245 MAIN sockfilt said DISC 07:35:59.811271 ====> Client disconnected 07:35:59.811370 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:35:59.655727 ====> Client connect 07:35:59.656076 Received DATA (on stdin) 07:35:59.656091 > 160 bytes data, server => client 07:35:59.656102 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:59.656111 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:59.656120 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:59.656186 < 21 bytes data, client => server 07:35:59.656196 'EHLO verifiedserver\r\n' 07:35:59.656350 Received DATA (on stdin) 07:35:59.656359 > 53 bytes data, server => client 07:35:59.656368 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:35:59.656411 < 6 bytes data, client => server 07:35:59.656422 'HELP\r\n' 07:35:59.656690 Received DATA (on stdin) 07:35:59.656709 > 22 bytes data, server => client 07:35:59.656720 '214 WE ROOLZ: 120960\r\n' 07:35:59.656925 < 6 bytes data, client => server 07:35:59.656940 'QUIT\r\n' 07:35:59.657062 Received DATA (on stdin) 07:35:59.657073 > 35 bytes data, server => client 07:35:59.657083 '221 curl ESMTP server signing off\r\n' 07:35:59.657186 ====> Client disconnect 07:35:59.657358 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-1187 From: different To: another body === End of file stdin-for-1187 === Start of file valgrind1187 ==137066== ==137066== Process terminating with default action of signal 4 (SIGILL) ==137066== Illegal opcode at address 0x4003082 ==137066== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137066== by 0x4003082: main (tool_main.c:234) === End of file valgrind1187 test 1189...[Multipart formposting with backslash-escaping of name= and filename=] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1189 ../src/curl -q --output log/2/curl1189.out --include --trace-ascii log/2/trace1189 --trace-config all --trace-time http://127.0.0.1:45457/we/want/1189 --form-escape -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/2/stdout1189 2> log/2/stderr1189 1189: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1189 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1189 ../src/curl -q --output log/2/curl1189.out --include --trace-ascii log/2/trace1189 --trace-config all --trace-time http://127.0.0.1:45457/we/want/1189 --form-escape -F name=daniel -F tool=curl --form-string "str1=@literal" --form-string "str2= log/2/stdout1189 2> log/2/stderr1189 === End of file commands.log === Start of file http_server.log 07:35:59.691642 ====> Client connect 07:35:59.691675 accept_connection 3 returned 4 07:35:59.691691 accept_connection 3 returned 0 07:35:59.691706 Read 93 bytes 07:35:59.691715 Process 93 bytes request 07:35:59.691728 Got request: GET /verifiedserver HTTP/1.1 07:35:59.691737 Are-we-friendly question received 07:35:59.691764 Wrote request (93 bytes) input to log/2/server.input 07:35:59.691781 Identifying ourselves as friends 07:35:59.691837 Response sent (56 bytes) and written to log/2/server.response 07:35:59.691848 special request received, no persistency 07:35:59.691857 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1189 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file test1189.txt foo bar This is a bar foo bar foo === End of file test1189.txt === Start of file valgrind1189 ==137243== ==137243== Process terminating with default action of signal 4 (SIGILL) ==137243== Illegal opcode at address 0x4003082 ==137243== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137243== by 0x4003082: main (tool_main.c:234) === End of file valgrind1189 test 1163...[FTP wildcard with pattern ending with an open-bracket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1163 ./libtest/libtests lib576 "ftp://127.0.0.1:39713/fully_simulated/DOS/*[][" > log/17/stdout1163 2> log/17/stderr1163 1163: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1163 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1163 ./libtest/libtests lib576 "ftp://127.0.0.1:39713/fully_simulated/DOS/*[][" > log/17/stdout1163 2> log/17/stderr1163 === End of file commands.log === Start of file ftp_server.log 07:35:59.451320 ====> Client connect 07:35:59.451481 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.451736 < "USER anonymous" 07:35:59.451767 > "331 We are happy you popped in![CR][LF]" 07:35:59.451917 < "PASS ftp@example.com" 07:35:59.451941 > "230 Welcome you silly person[CR][LF]" 07:35:59.452075 < "PWD" 07:35:59.452099 > "257 "/" is current directory[CR][LF]" 07:35:59.452238 < "EPSV" 07:35:59.452258 ====> Passive DATA channel requested by client 07:35:59.452270 DATA sockfilt for passive data channel starting... 07:35:59.454085 DATA sockfilt for passive data channel started (pid 136186) 07:35:59.454179 DATA sockfilt for passive data channel listens on port 46285 07:35:59.454214 > "229 Entering Passive Mode (|||46285|)[LF]" 07:35:59.454230 Client has been notified that DATA conn will be accepted on port 46285 07:35:59.454396 Client connects to port 46285 07:35:59.454421 ====> Client established passive DATA connection on port 46285 07:35:59.454522 < "TYPE I" 07:35:59.454546 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:59.454688 < "SIZE verifiedserver" 07:35:59.454717 > "213 17[CR][LF]" 07:35:59.454851 < "RETR verifiedserver" 07:35:59.454878 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:59.454946 =====> Closing passive DATA connection... 07:35:59.454961 Server disconnects passive DATA connection 07:35:59.455164 Server disconnected passive DATA connection 07:35:59.455191 DATA sockfilt for passive data channel quits (pid 136186) 07:35:59.455403 DATA sockfilt for passive data channel quit (pid 136186) 07:35:59.455424 =====> Closed passive DATA connection 07:35:59.455448 > "226 File transfer complete[CR][LF]" 07:35:59.497032 < "QUIT" 07:35:59.497082 > "221 bye bye baby[CR][LF]" 07:35:59.497397 MAIN sockfilt said DISC 07:35:59.497452 ====> Client disconnected 07:35:59.497531 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:59.297178 ====> Client connect 07:35:59.297476 Received DATA (on stdin) 07:35:59.297490 > 160 bytes data, server => client 07:35:59.297502 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:59.297513 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:59.297523 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:59.297589 < 16 bytes data, client => server 07:35:59.297601 'USER anonymous\r\n' 07:35:59.297753 Received DATA (on stdin) 07:35:59.297765 > 33 bytes data, server => client 07:35:59.297775 '331 We are happy you popped in!\r\n' 07:35:59.297821 < 22 bytes data, client => server 07:35:59.297833 'PASS ftp@example.com\r\n' 07:35:59.297923 Received DATA (on stdin) 07:35:59.297933 > 30 bytes data, server => client 07:35:59.297944 '230 Welcome you silly person\r\n' 07:35:59.297986 < 5 bytes data, client => server 07:35:59.297996 'PWD\r\n' 07:35:59.298081 Received DATA (on stdin) 07:35:59.298091 > 30 bytes data, server => client 07:35:59.298102 '257 "/" is current directory\r\n' 07:35:59.298149 < 6 bytes data, client => server 07:35:59.298160 'EPSV\r\n' 07:35:59.300216 Received DATA (on stdin) 07:35:59.300229 > 38 bytes data, server => client 07:35:59.300240 '229 Entering Passive Mode (|||46285|)\n' 07:35:59.300419 < 8 bytes data, client => server 07:35:59.300431 'TYPE I\r\n' 07:35:59.300531 Received DATA (on stdin) 07:35:59.300542 > 33 bytes data, server => client 07:35:59.300553 '200 I modify TYPE as you wanted\r\n' 07:35:59.300597 < 21 bytes data, client => server 07:35:59.300608 'SIZE verifiedserver\r\n' 07:35:59.300700 Received DATA (on stdin) 07:35:59.300711 > 8 bytes data, server => client 07:35:59.300721 '213 17\r\n' 07:35:59.300763 < 21 bytes data, client => server 07:35:59.300773 'RETR verifiedserver\r\n' 07:35:59.300944 Received DATA (on stdin) 07:35:59.300955 > 29 bytes data, server => client 07:35:59.300966 '150 Binary junk (17 bytes).\r\n' 07:35:59.301432 Received DATA (on stdin) 07:35:59.301445 > 28 bytes data, server => client 07:35:59.301455 '226 File transfer complete\r\n' 07:35:59.342851 < 6 bytes data, client => server 07:35:59.342883 'QUIT\r\n' 07:35:59.343070 Received DATA (on stdin) 07:35:59.343081 > 18 bytes data, server => client 07:35:59.343091 '221 bye bye baby\r\n' 07:35:59.343309 ====> Client disconnect 07:35:59.343517 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:59.299808 Running IPv4 version 07:35:59.299863 Listening on port 46285 07:35:59.299901 Wrote pid 136186 to log/17/server/ftp_sockdata.pid 07:35:59.300020 Received PING (on stdin) 07:35:59.300092 Received PORT (on stdin) 07:35:59.300333 ====> Client connect 07:35:59.300988 Received DATA (on stdin) 07:35:59.301001 > 17 bytes data, server => client 07:35:59.301011 'WE ROOLZ: 79834\r\n' 07:35:59.301036 Received DISC (on stdin) 07:35:59.301046 ====> Client forcibly disconnected 07:35:59.301182 Received QUIT (on stdin) 07:35:59.301194 quits 07:35:59.301253 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1163 === End of file server.cmd === Start of file stderr1163 URL: ftp://127.0.0.1:39713/fully_simulated/DOS/*[][ === End of file stderr1163 === Start of file valgrind1163 ==136287== ==136287== Process terminating with default action of signal 4 (SIGILL) ==136287== Illegal opcode at address 0x51C2DB3 ==136287== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==136287== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==136287== by 0x51C2DB3: Curl_open (url.c:541) ==136287== by 0x513D46F: curl_easy_init (easy.c:372) ==136287== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==136287== by 0x4003443: main (first.c:167) ==136287== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x533CFA5: __tsearch (tsearch.c:337) ==136287== by 0x533CFA5: tsearch (tsearch.c:290) ==136287== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136287== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136287== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136287== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136287== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136287== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== ==136287== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x533CFA5: __tsearch (tsearch.c:337) ==136287== by 0x533CFA5: tsearch (tsearch.c:290) ==136287== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136287== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==136287== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== ==136287== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136287== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136287== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136287== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136287== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136287== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== ==136287== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136287== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==136287== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== ==136287== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==136287== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==136287== by 0x51C2D03: Curl_open (url.c:520) ==136287== by 0x513D46F: curl_easy_init (easy.c:372) ==136287== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==136287== by 0x4003443: main (first.c:167) ==136287== ==136287== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x533CFA5: __tsearch (tsearch.c:337) ==136287== by 0x533CFA5: tsearch (tsearch.c:290) ==136287== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136287== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136287== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136287== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136287== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136287== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== ==136287== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==136287== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136287== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136287== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136287== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136287== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136287== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136287== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==136287== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136287== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136287== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136287== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136287== by 0x525A142: setlocale (setlocale.c:337) ==136287== by 0x400336E: main (first.c:123) ==136287== === End of file valgrind1163 setenv MSYS2_ARG_CONV_EXCL = ftp:// test 1162...[FTP wildcard with crazy pattern] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1162 ./libtest/libtests lib576 "ftp://127.0.0.1:38701/fully_simulated/DOS/[*\\s-'tl" > log/21/stdout1162 2> log/21/stderr1162 1162: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1162 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1162 ./libtest/libtests lib576 "ftp://127.0.0.1:38701/fully_simulated/DOS/[*\\s-'tl" > log/21/stdout1162 2> log/21/stderr1162 === End of file commands.log === Start of file ftp_server.log 07:35:59.396443 ====> Client connect 07:35:59.403669 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:35:59.404011 < "USER anonymous" 07:35:59.404043 > "331 We are happy you popped in![CR][LF]" 07:35:59.404192 < "PASS ftp@example.com" 07:35:59.404216 > "230 Welcome you silly person[CR][LF]" 07:35:59.404353 < "PWD" 07:35:59.404379 > "257 "/" is current directory[CR][LF]" 07:35:59.404517 < "EPSV" 07:35:59.404540 ====> Passive DATA channel requested by client 07:35:59.404552 DATA sockfilt for passive data channel starting... 07:35:59.406447 DATA sockfilt for passive data channel started (pid 136155) 07:35:59.406542 DATA sockfilt for passive data channel listens on port 43793 07:35:59.406579 > "229 Entering Passive Mode (|||43793|)[LF]" 07:35:59.406594 Client has been notified that DATA conn will be accepted on port 43793 07:35:59.406798 Client connects to port 43793 07:35:59.406825 ====> Client established passive DATA connection on port 43793 07:35:59.406919 < "TYPE I" 07:35:59.406943 > "200 I modify TYPE as you wanted[CR][LF]" 07:35:59.407071 < "SIZE verifiedserver" 07:35:59.407100 > "213 17[CR][LF]" 07:35:59.407220 < "RETR verifiedserver" 07:35:59.407249 > "150 Binary junk (17 bytes).[CR][LF]" 07:35:59.407321 =====> Closing passive DATA connection... 07:35:59.407335 Server disconnects passive DATA connection 07:35:59.407540 Server disconnected passive DATA connection 07:35:59.407561 DATA sockfilt for passive data channel quits (pid 136155) 07:35:59.407768 DATA sockfilt for passive data channel quit (pid 136155) 07:35:59.407788 =====> Closed passive DATA connection 07:35:59.407810 > "226 File transfer complete[CR][LF]" 07:35:59.450377 < "QUIT" 07:35:59.450429 > "221 bye bye baby[CR][LF]" 07:35:59.451302 MAIN sockfilt said DISC 07:35:59.451328 ====> Client disconnected 07:35:59.451409 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:35:59.241398 ====> Client connect 07:35:59.249684 Received DATA (on stdin) 07:35:59.249708 > 160 bytes data, server => client 07:35:59.249720 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:35:59.249730 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:35:59.249740 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:35:59.249854 < 16 bytes data, client => server 07:35:59.249866 'USER anonymous\r\n' 07:35:59.250029 Received DATA (on stdin) 07:35:59.250040 > 33 bytes data, server => client 07:35:59.250050 '331 We are happy you popped in!\r\n' 07:35:59.250097 < 22 bytes data, client => server 07:35:59.250107 'PASS ftp@example.com\r\n' 07:35:59.250198 Received DATA (on stdin) 07:35:59.250208 > 30 bytes data, server => client 07:35:59.250219 '230 Welcome you silly person\r\n' 07:35:59.250260 < 5 bytes data, client => server 07:35:59.250269 'PWD\r\n' 07:35:59.250361 Received DATA (on stdin) 07:35:59.250371 > 30 bytes data, server => client 07:35:59.250381 '257 "/" is current directory\r\n' 07:35:59.250431 < 6 bytes data, client => server 07:35:59.250441 'EPSV\r\n' 07:35:59.252581 Received DATA (on stdin) 07:35:59.252594 > 38 bytes data, server => client 07:35:59.252605 '229 Entering Passive Mode (|||43793|)\n' 07:35:59.252819 < 8 bytes data, client => server 07:35:59.252830 'TYPE I\r\n' 07:35:59.252926 Received DATA (on stdin) 07:35:59.252936 > 33 bytes data, server => client 07:35:59.252946 '200 I modify TYPE as you wanted\r\n' 07:35:59.252988 < 21 bytes data, client => server 07:35:59.252998 'SIZE verifiedserver\r\n' 07:35:59.253081 Received DATA (on stdin) 07:35:59.253091 > 8 bytes data, server => client 07:35:59.253101 '213 17\r\n' 07:35:59.253138 < 21 bytes data, client => server 07:35:59.253148 'RETR verifiedserver\r\n' 07:35:59.253318 Received DATA (on stdin) 07:35:59.253328 > 29 bytes data, server => client 07:35:59.253338 '150 Binary junk (17 bytes).\r\n' 07:35:59.253793 Received DATA (on stdin) 07:35:59.253805 > 28 bytes data, server => client 07:35:59.253815 '226 File transfer complete\r\n' 07:35:59.296131 < 6 bytes data, client => server 07:35:59.296164 'QUIT\r\n' 07:35:59.296415 Received DATA (on stdin) 07:35:59.296427 > 18 bytes data, server => client 07:35:59.296437 '221 bye bye baby\r\n' 07:35:59.297236 ====> Client disconnect 07:35:59.297392 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:35:59.252160 Running IPv4 version 07:35:59.252214 Listening on port 43793 07:35:59.252250 Wrote pid 136155 to log/21/server/ftp_sockdata.pid 07:35:59.252377 Received PING (on stdin) 07:35:59.252453 Received PORT (on stdin) 07:35:59.252734 ====> Client connect 07:35:59.253360 Received DATA (on stdin) 07:35:59.253372 > 17 bytes data, server => client 07:35:59.253382 'WE ROOLZ: 81322\r\n' 07:35:59.253401 Received DISC (on stdin) 07:35:59.253412 ====> Client forcibly disconnected 07:35:59.253550 Received QUIT (on stdin) 07:35:5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1197 ../src/curl -q --include --trace-ascii log/19/trace1197 --trace-config all --trace-time http://127.0.0.1:33487/1197 -w "%{method}\n" -L -d "twinkle twinkle little star" > log/19/stdout1197 2> log/19/stderr1197 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1205 ../src/curl -q --output log/18/curl1205.out --include --trace-ascii log/18/trace1205 --trace-config all --trace-time http://127.0.0.1:45825/1205 > log/18/stdout1205 2> log/18/stderr1205 9.253560 quits 07:35:59.253621 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1162 === End of file server.cmd === Start of file stderr1162 URL: ftp://127.0.0.1:38701/fully_simulated/DOS/[*\s-'tl === End of file stderr1162 === Start of file valgrind1162 ==136190== ==136190== Process terminating with default action of signal 4 (SIGILL) ==136190== Illegal opcode at address 0x51C2DB3 ==136190== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==136190== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==136190== by 0x51C2DB3: Curl_open (url.c:541) ==136190== by 0x513D46F: curl_easy_init (easy.c:372) ==136190== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==136190== by 0x4003443: main (first.c:167) ==136190== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x533CFA5: __tsearch (tsearch.c:337) ==136190== by 0x533CFA5: tsearch (tsearch.c:290) ==136190== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136190== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136190== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136190== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136190== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136190== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== ==136190== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x533CFA5: __tsearch (tsearch.c:337) ==136190== by 0x533CFA5: tsearch (tsearch.c:290) ==136190== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136190== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==136190== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== ==136190== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136190== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136190== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136190== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136190== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==136190== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== ==136190== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136190== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==136190== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== ==136190== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==136190== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==136190== by 0x51C2D03: Curl_open (url.c:520) ==136190== by 0x513D46F: curl_easy_init (easy.c:372) ==136190== by 0x4014497: test_lib576.lto_priv.0 (lib576.c:105) ==136190== by 0x4003443: main (first.c:167) ==136190== ==136190== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x533CFA5: __tsearch (tsearch.c:337) ==136190== by 0x533CFA5: tsearch (tsearch.c:290) ==136190== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==136190== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136190== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136190== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136190== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136190== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== ==136190== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==136190== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==136190== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==136190== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==136190== by 0x524F3F0: add_alias (gconv_conf.c:178) ==136190== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==136190== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==136190== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==136190== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==136190== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==136190== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==136190== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==136190== by 0x525A142: setlocale (setlocale.c:337) ==136190== by 0x400336E: main (first.c:123) ==136190== === End of file valgrind1162 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1204 ../src/curl -q --output log/7/curl1204.out --include --trace-ascii log/7/trace1204 --trace-config all --trace-time http://127.0.0.1:39077/1204 -u testuser:testpass --anyauth > log/7/stdout1204 2> log/7/stderr1204 test 1197...[HTTP POST redirected to GET and --write-out method] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1197 ../src/curl -q --include --trace-ascii log/19/trace1197 --trace-config all --trace-time http://127.0.0.1:33487/1197 -w "%{method}\n" -L -d "twinkle twinkle little star" > log/19/stdout1197 2> log/19/stderr1197 1197: stdout FAILED: --- log/19/check-expected 2025-07-18 07:36:00.680446231 +0000 +++ log/19/check-generated 2025-07-18 07:36:00.680446231 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 302 OK swsbounce swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 8[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain[CR][LF] -Location: ./11970001[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Content-Length: 15[CR][LF] -Connection: close[CR][LF] -Content-Type: text/plain; charset=us-ascii[CR][LF] -[CR][LF] -bigger monster[LF] -GET[LF] == Contents of files in the log/19/ dir after test 1197 === Start of file check-expected HTTP/1.1 302 OK swsbounce swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 8[CR][LF] Connection: close[CR][LF] Content-Type: text/plain[CR][LF] Location: ./11970001[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Content-Length: 15[CR][LF] Connection: close[CR][LF] Content-Type: text/plain; charset=us-ascii[CR][LF] [CR][LF] bigger monster[LF] GET[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1197 ../src/curl -q --include --trace-ascii log/19/trace1197 --trace-config all --trace-time http://127.0.0.1:33487/1197 -w "%{method}\n" -L -d "twinkle twinkle little star" > log/19/stdout1197 2> log/19/stderr1197 === End of file commands.log === Start of file http_server.log 07:36:00.102971 ====> Client connect 07:36:00.102994 accept_connection 3 returned 4 07:36:00.103007 accept_connection 3 returned 0 07:36:00.103018 Read 93 bytes 07:36:00.103025 Process 93 bytes request 07:36:00.103036 Got request: GET /verifiedserver HTTP/1.1 07:36:00.103043 Are-we-friendly question received 07:36:00.103060 Wrote request (93 bytes) input to log/19/server.input 07:36:00.103072 Identifying ourselves as friends 07:36:00.103112 Response sent (56 bytes) and written to log/19/server.response 07:36:00.103119 special request received, no persistency 07:36:00.103125 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1197 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1197 ==137411== ==137411== Process terminating with default action of signal 4 (SIGILL) ==137411== Illegal opcode at address 0x4003082 ==137411== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137411== by 0x4003082: main (tool_main.c:234) === End of file valgrind1197 test 1204...[HTTP with WWW-Authenticate and multiple auths in a single line] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1204 ../src/curl -q --output log/7/curl1204.out --include --trace-ascii log/7/trace1204 --trace-config all --trace-time http://127.0.0.1:39077/1204 -u testuser:testpass --anyauth > log/7/stdout1204 2> log/7/stderr1204 1204: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1204 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1204 ../src/curl -q --output log/7/curl1204.out --include --trace-ascii log/7/trace1204 --trace-config all --trace-time http://127.0.0.1:39077/1204 -u testuser:testpass --anyauth > log/7/stdout1204 2> log/7/stderr1204 === End of file commands.log === Start of file http_server.log 07:36:00.161278 ====> Client connect 07:36:00.161303 accept_connection 3 returned 4 07:36:00.161315 accept_connection 3 returned 0 07:36:00.161326 Read 93 bytes 07:36:00.161334 Process 93 bytes request 07:36:00.161345 Got request: GET /verifiedserver HTTP/1.1 07:36:00.161352 Are-we-friendly question received 07:36:00.161371 Wrote request (93 bytes) input to log/7/server.input 07:36:00.161384 Identifying ourselves as friends 07:36:00.161426 Response sent (56 bytes) and written to log/7/server.response 07:36:00.161433 special request received, no persistency 07:36:00.161440 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1204 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1204 ==137547== ==137547== Process terminating with default action of signal 4 (SIGILL) ==137547== Illegal opcode at address 0x4003082 ==137547== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137547== by 0x4003082: main (tool_main.c:234) === End of file valgrind1204 test 1205...[HTTP GET with 18K HTTP header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1205 ../src/curl -q --output log/18/curl1205.out --include --trace-ascii log/18/trace1205 --trace-config all --trace-time http://127.0.0.1:45825/1205 > log/18/stdout1205 2> log/18/stderr1205 1205: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1205 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1205 ../src/curl -q --output log/18/curl1205.out --include --trace-ascii log/18/trace1205 --trace-config all --trace-time http://127.0.0.1:45825/1205 > log/18/stdout1205 2> log/18/stderr1205 === End of file commands.log === Start of file http_server.log 07:36:00.162149 ====> Client connect 07:36:00.162174 accept_connection 3 returned 4 07:36:00.162187 accept_connection 3 returned 0 07:36:00.162196 Read 93 bytes 07:36:00.162203 Process 93 bytes request 07:36:00.162211 Got request: GET /verifiedserver HTTP/1.1 07:36:00.162217 Are-we-friendly question received 07:36:00.162235 Wrote request (93 bytes) input to log/18/server.input 07:36:00.162247 Identifying ourselves as friends 07:36:00.162286 Response sent (56 bytes) and written to log/18/server.response 07:36:00.162294 special rCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1207 ../src/curl -q --output log/9/curl1207.out --include --trace-ascii log/9/trace1207 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:36299/1207 -P - > log/9/stdout1207 2> log/9/stderr1207 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1206 ../src/curl -q --output log/14/curl1206.out --include --trace-ascii log/14/trace1206 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:41711/1206 -P - > log/14/stdout1206 2> log/14/stderr1206 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1208 ../src/curl -q --output log/1/curl1208.out --include --trace-ascii log/1/trace1208 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:34427/1208 -P - > log/1/stdout1208 2> log/1/stderr1208 equest received, no persistency 07:36:00.162300 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1205 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1205 ==137546== ==137546== Process terminating with default action of signal 4 (SIGILL) ==137546== Illegal opcode at address 0x4003082 ==137546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137546== by 0x4003082: main (tool_main.c:234) === End of file valgrind1205 test 1207...[FTP PORT and 421 on download] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1207 ../src/curl -q --output log/9/curl1207.out --include --trace-ascii log/9/trace1207 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:36299/1207 -P - > log/9/stdout1207 2> log/9/stderr1207 1207: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1207 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1207 ../src/curl -q --output log/9/curl1207.out --include --trace-ascii log/9/trace1207 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:36299/1207 -P - > log/9/stdout1207 2> log/9/stderr1207 === End of file commands.log === Start of file ftp_server.log 07:36:00.318856 ====> Client connect 07:36:00.318963 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.319176 < "USER anonymous" 07:36:00.319202 > "331 We are happy you popped in![CR][LF]" 07:36:00.319357 < "PASS ftp@example.com" 07:36:00.319378 > "230 Welcome you silly person[CR][LF]" 07:36:00.319498 < "PWD" 07:36:00.319561 > "257 "/" is current directory[CR][LF]" 07:36:00.319722 < "EPSV" 07:36:00.319747 ====> Passive DATA channel requested by client 07:36:00.319756 DATA sockfilt for passive data channel starting... 07:36:00.321084 DATA sockfilt for passive data channel started (pid 137543) 07:36:00.321163 DATA sockfilt for passive data channel listens on port 33957 07:36:00.321191 > "229 Entering Passive Mode (|||33957|)[LF]" 07:36:00.321204 Client has been notified that DATA conn will be accepted on port 33957 07:36:00.321393 Client connects to port 33957 07:36:00.321422 ====> Client established passive DATA connection on port 33957 07:36:00.321491 < "TYPE I" 07:36:00.321530 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.321667 < "SIZE verifiedserver" 07:36:00.321693 > "213 17[CR][LF]" 07:36:00.321787 < "RETR verifiedserver" 07:36:00.321806 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.321860 =====> Closing passive DATA connection... 07:36:00.321869 Server disconnects passive DATA connection 07:36:00.321951 Server disconnected passive DATA connection 07:36:00.321977 DATA sockfilt for passive data channel quits (pid 137543) 07:36:00.322206 DATA sockfilt for passive data channel quit (pid 137543) 07:36:00.322230 =====> Closed passive DATA connection 07:36:00.322253 > "226 File transfer complete[CR][LF]" 07:36:00.363606 < "QUIT" 07:36:00.363651 > "221 bye bye baby[CR][LF]" 07:36:00.364389 MAIN sockfilt said DISC 07:36:00.364408 ====> Client disconnected 07:36:00.364461 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.164757 ====> Client connect 07:36:00.164956 Received DATA (on stdin) 07:36:00.164972 > 160 bytes data, server => client 07:36:00.164980 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.164987 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.164994 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.165050 < 16 bytes data, client => server 07:36:00.165058 'USER anonymous\r\n' 07:36:00.165185 Received DATA (on stdin) 07:36:00.165212 > 33 bytes data, server => client 07:36:00.165223 '331 We are happy you popped in!\r\n' 07:36:00.165269 < 22 bytes data, client => server 07:36:00.165277 'PASS ftp@example.com\r\n' 07:36:00.165356 Received DATA (on stdin) 07:36:00.165364 > 30 bytes data, server => client 07:36:00.165371 '230 Welcome you silly person\r\n' 07:36:00.165433 < 5 bytes data, client => server 07:36:00.165450 'PWD\r\n' 07:36:00.165563 Received DATA (on stdin) 07:36:00.165573 > 30 bytes data, server => client 07:36:00.165580 '257 "/" is current directory\r\n' 07:36:00.165625 < 6 bytes data, client => server 07:36:00.165632 'EPSV\r\n' 07:36:00.167187 Received DATA (on stdin) 07:36:00.167199 > 38 bytes data, server => client 07:36:00.167207 '229 Entering Passive Mode (|||33957|)\n' 07:36:00.167312 < 8 bytes data, client => server 07:36:00.167323 'TYPE I\r\n' 07:36:00.167527 Received DATA (on stdin) 07:36:00.167537 > 33 bytes data, server => client 07:36:00.167544 '200 I modify TYPE as you wanted\r\n' 07:36:00.167587 < 21 bytes data, client => server 07:36:00.167597 'SIZE verifiedserver\r\n' 07:36:00.167670 Received DATA (on stdin) 07:36:00.167677 > 8 bytes data, server => client 07:36:00.167684 '213 17\r\n' 07:36:00.167714 < 21 bytes data, client => server 07:36:00.167721 'RETR verifiedserver\r\n' 07:36:00.167834 Received DATA (on stdin) 07:36:00.167847 > 29 bytes data, server => client 07:36:00.167855 '150 Binary junk (17 bytes).\r\n' 07:36:00.168235 Received DATA (on stdin) 07:36:00.168246 > 28 bytes data, server => client 07:36:00.168253 '226 File transfer complete\r\n' 07:36:00.209424 < 6 bytes data, client => server 07:36:00.209452 'QUIT\r\n' 07:36:00.209637 Received DATA (on stdin) 07:36:00.209649 > 18 bytes data, server => client 07:36:00.209659 '221 bye bye baby\r\n' 07:36:00.210315 ====> Client disconnect 07:36:00.210439 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.166844 Running IPv4 version 07:36:00.166888 Listening on port 33957 07:36:00.166918 Wrote pid 137543 to log/9/server/ftp_sockdata.pid 07:36:00.167022 Received PING (on stdin) 07:36:00.167081 Received PORT (on stdin) 07:36:00.167286 ====> Client connect 07:36:00.167849 Received DATA (on stdin) 07:36:00.167860 > 17 bytes data, server => client 07:36:00.167867 'WE ROOLZ: 80150\r\n' 07:36:00.167884 Received DISC (on stdin) 07:36:00.167892 ====> Client forcibly disconnected 07:36:00.167979 Received QUIT (on stdin) 07:36:00.167987 quits 07:36:00.168033 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN421 Testnum 1207 === End of file server.cmd === Start of file valgrind1207 ==137646== ==137646== Process terminating with default action of signal 4 (SIGILL) ==137646== Illegal opcode at address 0x4003082 ==137646== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137646== by 0x4003082: main (tool_main.c:234) === End of file valgrind1207 test 1206...[FTP PORT and 425 on download] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1206 ../src/curl -q --output log/14/curl1206.out --include --trace-ascii log/14/trace1206 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:41711/1206 -P - > log/14/stdout1206 2> log/14/stderr1206 1206: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1206 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1206 ../src/curl -q --output log/14/curl1206.out --include --trace-ascii log/14/trace1206 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:41711/1206 -P - > log/14/stdout1206 2> log/14/stderr1206 === End of file commands.log === Start of file ftp_server.log 07:36:00.315725 ====> Client connect 07:36:00.315916 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.316153 < "USER anonymous" 07:36:00.316181 > "331 We are happy you popped in![CR][LF]" 07:36:00.316294 < "PASS ftp@example.com" 07:36:00.316314 > "230 Welcome you silly person[CR][LF]" 07:36:00.316415 < "PWD" 07:36:00.316438 > "257 "/" is current directory[CR][LF]" 07:36:00.316561 < "EPSV" 07:36:00.316577 ====> Passive DATA channel requested by client 07:36:00.316586 DATA sockfilt for passive data channel starting... 07:36:00.318023 DATA sockfilt for passive data channel started (pid 137540) 07:36:00.318094 DATA sockfilt for passive data channel listens on port 38953 07:36:00.318123 > "229 Entering Passive Mode (|||38953|)[LF]" 07:36:00.318135 Client has been notified that DATA conn will be accepted on port 38953 07:36:00.318270 Client connects to port 38953 07:36:00.318297 ====> Client established passive DATA connection on port 38953 07:36:00.318345 < "TYPE I" 07:36:00.318364 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.318473 < "SIZE verifiedserver" 07:36:00.318496 > "213 17[CR][LF]" 07:36:00.318590 < "RETR verifiedserver" 07:36:00.318613 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.318674 =====> Closing passive DATA connection... 07:36:00.318688 Server disconnects passive DATA connection 07:36:00.318742 Server disconnected passive DATA connection 07:36:00.318761 DATA sockfilt for passive data channel quits (pid 137540) 07:36:00.318965 DATA sockfilt for passive data channel quit (pid 137540) 07:36:00.318986 =====> Closed passive DATA connection 07:36:00.319006 > "226 File transfer complete[CR][LF]" 07:36:00.360481 < "QUIT" 07:36:00.360523 > "221 bye bye baby[CR][LF]" 07:36:00.360712 MAIN sockfilt said DISC 07:36:00.360747 ====> Client disconnected 07:36:00.360807 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.161588 ====> Client connect 07:36:00.161923 Received DATA (on stdin) 07:36:00.161935 > 160 bytes data, server => client 07:36:00.161944 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.161951 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.161958 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.162017 < 16 bytes data, client => server 07:36:00.162026 'USER anonymous\r\n' 07:36:00.162161 Received DATA (on stdin) 07:36:00.162170 > 33 bytes data, server => client 07:36:00.162178 '331 We are happy you popped in!\r\n' 07:36:00.162213 < 22 bytes data, client => server 07:36:00.162220 'PASS ftp@example.com\r\n' 07:36:00.162292 Received DATA (on stdin) 07:36:00.162300 > 30 bytes data, server => client 07:36:00.162308 '230 Welcome you silly person\r\n' 07:36:00.162339 < 5 bytes data, client => server 07:36:00.162347 'PWD\r\n' 07:36:00.162415 Received DATA (on stdin) 07:36:00.162423 > 30 bytes data, server => client 07:36:00.162430 '257 "/" is current directory\r\n' 07:36:00.162484 < 6 bytes data, client => server 07:36:00.162492 'EPSV\r\n' 07:36:00.164117 Received DATA (on stdin) 07:36:00.164128 > 38 bytes data, server => client 07:36:00.164137 '229 Entering Passive Mode (|||38953|)\n' 07:36:00.164233 < 8 bytes data, client => server 07:36:00.164243 'TYPE I\r\n' 07:36:00.164343 Received DATA (on stdin) 07:36:00.164351 > 33 bytes data, server => client 07:36:00.164358 '200 I modify TYPE as you wanted\r\n' 07:36:00.164398 < 21 bytes data, client => server 07:36:00.164405 'SIZE verifiedserver\r\n' 07:36:00.164473 Received DATA (on stdin) 07:36:00.164481 > 8 bytes data, server => client 07:36:00.164488 '213 17\r\n' 07:36:00.164517 < 21 bytes data, client => server 07:36:00.164525 'RETR verifiedserver\r\n' 07:36:00.164656 Received DATA (on stdin) 07:36:00.164666 > 29 bytes data, server => client 07:36:00.164675 '150 Binary junk (17 bytes).\r\n' 07:36:00.164985 Received DATA (on stdin) 07:36:00.164994 > 28 bytes data, server => client 07:36:00.165002 '226 File transfer complete\r\n' 07:36:00.206292 < 6 bytes data, client => server 07:36:00.206321 'QUIT\r\n' 07:36:00.206500 Received DATA (on stdin) 07:36:00.206519 > 18 bytes data, server => client 07:36:00.206529 '221 bye bye baby\r\n' 07:36:00.206583 ====> Client disconnect 07:36:00.206789 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.163801 Running IPv4 version 07:36:00.163849 Listening on port 38953 07:36:00.163876 Wrote pid 137540 to log/14/server/ftp_sockdata.pid 07:36:00.163951 Received PING (on stdin) 07:36:00.164018 Received PORT (on stdin) 07:36:00.164214 ====> Client connect 07:36:00.164598 Received DATA (on stdin) 07:36:00.164609 > 17 bytes data, server => client 07:36:00.164618 'WE ROOLZ: 79837\r\n' 07:36:00.164673 Received DISC (on stdin) 07:36:00.164683 ====> Client forcibly disconnected 07:36:00.164747 Received QUIT (on stdin) 07:36:00.164758 quits 07:36:00.164808 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN425 Testnum 1206 === End of file server.cmd === Start of file valgrind1206 ==137643== ==137643== Process terminating with default action of signal 4 (SIGILL) ==137643== Illegal opcode at address 0x4003082 ==137643== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137643== by 0x4003082: main (tool_main.c:234) === End of file valgrind1206 test 1208...[FTP PORT download, no data conn and no transient negative reply] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1208 ../src/curl -q --output log/1/curl1208.out --include --trace-ascii log/1/trace1208 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:34427/1208 -P - > log/1/stdout1208 2> log/1/stderr1208 1208: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1208 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1208 ../src/curl -q --output log/1/curl1208.out --include --trace-ascii log/1/trace1208 --trace-config all --trace-time --max-time 8 ftp://127.0.0.1:34427/1208 -P - > log/1/stdout1208 2> log/1/stderr1208 === End of file commands.log === Start of file ftp_server.log 07:36:00.318387 ====> Client connect 07:36:00.318492 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.318672 < "USER anonymous" 07:36:00.318695 > "331 We are happy you popped in![CR][LF]" 07:36:00.318804 < "PASS ftp@example.com" 07:36:00.318820 > "230 Welcome you silly person[CR][LF]" 07:36:00.318914 < "PWD" 07:36:00.318932 > "257 "/" is current directory[CR][LF]" 07:36:00.319095 < "EPSV" 07:36:00.319124 ====> Passive DATA channel requested by client 07:36:00.319137 DATA sockfilt for passive data channel starting... 07:36:00.320408 DATA sockfilt for passive daCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1210 ../src/curl -q --trace-ascii log/8/trace1210 --trace-config all --trace-time http://127.0.0.1:45261/1210?junk -J -O --output-dir log/8 > log/8/stdout1210 2> log/8/stderr1210 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1214 ../src/curl -q --output log/21/curl1214.out --include --trace-ascii log/21/trace1214 --trace-config all --trace-time -x 127.0.0.1:41087 http://we.want.that.site.com.1214?moo=foo > log/21/stdout1214 2> log/21/stderr1214 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1212 ../src/curl -q --output log/2/curl1212.out --include --trace-ascii log/2/trace1212 --trace-config all --trace-time http://user:secret@127.0.0.1:45457/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy 127.0.0.1 --max-time 5 > log/2/stdout1212 2> log/2/stderr1212 ta channel started (pid 137542) 07:36:00.320500 DATA sockfilt for passive data channel listens on port 43157 07:36:00.320525 > "229 Entering Passive Mode (|||43157|)[LF]" 07:36:00.320538 Client has been notified that DATA conn will be accepted on port 43157 07:36:00.320703 Client connects to port 43157 07:36:00.320723 ====> Client established passive DATA connection on port 43157 07:36:00.320768 < "TYPE I" 07:36:00.320784 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.320882 < "SIZE verifiedserver" 07:36:00.320904 > "213 17[CR][LF]" 07:36:00.320997 < "RETR verifiedserver" 07:36:00.321016 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.321065 =====> Closing passive DATA connection... 07:36:00.321075 Server disconnects passive DATA connection 07:36:00.321153 Server disconnected passive DATA connection 07:36:00.321167 DATA sockfilt for passive data channel quits (pid 137542) 07:36:00.321426 DATA sockfilt for passive data channel quit (pid 137542) 07:36:00.321443 =====> Closed passive DATA connection 07:36:00.321460 > "226 File transfer complete[CR][LF]" 07:36:00.363904 < "QUIT" 07:36:00.363949 > "221 bye bye baby[CR][LF]" 07:36:00.364593 MAIN sockfilt said DISC 07:36:00.364612 ====> Client disconnected 07:36:00.364658 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.164297 ====> Client connect 07:36:00.164478 Received DATA (on stdin) 07:36:00.164488 > 160 bytes data, server => client 07:36:00.164497 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.164504 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.164511 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.164556 < 16 bytes data, client => server 07:36:00.164564 'USER anonymous\r\n' 07:36:00.164674 Received DATA (on stdin) 07:36:00.164683 > 33 bytes data, server => client 07:36:00.164690 '331 We are happy you popped in!\r\n' 07:36:00.164723 < 22 bytes data, client => server 07:36:00.164730 'PASS ftp@example.com\r\n' 07:36:00.164798 Received DATA (on stdin) 07:36:00.164806 > 30 bytes data, server => client 07:36:00.164812 '230 Welcome you silly person\r\n' 07:36:00.164841 < 5 bytes data, client => server 07:36:00.164848 'PWD\r\n' 07:36:00.164908 Received DATA (on stdin) 07:36:00.164915 > 30 bytes data, server => client 07:36:00.164922 '257 "/" is current directory\r\n' 07:36:00.165021 < 6 bytes data, client => server 07:36:00.165039 'EPSV\r\n' 07:36:00.166530 Received DATA (on stdin) 07:36:00.166540 > 38 bytes data, server => client 07:36:00.166548 '229 Entering Passive Mode (|||43157|)\n' 07:36:00.166645 < 8 bytes data, client => server 07:36:00.166653 'TYPE I\r\n' 07:36:00.166762 Received DATA (on stdin) 07:36:00.166770 > 33 bytes data, server => client 07:36:00.166777 '200 I modify TYPE as you wanted\r\n' 07:36:00.166808 < 21 bytes data, client => server 07:36:00.166816 'SIZE verifiedserver\r\n' 07:36:00.166881 Received DATA (on stdin) 07:36:00.166888 > 8 bytes data, server => client 07:36:00.166896 '213 17\r\n' 07:36:00.166925 < 21 bytes data, client => server 07:36:00.166932 'RETR verifiedserver\r\n' 07:36:00.167041 Received DATA (on stdin) 07:36:00.167055 > 29 bytes data, server => client 07:36:00.167062 '150 Binary junk (17 bytes).\r\n' 07:36:00.167440 Received DATA (on stdin) 07:36:00.167449 > 28 bytes data, server => client 07:36:00.167456 '226 File transfer complete\r\n' 07:36:00.209741 < 6 bytes data, client => server 07:36:00.209764 'QUIT\r\n' 07:36:00.209936 Received DATA (on stdin) 07:36:00.209947 > 18 bytes data, server => client 07:36:00.209958 '221 bye bye baby\r\n' 07:36:00.210534 ====> Client disconnect 07:36:00.210618 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.166256 Running IPv4 version 07:36:00.166297 Listening on port 43157 07:36:00.166324 Wrote pid 137542 to log/1/server/ftp_sockdata.pid 07:36:00.166341 Received PING (on stdin) 07:36:00.166415 Received PORT (on stdin) 07:36:00.166626 ====> Client connect 07:36:00.167054 Received DATA (on stdin) 07:36:00.167063 > 17 bytes data, server => client 07:36:00.167070 'WE ROOLZ: 80151\r\n' 07:36:00.167091 Received DISC (on stdin) 07:36:00.167099 ====> Client forcibly disconnected 07:36:00.167172 Received QUIT (on stdin) 07:36:00.167182 quits 07:36:00.167223 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd NODATACONN150 Testnum 1208 === End of file server.cmd === Start of file valgrind1208 ==137650== ==137650== Process terminating with default action of signal 4 (SIGILL) ==137650== Illegal opcode at address 0x4003082 ==137650== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137650== by 0x4003082: main (tool_main.c:234) === End of file valgrind1208 test 1210...[HTTP GET with -J without Content-Disposition] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1210 ../src/curl -q --trace-ascii log/8/trace1210 --trace-config all --trace-time http://127.0.0.1:45261/1210?junk -J -O --output-dir log/8 > log/8/stdout1210 2> log/8/stderr1210 1210: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1210 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1210 ../src/curl -q --trace-ascii log/8/trace1210 --trace-config all --trace-time http://127.0.0.1:45261/1210?junk -J -O --output-dir log/8 > log/8/stdout1210 2> log/8/stderr1210 === End of file commands.log === Start of file http_server.log 07:36:00.232359 ====> Client connect 07:36:00.232402 accept_connection 3 returned 4 07:36:00.232416 accept_connection 3 returned 0 07:36:00.232428 Read 93 bytes 07:36:00.232435 Process 93 bytes request 07:36:00.232446 Got request: GET /verifiedserver HTTP/1.1 07:36:00.232453 Are-we-friendly question received 07:36:00.232474 Wrote request (93 bytes) input to log/8/server.input 07:36:00.232486 Identifying ourselves as friends 07:36:00.232527 Response sent (56 bytes) and written to log/8/server.response 07:36:00.232535 special request received, no persistency 07:36:00.232541 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1210 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1210 ==137782== ==137782== Process terminating with default action of signal 4 (SIGILL) ==137782== Illegal opcode at address 0x4003082 ==137782== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137782== by 0x4003082: main (tool_main.c:234) === End of file valgrind1210 test 1214...[HTTP with proxy and URL with ? and no slash separator] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1214 ../src/curl -q --output log/21/curl1214.out --include --trace-ascii log/21/trace1214 --trace-config all --trace-time -x 127.0.0.1:41087 http://we.want.that.site.com.1214?moo=foo > log/21/stdout1214 2> log/21/stderr1214 1214: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1213 ../src/curl -q --output log/17/curl1213.out --include --trace-ascii log/17/trace1213 --trace-config all --trace-time -x 127.0.0.1:39089 we.want.that.site.com.1213 > log/17/stdout1213 2> log/17/stderr1213 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1222.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/21/stdout1222 2> log/21/stderr1222 = Contents of files in the log/21/ dir after test 1214 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1214 ../src/curl -q --output log/21/curl1214.out --include --trace-ascii log/21/trace1214 --trace-config all --trace-time -x 127.0.0.1:41087 http://we.want.that.site.com.1214?moo=foo > log/21/stdout1214 2> log/21/stderr1214 === End of file commands.log === Start of file http_server.log 07:36:00.253504 ====> Client connect 07:36:00.253545 accept_connection 3 returned 4 07:36:00.253557 accept_connection 3 returned 0 07:36:00.253567 Read 93 bytes 07:36:00.253574 Process 93 bytes request 07:36:00.253582 Got request: GET /verifiedserver HTTP/1.1 07:36:00.253589 Are-we-friendly question received 07:36:00.253607 Wrote request (93 bytes) input to log/21/server.input 07:36:00.253618 Identifying ourselves as friends 07:36:00.253656 Response sent (56 bytes) and written to log/21/server.response 07:36:00.253663 special request received, no persistency 07:36:00.253669 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 1214 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind1214 ==137897== ==137897== Process terminating with default action of signal 4 (SIGILL) ==137897== Illegal opcode at address 0x4003082 ==137897== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137897== by 0x4003082: main (tool_main.c:234) === End of file valgrind1214 test 1212...[noproxy setting together with socks proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1212 ../src/curl -q --output log/2/curl1212.out --include --trace-ascii log/2/trace1212 --trace-config all --trace-time http://user:secret@127.0.0.1:45457/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy 127.0.0.1 --max-time 5 > log/2/stdout1212 2> log/2/stderr1212 1212: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1212 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1212 ../src/curl -q --output log/2/curl1212.out --include --trace-ascii log/2/trace1212 --trace-config all --trace-time http://user:secret@127.0.0.1:45457/ulion/1212 --socks5 non-existing-host.haxx.se:1080 --noproxy 127.0.0.1 --max-time 5 > log/2/stdout1212 2> log/2/stderr1212 === End of file commands.log === Start of file http_server.log 07:36:00.249728 ====> Client connect 07:36:00.249753 accept_connection 3 returned 4 07:36:00.249764 accept_connection 3 returned 0 07:36:00.249775 Read 93 bytes 07:36:00.249782 Process 93 bytes request 07:36:00.249791 Got request: GET /verifiedserver HTTP/1.1 07:36:00.249798 Are-we-friendly question received 07:36:00.249818 Wrote request (93 bytes) input to log/2/server.input 07:36:00.249829 Identifying ourselves as friends 07:36:00.249868 Response sent (56 bytes) and written to log/2/server.response 07:36:00.249875 special request received, no persistency 07:36:00.249881 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1212 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1212 ==137875== ==137875== Process terminating with default action of signal 4 (SIGILL) ==137875== Illegal opcode at address 0x4003082 ==137875== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137875== by 0x4003082: main (tool_main.c:234) === End of file valgrind1212 test 1213...[HTTP with proxy and host-only URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1213 ../src/curl -q --output log/17/curl1213.out --include --trace-ascii log/17/trace1213 --trace-config all --trace-time -x 127.0.0.1:39089 we.want.that.site.com.1213 > log/17/stdout1213 2> log/17/stderr1213 1213: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1213 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1213 ../src/curl -q --output log/17/curl1213.out --include --trace-ascii log/17/trace1213 --trace-config all --trace-time -x 127.0.0.1:39089 we.want.that.site.com.1213 > log/17/stdout1213 2> log/17/stderr1213 === End of file commands.log === Start of file http_server.log 07:36:00.253088 ====> Client connect 07:36:00.253112 accept_connection 3 returned 4 07:36:00.253124 accept_connection 3 returned 0 07:36:00.253134 Read 93 bytes 07:36:00.253141 Process 93 bytes request 07:36:00.253150 Got request: GET /verifiedserver HTTP/1.1 07:36:00.253157 Are-we-friendly question received 07:36:00.253174 Wrote request (93 bytes) input to log/17/server.input 07:36:00.253185 Identifying ourselves as friends 07:36:00.253224 Response sent (56 bytes) and written to log/17/server.response 07:36:00.253235 special request received, no persistency 07:36:00.253241 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1213 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1213 ==137896== ==137896== Process terminating with default action of signal 4 (SIGILL) ==137896== Illegal opcode at address 0x4003082 ==137896== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==137896== by 0x4003082: main (tool_main.c:234) === End of file valgrind1213 * starts no server test 1222...[Verify deprecation statuses and versions] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1222.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/21/stdout1222 2> log/21/stderr1222 valgrind SKIPPED -------e--- OK (1133 out CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1216 ../src/curl -q --output log/18/curl1216.out --include --trace-ascii log/18/trace1216 --trace-config all --trace-time http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/18/injar1216 -x 127.0.0.1:45825 > log/18/stdout1216 2> log/18/stderr1216 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1215 ../src/curl -q --output log/19/curl1215.out --include --trace-ascii log/19/trace1215 --trace-config all --trace-time http://127.0.0.1:33487/1215 -u testuser:testpass --ntlm --proxy http://127.0.0.1:33487 > log/19/stdout1215 2> log/19/stderr1215 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1217 ../src/curl -q --output log/7/curl1217.out --include --trace-ascii log/7/trace1217 --trace-config all --trace-time ftp://127.0.0.1:40197/get/file/1217 ftp://127.0.0.1:40197/get/file/again/1217 --ftp-method singlecwd > log/7/stdout1217 2> log/7/stderr1217 of 1707, remaining: 00:36, took 0.164s, duration: 01:12) test 1216...[HTTP cookie domains tailmatching the host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1216 ../src/curl -q --output log/18/curl1216.out --include --trace-ascii log/18/trace1216 --trace-config all --trace-time http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/18/injar1216 -x 127.0.0.1:45825 > log/18/stdout1216 2> log/18/stderr1216 1216: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1216 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1216 ../src/curl -q --output log/18/curl1216.out --include --trace-ascii log/18/trace1216 --trace-config all --trace-time http://example.fake/c/1216 http://bexample.fake/c/1216 -b log/18/injar1216 -x 127.0.0.1:45825 > log/18/stdout1216 2> log/18/stderr1216 === End of file commands.log === Start of file http_server.log 07:36:00.555731 ====> Client connect 07:36:00.555776 accept_connection 3 returned 4 07:36:00.555789 accept_connection 3 returned 0 07:36:00.555800 Read 93 bytes 07:36:00.555807 Process 93 bytes request 07:36:00.555816 Got request: GET /verifiedserver HTTP/1.1 07:36:00.555823 Are-we-friendly question received 07:36:00.555846 Wrote request (93 bytes) input to log/18/server.input 07:36:00.555858 Identifying ourselves as friends 07:36:00.555907 Response sent (56 bytes) and written to log/18/server.response 07:36:00.555915 special request received, no persistency 07:36:00.555923 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file injar1216 example.fake FALSE /a FALSE 22139150993 mooo indeed example.fake FALSE /b FALSE 0 moo1 indeed example.fake FALSE /c FALSE 22139150993 moo2 indeed example.fake TRUE /c FALSE 22139150993 moo3 indeed === End of file injar1216 === Start of file server.cmd Testnum 1216 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1216 ==138105== ==138105== Process terminating with default action of signal 4 (SIGILL) ==138105== Illegal opcode at address 0x4003082 ==138105== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138105== by 0x4003082: main (tool_main.c:234) === End of file valgrind1216 test 1215...[HTTP with server NTLM authorization using a proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1215 ../src/curl -q --output log/19/curl1215.out --include --trace-ascii log/19/trace1215 --trace-config all --trace-time http://127.0.0.1:33487/1215 -u testuser:testpass --ntlm --proxy http://127.0.0.1:33487 > log/19/stdout1215 2> log/19/stderr1215 1215: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1215 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1215 ../src/curl -q --output log/19/curl1215.out --include --trace-ascii log/19/trace1215 --trace-config all --trace-time http://127.0.0.1:33487/1215 -u testuser:testpass --ntlm --proxy http://127.0.0.1:33487 > log/19/stdout1215 2> log/19/stderr1215 === End of file commands.log === Start of file http_server.log 07:36:00.554111 ====> Client connect 07:36:00.554141 accept_connection 3 returned 4 07:36:00.554180 accept_connection 3 returned 0 07:36:00.554196 Read 93 bytes 07:36:00.554204 Process 93 bytes request 07:36:00.554214 Got request: GET /verifiedserver HTTP/1.1 07:36:00.554221 Are-we-friendly question received 07:36:00.554250 Wrote request (93 bytes) input to log/19/server.input 07:36:00.554263 Identifying ourselves as friends 07:36:00.554310 Response sent (56 bytes) and written to log/19/server.response 07:36:00.554318 special request received, no persistency 07:36:00.554324 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1215 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1215 ==138106== ==138106== Process terminating with default action of signal 4 (SIGILL) ==138106== Illegal opcode at address 0x4003082 ==138106== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138106== by 0x4003082: main (tool_main.c:234) === End of file valgrind1215 test 1217...[FTP with rubbish before name in 257-response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1217 ../src/curl -q --output log/7/curl1217.out --include --trace-ascii log/7/trace1217 --trace-config all --trace-time ftp://127.0.0.1:40197/get/file/1217 ftp://127.0.0.1:40197/get/file/again/1217 --ftp-method singlecwd > log/7/stdout1217 2> log/7/stderr1217 1217: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1217 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1217 ../src/curl -q --output log/7/curl1217.out --include --trace-ascii log/7/trace1217 --trace-config all --trace-time ftp://127.0.0.1:40197/get/file/1217 ftp://127.0.0.1:40197/get/file/again/1217 --ftp-method singlecwd > log/7/stdout1217 2> log/7/stderr1217 === End of file commands.log === Start of file ftp_server.log 07:36:00.710295 ====> Client connect 07:36:00.710505 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.710726 < "USER anonymous" 07:36:00.710762 > "331 We are happy you popped in![CR][LF]" 07:36:00.710924 < "PASS ftp@example.com" 07:36:00.710943 > "230 Welcome you silly person[CR][LF]" 07:36:00.711086 < "PWD" 07:36:00.711128 > "257 "/" is current directory[CR][LF]" 07:36:00.711289 < "EPSV" 07:36:00.711310 ====> Passive DATA channel requested by client 07:36:00.711319 DATA sockfilt for passive data channel starting... 07:36:00.712839 DATA sockfilt for passive data channel started (pid 138102) 07:36:00.712940 DATA sockfilt for passive data channel listens on port 42047 07:36:00.712973 > "229 Entering Passive Mode (|||42047|)[LCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1218 ../src/curl -q --output log/9/curl1218.out --include --trace-ascii log/9/trace1218 --trace-config all --trace-time http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x 127.0.0.1:34999 > log/9/stdout1218 2> log/9/stderr1218 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1221 ../src/curl -q --output log/8/curl1221.out --include --trace-ascii log/8/trace1221 --trace-config all --trace-time http://127.0.0.1:45261/1221 --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@log/8/1221.txt" --url-query @log/8/1221.txt --url-query "+%3d%3d" --data-urlencode "start=once upon the time" > log/8/stdout1221 2> log/8/stderr1221 F]" 07:36:00.712986 Client has been notified that DATA conn will be accepted on port 42047 07:36:00.713139 Client connects to port 42047 07:36:00.713159 ====> Client established passive DATA connection on port 42047 07:36:00.713213 < "TYPE I" 07:36:00.713238 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.713405 < "SIZE verifiedserver" 07:36:00.713439 > "213 17[CR][LF]" 07:36:00.713626 < "RETR verifiedserver" 07:36:00.713673 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.713753 =====> Closing passive DATA connection... 07:36:00.713783 Server disconnects passive DATA connection 07:36:00.713961 Server disconnected passive DATA connection 07:36:00.713984 DATA sockfilt for passive data channel quits (pid 138102) 07:36:00.714271 DATA sockfilt for passive data channel quit (pid 138102) 07:36:00.714290 =====> Closed passive DATA connection 07:36:00.714326 > "226 File transfer complete[CR][LF]" 07:36:00.757048 < "QUIT" 07:36:00.757088 > "221 bye bye baby[CR][LF]" 07:36:00.757316 MAIN sockfilt said DISC 07:36:00.757385 ====> Client disconnected 07:36:00.757453 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.556191 ====> Client connect 07:36:00.556462 Received DATA (on stdin) 07:36:00.556485 > 160 bytes data, server => client 07:36:00.556495 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.556503 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.556510 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.556566 < 16 bytes data, client => server 07:36:00.556577 'USER anonymous\r\n' 07:36:00.556748 Received DATA (on stdin) 07:36:00.556764 > 33 bytes data, server => client 07:36:00.556773 '331 We are happy you popped in!\r\n' 07:36:00.556835 < 22 bytes data, client => server 07:36:00.556843 'PASS ftp@example.com\r\n' 07:36:00.556921 Received DATA (on stdin) 07:36:00.556929 > 30 bytes data, server => client 07:36:00.556937 '230 Welcome you silly person\r\n' 07:36:00.556971 < 5 bytes data, client => server 07:36:00.556978 'PWD\r\n' 07:36:00.557112 Received DATA (on stdin) 07:36:00.557125 > 30 bytes data, server => client 07:36:00.557132 '257 "/" is current directory\r\n' 07:36:00.557199 < 6 bytes data, client => server 07:36:00.557208 'EPSV\r\n' 07:36:00.558972 Received DATA (on stdin) 07:36:00.558984 > 38 bytes data, server => client 07:36:00.558992 '229 Entering Passive Mode (|||42047|)\n' 07:36:00.559087 < 8 bytes data, client => server 07:36:00.559119 'TYPE I\r\n' 07:36:00.559220 Received DATA (on stdin) 07:36:00.559233 > 33 bytes data, server => client 07:36:00.559240 '200 I modify TYPE as you wanted\r\n' 07:36:00.559278 < 21 bytes data, client => server 07:36:00.559285 'SIZE verifiedserver\r\n' 07:36:00.559422 Received DATA (on stdin) 07:36:00.559432 > 8 bytes data, server => client 07:36:00.559439 '213 17\r\n' 07:36:00.559484 < 21 bytes data, client => server 07:36:00.559492 'RETR verifiedserver\r\n' 07:36:00.559709 Received DATA (on stdin) 07:36:00.559727 > 29 bytes data, server => client 07:36:00.559736 '150 Binary junk (17 bytes).\r\n' 07:36:00.560293 Received DATA (on stdin) 07:36:00.560313 > 28 bytes data, server => client 07:36:00.560325 '226 File transfer complete\r\n' 07:36:00.602927 < 6 bytes data, client => server 07:36:00.602945 'QUIT\r\n' 07:36:00.603058 Received DATA (on stdin) 07:36:00.603073 > 18 bytes data, server => client 07:36:00.603081 '221 bye bye baby\r\n' 07:36:00.603236 ====> Client disconnect 07:36:00.603422 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.558681 Running IPv4 version 07:36:00.558726 Listening on port 42047 07:36:00.558757 Wrote pid 138102 to log/7/server/ftp_sockdata.pid 07:36:00.558771 Received PING (on stdin) 07:36:00.558848 Received PORT (on stdin) 07:36:00.559081 ====> Client connect 07:36:00.559671 Received DATA (on stdin) 07:36:00.559688 > 17 bytes data, server => client 07:36:00.559709 'WE ROOLZ: 81417\r\n' 07:36:00.559906 Received DISC (on stdin) 07:36:00.559917 ====> Client forcibly disconnected 07:36:00.559976 Received QUIT (on stdin) 07:36:00.559987 quits 07:36:00.560064 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PWD 257 there is rubbish all over "/this/is/the/path" Testnum 1217 === End of file server.cmd === Start of file valgrind1217 ==138279== ==138279== Process terminating with default action of signal 4 (SIGILL) ==138279== Illegal opcode at address 0x4003082 ==138279== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138279== by 0x4003082: main (tool_main.c:234) === End of file valgrind1217 test 1218...[HTTP cookies and domains with same prefix] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1218 ../src/curl -q --output log/9/curl1218.out --include --trace-ascii log/9/trace1218 --trace-config all --trace-time http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x 127.0.0.1:34999 > log/9/stdout1218 2> log/9/stderr1218 1218: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1218 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1218 ../src/curl -q --output log/9/curl1218.out --include --trace-ascii log/9/trace1218 --trace-config all --trace-time http://example.fake/c/1218 http://example.fake/c/1218 http://bexample.fake/c/1218 -b nonexisting -x 127.0.0.1:34999 > log/9/stdout1218 2> log/9/stderr1218 === End of file commands.log === Start of file http_server.log 07:36:00.604342 ====> Client connect 07:36:00.604366 accept_connection 3 returned 4 07:36:00.604377 accept_connection 3 returned 0 07:36:00.604387 Read 93 bytes 07:36:00.604394 Process 93 bytes request 07:36:00.604404 Got request: GET /verifiedserver HTTP/1.1 07:36:00.604411 Are-we-friendly question received 07:36:00.604428 Wrote request (93 bytes) input to log/9/server.input 07:36:00.604439 Identifying ourselves as friends 07:36:00.604479 Response sent (56 bytes) and written to log/9/server.response 07:36:00.604485 special request received, no persistency 07:36:00.604492 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1218 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1218 ==138283== ==138283== Process terminating with default action of signal 4 (SIGILL) ==138283== Illegal opcode at address 0x4003082 ==138283== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138283== by 0x4003082: main (tool_main.c:234) === End of file valgrind1218 test 1221...[--url-query with --data-urlencode] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1221 ../src/curl -q --output log/8/curl1221.out --include --trace-ascii log/8/trace1221 --trace-config all --trace-time http://127.0.0.1:45261/1221 --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@log/8/1221.txt" --url-query @log/8/1221.txt --url-query "+%3d%3d" --data-urlencode "start=onCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1220 ../src/curl -q --trace-ascii log/1/trace1220 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/1/test1220.txt?a_query=foobar#afragment > log/1/stdout1220 2> log/1/stderr1220 ce upon the time" > log/8/stdout1221 2> log/8/stderr1221 1221: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1221 === Start of file 1221.txt content to _?!#$'|<> === End of file 1221.txt === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1221 ../src/curl -q --output log/8/curl1221.out --include --trace-ascii log/8/trace1221 --trace-config all --trace-time http://127.0.0.1:45261/1221 --url-query "my name is moo[]" --url-query "yes=s i r" --url-query "v_alue@log/8/1221.txt" --url-query @log/8/1221.txt --url-query "+%3d%3d" --data-urlencode "start=once upon the time" > log/8/stdout1221 2> log/8/stderr1221 === End of file commands.log === Start of file http_server.log 07:36:00.615764 ====> Client connect 07:36:00.615798 accept_connection 3 returned 4 07:36:00.615810 accept_connection 3 returned 0 07:36:00.615821 Read 93 bytes 07:36:00.615828 Process 93 bytes request 07:36:00.615837 Got request: GET /verifiedserver HTTP/1.1 07:36:00.615843 Are-we-friendly question received 07:36:00.615860 Wrote request (93 bytes) input to log/8/server.input 07:36:00.615871 Identifying ourselves as friends 07:36:00.615922 Response sent (56 bytes) and written to log/8/server.response 07:36:00.615929 special request received, no persistency 07:36:00.615935 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1221 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1221 ==138339== ==138339== Process terminating with default action of signal 4 (SIGILL) ==138339== Illegal opcode at address 0x4003082 ==138339== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138339== by 0x4003082: main (tool_main.c:234) === End of file valgrind1221 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1223 ../src/curl -q --include --trace-ascii log/2/trace1223 --trace-config all --trace-time http://127.0.0.1:45457/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n' > log/2/stdout1223 2> log/2/stderr1223 test 1220...[file:// URLs with query string] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1220 ../src/curl -q --trace-ascii log/1/trace1220 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/1/test1220.txt?a_query=foobar#afragment > log/1/stdout1220 2> log/1/stderr1220 1220: stdout FAILED: --- log/1/check-expected 2025-07-18 07:36:01.170446244 +0000 +++ log/1/check-generated 2025-07-18 07:36:01.170446244 +0000 @@ -1 +0,0 @@ -contents in a single file[LF] == Contents of files in the log/1/ dir after test 1220 === Start of file check-expected contents in a single file[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1220 ../src/curl -q --trace-ascii log/1/trace1220 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/1/test1220.txt?a_query=foobar#afragment > log/1/stdout1220 2> log/1/stderr1220 === End of file commands.log === Start of file server.cmd Testnum 1220 === End of file server.cmd === Start of file test1220.txt contents in a single file === End of file test1220.txt === Start of file valgrind1220 ==138210== ==138210== Process terminating with default action of signal 4 (SIGILL) ==138210== Illegal opcode at address 0x4003082 ==138210== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138210== by 0x4003082: main (tool_main.c:234) === End of file valgrind1220 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1219 ../src/curl -q --output log/14/curl1219.out --include --trace-ascii log/14/trace1219 --trace-config all --trace-time ftp://127.0.0.1:41711/1219 > log/14/stdout1219 2> log/14/stderr1219 test 1223...[HTTP GET -w remote_ip and -w remote_port] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1223 ../src/curl -q --include --trace-ascii log/2/trace1223 --trace-config all --trace-time http://127.0.0.1:45457/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n' > log/2/stdout1223 2> log/2/stderr1223 1223: stdout FAILED: --- log/2/check-expected 2025-07-18 07:36:01.190446244 +0000 +++ log/2/check-generated 2025-07-18 07:36:01.190446244 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 4[LF] -Connection: close[LF] -Content-Type: text/html[LF] -[LF] -hej[LF] -IP 127.0.0.1 and PORT 45457[LF] == Contents of files in the log/2/ dir after test 1223 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 4[LF] Connection: close[LF] Content-Type: text/html[LF] [LF] hej[LF] IP 127.0.0.1 and PORT 45457[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1223 ../src/curl -q --include --trace-ascii log/2/trace1223 --trace-config all --trace-time http://127.0.0.1:45457/1223 -w 'IP %{remote_ip} and PORT %{remote_port}\n' > log/2/stdout1223 2> log/2/stderr1223 === End of file commands.log === Start of file http_server.log 07:36:00.644733 ====> Client connect 07:36:00.644757 accept_connection 3 returned 4 07:36:00.644769 accept_connection 3 returned 0 07:36:00.644780 Read 93 bytes 07:36:00.644787 Process 93 bytes request 07:36:00.644796 Got request: GET /verifiedserver HTTP/1.1 07:36:00.644803 Are-we-friendly question received 07:36:00.644820 Wrote request (93 bytes) input to log/2/server.input 07:36:00.644831 Identifying ourselves as friends 07:36:00.644870 Response sent (56 bytes) and written to log/2/server.response 07:36:00.644877 special request received, no persistency 07:36:00.644883 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1223 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1223 ==138482== ==138482== Process terminating with default action of signal 4 (SIGILL) ==138482== Illegal opcode at address 0x4003082 ==138482== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138482== by 0x4003082: main (tool_main.c:234) === End of file valgrind1223 test 1219...[FTP with no user+password required (230 response)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1219 ../src/curl -q --output log/14/curl1219.out --include --trace-ascii log/14/trace1219 --trace-config all --trace-time ftp://127.0.0.1:41711/1219 > log/14/stdout1219 2> log/14/stderr1219 1219: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1219 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1219 ../src/curl -q --output log/14/curl1219.out --include --trace-ascii log/14/trace1219 --trace-config all --trace-time ftp://127.0.0.1:41711/1219 > log/14/stdout1219 2> log/14/stderr1219 === End of file commands.log === Start of file ftp_server.log 07:36:00.759318 ====> Client connect 07:36:00.759637 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.759912 < "USER anonymous" 07:36:00.759948 > "331 We are happy you popped in![CR][LF]" 07:36:00.760081 < "PASS ftp@example.com" 07:36:00.760101 > "230 Welcome you silly person[CR][LF]" 07:36:00.760201 < "PWD" 07:36:00.760222 > "257 "/" is current directory[CR][LF]" 07:36:00.760322 < "EPSV" 07:36:00.760337 ====> Passive DATA channel requested by client 07:36:00.760346 DATA sockfilt for passive data channel starting... 07:36:00.761935 DATA sockfilt for passive data channel started (pid 138261) 07:36:00.762059 DATA sockfilt for passive data channel listens on port 40405 07:36:00.762132 > "229 Entering Passive Mode (|||40405|)[LF]" 07:36:00.762152 Client has been notified that DATA conn will be accepted on port 40405 07:36:00.762304 Client connects to port 40405 07:36:00.762333 ====> Client established passive DATA connection on port 40405 07:36:00.762403 < "TYPE I" 07:36:00.762437 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.762618 < "SIZE verifiedserver" 07:36:00.762647 > "213 17[CR][LF]" 07:36:00.762771 < "RETR verifiedserver" 07:36:00.762798 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.762875 =====> Closing passive DATA connection... 07:36:00.762890 Server disconnects passive DATA connection 07:36:00.763000 Server disconnected passive DATA connection 07:36:00.763024 DATA sockfilt for passive data channel quits (pid 138261) 07:36:00.763218 DATA sockfilt for passive data channel quit (pid 138261) 07:36:00.763234 =====> Closed passive DATA connection 07:36:00.763257 > "226 File transfer complete[CR][LF]" 07:36:00.803675 < "QUIT" 07:36:00.803717 > "221 bye bye baby[CR][LF]" 07:36:00.803845 MAIN sockfilt said DISC 07:36:00.803867 ====> Client disconnected 07:36:00.803929 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.605222 ====> Client connect 07:36:00.605634 Received DATA (on stdin) 07:36:00.605649 > 160 bytes data, server => client 07:36:00.605679 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.605688 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.605696 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.605759 < 16 bytes data, client => server 07:36:00.605767 'USER anonymous\r\n' 07:36:00.605929 Received DATA (on stdin) 07:36:00.605938 > 33 bytes data, server => client 07:36:00.605945 '331 We are happy you popped in!\r\n' 07:36:00.605995 < 22 bytes data, client => server 07:36:00.606005 'PASS ftp@example.com\r\n' 07:36:00.606079 Received DATA (on stdin) 07:36:00.606087 > 30 bytes data, server => client 07:36:00.606094 '230 Welcome you silly person\r\n' 07:36:00.606125 < 5 bytes data, client => server 07:36:00.606133 'PWD\r\n' 07:36:00.606199 Received DATA (on stdin) 07:36:00.606206 > 30 bytes data, server => client 07:36:00.606213 '257 "/" is current directory\r\n' 07:36:00.606249 < 6 bytes data, client => server 07:36:00.606256 'EPSV\r\n' 07:36:00.608137 Received DATA (on stdin) 07:36:00.608147 > 38 bytes data, server => client 07:36:00.608155 '229 Entering Passive Mode (|||40405|)\n' 07:36:00.608251 < 8 bytes data, client => server 07:36:00.608261 'TYPE I\r\n' 07:36:00.608426 Received DATA (on stdin) 07:36:00.608442 > 33 bytes data, server => client 07:36:00.608452 '200 I modify TYPE as you wanted\r\n' 07:36:00.608529 < 21 bytes data, client => server 07:36:00.608540 'SIZE verifiedserver\r\n' 07:36:00.608629 Received DATA (on stdin) 07:36:00.608639 > 8 bytes data, server => client 07:36:00.608647 '213 17\r\n' 07:36:00.608687 < 21 bytes data, client => server 07:36CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1190 ../src/curl -q --output log/6/curl1190.out --include --trace log/6/trace1190 --trace-config all --trace-time mqtt://127.0.0.1:41885/1190 > log/6/stdout1190 2> log/6/stderr1190 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1224 ../src/curl -q --output log/17/curl1224.out --include --trace-ascii log/17/trace1224 --trace-config all --trace-time ftp://127.0.0.1:39713//1224 > log/17/stdout1224 2> log/17/stderr1224 :00.608697 'RETR verifiedserver\r\n' 07:36:00.608787 Received DATA (on stdin) 07:36:00.608807 > 29 bytes data, server => client 07:36:00.608816 '150 Binary junk (17 bytes).\r\n' 07:36:00.609241 Received DATA (on stdin) 07:36:00.609255 > 28 bytes data, server => client 07:36:00.609265 '226 File transfer complete\r\n' 07:36:00.649523 < 6 bytes data, client => server 07:36:00.649549 'QUIT\r\n' 07:36:00.649700 Received DATA (on stdin) 07:36:00.649710 > 18 bytes data, server => client 07:36:00.649717 '221 bye bye baby\r\n' 07:36:00.649786 ====> Client disconnect 07:36:00.649907 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.607701 Running IPv4 version 07:36:00.607789 Listening on port 40405 07:36:00.607838 Wrote pid 138261 to log/14/server/ftp_sockdata.pid 07:36:00.607858 Received PING (on stdin) 07:36:00.607961 Received PORT (on stdin) 07:36:00.608243 ====> Client connect 07:36:00.608882 Received DATA (on stdin) 07:36:00.608901 > 17 bytes data, server => client 07:36:00.608916 'WE ROOLZ: 79837\r\n' 07:36:00.608942 Received DISC (on stdin) 07:36:00.608953 ====> Client forcibly disconnected 07:36:00.609017 Received QUIT (on stdin) 07:36:00.609030 quits 07:36:00.609079 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY welcome 230 welcome without password Testnum 1219 === End of file server.cmd === Start of file valgrind1219 ==138497== ==138497== Process terminating with default action of signal 4 (SIGILL) ==138497== Illegal opcode at address 0x4003082 ==138497== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138497== by 0x4003082: main (tool_main.c:234) === End of file valgrind1219 startnew: ./server/servers mqttd --port 0 --pidfile log/6/server/mqtt_server.pid --portfile log/6/server/mqtt_server.port --config log/6/server.cmd --logfile log/6/mqtt_server.log --logdir log/6 RUN: MQTT server is now running PID 137180 on PORT 41885 * pid mqtt => 137180 137180 test 1190...[MQTT SUBSCRIBE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1190 ../src/curl -q --output log/6/curl1190.out --include --trace log/6/trace1190 --trace-config all --trace-time mqtt://127.0.0.1:41885/1190 > log/6/stdout1190 2> log/6/stderr1190 1190: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1190 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1190 ../src/curl -q --output log/6/curl1190.out --include --trace log/6/trace1190 --trace-config all --trace-time mqtt://127.0.0.1:41885/1190 > log/6/stdout1190 2> log/6/stderr1190 === End of file commands.log === Start of file mqtt_server.log 07:35:59.690317 Running IPv4 version 07:35:59.690398 Listening on port 41885 07:35:59.690440 Wrote pid 137180 to log/6/server/mqtt_server.pid 07:35:59.690470 Wrote port 41885 to log/6/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1190 === End of file server.cmd === Start of file valgrind1190 ==138588== ==138588== Process terminating with default action of signal 4 (SIGILL) ==138588== Illegal opcode at address 0x4003082 ==138588== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138588== by 0x4003082: main (tool_main.c:234) === End of file valgrind1190 test 1224...[FTP fetch a file from the root directory] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1224 ../src/curl -q --output log/17/curl1224.out --include --trace-ascii log/17/trace1224 --trace-config all --trace-time ftp://127.0.0.1:39713//1224 > log/17/stdout1224 2> log/17/stderr1224 1224: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1224 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1224 ../src/curl -q --output log/17/curl1224.out --include --trace-ascii log/17/trace1224 --trace-config all --trace-time ftp://127.0.0.1:39713//1224 > log/17/stdout1224 2> log/17/stderr1224 === End of file commands.log === Start of file ftp_server.log 07:36:00.799310 ====> Client connect 07:36:00.799431 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.799791 < "USER anonymous" 07:36:00.799822 > "331 We are happy you popped in![CR][LF]" 07:36:00.799935 < "PASS ftp@example.com" 07:36:00.799955 > "230 Welcome you silly person[CR][LF]" 07:36:00.800078 < "PWD" 07:36:00.800103 > "257 "/" is current directory[CR][LF]" 07:36:00.800269 < "EPSV" 07:36:00.800298 ====> Passive DATA channel requested by client 07:36:00.800307 DATA sockfilt for passive data channel starting... 07:36:00.801478 DATA sockfilt for passive data channel started (pid 138466) 07:36:00.801555 DATA sockfilt for passive data channel listens on port 46541 07:36:00.801587 > "229 Entering Passive Mode (|||46541|)[LF]" 07:36:00.801600 Client has been notified that DATA conn will be accepted on port 46541 07:36:00.801780 Client connects to port 46541 07:36:00.801799 ====> Client established passive DATA connection on port 46541 07:36:00.801843 < "TYPE I" 07:36:00.801862 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.801964 < "SIZE verifiedserver" 07:36:00.801986 > "213 17[CR][LF]" 07:36:00.802121 < "RETR verifiedserver" 07:36:00.802161 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.802223 =====> Closing passive DATA connection... 07:36:00.802234 Server disconnects passive DATA connection 07:36:00.802369 Server disconnected passive DATA connection 07:36:00.802385 DATA sockfilt for passive data channel quits (pid 138466) 07:36:00.802569 DATA sockfilt for passive data channel quit (pid 138466) 07:36:00.802593 =====> Closed passive DATA connection 07:36:00.802613 > "226 File transfer complete[CR][LF]" 07:36:00.847165 < "QUIT" 07:36:00.847206 > "221 bye bye baby[CR][LF]" 07:36:00.847652 MAIN sockfilt said DISC 07:36:00.847673 ====> Client disconnected 07:36:00.847733 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.645201 ====> Client connect 07:36:00.645420 Received DATA (on stdin) 07:36:00.645431 > 160 bytes data, server => client 07:36:00.645440 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.645448 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.645458 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.645522 < 16 bytes data, client => server 07:36:00.645534 'USER anonymous\r\n' 07:36:00.645804 Received DATA (on stdin) 07:36:00.645813 > 33 bytes data, server => client 07:36:00.645821 '331 We are happy you popped in!\r\n' 07:36:00.645862 < 22 bytes data, client => server 07:36:00.645874 'PASS ftp@example.com\r\n' 07:36:00.645933 Received DATA (on stdin) 07:36:00.645941 > 30 bytes data, server => client 07:36:00.645949 '230 Welcome you silly person\r\n' 07:36:00.645995 < 5 bytes data, client => server 07:36:00.646010 'PWD\r\n' 07:36:00.646082 Received DATA (on stdin) 07:36:00.646092 > 30 bytes data, server => client 07:36:00.646100 '257 "/" is current directory\r\n' 07:36:00.646157 < 6 bytes data, client => server 07:36:00.646165 'EPSV\r\n' 07:36:00.647585 Received DATA (on stdin) 07:36:00.647598 > 38 bytes data, server => client 07:36:00.647606 '229 Entering Passive Mode (|||46541|)\n' 07:36:00.647721 < 8 bCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1192 ../src/curl -q --output log/11/curl1192.out --include --trace log/11/trace1192 --trace-config all --trace-time mqtt://127.0.0.1:44195/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/1192 > log/11/stdout1192 2> log/11/stderr1192 ytes data, client => server 07:36:00.647730 'TYPE I\r\n' 07:36:00.647841 Received DATA (on stdin) 07:36:00.647849 > 33 bytes data, server => client 07:36:00.647856 '200 I modify TYPE as you wanted\r\n' 07:36:00.647889 < 21 bytes data, client => server 07:36:00.647896 'SIZE verifiedserver\r\n' 07:36:00.647964 Received DATA (on stdin) 07:36:00.647972 > 8 bytes data, server => client 07:36:00.647979 '213 17\r\n' 07:36:00.648019 < 21 bytes data, client => server 07:36:00.648026 'RETR verifiedserver\r\n' 07:36:00.648215 Received DATA (on stdin) 07:36:00.648227 > 29 bytes data, server => client 07:36:00.648235 '150 Binary junk (17 bytes).\r\n' 07:36:00.648593 Received DATA (on stdin) 07:36:00.648603 > 28 bytes data, server => client 07:36:00.648610 '226 File transfer complete\r\n' 07:36:00.693002 < 6 bytes data, client => server 07:36:00.693027 'QUIT\r\n' 07:36:00.693186 Received DATA (on stdin) 07:36:00.693195 > 18 bytes data, server => client 07:36:00.693203 '221 bye bye baby\r\n' 07:36:00.693590 ====> Client disconnect 07:36:00.693711 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.647325 Running IPv4 version 07:36:00.647369 Listening on port 46541 07:36:00.647400 Wrote pid 138466 to log/17/server/ftp_sockdata.pid 07:36:00.647412 Received PING (on stdin) 07:36:00.647477 Received PORT (on stdin) 07:36:00.647701 ====> Client connect 07:36:00.648262 Received DATA (on stdin) 07:36:00.648275 > 17 bytes data, server => client 07:36:00.648282 'WE ROOLZ: 79834\r\n' 07:36:00.648300 Received DISC (on stdin) 07:36:00.648311 ====> Client forcibly disconnected 07:36:00.648368 Received QUIT (on stdin) 07:36:00.648375 quits 07:36:00.648425 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1224 === End of file server.cmd === Start of file valgrind1224 ==138601== ==138601== Process terminating with default action of signal 4 (SIGILL) ==138601== Illegal opcode at address 0x4003082 ==138601== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138601== by 0x4003082: main (tool_main.c:234) === End of file valgrind1224 startnew: ./server/servers mqttd --port 0 --pidfile log/11/server/mqtt_server.pid --portfile log/11/server/mqtt_server.port --config log/11/server.cmd --logfile log/11/mqtt_server.log --logdir log/11 RUN: MQTT server is now running PID 137252 on PORT 44195 * pid mqtt => 137252 137252 test 1192...[MQTT SUBSCRIBE 2k topic] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1192 ../src/curl -q --output log/11/curl1192.out --include --trace log/11/trace1192 --trace-config all --trace-time mqtt://127.0.0.1:44195/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/1192 > log/11/stdout1192 2> log/11/stderr1192 1192: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1192 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1192 ../src/curl -q --output log/11/curl1192.out --include --trace log/11/trace1192 --trace-config all --trace-time mqtt://127.0.0.1:44195/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/1192 > log/11/stdout1192 2> log/11/stderr1192 === End of file commands.log === Start of file mqtt_server.log 07:35:59.718101 Running IPv4 version 07:35:59.718159 Listening on port 44195 07:35:59.718195 Wrote pid 137252 to log/11/server/mqtt_server.pid 07:35:59.718224 Wrote port 44195 to log/11/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1192 === End of file server.cmd === Start of file valgrind1192 ==138680== ==138680== Process terminating with default action of signal 4 (SIGILL) ==138680== Illegal opcode at address 0x4003082 ==138680== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1191 ../src/curl -q --output log/22/curl1191.out --include --trace log/22/trace1191 --trace-config all --trace-time mqtt://127.0.0.1:33313/1191 -d something > log/22/stdout1191 2> log/22/stderr1191 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1225 ../src/curl -q --output log/21/curl1225.out --include --trace-ascii log/21/trace1225 --trace-config all --trace-time ftp://127.0.0.1:38701//foo/1225 ftp://127.0.0.1:38701//foo/bar/1225 > log/21/stdout1225 2> log/21/stderr1225 =138680== by 0x4003082: main (tool_main.c:234) === End of file valgrind1192 startnew: ./server/servers mqttd --port 0 --pidfile log/22/server/mqtt_server.pid --portfile log/22/server/mqtt_server.port --config log/22/server.cmd --logfile log/22/mqtt_server.log --logdir log/22 RUN: MQTT server is now running PID 137241 on PORT 33313 * pid mqtt => 137241 137241 test 1191...[MQTT PUBLISH] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1191 ../src/curl -q --output log/22/curl1191.out --include --trace log/22/trace1191 --trace-config all --trace-time mqtt://127.0.0.1:33313/1191 -d something > log/22/stdout1191 2> log/22/stderr1191 1191: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1191 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1191 ../src/curl -q --output log/22/curl1191.out --include --trace log/22/trace1191 --trace-config all --trace-time mqtt://127.0.0.1:33313/1191 -d something > log/22/stdout1191 2> log/22/stderr1191 === End of file commands.log === Start of file mqtt_server.log 07:35:59.716255 Running IPv4 version 07:35:59.716318 Listening on port 33313 07:35:59.716358 Wrote pid 137241 to log/22/server/mqtt_server.pid 07:35:59.716388 Wrote port 33313 to log/22/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1191 === End of file server.cmd === Start of file valgrind1191 ==138664== ==138664== Process terminating with default action of signal 4 (SIGILL) ==138664== Illegal opcode at address 0x4003082 ==138664== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138664== by 0x4003082: main (tool_main.c:234) === End of file valgrind1191 test 1225...[FTP fetch two files using absolute paths] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1225 ../src/curl -q --output log/21/curl1225.out --include --trace-ascii log/21/trace1225 --trace-config all --trace-time ftp://127.0.0.1:38701//foo/1225 ftp://127.0.0.1:38701//foo/bar/1225 > log/21/stdout1225 2> log/21/stderr1225 1225: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1225 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1225 ../src/curl -q --output log/21/curl1225.out --include --trace-ascii log/21/trace1225 --trace-config all --trace-time ftp://127.0.0.1:38701//foo/1225 ftp://127.0.0.1:38701//foo/bar/1225 > log/21/stdout1225 2> log/21/stderr1225 === End of file commands.log === Start of file ftp_server.log 07:36:00.966202 ====> Client connect 07:36:00.966327 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:00.966529 < "USER anonymous" 07:36:00.966557 > "331 We are happy you popped in![CR][LF]" 07:36:00.966666 < "PASS ftp@example.com" 07:36:00.966695 > "230 Welcome you silly person[CR][LF]" 07:36:00.966794 < "PWD" 07:36:00.966816 > "257 "/" is current directory[CR][LF]" 07:36:00.966917 < "EPSV" 07:36:00.966936 ====> Passive DATA channel requested by client 07:36:00.966945 DATA sockfilt for passive data channel starting... 07:36:00.968171 DATA sockfilt for passive data channel started (pid 138802) 07:36:00.968246 DATA sockfilt for passive data channel listens on port 35697 07:36:00.968272 > "229 Entering Passive Mode (|||35697|)[LF]" 07:36:00.968284 Client has been notified that DATA conn will be accepted on port 35697 07:36:00.968437 Client connects to port 35697 07:36:00.968456 ====> Client established passive DATA connection on port 35697 07:36:00.968502 < "TYPE I" 07:36:00.968520 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:00.968623 < "SIZE verifiedserver" 07:36:00.968649 > "213 17[CR][LF]" 07:36:00.968747 < "RETR verifiedserver" 07:36:00.968771 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:00.968826 =====> Closing passive DATA connection... 07:36:00.968837 Server disconnects passive DATA connection 07:36:00.968918 Server disconnected passive DATA connection 07:36:00.968931 DATA sockfilt for passive data channel quits (pid 138802) 07:36:00.969083 DATA sockfilt for passive data channel quit (pid 138802) 07:36:00.969099 =====> Closed passive DATA connection 07:36:00.969118 > "226 File transfer complete[CR][LF]" 07:36:01.013656 < "QUIT" 07:36:01.013709 > "221 bye bye baby[CR][LF]" 07:36:01.014061 MAIN sockfilt said DISC 07:36:01.014087 ====> Client disconnected 07:36:01.014159 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:00.812082 ====> Client connect 07:36:00.812314 Received DATA (on stdin) 07:36:00.812324 > 160 bytes data, server => client 07:36:00.812333 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:00.812341 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:00.812348 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:00.812408 < 16 bytes data, client => server 07:36:00.812423 'USER anonymous\r\n' 07:36:00.812538 Received DATA (on stdin) 07:36:00.812547 > 33 bytes data, server => client 07:36:00.812555 '331 We are happy you popped in!\r\n' 07:36:00.812593 < 22 bytes data, client => server 07:36:00.812605 'PASS ftp@example.com\r\n' 07:36:00.812674 Received DATA (on stdin) 07:36:00.812682 > 30 bytes data, server => client 07:36:00.812690 '230 Welcome you silly person\r\n' 07:36:00.812726 < 5 bytes data, client => server 07:36:00.812737 'PWD\r\n' 07:36:00.812793 Received DATA (on stdin) 07:36:00.812802 > 30 bytes data, server => client 07:36:00.812809 '257 "/" is current directory\r\n' 07:36:00.812849 < 6 bytes data, client => server 07:36:00.812861 'EPSV\r\n' 07:36:00.814265 Received DATA (on stdin) 07:36:00.814274 > 38 bytes data, server => client 07:36:00.814282 '229 Entering Passive Mode (|||35697|)\n' 07:36:00.814378 < 8 bytes data, client => server 07:36:00.814386 'TYPE I\r\n' 07:36:00.814498 Received DATA (on stdin) 07:36:00.814506 > 33 bytes data, server => client 07:36:00.814514 '200 I modify TYPE as you wanted\r\n' 07:36:00.814547 < 21 bytes data, client => server 07:36:00.814554 'SIZE verifiedserver\r\n' 07:36:00.814627 Received DATA (on stdin) 07:36:00.814635 > 8 bytes data, server => client 07:36:00.814642 '213 17\r\n' 07:36:00.814673 < 21 bytes data, client => server 07:36:00.814680 'RETR verifiedserver\r\n' 07:36:00.814777 Received DATA (on stdin) 07:36:00.814809 > 29 bytes data, server => client 07:36:00.814821 '150 Binary junk (17 bytes).\r\n' 07:36:00.815099 Received DATA (on stdin) 07:36:00.815110 > 28 bytes data, server => client 07:36:00.815118 '226 File transfer complete\r\n' 07:36:00.859468 < 6 bytes data, client => server 07:36:00.859503 'QUIT\r\n' 07:36:00.859696 Received DATA (on stdin) 07:36:00.859710 > 18 bytes data, server => client 07:36:00.859720 '221 bye bye baby\r\n' 07:36:00.859996 ====> Client disconnect 07:36:00.860140 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:00.814021 Running IPv4 version 07:36:00.814066 Listening on port 35697 07:36:00.814095 Wrote pid 138802 to log/21/server/ftp_sockdata.pid 07:36:00.814107 Received PING (on stdin) 07:36:00.814169 Received PORT (on stdin) 07:36:00.814359 ====> Client connect 07:36:00.814817 Received DATA (on stdin) 07:36:00.814827 > 17 bytes data, server => client 07:36:00.814835 'WE ROOLZ: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1193 ../src/curl -q --output log/20/curl1193.out --include --trace log/20/trace1193 --trace-config all --trace-time mqtt://127.0.0.1:37395/1193 -d @log/20/payload1193 > log/20/stdout1193 2> log/20/stderr1193 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1194 ../src/curl -q --output log/10/curl1194.out --include --trace log/10/trace1194 --trace-config all --trace-time mqtt://127.0.0.1:34515/1194 > log/10/stdout1194 2> log/10/stderr1194 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1195 ../src/curl -q --output log/4/curl1195.out --include --trace log/4/trace1195 --trace-config all --trace-time mqtt://127.0.0.1:42315/1195 > log/4/stdout1195 2> log/4/stderr1195 81322\r\n' 07:36:00.814853 Received DISC (on stdin) 07:36:00.814861 ====> Client forcibly disconnected 07:36:00.814913 Received QUIT (on stdin) 07:36:00.814920 quits 07:36:00.814968 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1225 === End of file server.cmd === Start of file valgrind1225 ==138807== ==138807== Process terminating with default action of signal 4 (SIGILL) ==138807== Illegal opcode at address 0x4003082 ==138807== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138807== by 0x4003082: main (tool_main.c:234) === End of file valgrind1225 startnew: ./server/servers mqttd --port 0 --pidfile log/20/server/mqtt_server.pid --portfile log/20/server/mqtt_server.port --config log/20/server.cmd --logfile log/20/mqtt_server.log --logdir log/20 RUN: MQTT server is now running PID 137383 on PORT 37395 * pid mqtt => 137383 137383 test 1193...[MQTT PUBLISH 2k payload] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1193 ../src/curl -q --output log/20/curl1193.out --include --trace log/20/trace1193 --trace-config all --trace-time mqtt://127.0.0.1:37395/1193 -d @log/20/payload1193 > log/20/stdout1193 2> log/20/stderr1193 1193: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1193 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1193 ../src/curl -q --output log/20/curl1193.out --include --trace log/20/trace1193 --trace-config all --trace-time mqtt://127.0.0.1:37395/1193 -d @log/20/payload1193 > log/20/stdout1193 2> log/20/stderr1193 === End of file commands.log === Start of file mqtt_server.log 07:36:00.915139 Running IPv4 version 07:36:00.915203 Listening on port 37395 07:36:00.915250 Wrote pid 137383 to log/20/server/mqtt_server.pid 07:36:00.915294 Wrote port 37395 to log/20/server/mqtt_server.port === End of file mqtt_server.log === Start of file payload1193 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 === End of file payload1193 === Start of file server.cmd Testnum 1193 === End of file server.cmd === Start of file valgrind1193 ==138856== ==138856== Process terminating with default action of signal 4 (SIGILL) ==138856== Illegal opcode at address 0x4003082 ==138856== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138856== by 0x4003082: main (tool_main.c:234) === End of file valgrind1193 startnew: ./server/servers mqttd --port 0 --pidfile log/10/server/mqtt_server.pid --portfile log/10/server/mqtt_server.port --config log/10/server.cmd --logfile log/10/mqtt_server.log --logdir log/10 RUN: MQTT server is now running PID 137386 on PORT 34515 * pid mqtt => 137386 137386 test 1194...[MQTT SUBSCRIBE with PUBLISH before SUBACK] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1194 ../src/curl -q --output log/10/curl1194.out --include --trace log/10/trace1194 --trace-config all --trace-time mqtt://127.0.0.1:34515/1194 > log/10/stdout1194 2> log/10/stderr1194 1194: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1194 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1194 ../src/curl -q --output log/10/curl1194.out --include --trace log/10/trace1194 --trace-config all --trace-time mqtt://127.0.0.1:34515/1194 > log/10/stdout1194 2> log/10/stderr1194 === End of file commands.log === Start of file mqtt_server.log 07:36:00.923928 Running IPv4 version 07:36:00.923991 Listening on port 34515 07:36:00.924032 Wrote pid 137386 to log/10/server/mqtt_server.pid 07:36:00.924063 Wrote port 34515 to log/10/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd PUBLISH-before-SUBACK TRUE Testnum 1194 === End of file server.cmd === Start of file valgrind1194 ==138869== ==138869== Process terminating with default action of signal 4 (SIGILL) ==138869== Illegal opcode at address 0x4003082 ==138869== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138869== by 0x4003082: main (tool_main.c:234) === End of file valgrind1194 startnew: ./server/servers mqttd --port 0 --pidfile log/4/server/mqtt_server.pid --portfile log/4/server/mqtt_server.port --config log/4/server.cmd --logfile log/4/mqtt_server.log --logdir log/4 RUN: MQTT server is now running PID 137388 on PORT 42315 * pid mqtt => 137388 137388 test 1195...[MQTT SUBSCRIBE with short PUBLISH] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1195 ../src/curl -q --output log/4/curl1195.out --include --trace log/4/trace1195 --trace-config all --trace-time mqtt://127.0.0.1:42315/1195 > log/4/stdout1195 2> log/4/stderr1195 1195: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1195 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1195 ../src/curl -q --output log/4/curl1195.out --include --trace log/4/trace1195 --trace-config all --trace-time mqtt://127.0.0.1:42315/1195 > log/4/stdout1195 2> log/4/stderr1195 === End of file commands.log === Start of file mqtt_server.log 07:36:00.952909 Running IPv4 version 07:36:00.952962 Listening on port 42315 07:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1233 ../src/curl -q --output log/14/curl1233.out --include --trace-ascii log/14/trace1233 --trace-config all --trace-time ftp://127.0.0.1:41711/1233 > log/14/stdout1233 2> log/14/stderr1233 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1202 ../src/curl -q --output log/13/curl1202.out --include --trace-ascii log/13/trace1202 --trace-config all --trace-time "gopher://127.0.0.1:43859/7/the/search/engine%09query%20succeeded/1202" > log/13/stdout1202 2> log/13/stderr1202 36:00.952995 Wrote pid 137388 to log/4/server/mqtt_server.pid 07:36:00.953021 Wrote port 42315 to log/4/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd PUBLISH-before-SUBACK TRUE short-PUBLISH TRUE Testnum 1195 === End of file server.cmd === Start of file valgrind1195 ==138947== ==138947== Process terminating with default action of signal 4 (SIGILL) ==138947== Illegal opcode at address 0x4003082 ==138947== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==138947== by 0x4003082: main (tool_main.c:234) === End of file valgrind1195 test 1233...[FTP failing to connect to EPSV port, switching to PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1233 ../src/curl -q --output log/14/curl1233.out --include --trace-ascii log/14/trace1233 --trace-config all --trace-time ftp://127.0.0.1:41711/1233 > log/14/stdout1233 2> log/14/stderr1233 1233: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1233 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1233 ../src/curl -q --output log/14/curl1233.out --include --trace-ascii log/14/trace1233 --trace-config all --trace-time ftp://127.0.0.1:41711/1233 > log/14/stdout1233 2> log/14/stderr1233 === End of file commands.log === Start of file ftp_server.log 07:36:01.225345 ====> Client connect 07:36:01.225454 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:01.225640 < "USER anonymous" 07:36:01.225664 > "331 We are happy you popped in![CR][LF]" 07:36:01.225773 < "PASS ftp@example.com" 07:36:01.225789 > "230 Welcome you silly person[CR][LF]" 07:36:01.225889 < "PWD" 07:36:01.225928 > "257 "/" is current directory[CR][LF]" 07:36:01.226164 < "EPSV" 07:36:01.226181 ====> Passive DATA channel requested by client 07:36:01.226190 DATA sockfilt for passive data channel starting... 07:36:01.227713 DATA sockfilt for passive data channel started (pid 139215) 07:36:01.227822 DATA sockfilt for passive data channel listens on port 44381 07:36:01.227853 > "229 Entering Passive Mode (|||44381|)[LF]" 07:36:01.227866 Client has been notified that DATA conn will be accepted on port 44381 07:36:01.228088 Client connects to port 44381 07:36:01.228109 ====> Client established passive DATA connection on port 44381 07:36:01.228166 < "TYPE I" 07:36:01.228188 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:01.228346 < "SIZE verifiedserver" 07:36:01.228380 > "213 17[CR][LF]" 07:36:01.228527 < "RETR verifiedserver" 07:36:01.228553 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:01.228606 =====> Closing passive DATA connection... 07:36:01.228617 Server disconnects passive DATA connection 07:36:01.228947 Server disconnected passive DATA connection 07:36:01.228973 DATA sockfilt for passive data channel quits (pid 139215) 07:36:01.229144 DATA sockfilt for passive data channel quit (pid 139215) 07:36:01.229160 =====> Closed passive DATA connection 07:36:01.229181 > "226 File transfer complete[CR][LF]" 07:36:01.271624 < "QUIT" 07:36:01.271672 > "221 bye bye baby[CR][LF]" 07:36:01.271855 MAIN sockfilt said DISC 07:36:01.271912 ====> Client disconnected 07:36:01.271987 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:01.071238 ====> Client connect 07:36:01.071440 Received DATA (on stdin) 07:36:01.071450 > 160 bytes data, server => client 07:36:01.071458 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:01.071466 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:01.071473 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:01.071519 < 16 bytes data, client => server 07:36:01.071527 'USER anonymous\r\n' 07:36:01.071643 Received DATA (on stdin) 07:36:01.071652 > 33 bytes data, server => client 07:36:01.071659 '331 We are happy you popped in!\r\n' 07:36:01.071694 < 22 bytes data, client => server 07:36:01.071701 'PASS ftp@example.com\r\n' 07:36:01.071767 Received DATA (on stdin) 07:36:01.071774 > 30 bytes data, server => client 07:36:01.071782 '230 Welcome you silly person\r\n' 07:36:01.071811 < 5 bytes data, client => server 07:36:01.071822 'PWD\r\n' 07:36:01.071920 Received DATA (on stdin) 07:36:01.071931 > 30 bytes data, server => client 07:36:01.071939 '257 "/" is current directory\r\n' 07:36:01.072080 < 6 bytes data, client => server 07:36:01.072090 'EPSV\r\n' 07:36:01.073852 Received DATA (on stdin) 07:36:01.073866 > 38 bytes data, server => client 07:36:01.073874 '229 Entering Passive Mode (|||44381|)\n' 07:36:01.074031 < 8 bytes data, client => server 07:36:01.074040 'TYPE I\r\n' 07:36:01.074167 Received DATA (on stdin) 07:36:01.074175 > 33 bytes data, server => client 07:36:01.074183 '200 I modify TYPE as you wanted\r\n' 07:36:01.074241 < 21 bytes data, client => server 07:36:01.074260 'SIZE verifiedserver\r\n' 07:36:01.074361 Received DATA (on stdin) 07:36:01.074370 > 8 bytes data, server => client 07:36:01.074377 '213 17\r\n' 07:36:01.074433 < 21 bytes data, client => server 07:36:01.074449 'RETR verifiedserver\r\n' 07:36:01.074596 Received DATA (on stdin) 07:36:01.074604 > 29 bytes data, server => client 07:36:01.074611 '150 Binary junk (17 bytes).\r\n' 07:36:01.075165 Received DATA (on stdin) 07:36:01.075176 > 28 bytes data, server => client 07:36:01.075184 '226 File transfer complete\r\n' 07:36:01.117371 < 6 bytes data, client => server 07:36:01.117403 'QUIT\r\n' 07:36:01.117641 Received DATA (on stdin) 07:36:01.117661 > 18 bytes data, server => client 07:36:01.117671 '221 bye bye baby\r\n' 07:36:01.117764 ====> Client disconnect 07:36:01.117972 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:01.073516 Running IPv4 version 07:36:01.073581 Listening on port 44381 07:36:01.073617 Wrote pid 139215 to log/14/server/ftp_sockdata.pid 07:36:01.073633 Received PING (on stdin) 07:36:01.073732 Received PORT (on stdin) 07:36:01.074010 ====> Client connect 07:36:01.074790 Received DATA (on stdin) 07:36:01.074805 > 17 bytes data, server => client 07:36:01.074813 'WE ROOLZ: 79837\r\n' 07:36:01.074837 Received DISC (on stdin) 07:36:01.074846 ====> Client forcibly disconnected 07:36:01.074961 Received QUIT (on stdin) 07:36:01.074969 quits 07:36:01.075015 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd # Assuming there's nothing listening on port 1 REPLY EPSV 229 Entering Passiv Mode (|||1|) Testnum 1233 === End of file server.cmd === Start of file valgrind1233 ==139491== ==139491== Process terminating with default action of signal 4 (SIGILL) ==139491== Illegal opcode at address 0x4003082 ==139491== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139491== by 0x4003082: main (tool_main.c:234) === End of file valgrind1233 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/13/server/gopher_server.pid" --logfile "log/13/gopher_server.log" --logdir "log/13" --portfile log/13/server/gopher_server.port --config log/13/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: GOPHER server is on PID 137445 port 43859 * pid gopher => 137445 137445 test 1202...[Gopher query] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1202 ../src/curl -q --output log/13/curl1202.out --include --trace-ascii log/13/trace1202 --trace-config all --trace-time "gopher://127.0.0.1:43859/7/the/search/engine%09query%20succeeded/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1200 ../src/curl -q --output log/5/curl1200.out --include --trace-ascii log/5/trace1200 --trace-config all --trace-time gopher://127.0.0.1:42767/1/1200 > log/5/stdout1200 2> log/5/stderr1200 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1199 ../src/curl -q --output log/24/curl1199.out --include --trace log/24/trace1199 --trace-config all --trace-time mqtt://127.0.0.1:43307 -d "" > log/24/stdout1199 2> log/24/stderr1199 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1203 ../src/curl -q --output log/16/curl1203.out --include --trace-ascii log/16/trace1203 --trace-config all --trace-time -g gopher://[::1]:46457/1/moo/1203 > log/16/stdout1203 2> log/16/stderr1203 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1228 ../src/curl -q --output log/7/curl1228.out --include --trace-ascii log/7/trace1228 --trace-config all --trace-time http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x 127.0.0.1:39077 > log/7/stdout1228 2> log/7/stderr1228 1202" > log/13/stdout1202 2> log/13/stderr1202 1202: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1202 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1202 ../src/curl -q --output log/13/curl1202.out --include --trace-ascii log/13/trace1202 --trace-config all --trace-time "gopher://127.0.0.1:43859/7/the/search/engine%09query%20succeeded/1202" > log/13/stdout1202 2> log/13/stderr1202 === End of file commands.log === Start of file gopher_server.log 07:36:00.155864 Running GOPHER IPv4 version on port 43859 07:36:00.155924 Wrote pid 137445 to log/13/server/gopher_server.pid 07:36:00.155949 Wrote port 43859 to log/13/server/gopher_server.port === End of file gopher_server.log === Start of file server.cmd Testnum 1202 === End of file server.cmd === Start of file valgrind1202 ==139551== ==139551== Process terminating with default action of signal 4 (SIGILL) ==139551== Illegal opcode at address 0x4003082 ==139551== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139551== by 0x4003082: main (tool_main.c:234) === End of file valgrind1202 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/5/server/gopher_server.pid" --logfile "log/5/gopher_server.log" --logdir "log/5" --portfile log/5/server/gopher_server.port --config log/5/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: GOPHER server is on PID 137438 port 42767 * pid gopher => 137438 137438 test 1200...[Gopher index] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1200 ../src/curl -q --output log/5/curl1200.out --include --trace-ascii log/5/trace1200 --trace-config all --trace-time gopher://127.0.0.1:42767/1/1200 > log/5/stdout1200 2> log/5/stderr1200 1200: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1200 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1200 ../src/curl -q --output log/5/curl1200.out --include --trace-ascii log/5/trace1200 --trace-config all --trace-time gopher://127.0.0.1:42767/1/1200 > log/5/stdout1200 2> log/5/stderr1200 === End of file commands.log === Start of file gopher_server.log 07:36:00.153638 Running GOPHER IPv4 version on port 42767 07:36:00.153719 Wrote pid 137438 to log/5/server/gopher_server.pid 07:36:00.153753 Wrote port 42767 to log/5/server/gopher_server.port === End of file gopher_server.log === Start of file server.cmd Testnum 1200 === End of file server.cmd === Start of file valgrind1200 ==139525== ==139525== Process terminating with default action of signal 4 (SIGILL) ==139525== Illegal opcode at address 0x4003082 ==139525== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139525== by 0x4003082: main (tool_main.c:234) === End of file valgrind1200 startnew: ./server/servers mqttd --port 0 --pidfile log/24/server/mqtt_server.pid --portfile log/24/server/mqtt_server.port --config log/24/server.cmd --logfile log/24/mqtt_server.log --logdir log/24 RUN: MQTT server is now running PID 137427 on PORT 43307 * pid mqtt => 137427 137427 test 1199...[MQTT PUBLISH empty payload, no topic] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1199 ../src/curl -q --output log/24/curl1199.out --include --trace log/24/trace1199 --trace-config all --trace-time mqtt://127.0.0.1:43307 -d "" > log/24/stdout1199 2> log/24/stderr1199 1199: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1199 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1199 ../src/curl -q --output log/24/curl1199.out --include --trace log/24/trace1199 --trace-config all --trace-time mqtt://127.0.0.1:43307 -d "" > log/24/stdout1199 2> log/24/stderr1199 === End of file commands.log === Start of file mqtt_server.log 07:36:00.130230 Running IPv4 version 07:36:00.130275 Listening on port 43307 07:36:00.130308 Wrote pid 137427 to log/24/server/mqtt_server.pid 07:36:00.130337 Wrote port 43307 to log/24/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1199 === End of file server.cmd === Start of file valgrind1199 ==139522== ==139522== Process terminating with default action of signal 4 (SIGILL) ==139522== Illegal opcode at address 0x4003082 ==139522== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139522== by 0x4003082: main (tool_main.c:234) === End of file valgrind1199 test 1228...[HTTP cookie path match] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1228 ../src/curl -q --output log/7/curl1228.out --include --trace-ascii log/7/trace1228 --trace-config all --trace-time http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x 127.0.0.1:39077 > log/7/stdout1228 2> log/7/stderr1228 1228: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1228 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1228 ../src/curl -q --output log/7/curl1228.out --include --trace-ascii log/7/trace1228 --trace-config all --trace-time http://example.fake/hoge/1228 http://example.fake/hogege/ -b nonexisting -x 127.0.0.1:39077 > log/7/stdout1228 2> log/7/stderr1228 === End of file commands.log === Start of file http_server.log 07:36:01.032899 ====> Client connect 07:36:01.032934 accept_connection 3 returned 4 07:36:01.032950 accept_connection 3 returned 0 07:36:01.032963 Read 93 bytes 07:36:01.032972 Process 93 bytes request 07:36:01.032985 Got request: GET /verifiedserver HTTP/1.1 07:36:01.032993 Are-we-friendly question received 07:36:01.033016 Wrote request (93 bytes) input to log/7/server.input 07:36:01.033031 Identifying ourselves as friends 07:36:01.033090 Response sent (56 bytes) and written to log/7/server.response 07:36:01.033099 special request received, no persistency 07:36:01.033108 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1228 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1228 ==139086== ==139086== Process terminating with default action of signal 4 (SIGILL) ==139086== Illegal opcode at address 0x4003082 ==139086== at 0x4003082: UnknownInlinedCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1231 ../src/curl -q --output log/1/curl1231.out --include --trace-ascii log/1/trace1231 --trace-config all --trace-time http://127.0.0.1:38941/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://127.0.0.1:38941/../../hej/but/who/../12310001#/../12310001 > log/1/stdout1231 2> log/1/stderr1231 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1196 ../src/curl -q --output log/3/curl1196.out --include --trace log/3/trace1196 --trace-config all --trace-time mqtt://127.0.0.1:38831/1196 > log/3/stdout1196 2> log/3/stderr1196 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1229 ../src/curl -q --output log/9/curl1229.out --include --trace-ascii log/9/trace1229 --trace-config all --trace-time http://%5cuser%22:password@127.0.0.1:34999/1229 --digest > log/9/stdout1229 2> log/9/stderr1229 Fun (string_fortified.h:59) ==139086== by 0x4003082: main (tool_main.c:234) === End of file valgrind1228 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/16/server/gopher_ipv6_server.pid" --logfile "log/16/gopher_ipv6_server.log" --logdir "log/16" --portfile log/16/server/gopher_ipv6_server.port --config log/16/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: GOPHER-IPv6 server is on PID 137451 port 46457 * pid gopher-ipv6 => 137451 137451 test 1203...[Gopher IPv6 index] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1203 ../src/curl -q --output log/16/curl1203.out --include --trace-ascii log/16/trace1203 --trace-config all --trace-time -g gopher://[::1]:46457/1/moo/1203 > log/16/stdout1203 2> log/16/stderr1203 1203: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1203 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1203 ../src/curl -q --output log/16/curl1203.out --include --trace-ascii log/16/trace1203 --trace-config all --trace-time -g gopher://[::1]:46457/1/moo/1203 > log/16/stdout1203 2> log/16/stderr1203 === End of file commands.log === Start of file gopher_ipv6_server.log 07:36:00.160986 Running GOPHER IPv6 version on port 46457 07:36:00.161042 Wrote pid 137451 to log/16/server/gopher_ipv6_server.pid 07:36:00.161064 Wrote port 46457 to log/16/server/gopher_ipv6_server.port === End of file gopher_ipv6_server.log === Start of file server.cmd Testnum 1203 === End of file server.cmd === Start of file valgrind1203 ==139568== ==139568== Process terminating with default action of signal 4 (SIGILL) ==139568== Illegal opcode at address 0x4003082 ==139568== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139568== by 0x4003082: main (tool_main.c:234) === End of file valgrind1203 test 1231...[HTTP URL with dotdot removal from path] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1231 ../src/curl -q --output log/1/curl1231.out --include --trace-ascii log/1/trace1231 --trace-config all --trace-time http://127.0.0.1:38941/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://127.0.0.1:38941/../../hej/but/who/../12310001#/../12310001 > log/1/stdout1231 2> log/1/stderr1231 1231: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1231 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1231 ../src/curl -q --output log/1/curl1231.out --include --trace-ascii log/1/trace1231 --trace-config all --trace-time http://127.0.0.1:38941/../../hej/but/who/../1231?stupid=me/../1231#soo/../1231 http://127.0.0.1:38941/../../hej/but/who/../12310001#/../12310001 > log/1/stdout1231 2> log/1/stderr1231 === End of file commands.log === Start of file http_server.log 07:36:01.049823 ====> Client connect 07:36:01.049854 accept_connection 3 returned 4 07:36:01.049868 accept_connection 3 returned 0 07:36:01.049878 Read 93 bytes 07:36:01.049886 Process 93 bytes request 07:36:01.049895 Got request: GET /verifiedserver HTTP/1.1 07:36:01.049901 Are-we-friendly question received 07:36:01.049918 Wrote request (93 bytes) input to log/1/server.input 07:36:01.049930 Identifying ourselves as friends 07:36:01.049975 Response sent (56 bytes) and written to log/1/server.response 07:36:01.049982 special request received, no persistency 07:36:01.049988 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1231 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1231 ==139134== ==139134== Process terminating with default action of signal 4 (SIGILL) ==139134== Illegal opcode at address 0x4003082 ==139134== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139134== by 0x4003082: main (tool_main.c:234) === End of file valgrind1231 startnew: ./server/servers mqttd --port 0 --pidfile log/3/server/mqtt_server.pid --portfile log/3/server/mqtt_server.port --config log/3/server.cmd --logfile log/3/mqtt_server.log --logdir log/3 RUN: MQTT server is now running PID 137392 on PORT 38831 * pid mqtt => 137392 137392 test 1196...[MQTT with error in CONNACK] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1196 ../src/curl -q --output log/3/curl1196.out --include --trace log/3/trace1196 --trace-config all --trace-time mqtt://127.0.0.1:38831/1196 > log/3/stdout1196 2> log/3/stderr1196 1196: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1196 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1196 ../src/curl -q --output log/3/curl1196.out --include --trace log/3/trace1196 --trace-config all --trace-time mqtt://127.0.0.1:38831/1196 > log/3/stdout1196 2> log/3/stderr1196 === End of file commands.log === Start of file mqtt_server.log 07:36:00.045458 Running IPv4 version 07:36:00.045508 Listening on port 38831 07:36:00.045541 Wrote pid 137392 to log/3/server/mqtt_server.pid 07:36:00.045569 Wrote port 38831 to log/3/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd error-CONNACK 1 Testnum 1196 === End of file server.cmd === Start of file valgrind1196 ==139093== ==139093== Process terminating with default action of signal 4 (SIGILL) ==139093== Illegal opcode at address 0x4003082 ==139093== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139093== by 0x4003082: main (tool_main.c:234) === End of file valgrind1196 test 1229...[HTTP with Digest authorization with user name needing escape] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1229 ../src/curl -q --output log/9/curl1229.out --include --trace-ascii log/9/trace1229 --trace-config all --trace-time http://%5cuser%22:password@127.0.0.1:34999/1229 --digest > log/9/stdout1229 2> log/9/stderr1229 1229: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1229 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1229 ../src/curl -q --output log/9/curl1229.out --include --trace-ascii log/9/trace1229 --trace-CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1226 ../src/curl -q --output log/18/curl1226.out --include --trace-ascii log/18/trace1226 --trace-config all --trace-time ftp://127.0.0.1:33107//1226 --ftp-method singlecwd > log/18/stdout1226 2> log/18/stderr1226 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1227 ../src/curl -q --output log/19/curl1227.out --include --trace-ascii log/19/trace1227 --trace-config all --trace-time ftp://127.0.0.1:40681//1227 --ftp-method nocwd > log/19/stdout1227 2> log/19/stderr1227 config all --trace-time http://%5cuser%22:password@127.0.0.1:34999/1229 --digest > log/9/stdout1229 2> log/9/stderr1229 === End of file commands.log === Start of file http_server.log 07:36:01.040689 ====> Client connect 07:36:01.040729 accept_connection 3 returned 4 07:36:01.040745 accept_connection 3 returned 0 07:36:01.040758 Read 93 bytes 07:36:01.040768 Process 93 bytes request 07:36:01.040781 Got request: GET /verifiedserver HTTP/1.1 07:36:01.040789 Are-we-friendly question received 07:36:01.040815 Wrote request (93 bytes) input to log/9/server.input 07:36:01.040831 Identifying ourselves as friends 07:36:01.040884 Response sent (56 bytes) and written to log/9/server.response 07:36:01.040894 special request received, no persistency 07:36:01.040903 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1229 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1229 ==139090== ==139090== Process terminating with default action of signal 4 (SIGILL) ==139090== Illegal opcode at address 0x4003082 ==139090== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139090== by 0x4003082: main (tool_main.c:234) === End of file valgrind1229 test 1226...[FTP fetch a file from the root directory with singlecwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1226 ../src/curl -q --output log/18/curl1226.out --include --trace-ascii log/18/trace1226 --trace-config all --trace-time ftp://127.0.0.1:33107//1226 --ftp-method singlecwd > log/18/stdout1226 2> log/18/stderr1226 1226: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1226 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1226 ../src/curl -q --output log/18/curl1226.out --include --trace-ascii log/18/trace1226 --trace-config all --trace-time ftp://127.0.0.1:33107//1226 --ftp-method singlecwd > log/18/stdout1226 2> log/18/stderr1226 === End of file commands.log === Start of file ftp_server.log 07:36:01.178195 ====> Client connect 07:36:01.178330 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:01.178609 < "USER anonymous" 07:36:01.178650 > "331 We are happy you popped in![CR][LF]" 07:36:01.178848 < "PASS ftp@example.com" 07:36:01.178877 > "230 Welcome you silly person[CR][LF]" 07:36:01.179098 < "PWD" 07:36:01.179149 > "257 "/" is current directory[CR][LF]" 07:36:01.179302 < "EPSV" 07:36:01.179325 ====> Passive DATA channel requested by client 07:36:01.179338 DATA sockfilt for passive data channel starting... 07:36:01.181008 DATA sockfilt for passive data channel started (pid 139052) 07:36:01.181109 DATA sockfilt for passive data channel listens on port 38077 07:36:01.181141 > "229 Entering Passive Mode (|||38077|)[LF]" 07:36:01.181157 Client has been notified that DATA conn will be accepted on port 38077 07:36:01.181325 Client connects to port 38077 07:36:01.181360 ====> Client established passive DATA connection on port 38077 07:36:01.181432 < "TYPE I" 07:36:01.181458 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:01.181556 < "SIZE verifiedserver" 07:36:01.181589 > "213 17[CR][LF]" 07:36:01.181722 < "RETR verifiedserver" 07:36:01.181755 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:01.181824 =====> Closing passive DATA connection... 07:36:01.181839 Server disconnects passive DATA connection 07:36:01.181983 Server disconnected passive DATA connection 07:36:01.182003 DATA sockfilt for passive data channel quits (pid 139052) 07:36:01.182262 DATA sockfilt for passive data channel quit (pid 139052) 07:36:01.182295 =====> Closed passive DATA connection 07:36:01.182325 > "226 File transfer complete[CR][LF]" 07:36:01.226982 < "QUIT" 07:36:01.227031 > "221 bye bye baby[CR][LF]" 07:36:01.227460 MAIN sockfilt said DISC 07:36:01.227484 ====> Client disconnected 07:36:01.227536 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:01.024088 ====> Client connect 07:36:01.024323 Received DATA (on stdin) 07:36:01.024337 > 160 bytes data, server => client 07:36:01.024349 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:01.024359 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:01.024369 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:01.024448 < 16 bytes data, client => server 07:36:01.024467 'USER anonymous\r\n' 07:36:01.024636 Received DATA (on stdin) 07:36:01.024658 > 33 bytes data, server => client 07:36:01.024669 '331 We are happy you popped in!\r\n' 07:36:01.024766 < 22 bytes data, client => server 07:36:01.024778 'PASS ftp@example.com\r\n' 07:36:01.024866 Received DATA (on stdin) 07:36:01.024881 > 30 bytes data, server => client 07:36:01.024892 '230 Welcome you silly person\r\n' 07:36:01.024949 < 5 bytes data, client => server 07:36:01.024964 'PWD\r\n' 07:36:01.025135 Received DATA (on stdin) 07:36:01.025146 > 30 bytes data, server => client 07:36:01.025157 '257 "/" is current directory\r\n' 07:36:01.025210 < 6 bytes data, client => server 07:36:01.025221 'EPSV\r\n' 07:36:01.027111 Received DATA (on stdin) 07:36:01.027129 > 38 bytes data, server => client 07:36:01.027142 '229 Entering Passive Mode (|||38077|)\n' 07:36:01.027257 < 8 bytes data, client => server 07:36:01.027272 'TYPE I\r\n' 07:36:01.027423 Received DATA (on stdin) 07:36:01.027435 > 33 bytes data, server => client 07:36:01.027445 '200 I modify TYPE as you wanted\r\n' 07:36:01.027487 < 21 bytes data, client => server 07:36:01.027498 'SIZE verifiedserver\r\n' 07:36:01.027574 Received DATA (on stdin) 07:36:01.027588 > 8 bytes data, server => client 07:36:01.027598 '213 17\r\n' 07:36:01.027645 < 21 bytes data, client => server 07:36:01.027658 'RETR verifiedserver\r\n' 07:36:01.027822 Received DATA (on stdin) 07:36:01.027834 > 29 bytes data, server => client 07:36:01.027844 '150 Binary junk (17 bytes).\r\n' 07:36:01.028480 Received DATA (on stdin) 07:36:01.028499 > 28 bytes data, server => client 07:36:01.028508 '226 File transfer complete\r\n' 07:36:01.072797 < 6 bytes data, client => server 07:36:01.072816 'QUIT\r\n' 07:36:01.073011 Received DATA (on stdin) 07:36:01.073024 > 18 bytes data, server => client 07:36:01.073034 '221 bye bye baby\r\n' 07:36:01.073398 ====> Client disconnect 07:36:01.073515 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:01.026822 Running IPv4 version 07:36:01.026883 Listening on port 38077 07:36:01.026921 Wrote pid 139052 to log/18/server/ftp_sockdata.pid 07:36:01.026939 Received PING (on stdin) 07:36:01.027019 Received PORT (on stdin) 07:36:01.027247 ====> Client connect 07:36:01.027868 Received DATA (on stdin) 07:36:01.027880 > 17 bytes data, server => client 07:36:01.027889 'WE ROOLZ: 82311\r\n' 07:36:01.027914 Received DISC (on stdin) 07:36:01.027924 ====> Client forcibly disconnected 07:36:01.027991 Received QUIT (on stdin) 07:36:01.028000 quits 07:36:01.028062 ============> sockfilt quits === End of file ftp_sockdata.log === Start of CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1232 ../src/curl -q --output log/2/curl1232.out --include --trace-ascii log/2/trace1232 --trace-config all --trace-time --proxy http://127.0.0.1:45457 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../1232?stupid=me/../1232#soo/../1232 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../12320001#/../12320001 > log/2/stdout1232 2> log/2/stderr1232 file server.cmd Testnum 1226 === End of file server.cmd === Start of file valgrind1226 ==139281== ==139281== Process terminating with default action of signal 4 (SIGILL) ==139281== Illegal opcode at address 0x4003082 ==139281== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139281== by 0x4003082: main (tool_main.c:234) === End of file valgrind1226 test 1227...[FTP fetch a file from the root directory with nocwd] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1227 ../src/curl -q --output log/19/curl1227.out --include --trace-ascii log/19/trace1227 --trace-config all --trace-time ftp://127.0.0.1:40681//1227 --ftp-method nocwd > log/19/stdout1227 2> log/19/stderr1227 1227: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1227 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1227 ../src/curl -q --output log/19/curl1227.out --include --trace-ascii log/19/trace1227 --trace-config all --trace-time ftp://127.0.0.1:40681//1227 --ftp-method nocwd > log/19/stdout1227 2> log/19/stderr1227 === End of file commands.log === Start of file ftp_server.log 07:36:01.183616 ====> Client connect 07:36:01.183773 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:01.184014 < "USER anonymous" 07:36:01.184050 > "331 We are happy you popped in![CR][LF]" 07:36:01.184287 < "PASS ftp@example.com" 07:36:01.184323 > "230 Welcome you silly person[CR][LF]" 07:36:01.184464 < "PWD" 07:36:01.184492 > "257 "/" is current directory[CR][LF]" 07:36:01.184633 < "EPSV" 07:36:01.184655 ====> Passive DATA channel requested by client 07:36:01.184666 DATA sockfilt for passive data channel starting... 07:36:01.186291 DATA sockfilt for passive data channel started (pid 139062) 07:36:01.186382 DATA sockfilt for passive data channel listens on port 43365 07:36:01.186416 > "229 Entering Passive Mode (|||43365|)[LF]" 07:36:01.186431 Client has been notified that DATA conn will be accepted on port 43365 07:36:01.186645 Client connects to port 43365 07:36:01.186682 ====> Client established passive DATA connection on port 43365 07:36:01.186750 < "TYPE I" 07:36:01.186780 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:01.186975 < "SIZE verifiedserver" 07:36:01.187013 > "213 17[CR][LF]" 07:36:01.187148 < "RETR verifiedserver" 07:36:01.187174 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:01.187235 =====> Closing passive DATA connection... 07:36:01.187246 Server disconnects passive DATA connection 07:36:01.187358 Server disconnected passive DATA connection 07:36:01.187378 DATA sockfilt for passive data channel quits (pid 139062) 07:36:01.187627 DATA sockfilt for passive data channel quit (pid 139062) 07:36:01.187650 =====> Closed passive DATA connection 07:36:01.187674 > "226 File transfer complete[CR][LF]" 07:36:01.230263 < "QUIT" 07:36:01.230304 > "221 bye bye baby[CR][LF]" 07:36:01.230591 MAIN sockfilt said DISC 07:36:01.230626 ====> Client disconnected 07:36:01.230679 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:01.029447 ====> Client connect 07:36:01.029771 Received DATA (on stdin) 07:36:01.029787 > 160 bytes data, server => client 07:36:01.029800 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:01.029810 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:01.029821 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:01.029882 < 16 bytes data, client => server 07:36:01.029898 'USER anonymous\r\n' 07:36:01.030040 Received DATA (on stdin) 07:36:01.030052 > 33 bytes data, server => client 07:36:01.030062 '331 We are happy you popped in!\r\n' 07:36:01.030139 < 22 bytes data, client => server 07:36:01.030160 'PASS ftp@example.com\r\n' 07:36:01.030306 Received DATA (on stdin) 07:36:01.030316 > 30 bytes data, server => client 07:36:01.030324 '230 Welcome you silly person\r\n' 07:36:01.030368 < 5 bytes data, client => server 07:36:01.030378 'PWD\r\n' 07:36:01.030473 Received DATA (on stdin) 07:36:01.030483 > 30 bytes data, server => client 07:36:01.030493 '257 "/" is current directory\r\n' 07:36:01.030541 < 6 bytes data, client => server 07:36:01.030551 'EPSV\r\n' 07:36:01.032420 Received DATA (on stdin) 07:36:01.032434 > 38 bytes data, server => client 07:36:01.032445 '229 Entering Passive Mode (|||43365|)\n' 07:36:01.032577 < 8 bytes data, client => server 07:36:01.032589 'TYPE I\r\n' 07:36:01.032765 Received DATA (on stdin) 07:36:01.032777 > 33 bytes data, server => client 07:36:01.032787 '200 I modify TYPE as you wanted\r\n' 07:36:01.032851 < 21 bytes data, client => server 07:36:01.032864 'SIZE verifiedserver\r\n' 07:36:01.032999 Received DATA (on stdin) 07:36:01.033011 > 8 bytes data, server => client 07:36:01.033019 '213 17\r\n' 07:36:01.033067 < 21 bytes data, client => server 07:36:01.033075 'RETR verifiedserver\r\n' 07:36:01.033227 Received DATA (on stdin) 07:36:01.033235 > 29 bytes data, server => client 07:36:01.033243 '150 Binary junk (17 bytes).\r\n' 07:36:01.033661 Received DATA (on stdin) 07:36:01.033673 > 28 bytes data, server => client 07:36:01.033683 '226 File transfer complete\r\n' 07:36:01.076061 < 6 bytes data, client => server 07:36:01.076080 'QUIT\r\n' 07:36:01.076380 Received DATA (on stdin) 07:36:01.076399 > 18 bytes data, server => client 07:36:01.076409 '221 bye bye baby\r\n' 07:36:01.076523 ====> Client disconnect 07:36:01.076660 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:01.032132 Running IPv4 version 07:36:01.032177 Listening on port 43365 07:36:01.032205 Wrote pid 139062 to log/19/server/ftp_sockdata.pid 07:36:01.032220 Received PING (on stdin) 07:36:01.032297 Received PORT (on stdin) 07:36:01.032550 ====> Client connect 07:36:01.033166 Received DATA (on stdin) 07:36:01.033183 > 17 bytes data, server => client 07:36:01.033194 'WE ROOLZ: 93871\r\n' 07:36:01.033229 Received DISC (on stdin) 07:36:01.033243 ====> Client forcibly disconnected 07:36:01.033368 Received QUIT (on stdin) 07:36:01.033382 quits 07:36:01.033431 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1227 === End of file server.cmd === Start of file valgrind1227 ==139297== ==139297== Process terminating with default action of signal 4 (SIGILL) ==139297== Illegal opcode at address 0x4003082 ==139297== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139297== by 0x4003082: main (tool_main.c:234) === End of file valgrind1227 test 1232...[HTTP URL with dotdot removal from path using an HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1232 ../src/curl -q --output log/2/curl1232.out --include --trace-ascii log/2/trace1232 --trace-config all --trace-time --proxy http://127.0.0.1:45457 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../1232?stupid=me/../1232#soo/../1232 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../12320001#/../12320001 > log/2/stdout1232 2> log/2/stderr1232 1232: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1232 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1232 ../src/curl -q --output log/2/curl1232.out --include --trace-asciiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1198 ../src/curl -q --output log/12/curl1198.out --include --trace log/12/trace1198 --trace-config all --trace-time mqtt://127.0.0.1:33031/%20 -d "" > log/12/stdout1198 2> log/12/stderr1198 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1201 ../src/curl -q --output log/23/curl1201.out --include --trace-ascii log/23/trace1201 --trace-config all --trace-time gopher://127.0.0.1:33609/1/selector/SELECTOR/1201 > log/23/stdout1201 2> log/23/stderr1201 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1235 ../src/curl -q --include --trace-ascii log/17/trace1235 --trace-config all --trace-time "127.0.0.1:39089/{1235,1235}{0001,0002}" > log/17/stdout1235 2> log/17/stderr1235 log/2/trace1232 --trace-config all --trace-time --proxy http://127.0.0.1:45457 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../1232?stupid=me/../1232#soo/../1232 http://test.remote.haxx.se.1232:8990/../../hej/but/who/../12320001#/../12320001 > log/2/stdout1232 2> log/2/stderr1232 === End of file commands.log === Start of file http_server.log 07:36:01.067272 ====> Client connect 07:36:01.067297 accept_connection 3 returned 4 07:36:01.067309 accept_connection 3 returned 0 07:36:01.067320 Read 93 bytes 07:36:01.067328 Process 93 bytes request 07:36:01.067338 Got request: GET /verifiedserver HTTP/1.1 07:36:01.067345 Are-we-friendly question received 07:36:01.067363 Wrote request (93 bytes) input to log/2/server.input 07:36:01.067375 Identifying ourselves as friends 07:36:01.067414 Response sent (56 bytes) and written to log/2/server.response 07:36:01.067421 special request received, no persistency 07:36:01.067428 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1232 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1232 ==139246== ==139246== Process terminating with default action of signal 4 (SIGILL) ==139246== Illegal opcode at address 0x4003082 ==139246== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139246== by 0x4003082: main (tool_main.c:234) === End of file valgrind1232 startnew: ./server/servers mqttd --port 0 --pidfile log/12/server/mqtt_server.pid --portfile log/12/server/mqtt_server.port --config log/12/server.cmd --logfile log/12/mqtt_server.log --logdir log/12 RUN: MQTT server is now running PID 137405 on PORT 33031 * pid mqtt => 137405 137405 test 1198...[MQTT PUBLISH empty payload, single space topic] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1198 ../src/curl -q --output log/12/curl1198.out --include --trace log/12/trace1198 --trace-config all --trace-time mqtt://127.0.0.1:33031/%20 -d "" > log/12/stdout1198 2> log/12/stderr1198 1198: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1198 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1198 ../src/curl -q --output log/12/curl1198.out --include --trace log/12/trace1198 --trace-config all --trace-time mqtt://127.0.0.1:33031/%20 -d "" > log/12/stdout1198 2> log/12/stderr1198 === End of file commands.log === Start of file mqtt_server.log 07:36:00.095936 Running IPv4 version 07:36:00.095991 Listening on port 33031 07:36:00.096018 Wrote pid 137405 to log/12/server/mqtt_server.pid 07:36:00.096039 Wrote port 33031 to log/12/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1198 === End of file server.cmd === Start of file valgrind1198 ==139409== ==139409== Process terminating with default action of signal 4 (SIGILL) ==139409== Illegal opcode at address 0x4003082 ==139409== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139409== by 0x4003082: main (tool_main.c:234) === End of file valgrind1198 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --gopher --keepalive 30 --pidfile "log/23/server/gopher_server.pid" --logfile "log/23/gopher_server.log" --logdir "log/23" --portfile log/23/server/gopher_server.port --config log/23/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: GOPHER server is on PID 137441 port 33609 * pid gopher => 137441 137441 test 1201...[Gopher selector] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1201 ../src/curl -q --output log/23/curl1201.out --include --trace-ascii log/23/trace1201 --trace-config all --trace-time gopher://127.0.0.1:33609/1/selector/SELECTOR/1201 > log/23/stdout1201 2> log/23/stderr1201 1201: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1201 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1201 ../src/curl -q --output log/23/curl1201.out --include --trace-ascii log/23/trace1201 --trace-config all --trace-time gopher://127.0.0.1:33609/1/selector/SELECTOR/1201 > log/23/stdout1201 2> log/23/stderr1201 === End of file commands.log === Start of file gopher_server.log 07:36:00.156412 Running GOPHER IPv4 version on port 33609 07:36:00.156486 Wrote pid 137441 to log/23/server/gopher_server.pid 07:36:00.156513 Wrote port 33609 to log/23/server/gopher_server.port === End of file gopher_server.log === Start of file server.cmd Testnum 1201 === End of file server.cmd === Start of file valgrind1201 ==139545== ==139545== Process terminating with default action of signal 4 (SIGILL) ==139545== Illegal opcode at address 0x4003082 ==139545== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139545== by 0x4003082: main (tool_main.c:234) === End of file valgrind1201 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1234 ../src/curl -q --output log/6/curl1234.out --include --trace-ascii log/6/trace1234 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/{}{}{}{" > log/6/stdout1234 2> log/6/stderr1234 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1237 ../src/curl -q --output log/22/curl1237.out --include --trace-ascii log/22/trace1237 --trace-config all --trace-time "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@127.0.0.1:46761/1237" > log/22/stdout1237 2> log/22/stderr1237 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1236 ../src/curl -q --output log/11/curl1236.out --include --trace-ascii log/11/trace1236 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/[1-4611686018427387904][1-4611686018427387904]" > log/11/stdout1236 2> log/11/stderr1236 test 1235...[multiple requests using {}{} in the URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1235 ../src/curl -q --include --trace-ascii log/17/trace1235 --trace-config all --trace-time "127.0.0.1:39089/{1235,1235}{0001,0002}" > log/17/stdout1235 2> log/17/stderr1235 1235: stdout FAILED: --- log/17/check-expected 2025-07-18 07:36:01.893779595 +0000 +++ log/17/check-generated 2025-07-18 07:36:01.893779595 +0000 @@ -1,20 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 15[CR][LF] -[CR][LF] -the number one[LF] -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 16[CR][LF] -[CR][LF] -two is nice too[LF] -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 15[CR][LF] -[CR][LF] -the number one[LF] -HTTP/1.1 200 OK[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 16[CR][LF] -[CR][LF] -two is nice too[LF] == Contents of files in the log/17/ dir after test 1235 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 15[CR][LF] [CR][LF] the number one[LF] HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 16[CR][LF] [CR][LF] two is nice too[LF] HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 15[CR][LF] [CR][LF] the number one[LF] HTTP/1.1 200 OK[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 16[CR][LF] [CR][LF] two is nice too[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1235 ../src/curl -q --include --trace-ascii log/17/trace1235 --trace-config all --trace-time "127.0.0.1:39089/{1235,1235}{0001,0002}" > log/17/stdout1235 2> log/17/stderr1235 === End of file commands.log === Start of file http_server.log 07:36:01.195781 ====> Client connect 07:36:01.195840 accept_connection 3 returned 4 07:36:01.195856 accept_connection 3 returned 0 07:36:01.195870 Read 93 bytes 07:36:01.195880 Process 93 bytes request 07:36:01.195893 Got request: GET /verifiedserver HTTP/1.1 07:36:01.195902 Are-we-friendly question received 07:36:01.195925 Wrote request (93 bytes) input to log/17/server.input 07:36:01.195941 Identifying ourselves as friends 07:36:01.196012 Response sent (56 bytes) and written to log/17/server.response 07:36:01.196022 special request received, no persistency 07:36:01.196031 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1235 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1235 ==139909== ==139909== Process terminating with default action of signal 4 (SIGILL) ==139909== Illegal opcode at address 0x4003082 ==139909== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139909== by 0x4003082: main (tool_main.c:234) === End of file valgrind1235 * starts no server test 1234...[abusing {}-globbing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1234 ../src/curl -q --output log/6/curl1234.out --include --trace-ascii log/6/trace1234 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/{}{}{}{" > log/6/stdout1234 2> log/6/stderr1234 curl returned 132, when expecting 3 1234: exit FAILED == Contents of files in the log/6/ dir after test 1234 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1234 ../src/curl -q --output log/6/curl1234.out --include --trace-ascii log/6/trace1234 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/{}{}{}{" > log/6/stdout1234 2> log/6/stderr1234 === End of file commands.log === Start of file server.cmd Testnum 1234 === End of file server.cmd === Start of file valgrind1234 ==139661== ==139661== Process terminating with default action of signal 4 (SIGILL) ==139661== Illegal opcode at address 0x4003082 ==139661== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139661== by 0x4003082: main (tool_main.c:234) === End of file valgrind1234 test 1237...[URL with 1000+ letter user name + password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1237 ../src/curl -q --output log/22/curl1237.out --include --trace-ascii log/22/trace1237 --trace-config all --trace-time "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@127.0.0.1:46761/1237" > log/22/stdout1237 2> log/22/stderr1237 1237: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1237 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1237 ../src/curl -q --output log/22/curl1237.out --include --trace-ascii log/22/trace1237 --trace-config all --trace-time "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1238 ../src/curl -q --output log/21/curl1238.out --include --trace-ascii log/21/trace1238 --trace-config all --trace-time tftp://127.0.0.1:38252//1238 -Y1000 -y2 > log/21/stdout1238 2> log/21/stderr1238 RUN: Process with pid 132302 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1240 ../src/curl -q --output log/10/curl1240.out --include --trace-ascii log/10/trace1240 --trace-config all --trace-time "127.0.0.1:34851/0[0-1]/1240" > log/10/stdout1240 2> log/10/stderr1240 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@127.0.0.1:46761/1237" > log/22/stdout1237 2> log/22/stderr1237 === End of file commands.log === Start of file http_server.log 07:36:01.199088 ====> Client connect 07:36:01.199123 accept_connection 3 returned 4 07:36:01.199138 accept_connection 3 returned 0 07:36:01.199150 Read 93 bytes 07:36:01.199160 Process 93 bytes request 07:36:01.199171 Got request: GET /verifiedserver HTTP/1.1 07:36:01.199180 Are-we-friendly question received 07:36:01.199205 Wrote request (93 bytes) input to log/22/server.input 07:36:01.199223 Identifying ourselves as friends 07:36:01.199275 Response sent (56 bytes) and written to log/22/server.response 07:36:01.199284 special request received, no persistency 07:36:01.199299 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1237 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1237 ==139905== ==139905== Process terminating with default action of signal 4 (SIGILL) ==139905== Illegal opcode at address 0x4003082 ==139905== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139905== by 0x4003082: main (tool_main.c:234) === End of file valgrind1237 * starts no server test 1236...[[] globbing overflowing the range counter] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1236 ../src/curl -q --output log/11/curl1236.out --include --trace-ascii log/11/trace1236 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/[1-4611686018427387904][1-4611686018427387904]" > log/11/stdout1236 2> log/11/stderr1236 curl returned 132, when expecting 3 1236: exit FAILED == Contents of files in the log/11/ dir after test 1236 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1236 ../src/curl -q --output log/11/curl1236.out --include --trace-ascii log/11/trace1236 --trace-config all --trace-time "127.0.0.1:47/1234[0-1]{" "127.0.0.1:47/[1-4611686018427387904][1-4611686018427387904]" > log/11/stdout1236 2> log/11/stderr1236 === End of file commands.log === Start of file server.cmd Testnum 1236 === End of file server.cmd === Start of file valgrind1236 ==139761== ==139761== Process terminating with default action of signal 4 (SIGILL) ==139761== Illegal opcode at address 0x4003082 ==139761== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==139761== by 0x4003082: main (tool_main.c:234) === End of file valgrind1236 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/15/server/http_ipv6_server.pid" --logfile "log/15/http_ipv6_server.log" --logdir "log/15" --portfile log/15/server/http_ipv6_server.port --config log/15/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 130875 port 37151 * pid http-ipv6 => 130875 130875 prechecked /usr/bin/perl -e "if('[::1]' ne '[::1]') {print 'Test requires default test client host address';} else {exec './server/servers resolve --ipv6 ip6-localhost'; print 'Cannot run precheck resolve';}" test 1083 SKIPPED: Resolving IPv6 'ip6-localhost' didn't work test 1240...[glob [0-1] with stuff after range (7.33.0 regression)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1240 ../src/curl -q --output log/10/curl1240.out --include --trace-ascii log/10/trace1240 --trace-config all --trace-time "127.0.0.1:34851/0[0-1]/1240" > log/10/stdout1240 2> log/10/stderr1240 1240: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1240 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1240 ../src/curl -q --output log/10/curl1240.out --include --trace-ascii log/10/trace1240 --trace-config all --trace-time "127.0.0.1:34851/0[0-1]/1240" > log/10/stdout1240 2> log/10/stderr1240 === End of file commands.log === Start of file http_server.log 07:36:01.479300 ====> Client connect 07:36:01.479333 accept_connection 3 returned 4 07:36:01.479350 accept_connection 3 returned 0 07:36:01.479363 Read 93 bytes 07:36:01.479373 Process 93 bytes request 07:36:01.479385 Got request: GET /verifiedserver HTTP/1.1 07:36:01.479394 Are-we-friendly question received 07:36:01.479417 Wrote request (93 bytes) input to log/10/server.input 07:36:01.479432 Identifying ourselves as friends 07:36:01.479483 Response sent (56 bytes) and written to log/10/server.response 07:36:01.479492 special request received, no persistency 07:36:01.479500 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1240 === End of file server.cmd === Start of file server.response HTTCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1239 ../src/curl -q --include --trace-ascii log/20/trace1239 --trace-config all --trace-time http://127.0.0.1:37169/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}' > log/20/stdout1239 2> log/20/stderr1239 P/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1240 ==140150== ==140150== Process terminating with default action of signal 4 (SIGILL) ==140150== Illegal opcode at address 0x4003082 ==140150== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140150== by 0x4003082: main (tool_main.c:234) === End of file valgrind1240 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1241 ../src/curl -q --output log/4/curl1241.out --include --trace-ascii log/4/trace1241 --trace-config all --trace-time --path-as-is --proxy http://127.0.0.1:33235 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241#soo/../1241 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001#/../12410001 > log/4/stdout1241 2> log/4/stderr1241 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1252 ../src/curl -q --output log/18/curl1252.out --include --trace-ascii log/18/trace1252 --trace-config all --trace-time http://127.0.0.1:45825/1252 --proxy http://127.0.0.1:45825 --noproxy 127.0.0.1 > log/18/stdout1252 2> log/18/stderr1252 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1253 ../src/curl -q --output log/19/curl1253.out --include --trace-ascii log/19/trace1253 --trace-config all --trace-time http://somewhere.example.com/1253 --proxy http://127.0.0.1:33487 --noproxy 127.0.0.1 > log/19/stdout1253 2> log/19/stderr1253 test 1239...[HTTP with -z + -w response_code and simulated 304] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1239 ../src/curl -q --include --trace-ascii log/20/trace1239 --trace-config all --trace-time http://127.0.0.1:37169/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}' > log/20/stdout1239 2> log/20/stderr1239 1239: stdout FAILED: --- log/20/check-expected 2025-07-18 07:36:02.213779602 +0000 +++ log/20/check-generated 2025-07-18 07:36:02.213779602 +0000 @@ -1,11 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Server: test-server/fake[LF] -Last-Modified: Tue, 13 Jun 2010 12:10:00 GMT[LF] -ETag: "21025-dc7-39462498"[LF] -Accept-Ranges: bytes[LF] -Content-Length: 6[LF] -Connection: close[LF] -Content-Type: text/html[LF] -[LF] -304 == Contents of files in the log/20/ dir after test 1239 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Server: test-server/fake[LF] Last-Modified: Tue, 13 Jun 2010 12:10:00 GMT[LF] ETag: "21025-dc7-39462498"[LF] Accept-Ranges: bytes[LF] Content-Length: 6[LF] Connection: close[LF] Content-Type: text/html[LF] [LF] 304 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1239 ../src/curl -q --include --trace-ascii log/20/trace1239 --trace-config all --trace-time http://127.0.0.1:37169/1239 -z "-dec 12 12:00:00 1999 GMT" -w '%{response_code}' > log/20/stdout1239 2> log/20/stderr1239 === End of file commands.log === Start of file http_server.log 07:36:01.477178 ====> Client connect 07:36:01.477216 accept_connection 3 returned 4 07:36:01.477234 accept_connection 3 returned 0 07:36:01.477249 Read 93 bytes 07:36:01.477260 Process 93 bytes request 07:36:01.477274 Got request: GET /verifiedserver HTTP/1.1 07:36:01.477283 Are-we-friendly question received 07:36:01.477308 Wrote request (93 bytes) input to log/20/server.input 07:36:01.477323 Identifying ourselves as friends 07:36:01.477377 Response sent (56 bytes) and written to log/20/server.response 07:36:01.477386 special request received, no persistency 07:36:01.477395 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1239 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1239 ==140151== ==140151== Process terminating with default action of signal 4 (SIGILL) ==140151== Illegal opcode at address 0x4003082 ==140151== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140151== by 0x4003082: main (tool_main.c:234) === End of file valgrind1239 test 1241...[HTTP _without_ dotdot removal] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1241 ../src/curl -q --output log/4/curl1241.out --include --trace-ascii log/4/trace1241 --trace-config all --trace-time --path-as-is --proxy http://127.0.0.1:33235 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241#soo/../1241 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001#/../12410001 > log/4/stdout1241 2> log/4/stderr1241 1241: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1241 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1241 ../src/curl -q --output log/4/curl1241.out --include --trace-ascii log/4/trace1241 --trace-config all --trace-time --path-as-is --proxy http://127.0.0.1:33235 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241#soo/../1241 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001#/../12410001 > log/4/stdout1241 2> log/4/stderr1241 === End of file commands.log === Start of file http_server.log 07:36:01.490918 ====> Client connect 07:36:01.490956 accept_connection 3 returned 4 07:36:01.490973 accept_connection 3 returned 0 07:36:01.490988 Read 93 bytes 07:36:01.490998 Process 93 bytes request 07:36:01.491010 Got request: GET /verifiedserver HTTP/1.1 07:36:01.491020 Are-we-friendly question received 07:36:01.491048 Wrote request (93 bytes) input to log/4/server.input 07:36:01.491066 Identifying ourselves as friends 07:36:01.491125 Response sent (56 bytes) and written to log/4/server.response 07:36:01.491136 special request received, no persistency 07:36:01.491146 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1241 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1241 ==140179== ==140179== Process terminating with default action of signal 4 (SIGILL) ==140179== Illegal opcode at address 0x4003082 ==140179== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140179== by 0x4003082: main (tool_main.c:234) === End of file valgrind1241 setenv NO_PROXY = example.com test 1252...[--proxy, override NO_PROXY by --noproxy and access target URL directly] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1252 ../src/curl -q --output log/18/curl1252.out --include --trace-ascii log/18/trace1252 --trace-config all --trace-time http://127.0.0.1:45825/1252 --proxy http://127.0.0.1:45825 --noproxy 127.0.0.1 > log/18/stdout1252 2> log/18/stderr1252 1252: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1252 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1252 ../src/curl -q --output log/18/curl1252.out --include --trace-ascii log/18/trace1252 --trace-config all --trace-time http://127.0.0.1:45825/1252 --proxy http://127.0.0.1:45825 --noproxy 127.0.0.1 > log/18/stdout1252 2> log/18/stderr1252 === End of file commands.log === Start of file http_server.log 07:36:01.684604 ====> Client connect 07:36:01.684638 accept_connection 3 returned 4 07:36:01.684653 accept_connection 3 returned 0 07:36:01.684668 Read 93 bytes 07:36:01.684678 Process 93 bytes request 07:36:01.684691 Got request: GET /verifiedserver HTTP/1.1 07:36:01.684699 Are-we-friendly question received 07:36:01.684724 Wrote request (93 bytes) input to log/18/server.iCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1255 ../src/curl -q --output log/12/curl1255.out --include --trace-ascii log/12/trace1255 --trace-config all --trace-time http://127.0.0.1:37285/1255 --noproxy 127.0.0.1 > log/12/stdout1255 2> log/12/stderr1255 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1245 ../src/curl -q --output log/24/curl1245.out --include --trace-ascii log/24/trace1245 --trace-config all --trace-time --location --proto +all,-ftp --proto-redir -all,+ftp http://127.0.0.1:38675/1245 > log/24/stdout1245 2> log/24/stderr1245 nput 07:36:01.684738 Identifying ourselves as friends 07:36:01.684813 Response sent (56 bytes) and written to log/18/server.response 07:36:01.684822 special request received, no persistency 07:36:01.684831 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1252 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1252 ==140727== ==140727== Process terminating with default action of signal 4 (SIGILL) ==140727== Illegal opcode at address 0x4003082 ==140727== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140727== by 0x4003082: main (tool_main.c:234) === End of file valgrind1252 setenv NO_PROXY = example.com test 1253...[--proxy, override NO_PROXY by --noproxy and access target URL through proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1253 ../src/curl -q --output log/19/curl1253.out --include --trace-ascii log/19/trace1253 --trace-config all --trace-time http://somewhere.example.com/1253 --proxy http://127.0.0.1:33487 --noproxy 127.0.0.1 > log/19/stdout1253 2> log/19/stderr1253 1253: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1253 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1253 ../src/curl -q --output log/19/curl1253.out --include --trace-ascii log/19/trace1253 --trace-config all --trace-time http://somewhere.example.com/1253 --proxy http://127.0.0.1:33487 --noproxy 127.0.0.1 > log/19/stdout1253 2> log/19/stderr1253 === End of file commands.log === Start of file http_server.log 07:36:01.685773 ====> Client connect 07:36:01.685802 accept_connection 3 returned 4 07:36:01.685817 accept_connection 3 returned 0 07:36:01.685829 Read 93 bytes 07:36:01.685838 Process 93 bytes request 07:36:01.685848 Got request: GET /verifiedserver HTTP/1.1 07:36:01.685856 Are-we-friendly question received 07:36:01.685879 Wrote request (93 bytes) input to log/19/server.input 07:36:01.685894 Identifying ourselves as friends 07:36:01.685946 Response sent (56 bytes) and written to log/19/server.response 07:36:01.685967 special request received, no persistency 07:36:01.685979 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1253 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1253 ==140729== ==140729== Process terminating with default action of signal 4 (SIGILL) ==140729== Illegal opcode at address 0x4003082 ==140729== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140729== by 0x4003082: main (tool_main.c:234) === End of file valgrind1253 setenv http_proxy = http://127.0.0.1:37285 setenv NO_PROXY = example.com test 1255...[http_proxy, override NO_PROXY by --noproxy and access target URL directly] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1255 ../src/curl -q --output log/12/curl1255.out --include --trace-ascii log/12/trace1255 --trace-config all --trace-time http://127.0.0.1:37285/1255 --noproxy 127.0.0.1 > log/12/stdout1255 2> log/12/stderr1255 1255: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1255 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1255 ../src/curl -q --output log/12/curl1255.out --include --trace-ascii log/12/trace1255 --trace-config all --trace-time http://127.0.0.1:37285/1255 --noproxy 127.0.0.1 > log/12/stdout1255 2> log/12/stderr1255 === End of file commands.log === Start of file http_server.log 07:36:01.694962 ====> Client connect 07:36:01.694996 accept_connection 3 returned 4 07:36:01.695017 accept_connection 3 returned 0 07:36:01.695033 Read 93 bytes 07:36:01.695043 Process 93 bytes request 07:36:01.695054 Got request: GET /verifiedserver HTTP/1.1 07:36:01.695063 Are-we-friendly question received 07:36:01.695088 Wrote request (93 bytes) input to log/12/server.input 07:36:01.695104 Identifying ourselves as friends 07:36:01.695170 Response sent (56 bytes) and written to log/12/server.response 07:36:01.695183 special request received, no persistency 07:36:01.695193 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1255 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1255 ==140806== ==140806== Process terminating with default action of signal 4 (SIGILL) ==140806== Illegal opcode at address 0x4003082 ==140806== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140806== by 0x4003082: main (tool_main.c:234) === End of file valgrind1255 test 1245...[--proto deny must override --proto-redir allow] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1245 ../src/curl -q --output log/24/curl1245.out --include --trace-ascii log/24/trace1245 --trace-config all --trace-time --location --proto +all,-ftp --proto-redir -all,+ftp http://127.0.0.1:38675/1245 > log/24/stdout1245 2> log/24/stderr1245 1245: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1245 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1245 ../src/curl -q --output log/24/curl1245.out --include --trace-ascii log/24/trace1245 --trace-config all --trace-time --location --proto +all,-ftp --proto-redir -all,+ftp http://127.0.0.1:38675/1245 > log/24/stdout1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1260 ../src/curl -q --output log/6/curl1260.out --include --trace-ascii log/6/trace1260 --trace-config all --trace-time -g "http://[127.0.0.1]:47:80/we/want/1260" "http://127.0.0.1:47:80/we/want/1260" "http://user@example.com:80@localhost" > log/6/stdout1260 2> log/6/stderr1260 245 2> log/24/stderr1245 === End of file commands.log === Start of file ftp_server.log 07:36:01.826725 ====> Client connect 07:36:01.826882 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:01.827201 < "USER anonymous" 07:36:01.827232 > "331 We are happy you popped in![CR][LF]" 07:36:01.827448 < "PASS ftp@example.com" 07:36:01.827473 > "230 Welcome you silly person[CR][LF]" 07:36:01.827650 < "PWD" 07:36:01.827682 > "257 "/" is current directory[CR][LF]" 07:36:01.827869 < "EPSV" 07:36:01.827905 ====> Passive DATA channel requested by client 07:36:01.827918 DATA sockfilt for passive data channel starting... 07:36:01.829848 DATA sockfilt for passive data channel started (pid 140535) 07:36:01.829968 DATA sockfilt for passive data channel listens on port 46177 07:36:01.830016 > "229 Entering Passive Mode (|||46177|)[LF]" 07:36:01.830034 Client has been notified that DATA conn will be accepted on port 46177 07:36:01.830240 Client connects to port 46177 07:36:01.830268 ====> Client established passive DATA connection on port 46177 07:36:01.830336 < "TYPE I" 07:36:01.830364 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:01.830534 < "SIZE verifiedserver" 07:36:01.830585 > "213 17[CR][LF]" 07:36:01.831385 < "RETR verifiedserver" 07:36:01.831425 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:01.831499 =====> Closing passive DATA connection... 07:36:01.831514 Server disconnects passive DATA connection 07:36:01.831669 Server disconnected passive DATA connection 07:36:01.831697 DATA sockfilt for passive data channel quits (pid 140535) 07:36:01.831919 DATA sockfilt for passive data channel quit (pid 140535) 07:36:01.831954 =====> Closed passive DATA connection 07:36:01.831988 > "226 File transfer complete[CR][LF]" 07:36:01.877142 < "QUIT" 07:36:01.877197 > "221 bye bye baby[CR][LF]" 07:36:01.878135 MAIN sockfilt said DISC 07:36:01.878167 ====> Client disconnected 07:36:01.878238 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:01.672596 ====> Client connect 07:36:01.672881 Received DATA (on stdin) 07:36:01.672896 > 160 bytes data, server => client 07:36:01.672907 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:01.672917 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:01.672927 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:01.673059 < 16 bytes data, client => server 07:36:01.673075 'USER anonymous\r\n' 07:36:01.673217 Received DATA (on stdin) 07:36:01.673229 > 33 bytes data, server => client 07:36:01.673239 '331 We are happy you popped in!\r\n' 07:36:01.673334 < 22 bytes data, client => server 07:36:01.673354 'PASS ftp@example.com\r\n' 07:36:01.673458 Received DATA (on stdin) 07:36:01.673469 > 30 bytes data, server => client 07:36:01.673481 '230 Welcome you silly person\r\n' 07:36:01.673540 < 5 bytes data, client => server 07:36:01.673562 'PWD\r\n' 07:36:01.673650 Received DATA (on stdin) 07:36:01.673662 > 30 bytes data, server => client 07:36:01.673672 '257 "/" is current directory\r\n' 07:36:01.673728 < 6 bytes data, client => server 07:36:01.673739 'EPSV\r\n' 07:36:01.676028 Received DATA (on stdin) 07:36:01.676043 > 38 bytes data, server => client 07:36:01.676054 '229 Entering Passive Mode (|||46177|)\n' 07:36:01.676175 < 8 bytes data, client => server 07:36:01.676191 'TYPE I\r\n' 07:36:01.676348 Received DATA (on stdin) 07:36:01.676359 > 33 bytes data, server => client 07:36:01.676370 '200 I modify TYPE as you wanted\r\n' 07:36:01.676421 < 21 bytes data, client => server 07:36:01.676433 'SIZE verifiedserver\r\n' 07:36:01.676577 Received DATA (on stdin) 07:36:01.676594 > 8 bytes data, server => client 07:36:01.676604 '213 17\r\n' 07:36:01.677265 < 21 bytes data, client => server 07:36:01.677284 'RETR verifiedserver\r\n' 07:36:01.677499 Received DATA (on stdin) 07:36:01.677512 > 29 bytes data, server => client 07:36:01.677524 '150 Binary junk (17 bytes).\r\n' 07:36:01.677983 Received DATA (on stdin) 07:36:01.677999 > 28 bytes data, server => client 07:36:01.678009 '226 File transfer complete\r\n' 07:36:01.722932 < 6 bytes data, client => server 07:36:01.722965 'QUIT\r\n' 07:36:01.723185 Received DATA (on stdin) 07:36:01.723197 > 18 bytes data, server => client 07:36:01.723207 '221 bye bye baby\r\n' 07:36:01.724065 ====> Client disconnect 07:36:01.724224 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:01.675632 Running IPv4 version 07:36:01.675711 Listening on port 46177 07:36:01.675750 Wrote pid 140535 to log/24/server/ftp_sockdata.pid 07:36:01.675768 Received PING (on stdin) 07:36:01.675865 Received PORT (on stdin) 07:36:01.676177 ====> Client connect 07:36:01.677527 Received DATA (on stdin) 07:36:01.677542 > 17 bytes data, server => client 07:36:01.677552 'WE ROOLZ: 81588\r\n' 07:36:01.677575 Received DISC (on stdin) 07:36:01.677589 ====> Client forcibly disconnected 07:36:01.677687 Received QUIT (on stdin) 07:36:01.677698 quits 07:36:01.677751 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:36:01.648784 ====> Client connect 07:36:01.648810 accept_connection 3 returned 4 07:36:01.648822 accept_connection 3 returned 0 07:36:01.648833 Read 93 bytes 07:36:01.648840 Process 93 bytes request 07:36:01.648849 Got request: GET /verifiedserver HTTP/1.1 07:36:01.648856 Are-we-friendly question received 07:36:01.648882 Wrote request (93 bytes) input to log/24/server.input 07:36:01.648894 Identifying ourselves as friends 07:36:01.648940 Response sent (56 bytes) and written to log/24/server.response 07:36:01.648947 special request received, no persistency 07:36:01.648953 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1245 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1245 ==141034== ==141034== Process terminating with default action of signal 4 (SIGILL) ==141034== Illegal opcode at address 0x4003082 ==141034== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141034== by 0x4003082: main (tool_main.c:234) === End of file valgrind1245 * starts no server test 1260...[HTTP URL with rubbish after port number] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1260 ../src/curl -q --output log/6/curl1260.out --include --trace-ascii log/6/trace1260 --trace-config all --trace-time -g "http://[127.0.0.1]:47:80/we/want/1260" "http://127.0.0.1:47:80/we/want/1260" "http://user@example.com:80@localhost" > log/6/stdout1260 2> log/6/stderr1260 curl returned 132, when expecting 3 1260: exit FAILED == Contents of files in the log/6/ dir after test 1260 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1260 ../src/curl -q --output log/6/curl1260.out --include --trace-ascii log/6/trace1260 --trace-config all --trace-time -g "http://[127.0.0.1]:47:80/we/want/1260" "http://127.0.0.1:47:80/we/want/1260" "http://user@example.com:80@localhost" > log/6/stdout1260 2> log/6/stderr1260 === End of file commands.log === Start of file server.cmd Testnum 1260 === End of filCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1256 ../src/curl -q --output log/23/curl1256.out --include --trace-ascii log/23/trace1256 --trace-config all --trace-time http://somewhere.example.com/1256 --noproxy 127.0.0.1 > log/23/stdout1256 2> log/23/stderr1256 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1258 ../src/curl -q --output log/22/curl1258.out --include --trace-ascii log/22/trace1258 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1258 http://127.0.0.1:46761/we/want?hoge=fuga -b non-existing -H "Host: localhost" > log/22/stdout1258 2> log/22/stderr1258 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1247 ../src/curl -q --output log/7/curl1247.out --include --trace-ascii log/7/trace1247 --trace-config all --trace-time --fail-early h1234://127.0.0.1:39077/1247 http://127.0.0.1:39077/1247 > log/7/stdout1247 2> log/7/stderr1247 e server.cmd === Start of file valgrind1260 ==141127== ==141127== Process terminating with default action of signal 4 (SIGILL) ==141127== Illegal opcode at address 0x4003082 ==141127== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141127== by 0x4003082: main (tool_main.c:234) === End of file valgrind1260 setenv http_proxy = http://127.0.0.1:45701 setenv NO_PROXY = example.com test 1256...[http_proxy, override NO_PROXY by --noproxy and target URL through proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1256 ../src/curl -q --output log/23/curl1256.out --include --trace-ascii log/23/trace1256 --trace-config all --trace-time http://somewhere.example.com/1256 --noproxy 127.0.0.1 > log/23/stdout1256 2> log/23/stderr1256 1256: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1256 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1256 ../src/curl -q --output log/23/curl1256.out --include --trace-ascii log/23/trace1256 --trace-config all --trace-time http://somewhere.example.com/1256 --noproxy 127.0.0.1 > log/23/stdout1256 2> log/23/stderr1256 === End of file commands.log === Start of file http_server.log 07:36:01.743726 ====> Client connect 07:36:01.743759 accept_connection 3 returned 4 07:36:01.743775 accept_connection 3 returned 0 07:36:01.743789 Read 93 bytes 07:36:01.743798 Process 93 bytes request 07:36:01.743810 Got request: GET /verifiedserver HTTP/1.1 07:36:01.743819 Are-we-friendly question received 07:36:01.743843 Wrote request (93 bytes) input to log/23/server.input 07:36:01.743858 Identifying ourselves as friends 07:36:01.743907 Response sent (56 bytes) and written to log/23/server.response 07:36:01.743916 special request received, no persistency 07:36:01.743925 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1256 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1256 ==141099== ==141099== Process terminating with default action of signal 4 (SIGILL) ==141099== Illegal opcode at address 0x4003082 ==141099== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141099== by 0x4003082: main (tool_main.c:234) === End of file valgrind1256 test 1258...[HTTP, use cookies with localhost] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1258 ../src/curl -q --output log/22/curl1258.out --include --trace-ascii log/22/trace1258 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1258 http://127.0.0.1:46761/we/want?hoge=fuga -b non-existing -H "Host: localhost" > log/22/stdout1258 2> log/22/stderr1258 1258: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1258 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1258 ../src/curl -q --output log/22/curl1258.out --include --trace-ascii log/22/trace1258 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1258 http://127.0.0.1:46761/we/want?hoge=fuga -b non-existing -H "Host: localhost" > log/22/stdout1258 2> log/22/stderr1258 === End of file commands.log === Start of file http_server.log 07:36:01.776011 ====> Client connect 07:36:01.776044 accept_connection 3 returned 4 07:36:01.776060 accept_connection 3 returned 0 07:36:01.776072 Read 93 bytes 07:36:01.776081 Process 93 bytes request 07:36:01.776092 Got request: GET /verifiedserver HTTP/1.1 07:36:01.776101 Are-we-friendly question received 07:36:01.776125 Wrote request (93 bytes) input to log/22/server.input 07:36:01.776141 Identifying ourselves as friends 07:36:01.776190 Response sent (56 bytes) and written to log/22/server.response 07:36:01.776200 special request received, no persistency 07:36:01.776208 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1258 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1258 ==141228== ==141228== Process terminating with default action of signal 4 (SIGILL) ==141228== Illegal opcode at address 0x4003082 ==141228== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141228== by 0x4003082: main (tool_main.c:234) === End of file valgrind1258 test 1247...[--fail-early] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1247 ../src/curl -q --output log/7/curl1247.out --include --trace-ascii log/7/trace1247 --trace-config all --trace-time --fail-early h1234://127.0.0.1:39077/1247 http://127.0.0.1:39077/1247 > log/7/stdout1247 2> log/7/stderr1247 curl returned 132, when expecting 1 1247: exit FAILED == Contents of files in the log/7/ dir after test 1247 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1247 ../src/curl -q --output log/7/curl1247.out --include --trace-ascii log/7/trace1247 --trace-config all --trace-time --fail-early h1234://127.0.0.1:39077/1247 http://127.0.0.1:39077/1247 > log/7/stdout1247 2> log/7/stderr1247 === End of file commands.log === Start of file http_server.log 07:36:01.649067 ====> Client connect 07:36:01.649098 accept_connection 3 returned 4 07:36:01.649114 accept_connection 3 returned 0 07:36:01.649127 Read 93 bytes 07:36:01.649137 Process 93 bytes request 07:36:01.649147 Got request: GET /verifiedserver HTTP/1.1 07:36:01.649156 Are-we-friendly question received 07:36:01.649180 Wrote request (93 bytes) input to log/7/server.input 07:36:01.649196 Identifying ourselves as friends 07:36:01.649247 Response sent (56 bytes) and written to log/7/server.response 07:36:01.649256 special request received, no persistency 07:36:01.649264 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to hosCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1242 ../src/curl -q --output log/14/curl1242.out --include --trace-ascii log/14/trace1242 --trace-config all --trace-time tftp://127.0.0.1:50292//1242 --tftp-no-options > log/14/stdout1242 2> log/14/stderr1242 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1259 ../src/curl -q --output log/11/curl1259.out --include --trace-ascii log/11/trace1259 --trace-config all --trace-time "http://user:pass;word@127.0.0.1:41173/we/want/1259" > log/11/stdout1259 2> log/11/stderr1259 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1248 ../src/curl -q --output log/1/curl1248.out --include --trace-ascii log/1/trace1248 --trace-config all --trace-time http://user:secret@127.0.0.1:38941/1248 --proxy http://dummy:47/ --noproxy 127.0.0.1 --max-time 5 > log/1/stdout1248 2> log/1/stderr1248 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1250 ../src/curl -q --output log/3/curl1250.out --include --trace-ascii log/3/trace1250 --trace-config all --trace-time http://user:secret@127.0.0.1:42345/1250 --noproxy 127.0.0.1 --max-time 5 > log/3/stdout1250 2> log/3/stderr1250 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1249 ../src/curl -q --output log/5/curl1249.out --include --trace-ascii log/5/trace1249 --trace-config all --trace-time http://user:secret@127.0.0.1:46675/1249 --proxy http://dummy:47/ --max-time 5 > log/5/stdout1249 2> log/5/stderr1249 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1251 ../src/curl -q --output log/9/curl1251.out --include --trace-ascii log/9/trace1251 --trace-config all --trace-time http://user:secret@127.0.0.1:34999/1251 --max-time 5 > log/9/stdout1251 2> log/9/stderr1251 t 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1247 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1247 ==140435== ==140435== Process terminating with default action of signal 4 (SIGILL) ==140435== Illegal opcode at address 0x4003082 ==140435== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140435== by 0x4003082: main (tool_main.c:234) === End of file valgrind1247 test 1242...[TFTP retrieve without TFTP options requests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1242 ../src/curl -q --output log/14/curl1242.out --include --trace-ascii log/14/trace1242 --trace-config all --trace-time tftp://127.0.0.1:50292//1242 --tftp-no-options > log/14/stdout1242 2> log/14/stderr1242 1242: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1242 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1242 ../src/curl -q --output log/14/curl1242.out --include --trace-ascii log/14/trace1242 --trace-config all --trace-time tftp://127.0.0.1:50292//1242 --tftp-no-options > log/14/stdout1242 2> log/14/stderr1242 === End of file commands.log === Start of file server.cmd Testnum 1242 === End of file server.cmd === Start of file tftp_server.log 07:36:01.638781 trying to get file: verifiedserver mode 1 07:36:01.638811 Are-we-friendly question received 07:36:01.638825 write 07:36:01.638842 read 07:36:01.639382 read: 4 07:36:01.639433 end of one transfer === End of file tftp_server.log === Start of file valgrind1242 ==140379== ==140379== Process terminating with default action of signal 4 (SIGILL) ==140379== Illegal opcode at address 0x4003082 ==140379== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140379== by 0x4003082: main (tool_main.c:234) === End of file valgrind1242 test 1259...[HTTP URL with semicolon in password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1259 ../src/curl -q --output log/11/curl1259.out --include --trace-ascii log/11/trace1259 --trace-config all --trace-time "http://user:pass;word@127.0.0.1:41173/we/want/1259" > log/11/stdout1259 2> log/11/stderr1259 1259: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1259 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1259 ../src/curl -q --output log/11/curl1259.out --include --trace-ascii log/11/trace1259 --trace-config all --trace-time "http://user:pass;word@127.0.0.1:41173/we/want/1259" > log/11/stdout1259 2> log/11/stderr1259 === End of file commands.log === Start of file http_server.log 07:36:01.779795 ====> Client connect 07:36:01.779854 accept_connection 3 returned 4 07:36:01.779870 accept_connection 3 returned 0 07:36:01.779884 Read 93 bytes 07:36:01.779894 Process 93 bytes request 07:36:01.779906 Got request: GET /verifiedserver HTTP/1.1 07:36:01.779916 Are-we-friendly question received 07:36:01.779938 Wrote request (93 bytes) input to log/11/server.input 07:36:01.779954 Identifying ourselves as friends 07:36:01.780005 Response sent (56 bytes) and written to log/11/server.response 07:36:01.780015 special request received, no persistency 07:36:01.780023 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1259 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1259 ==141237== ==141237== Process terminating with default action of signal 4 (SIGILL) ==141237== Illegal opcode at address 0x4003082 ==141237== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141237== by 0x4003082: main (tool_main.c:234) === End of file valgrind1259 test 1248...[Non-proxied host plus --proxy option and --noproxy option] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1248 ../src/curl -q --output log/1/curl1248.out --include --trace-ascii log/1/trace1248 --trace-config all --trace-time http://user:secret@127.0.0.1:38941/1248 --proxy http://dummy:47/ --noproxy 127.0.0.1 --max-time 5 > log/1/stdout1248 2> log/1/stderr1248 1248: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1248 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1248 ../src/curl -q --output log/1/curl1248.out --include --trace-ascii log/1/trace1248 --trace-config all --trace-time http://user:secret@127.0.0.1:38941/1248 --proxy http://dummy:47/ --noproxy 127.0.0.1 --max-time 5 > log/1/stdout1248 2> log/1/stderr1248 === End of file commands.log === Start of file http_server.log 07:36:01.665513 ====> Client connect 07:36:01.665545 accept_connection 3 returned 4 07:36:01.665562 accept_connection 3 returned 0 07:36:01.665577 Read 93 bytes 07:36:01.665585 Process 93 bytes request 07:36:01.665598 Got request: GET /verifiedserver HTTP/1.1 07:36:01.665606 Are-we-friendly question received 07:36:01.665631 Wrote request (93 bytes) input to log/1/server.input 07:36:01.665646 Identifying ourselves as friends 07:36:01.665715 Response sent (56 bytes) and written to log/1/server.response 07:36:01.665725 special request received, no persistency 07:36:01.665735 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1248 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1248 ==140566== ==140566== Process terminating with default action of signal 4 (SIGILL) ==140566== Illegal opcode at address 0x4003082 ==140566== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140566== by 0x4003082: main (tool_main.c:234) === End of file valgrind1248 setenv http_proxy = http://dummy:[not running]/ test 1250...[Non-proxied host plus http_proxy env var anCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1246 ../src/curl -q --output log/16/curl1246.out --include --trace-ascii log/16/trace1246 --trace-config all --trace-time --proxy http://127.0.0.1:46739 http://test.remote.haxx.se.1246:46739#@127.0.0.1/tricked.html no-scheme-url.com.1246:46739#@127.127.127.127/again.html > log/16/stdout1246 2> log/16/stderr1246 d --noproxy option] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1250 ../src/curl -q --output log/3/curl1250.out --include --trace-ascii log/3/trace1250 --trace-config all --trace-time http://user:secret@127.0.0.1:42345/1250 --noproxy 127.0.0.1 --max-time 5 > log/3/stdout1250 2> log/3/stderr1250 1250: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1250 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1250 ../src/curl -q --output log/3/curl1250.out --include --trace-ascii log/3/trace1250 --trace-config all --trace-time http://user:secret@127.0.0.1:42345/1250 --noproxy 127.0.0.1 --max-time 5 > log/3/stdout1250 2> log/3/stderr1250 === End of file commands.log === Start of file http_server.log 07:36:01.667758 ====> Client connect 07:36:01.667786 accept_connection 3 returned 4 07:36:01.667801 accept_connection 3 returned 0 07:36:01.667813 Read 93 bytes 07:36:01.667822 Process 93 bytes request 07:36:01.667833 Got request: GET /verifiedserver HTTP/1.1 07:36:01.667842 Are-we-friendly question received 07:36:01.667862 Wrote request (93 bytes) input to log/3/server.input 07:36:01.667877 Identifying ourselves as friends 07:36:01.667927 Response sent (56 bytes) and written to log/3/server.response 07:36:01.667936 special request received, no persistency 07:36:01.667945 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1250 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1250 ==140572== ==140572== Process terminating with default action of signal 4 (SIGILL) ==140572== Illegal opcode at address 0x4003082 ==140572== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140572== by 0x4003082: main (tool_main.c:234) === End of file valgrind1250 setenv NO_PROXY = 127.0.0.1 test 1249...[Non-proxied plus --proxy option and NO_PROXY env var] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1249 ../src/curl -q --output log/5/curl1249.out --include --trace-ascii log/5/trace1249 --trace-config all --trace-time http://user:secret@127.0.0.1:46675/1249 --proxy http://dummy:47/ --max-time 5 > log/5/stdout1249 2> log/5/stderr1249 1249: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1249 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1249 ../src/curl -q --output log/5/curl1249.out --include --trace-ascii log/5/trace1249 --trace-config all --trace-time http://user:secret@127.0.0.1:46675/1249 --proxy http://dummy:47/ --max-time 5 > log/5/stdout1249 2> log/5/stderr1249 === End of file commands.log === Start of file http_server.log 07:36:01.666476 ====> Client connect 07:36:01.666510 accept_connection 3 returned 4 07:36:01.666525 accept_connection 3 returned 0 07:36:01.666538 Read 93 bytes 07:36:01.666547 Process 93 bytes request 07:36:01.666559 Got request: GET /verifiedserver HTTP/1.1 07:36:01.666567 Are-we-friendly question received 07:36:01.666592 Wrote request (93 bytes) input to log/5/server.input 07:36:01.666606 Identifying ourselves as friends 07:36:01.666662 Response sent (56 bytes) and written to log/5/server.response 07:36:01.666672 special request received, no persistency 07:36:01.666680 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1249 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1249 ==140567== ==140567== Process terminating with default action of signal 4 (SIGILL) ==140567== Illegal opcode at address 0x4003082 ==140567== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140567== by 0x4003082: main (tool_main.c:234) === End of file valgrind1249 setenv http_proxy = http://dummy:[not running]/ setenv NO_PROXY = 127.0.0.1 test 1251...[Non-proxied host plus http_proxy env var and NO_PROXY env var] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1251 ../src/curl -q --output log/9/curl1251.out --include --trace-ascii log/9/trace1251 --trace-config all --trace-time http://user:secret@127.0.0.1:34999/1251 --max-time 5 > log/9/stdout1251 2> log/9/stderr1251 1251: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1251 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1251 ../src/curl -q --output log/9/curl1251.out --include --trace-ascii log/9/trace1251 --trace-config all --trace-time http://user:secret@127.0.0.1:34999/1251 --max-time 5 > log/9/stdout1251 2> log/9/stderr1251 === End of file commands.log === Start of file http_server.log 07:36:01.675375 ====> Client connect 07:36:01.675408 accept_connection 3 returned 4 07:36:01.675424 accept_connection 3 returned 0 07:36:01.675437 Read 93 bytes 07:36:01.675445 Process 93 bytes request 07:36:01.675457 Got request: GET /verifiedserver HTTP/1.1 07:36:01.675465 Are-we-friendly question received 07:36:01.675491 Wrote request (93 bytes) input to log/9/server.input 07:36:01.675506 Identifying ourselves as friends 07:36:01.675567 Response sent (56 bytes) and written to log/9/server.response 07:36:01.675577 special request received, no persistency 07:36:01.675584 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1251 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1254 ../src/curl -q --output log/2/curl1254.out --include --trace-ascii log/2/trace1254 --trace-config all --trace-time http://somewhere.example.com/1254 --proxy http://127.0.0.1:45457 --noproxy "" > log/2/stdout1254 2> log/2/stderr1254 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1275.pl /startdir/src/curl/tests/.. > log/11/stdout1275 2> log/11/stderr1275 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1276.pl /startdir/src/curl/tests/.. > log/1/stdout1276 2> log/1/stderr1276 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl --heading=EXPORTS --sort /startdir/src/curl/tests/.. > log/16/stdout1279 2> log/16/stderr1279 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1257 ../src/curl -q --output log/17/curl1257.out --include --trace-ascii log/17/trace1257 --trace-config all --trace-time http://somewhere.example.com/1257 --noproxy "" > log/17/stdout1257 2> log/17/stderr1257 server.response === Start of file valgrind1251 ==140640== ==140640== Process terminating with default action of signal 4 (SIGILL) ==140640== Illegal opcode at address 0x4003082 ==140640== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140640== by 0x4003082: main (tool_main.c:234) === End of file valgrind1251 test 1246...[URL with '#' at end of host name instead of '/'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1246 ../src/curl -q --output log/16/curl1246.out --include --trace-ascii log/16/trace1246 --trace-config all --trace-time --proxy http://127.0.0.1:46739 http://test.remote.haxx.se.1246:46739#@127.0.0.1/tricked.html no-scheme-url.com.1246:46739#@127.127.127.127/again.html > log/16/stdout1246 2> log/16/stderr1246 1246: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1246 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1246 ../src/curl -q --output log/16/curl1246.out --include --trace-ascii log/16/trace1246 --trace-config all --trace-time --proxy http://127.0.0.1:46739 http://test.remote.haxx.se.1246:46739#@127.0.0.1/tricked.html no-scheme-url.com.1246:46739#@127.127.127.127/again.html > log/16/stdout1246 2> log/16/stderr1246 === End of file commands.log === Start of file http_server.log 07:36:01.650367 ====> Client connect 07:36:01.650423 accept_connection 3 returned 4 07:36:01.650440 accept_connection 3 returned 0 07:36:01.650490 Read 93 bytes 07:36:01.650515 Process 93 bytes request 07:36:01.650539 Got request: GET /verifiedserver HTTP/1.1 07:36:01.650548 Are-we-friendly question received 07:36:01.650573 Wrote request (93 bytes) input to log/16/server.input 07:36:01.650588 Identifying ourselves as friends 07:36:01.650643 Response sent (56 bytes) and written to log/16/server.response 07:36:01.650653 special request received, no persistency 07:36:01.650661 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1246 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1246 ==140464== ==140464== Process terminating with default action of signal 4 (SIGILL) ==140464== Illegal opcode at address 0x4003082 ==140464== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140464== by 0x4003082: main (tool_main.c:234) === End of file valgrind1246 setenv NO_PROXY = example.com test 1254...[override NO_PROXY by --noproxy and access target URL through proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1254 ../src/curl -q --output log/2/curl1254.out --include --trace-ascii log/2/trace1254 --trace-config all --trace-time http://somewhere.example.com/1254 --proxy http://127.0.0.1:45457 --noproxy "" > log/2/stdout1254 2> log/2/stderr1254 1254: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1254 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1254 ../src/curl -q --output log/2/curl1254.out --include --trace-ascii log/2/trace1254 --trace-config all --trace-time http://somewhere.example.com/1254 --proxy http://127.0.0.1:45457 --noproxy "" > log/2/stdout1254 2> log/2/stderr1254 === End of file commands.log === Start of file http_server.log 07:36:01.688952 ====> Client connect 07:36:01.688991 accept_connection 3 returned 4 07:36:01.689007 accept_connection 3 returned 0 07:36:01.689021 Read 93 bytes 07:36:01.689031 Process 93 bytes request 07:36:01.689043 Got request: GET /verifiedserver HTTP/1.1 07:36:01.689052 Are-we-friendly question received 07:36:01.689105 Wrote request (93 bytes) input to log/2/server.input 07:36:01.689122 Identifying ourselves as friends 07:36:01.689187 Response sent (56 bytes) and written to log/2/server.response 07:36:01.689197 special request received, no persistency 07:36:01.689206 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1254 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1254 ==140756== ==140756== Process terminating with default action of signal 4 (SIGILL) ==140756== Illegal opcode at address 0x4003082 ==140756== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140756== by 0x4003082: main (tool_main.c:234) === End of file valgrind1254 * starts no server test 1275...[Verify capital letters after period in markdown files] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1275.pl /startdir/src/curl/tests/.. > log/11/stdout1275 2> log/11/stderr1275 valgrind SKIPPED -------e--- OK (1186 out of 1707, remaining: 00:32, took 0.014s, duration: 01:13) * starts no server test 1276...[Verify lib/optiontable.pl] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1276.pl /startdir/src/curl/tests/.. > log/1/stdout1276 2> log/1/stderr1276 valgrind SKIPPED -------e--- OK (1187 out of 1707, remaining: 00:32, took 0.020s, duration: 01:13) * starts no server test 1279...[Verify libcurl.def against CURL_EXTERN declarations] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1135.pl --heading=EXPORTS --sort /startdir/src/curl/tests/.. > log/16/stdout1279 2> log/16/stderr1279 valgrind SKIPPED s------e--- OK (1190 out of 1707, remaining: 00:31, took 0.023s, duration: 01:13) setenv http_proxy = http://127.0.0.1:39089 setenv NO_PROXY = example.com test 1257...[http_proxy, override NO_PROXY by --noproxy and target URL through proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1257 ../src/curl -q --output log/17/curl1257.out --include --trace-ascii log/17/trace1257 --trace-config all --trace-time http://somewhere.example.com/1257 --noproxy "" > log/17/stdout1257 2> log/17/stderr1257 1257: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1257 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1257 ../src/curlCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1261 ../src/curl -q --include --trace-ascii log/15/trace1261 --trace-config all --trace-time http://127.0.0.1:36993/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redirs 0 > log/15/stdout1261 2> log/15/stderr1261 -q --output log/17/curl1257.out --include --trace-ascii log/17/trace1257 --trace-config all --trace-time http://somewhere.example.com/1257 --noproxy "" > log/17/stdout1257 2> log/17/stderr1257 === End of file commands.log === Start of file http_server.log 07:36:01.776009 ====> Client connect 07:36:01.776038 accept_connection 3 returned 4 07:36:01.776051 accept_connection 3 returned 0 07:36:01.776063 Read 93 bytes 07:36:01.776071 Process 93 bytes request 07:36:01.776081 Got request: GET /verifiedserver HTTP/1.1 07:36:01.776088 Are-we-friendly question received 07:36:01.776106 Wrote request (93 bytes) input to log/17/server.input 07:36:01.776119 Identifying ourselves as friends 07:36:01.776162 Response sent (56 bytes) and written to log/17/server.response 07:36:01.776169 special request received, no persistency 07:36:01.776176 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1257 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1257 ==141231== ==141231== Process terminating with default action of signal 4 (SIGILL) ==141231== Illegal opcode at address 0x4003082 ==141231== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141231== by 0x4003082: main (tool_main.c:234) === End of file valgrind1257 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1263 ../src/curl -q --output log/20/curl1263.out --include --trace-ascii log/20/trace1263 --trace-config all --trace-time -g "http://[127.0.0.1]test:47/we/want/1263" "http://[127.0.0.1][127.0.0.1]:47/we/want/1263" "http://user@[::1]@localhost" > log/20/stdout1263 2> log/20/stderr1263 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1264 ../src/curl -q --output log/4/curl1264.out --include --trace-ascii log/4/trace1264 --trace-config all --trace-time -g "http://127.0.0.1 www.example.com/we/want/1264" > log/4/stdout1264 2> log/4/stderr1264 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1230 ../src/curl -q --output log/8/curl1230.out --include --trace-ascii log/8/trace1230 --trace-config all --trace-time http://[1234:1234:1234::4ce]:45261/wanted/page/1230 -p -x 127.0.0.1:45261 > log/8/stdout1230 2> log/8/stderr1230 test 1261...['redirect_url' with --location and --max-redirs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1261 ../src/curl -q --include --trace-ascii log/15/trace1261 --trace-config all --trace-time http://127.0.0.1:36993/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redirs 0 > log/15/stdout1261 2> log/15/stderr1261 1261: stdout FAILED: --- log/15/check-expected 2025-07-18 07:36:02.690446279 +0000 +++ log/15/check-generated 2025-07-18 07:36:02.690446279 +0000 @@ -1,6 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/10290002.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -http://127.0.0.1:36993/we/want/our/data/10290002.txt?coolsite=yes[LF] == Contents of files in the log/15/ dir after test 1261 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/10290002.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] http://127.0.0.1:36993/we/want/our/data/10290002.txt?coolsite=yes[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1261 ../src/curl -q --include --trace-ascii log/15/trace1261 --trace-config all --trace-time http://127.0.0.1:36993/we/want/our/1261 -w '%{redirect_url}\n' --location --max-redirs 0 > log/15/stdout1261 2> log/15/stderr1261 === End of file commands.log === Start of file http_server.log 07:36:01.985089 ====> Client connect 07:36:01.985123 accept_connection 3 returned 4 07:36:01.985139 accept_connection 3 returned 0 07:36:01.985153 Read 93 bytes 07:36:01.985163 Process 93 bytes request 07:36:01.985176 Got request: GET /verifiedserver HTTP/1.1 07:36:01.985185 Are-we-friendly question received 07:36:01.985209 Wrote request (93 bytes) input to log/15/server.input 07:36:01.985225 Identifying ourselves as friends 07:36:01.985277 Response sent (56 bytes) and written to log/15/server.response 07:36:01.985287 special request received, no persistency 07:36:01.985296 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1261 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1261 ==141447== ==141447== Process terminating with default action of signal 4 (SIGILL) ==141447== Illegal opcode at address 0x4003082 ==141447== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141447== by 0x4003082: main (tool_main.c:234) === End of file valgrind1261 * starts no server test 1263...[HTTP URL with rubbish after IPv6 bracket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1263 ../src/curl -q --output log/20/curl1263.out --include --trace-ascii log/20/trace1263 --trace-config all --trace-time -g "http://[127.0.0.1]test:47/we/want/1263" "http://[127.0.0.1][127.0.0.1]:47/we/want/1263" "http://user@[::1]@localhost" > log/20/stdout1263 2> log/20/stderr1263 curl returned 132, when expecting 3 1263: exit FAILED == Contents of files in the log/20/ dir after test 1263 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1263 ../src/curl -q --output log/20/curl1263.out --include --trace-ascii log/20/trace1263 --trace-config all --trace-time -g "http://[127.0.0.1]test:47/we/want/1263" "http://[127.0.0.1][127.0.0.1]:47/we/want/1263" "http://user@[::1]@localhost" > log/20/stdout1263 2> log/20/stderr1263 === End of file commands.log === Start of file server.cmd Testnum 1263 === End of file server.cmd === Start of file valgrind1263 ==141545== ==141545== Process terminating with default action of signal 4 (SIGILL) ==141545== Illegal opcode at address 0x4003082 ==141545== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141545== by 0x4003082: main (tool_main.c:234) === End of file valgrind1263 * starts no server test 1264...[HTTP URL with space in host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1264 ../src/curl -q --output log/4/curl1264.out --include --trace-ascii log/4/trace1264 --trace-config all --trace-time -g "http://127.0.0.1 www.example.com/we/want/1264" > log/4/stdout1264 2> log/4/stderr1264 curl returned 132, when expecting 3 1264: exit FAILED == Contents of files in the log/4/ dir after test 1264 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1264 ../src/curl -q --output log/4/curl1264.out --include --trace-ascii log/4/trace1264 --trace-config all --trace-time -g "http://127.0.0.1 www.example.com/we/want/1264" > log/4/stdout1264 2> log/4/stderr1264 === End of file commands.log === Start of file server.cmd Testnum 1264 === End of file server.cmd === Start of file valgrind1264 ==141546== ==141546== Process terminating with default action of signal 4 (SIGILL) ==141546== Illegal opcode at address 0x4003082 ==141546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141546== by 0x4003082: main (tool_main.c:234) === End of file valgrind1264 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/8/server/http2_server.pid" --logfile "log/8/http2_server.log" --logdir "log/8" --portfile log/8/server/http2_server.port --config log/8/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 139040 port 46479 * pid http-proxy => 139040 139040 test 1230...[HTTP CONNECT to IPv6 numerical address] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1230 ../src/curl -q --output log/8/curl1230.out --include --trace-ascii log/8/trace1230 --trace-config all --trace-time http://[1234:1234:1234::4ce]:45261/wanted/page/1230 -p -x 127.0.0.1:45261 > log/8/stdout1230 2> log/8/stderr1230 1230: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1230 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1230 ../src/curl -q --output log/8/curl1230.out --include --trace-ascii log/8/trace1230 --trace-config all --trace-time http://[1234:1234:1234::4ce]:45261/wanted/page/1230 -p -x 127.0.0.1:45261 > log/8/stdout1230 2> log/8/stderr1230 === End of file commands.log === Start of file http2_server.log 07:36:01.040544 Run as proxy, CONNECT to host 127.0.0.1 07:36:01.040635 Running HTTP IPv4 version on port 46479 07:36:01.040675 Wrote pid 139040 to log/8/server/http2_server.pid 07:36:01.040711 Wrote port 46479CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1262 ../src/curl -q --output log/10/curl1262.out --include --trace-ascii log/10/trace1262 --trace-config all --trace-time ftp://127.0.0.1:34951/blalbla/1262 -z "-1 jan 2001" > log/10/stdout1262 2> log/10/stderr1262 to log/8/server/http2_server.port === End of file http2_server.log === Start of file http_ipv6_server.log 07:36:02.051231 ====> Client connect 07:36:02.051264 accept_connection 3 returned 4 07:36:02.051280 accept_connection 3 returned 0 07:36:02.051295 Read 89 bytes 07:36:02.051305 Process 89 bytes request 07:36:02.051322 Got request: GET /verifiedserver HTTP/1.1 07:36:02.051332 Are-we-friendly question received 07:36:02.051355 Wrote request (89 bytes) input to log/8/server.input 07:36:02.051375 Identifying ourselves as friends 07:36:02.051581 Response sent (57 bytes) and written to log/8/server.response 07:36:02.051598 special request received, no persistency 07:36:02.051609 ====> Client disconnect 0 === End of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:40739... * Connected to ::1 (::1) port 40739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: [::1]:40739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host ::1 left intact === End of file http_ipv6_verify.log === Start of file http_ipv6_verify.out WE ROOLZ: 129436 === End of file http_ipv6_verify.out === Start of file http_server.log 07:36:02.079867 ====> Client connect 07:36:02.079897 accept_connection 3 returned 4 07:36:02.079914 accept_connection 3 returned 0 07:36:02.079927 Read 93 bytes 07:36:02.079937 Process 93 bytes request 07:36:02.079950 Got request: GET /verifiedserver HTTP/1.1 07:36:02.079960 Are-we-friendly question received 07:36:02.079972 Wrote request (93 bytes) input to log/8/server.input 07:36:02.079988 Identifying ourselves as friends 07:36:02.080028 Response sent (56 bytes) and written to log/8/server.response 07:36:02.080037 special request received, no persistency 07:36:02.080046 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1230 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 129436 HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1230 ==141581== ==141581== Process terminating with default action of signal 4 (SIGILL) ==141581== Illegal opcode at address 0x4003082 ==141581== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141581== by 0x4003082: main (tool_main.c:234) === End of file valgrind1230 test 1262...[FTP request and denied to download an older file with -z] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1262 ../src/curl -q --output log/10/curl1262.out --include --trace-ascii log/10/trace1262 --trace-config all --trace-time ftp://127.0.0.1:34951/blalbla/1262 -z "-1 jan 2001" > log/10/stdout1262 2> log/10/stderr1262 1262: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1262 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1262 ../src/curl -q --output log/10/curl1262.out --include --trace-ascii log/10/trace1262 --trace-config all --trace-time ftp://127.0.0.1:34951/blalbla/1262 -z "-1 jan 2001" > log/10/stdout1262 2> log/10/stderr1262 === End of file commands.log === Start of file ftp_server.log 07:36:02.226045 ====> Client connect 07:36:02.226198 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:02.226502 < "USER anonymous" 07:36:02.226542 > "331 We are happy you popped in![CR][LF]" 07:36:02.226942 < "PASS ftp@example.com" 07:36:02.226993 > "230 Welcome you silly person[CR][LF]" 07:36:02.227233 < "PWD" 07:36:02.227271 > "257 "/" is current directory[CR][LF]" 07:36:02.227486 < "EPSV" 07:36:02.227519 ====> Passive DATA channel requested by client 07:36:02.227532 DATA sockfilt for passive data channel starting... 07:36:02.229586 DATA sockfilt for passive data channel started (pid 141542) 07:36:02.229700 DATA sockfilt for passive data channel listens on port 43165 07:36:02.229740 > "229 Entering Passive Mode (|||43165|)[LF]" 07:36:02.229755 Client has been notified that DATA conn will be accepted on port 43165 07:36:02.229964 Client connects to port 43165 07:36:02.229996 ====> Client established passive DATA connection on port 43165 07:36:02.230148 < "TYPE I" 07:36:02.230180 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:02.230331 < "SIZE verifiedserver" 07:36:02.230366 > "213 18[CR][LF]" 07:36:02.230504 < "RETR verifiedserver" 07:36:02.230534 > "150 Binary junk (18 bytes).[CR][LF]" 07:36:02.230611 =====> Closing passive DATA connection... 07:36:02.230627 Server disconnects passive DATA connection 07:36:02.230851 Server disconnected passive DATA connection 07:36:02.230878 DATA sockfilt for passive data channel quits (pid 141542) 07:36:02.231129 DATA sockfilt for passive data channel quit (pid 141542) 07:36:02.231155 =====> Closed passive DATA connection 07:36:02.231184 > "226 File transfer complete[CR][LF]" 07:36:02.276982 < "QUIT" 07:36:02.277034 > "221 bye bye baby[CR][LF]" 07:36:02.277452 MAIN sockfilt said DISC 07:36:02.277480 ====> Client disconnected 07:36:02.277554 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:03.071926 ====> Client connect 07:36:03.072198 Received DATA (on stdin) 07:36:03.072215 > 160 bytes data, server => client 07:36:03.072227 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:03.072238 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:03.072248 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:03.072325 < 16 bytes data, client => server 07:36:03.072340 'USER anonymous\r\n' 07:36:03.072531 Received DATA (on stdin) 07:36:03.072545 > 33 bytes data, server => client 07:36:03.072556 '331 We are happy you popped in!\r\n' 07:36:03.072608 < 22 bytes data, client => server 07:36:03.072621 'PASS ftp@example.com\r\n' 07:36:03.072989 Received DATA (on stdin) 07:36:03.073008 > 30 bytes data, server => client 07:36:03.073019 '230 Welcome you silly person\r\n' 07:36:03.073112 < 5 bytes data, client => server 07:36:03.073128 'PWD\r\n' 07:36:03.073256 Received DATA (on stdin) 07:36:03.073267 > 30 bytes data, server => client 07:36:03.073277 '257 "/" is current directory\r\n' 07:36:03.073354 < 6 bytes data, client => server 07:36:03.073374 'EPSV\r\n' 07:36:03.075747 Received DATA (on stdin) 07:36:03.075761 > 38 bytes data, server => client 07:36:03.075772 '229 Entering Passive Mode (|||43165|)\n' 07:36:03.076028 < 8 bytes data, client => server 07:36:03.076042 'TYPE I\r\n' 07:36:03.076166 Received DATA (on stdin) 07:36:03.076177 > 33 bytes data, server => client 07:36:03.076188 '200 I modify TYPE as you wanted\r\n' 07:36:03.076238 < 21 bytes data, client => server 07:36:03.076249 'SIZE verifiedserver\r\n' 07:36:03.076350 Received DATA (on stdin) 07:36:03.076361 > 8 bytes data, server => client 07:36:03.076371 '213 18\r\n' 07:36:03.076414 < 21 bytes data, client => server 07:36:03.076425 'RETR verifiedserver\r\n' 07:36:03.076614 Received DATA (on stdin) 07:36:03.076627 > 29 bytes data, server => client 07:36:03.076638 '150 Binary junk (18 bytes).\r\n' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1280 ../src/curl -q --output log/2/curl1280.out --include --trace-ascii log/2/trace1280 --trace-config all --trace-time http://127.0.0.1:45457/[a-d]/1280 > log/2/stdout1280 2> log/2/stderr1280 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1273 ../src/curl -q --output log/7/curl1273.out --include --trace-ascii log/7/trace1273 --trace-config all --trace-time http://127.0.0.1:39077/1273 -C - -f > log/7/stdout1273 2> log/7/stderr1273 RUN: Process with pid 73857 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1278 ../src/curl -q --include --trace-ascii log/9/trace1278 --trace-config all --trace-time http://127.0.0.1:34999/1278 --no-progress-meter -o log/9/out1278 --no-remote-name -w '%{stderr}yes\n' > log/9/stdout1278 2> log/9/stderr1278 07:36:03.077169 Received DATA (on stdin) 07:36:03.077182 > 28 bytes data, server => client 07:36:03.077192 '226 File transfer complete\r\n' 07:36:03.122761 < 6 bytes data, client => server 07:36:03.122788 'QUIT\r\n' 07:36:03.123026 Received DATA (on stdin) 07:36:03.123038 > 18 bytes data, server => client 07:36:03.123048 '221 bye bye baby\r\n' 07:36:03.123382 ====> Client disconnect 07:36:03.123538 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:02.075260 Running IPv4 version 07:36:02.075326 Listening on port 43165 07:36:02.075366 Wrote pid 141542 to log/10/server/ftp_sockdata.pid 07:36:02.075511 Received PING (on stdin) 07:36:02.075602 Received PORT (on stdin) 07:36:02.075898 ====> Client connect 07:36:02.076663 Received DATA (on stdin) 07:36:02.076676 > 18 bytes data, server => client 07:36:02.076686 'WE ROOLZ: 133133\r\n' 07:36:02.076710 Received DISC (on stdin) 07:36:02.076721 ====> Client forcibly disconnected 07:36:02.076869 Received QUIT (on stdin) 07:36:02.076881 quits 07:36:02.076942 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1262 === End of file server.cmd === Start of file valgrind1262 ==141688== ==141688== Process terminating with default action of signal 4 (SIGILL) ==141688== Illegal opcode at address 0x4003082 ==141688== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141688== by 0x4003082: main (tool_main.c:234) === End of file valgrind1262 test 1280...[simple [a-d] globbing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1280 ../src/curl -q --output log/2/curl1280.out --include --trace-ascii log/2/trace1280 --trace-config all --trace-time http://127.0.0.1:45457/[a-d]/1280 > log/2/stdout1280 2> log/2/stderr1280 1280: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1280 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1280 ../src/curl -q --output log/2/curl1280.out --include --trace-ascii log/2/trace1280 --trace-config all --trace-time http://127.0.0.1:45457/[a-d]/1280 > log/2/stdout1280 2> log/2/stderr1280 === End of file commands.log === Start of file http_server.log 07:36:02.291060 ====> Client connect 07:36:02.291091 accept_connection 3 returned 4 07:36:02.291105 accept_connection 3 returned 0 07:36:02.291118 Read 93 bytes 07:36:02.291127 Process 93 bytes request 07:36:02.291139 Got request: GET /verifiedserver HTTP/1.1 07:36:02.291148 Are-we-friendly question received 07:36:02.291170 Wrote request (93 bytes) input to log/2/server.input 07:36:02.291185 Identifying ourselves as friends 07:36:02.291234 Response sent (56 bytes) and written to log/2/server.response 07:36:02.291243 special request received, no persistency 07:36:02.291251 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1280 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1280 ==142247== ==142247== Process terminating with default action of signal 4 (SIGILL) ==142247== Illegal opcode at address 0x4003082 ==142247== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142247== by 0x4003082: main (tool_main.c:234) === End of file valgrind1280 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1283 ../src/curl -q --include --trace-ascii log/1/trace1283 --trace-config all --trace-time http://127.0.0.1:38941/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/1/outfile1283_#1#2#3#4.dump" > log/1/stdout1283 2> log/1/stderr1283 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1277 ../src/curl -q --output log/3/curl1277.out --include --trace-ascii log/3/trace1277 --trace-config all --trace-time http://127.0.0.1:42345/1277 --tr-encoding --compressed > log/3/stdout1277 2> log/3/stderr1277 test 1278...[verify extra --no-remote-name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1278 ../src/curl -q --include --trace-ascii log/9/trace1278 --trace-config all --trace-time http://127.0.0.1:34999/1278 --no-progress-meter -o log/9/out1278 --no-remote-name -w '%{stderr}yes\n' > log/9/stdout1278 2> log/9/stderr1278 1278: stderr FAILED: --- log/9/check-expected 2025-07-18 07:36:02.927112950 +0000 +++ log/9/check-generated 2025-07-18 07:36:02.927112950 +0000 @@ -1 +0,0 @@ -yes[CR][LF] == Contents of files in the log/9/ dir after test 1278 === Start of file check-expected yes[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1278 ../src/curl -q --include --trace-ascii log/9/trace1278 --trace-config all --trace-time http://127.0.0.1:34999/1278 --no-progress-meter -o log/9/out1278 --no-remote-name -w '%{stderr}yes\n' > log/9/stdout1278 2> log/9/stderr1278 === End of file commands.log === Start of file http_server.log 07:36:02.288692 ====> Client connect 07:36:02.288730 accept_connection 3 returned 4 07:36:02.288746 accept_connection 3 returned 0 07:36:02.288760 Read 93 bytes 07:36:02.288769 Process 93 bytes request 07:36:02.288781 Got request: GET /verifiedserver HTTP/1.1 07:36:02.288790 Are-we-friendly question received 07:36:02.288814 Wrote request (93 bytes) input to log/9/server.input 07:36:02.288830 Identifying ourselves as friends 07:36:02.288887 Response sent (56 bytes) and written to log/9/server.response 07:36:02.288897 special request received, no persistency 07:36:02.288907 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1278 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1278 ==142213== ==142213== Process terminating with default action of signal 4 (SIGILL) ==142213== Illegal opcode at address 0x4003082 ==142213== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142213== by 0x4003082: main (tool_main.c:234) === End of file valgrind1278 test 1283...[globbing range with same start and stop] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1283 ../src/curl -q --include --trace-ascii log/1/trace1283 --trace-config all --trace-time http://127.0.0.1:38941/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/1/outfile1283_#1#2#3#4.dump" > log/1/stdout1283 2> log/1/stderr1283 1283: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1283 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1283 ../src/curl -q --include --trace-ascii log/1/trace1283 --trace-config all --trace-time http://127.0.0.1:38941/[a-a][1-1][b-b:1][2-2:1]/1283 -o "log/1/outfile1283_#1#2#3#4.dump" > log/1/stdout1283 2> log/1/stderr1283 === End of file commands.log === Start of file http_server.log 07:36:02.303578 ====> Client connect 07:36:02.303619 accept_connection 3 returned 4 07:36:02.303636 accept_connection 3 returned 0 07:36:02.303649 Read 93 bytes 07:36:02.303659 Process 93 bytes request 07:36:02.303674 Got request: GET /verifiedserver HTTP/1.1 07:36:02.303683 Are-we-friendly question received 07:36:02.303707 Wrote request (93 bytes) input to log/1/server.input 07:36:02.303723 Identifying ourselves as friends 07:36:02.303777 Response sent (56 bytes) and written to log/1/server.response 07:36:02.303787 special request received, no persistency 07:36:02.303796 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1283 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1283 ==142346== ==142346== Process terminating with default action of signal 4 (SIGILL) ==142346== Illegal opcode at address 0x4003082 ==142346== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142346== by 0x4003082: main (tool_main.c:234) === End of file valgrind1283 test 1277...[HTTP GET with both content and transfer encoding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1277 ../src/curl -q --output log/3/curl1277.out --include --trace-ascii log/3/trace1277 --trace-config all --trace-time http://127.0.0.1:42345/1277 --tr-encoding --compressed > log/3/stdout1277 2> log/3/stderr1277 1277: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1277 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1277 ../src/curl -q --output log/3/curl1277.out --include --trace-ascii log/3/trace1277 --trace-config all --trace-time http://127.0.0.1:42345/1277 --tr-encoding --compressed > log/3/stdout1277 2> log/3/stderr1277 === End of file commands.log === Start of file http_server.log 07:36:02.284292 ====> Client connect 07:36:02.284321 accept_connection 3 returned 4 07:36:02.284334 accept_connection 3 returned 0 07:36:02.284346 Read 93 bytes 07:36:02.284356 Process 93 bytes request 07:36:02.284369 Got request: GET /verifiedserver HTTP/1.1 07:36:02.284378 Are-we-friendly question received 07:36:02.284405 Wrote request (93 bytes) input to log/3/server.input 07:36:02.284420 Identifying ourselves as friends 07:36:02.284477 Response sent (56 bytes) and written to log/3/server.response 07:36:02.284486 special request received, no persistency 07:36:02.284495 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1277 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === StCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1284 ../src/curl -q --output log/16/curl1284.out --include --trace-ascii log/16/trace1284 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:46739/1284 > log/16/stdout1284 2> log/16/stderr1284 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1268 ../src/curl -q --output log/24/curl1268.out --include --trace-ascii log/24/trace1268 --trace-config all --trace-time --stderr log/24/moo1268 --unix-socket -q hej://moo > log/24/stdout1268 2> log/24/stderr1268 art of file valgrind1277 ==142328== ==142328== Process terminating with default action of signal 4 (SIGILL) ==142328== Illegal opcode at address 0x4003082 ==142328== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142328== by 0x4003082: main (tool_main.c:234) === End of file valgrind1277 test 1284...[HTTP POST --digest with user-specified Content-Length header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1284 ../src/curl -q --output log/16/curl1284.out --include --trace-ascii log/16/trace1284 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:46739/1284 > log/16/stdout1284 2> log/16/stderr1284 1284: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1284 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1284 ../src/curl -q --output log/16/curl1284.out --include --trace-ascii log/16/trace1284 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:46739/1284 > log/16/stdout1284 2> log/16/stderr1284 === End of file commands.log === Start of file http_server.log 07:36:02.313474 ====> Client connect 07:36:02.313615 accept_connection 3 returned 4 07:36:02.313633 accept_connection 3 returned 0 07:36:02.313647 Read 93 bytes 07:36:02.313657 Process 93 bytes request 07:36:02.313670 Got request: GET /verifiedserver HTTP/1.1 07:36:02.313680 Are-we-friendly question received 07:36:02.313704 Wrote request (93 bytes) input to log/16/server.input 07:36:02.313721 Identifying ourselves as friends 07:36:02.313776 Response sent (56 bytes) and written to log/16/server.response 07:36:02.313786 special request received, no persistency 07:36:02.313795 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1284 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1284 ==142473== ==142473== Process terminating with default action of signal 4 (SIGILL) ==142473== Illegal opcode at address 0x4003082 ==142473== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142473== by 0x4003082: main (tool_main.c:234) === End of file valgrind1284 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1269 ../src/curl -q --output log/6/curl1269.out --include --trace-ascii log/6/trace1269 --trace-config all --trace-time --retry 3 --retry-delay 9223372036854776 http://127.0.0.1:47/1269 > log/6/stdout1269 2> log/6/stderr1269 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1267 ../src/curl -q --output log/12/curl1267.out --include --trace-ascii log/12/trace1267 --trace-config all --trace-time http://127.0.0.1:37285/1267 --http0.9 > log/12/stdout1267 2> log/12/stderr1267 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1266 ../src/curl -q --output log/19/curl1266.out --include --trace-ascii log/19/trace1266 --trace-config all --trace-time http://127.0.0.1:33487/1266 --http0.9 > log/19/stdout1266 2> log/19/stderr1266 * starts no server test 1268...[filename argument looks like a flag] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1268 ../src/curl -q --output log/24/curl1268.out --include --trace-ascii log/24/trace1268 --trace-config all --trace-time --stderr log/24/moo1268 --unix-socket -q hej://moo > log/24/stdout1268 2> log/24/stderr1268 1268: output (log/24/moo1268) FAILED: --- log/24/check-expected 2025-07-18 07:36:02.950446285 +0000 +++ log/24/check-generated 2025-07-18 07:36:02.950446285 +0000 @@ -1,2 +0,0 @@ -Warning: The filename argument '-q' looks like a flag.[CR][LF] -curl: (1) Protocol "hej" not supported[CR][LF] == Contents of files in the log/24/ dir after test 1268 === Start of file check-expected Warning: The filename argument '-q' looks like a flag.[CR][LF] curl: (1) Protocol "hej" not supported[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1268 ../src/curl -q --output log/24/curl1268.out --include --trace-ascii log/24/trace1268 --trace-config all --trace-time --stderr log/24/moo1268 --unix-socket -q hej://moo > log/24/stdout1268 2> log/24/stderr1268 === End of file commands.log === Start of file server.cmd Testnum 1268 === End of file server.cmd === Start of file valgrind1268 ==141782== ==141782== Process terminating with default action of signal 4 (SIGILL) ==141782== Illegal opcode at address 0x4003082 ==141782== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141782== by 0x4003082: main (tool_main.c:234) === End of file valgrind1268 * starts no server test 1269...[too large --retry-delay value] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1269 ../src/curl -q --output log/6/curl1269.out --include --trace-ascii log/6/trace1269 --trace-config all --trace-time --retry 3 --retry-delay 9223372036854776 http://127.0.0.1:47/1269 > log/6/stdout1269 2> log/6/stderr1269 curl returned 132, when expecting 2 1269: exit FAILED == Contents of files in the log/6/ dir after test 1269 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1269 ../src/curl -q --output log/6/curl1269.out --include --trace-ascii log/6/trace1269 --trace-config all --trace-time --retry 3 --retry-delay 9223372036854776 http://127.0.0.1:47/1269 > log/6/stdout1269 2> log/6/stderr1269 === End of file commands.log === Start of file server.cmd Testnum 1269 === End of file server.cmd === Start of file valgrind1269 ==141795== ==141795== Process terminating with default action of signal 4 (SIGILL) ==141795== Illegal opcode at address 0x4003082 ==141795== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141795== by 0x4003082: main (tool_main.c:234) === End of file valgrind1269 test 1267...[HTTP GET with an invalid HTTP/1 response line start] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1267 ../src/curl -q --output log/12/curl1267.out --include --trace-ascii log/12/trace1267 --trace-config all --trace-time http://127.0.0.1:37285/1267 --http0.9 > log/12/stdout1267 2> log/12/stderr1267 1267: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1267 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1267 ../src/curl -q --output log/12/curl1267.out --include --trace-ascii log/12/trace1267 --trace-config all --trace-time http://127.0.0.1:37285/1267 --http0.9 > log/12/stdout1267 2> log/12/stderr1267 === End of file commands.log === Start of file http_server.log 07:36:02.210179 ====> Client connect 07:36:02.210203 accept_connection 3 returned 4 07:36:02.210215 accept_connection 3 returned 0 07:36:02.210226 Read 93 bytes 07:36:02.210233 Process 93 bytes request 07:36:02.210242 Got request: GET /verifiedserver HTTP/1.1 07:36:02.210249 Are-we-friendly question received 07:36:02.210267 Wrote request (93 bytes) input to log/12/server.input 07:36:02.210279 Identifying ourselves as friends 07:36:02.210319 Response sent (56 bytes) and written to log/12/server.response 07:36:02.210326 special request received, no persistency 07:36:02.210333 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd swsclose Testnum 1267 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1267 ==141771== ==141771== Process terminating with default action of signal 4 (SIGILL) ==141771== Illegal opcode at address 0x4003082 ==141771== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141771== by 0x4003082: main (tool_main.c:234) === End of file valgrind1267 test 1266...[HTTP GET with a single-byte HTTP/0.9 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1266 ../src/curl -q --output log/19/curl1266.out --include --trace-ascii log/19/trace1266 --trace-config all --trace-time http://127.0.0.1:33487/1266 --http0.9 > log/19/stdout1266 2> log/19/stderr1266 1266: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1266 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1266 ../src/curl -q --output log/19/curl1266.out --include --trace-ascii log/19/trace1266 --trace-config all --trace-time http://127.0.0.1:33487/1266 --http0.9 > log/19/stdout1266 2> log/19/stderr1266 === End of file commands.log === Start of file http_server.log 07:36:02.207056 ====> Client connect 07:36:02.207083 accept_connection 3 returned 4 07:36:02.207096 accept_connection 3 returned 0 07:36:02.207107 Read 93 bytes 07:36:02.207115 Process 93 bytes request 07:36:02.207126 Got request: GET /verifiedserver HTTP/1.1 07:36:02.207133 Are-we-friendly question received 07:36:02.207152 Wrote request (93 bytes) input to log/19/server.input 07:36:02.207165 Identifying ourselves as friends 07:36:02.207790 Response sent (56 bytes) and written to log/19/server.response 07:36:02.207942 special request received, no persistency 07:36:02.208323 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 lefCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1270 ../src/curl -q --include --trace-ascii log/23/trace1270 --trace-config all --trace-time http://127.0.0.1:45701/we/want/our/1270 -w '%{redirect_url}\n' -s > log/23/stdout1270 2> log/23/stderr1270 t intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd swsclose Testnum 1266 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1266 ==141977== ==141977== Process terminating with default action of signal 4 (SIGILL) ==141977== Illegal opcode at address 0x4003082 ==141977== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141977== by 0x4003082: main (tool_main.c:234) === End of file valgrind1266 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1271 ../src/curl -q --output log/22/curl1271.out --include --trace-ascii log/22/trace1271 --trace-config all --trace-time http://127.0.0.1:46761/we/want/our/1271 -w @log/22/blank1271 > log/22/stdout1271 2> log/22/stderr1271 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1274 ../src/curl -q --output log/14/curl1274.out --include --trace-ascii log/14/trace1274 --trace-config all --trace-time http://127.0.0.1:37963/1274 -D log/14/out1274 > log/14/stdout1274 2> log/14/stderr1274 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1281 ../src/curl -q --output log/5/curl1281.out --include --trace-ascii log/5/trace1281 --trace-config all --trace-time http://127.0.0.1:alpha/beta/1281 > log/5/stdout1281 2> log/5/stderr1281 test 1270...[Basic 'redirect_url'] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1270 ../src/curl -q --include --trace-ascii log/23/trace1270 --trace-config all --trace-time http://127.0.0.1:45701/we/want/our/1270 -w '%{redirect_url}\n' -s > log/23/stdout1270 2> log/23/stderr1270 1270: stdout FAILED: --- log/23/check-expected 2025-07-18 07:36:02.987112953 +0000 +++ log/23/check-generated 2025-07-18 07:36:02.987112953 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 302 Captive Portal[CR][LF] -Server: ohlala/2000[CR][LF] -Date: Tue, 17 Dec 2019 13:08:30 GMT[CR][LF] -Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0[CR][LF] -Location: https://moo.moo.moo[CR][LF] -Content-Type: text/html; charset=utf-8[CR][LF] -X-Frame-Options: SAMEORIGIN[CR][LF] -Strict-Transport-Security: max-age=604800[CR][LF] -Content-Length: 0[CR][LF] -Connection: close[CR][LF] -[CR][LF] -https://moo.moo.moo/[LF] == Contents of files in the log/23/ dir after test 1270 === Start of file check-expected HTTP/1.1 302 Captive Portal[CR][LF] Server: ohlala/2000[CR][LF] Date: Tue, 17 Dec 2019 13:08:30 GMT[CR][LF] Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0[CR][LF] Location: https://moo.moo.moo[CR][LF] Content-Type: text/html; charset=utf-8[CR][LF] X-Frame-Options: SAMEORIGIN[CR][LF] Strict-Transport-Security: max-age=604800[CR][LF] Content-Length: 0[CR][LF] Connection: close[CR][LF] [CR][LF] https://moo.moo.moo/[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1270 ../src/curl -q --include --trace-ascii log/23/trace1270 --trace-config all --trace-time http://127.0.0.1:45701/we/want/our/1270 -w '%{redirect_url}\n' -s > log/23/stdout1270 2> log/23/stderr1270 === End of file commands.log === Start of file http_server.log 07:36:02.252473 ====> Client connect 07:36:02.252534 accept_connection 3 returned 4 07:36:02.252552 accept_connection 3 returned 0 07:36:02.252566 Read 93 bytes 07:36:02.252576 Process 93 bytes request 07:36:02.252589 Got request: GET /verifiedserver HTTP/1.1 07:36:02.252597 Are-we-friendly question received 07:36:02.252634 Wrote request (93 bytes) input to log/23/server.input 07:36:02.252710 Identifying ourselves as friends 07:36:02.252801 Response sent (56 bytes) and written to log/23/server.response 07:36:02.252811 special request received, no persistency 07:36:02.252820 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1270 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1270 ==141963== ==141963== Process terminating with default action of signal 4 (SIGILL) ==141963== Illegal opcode at address 0x4003082 ==141963== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==141963== by 0x4003082: main (tool_main.c:234) === End of file valgrind1270 test 1271...[--write-out from file with empty file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1271 ../src/curl -q --output log/22/curl1271.out --include --trace-ascii log/22/trace1271 --trace-config all --trace-time http://127.0.0.1:46761/we/want/our/1271 -w @log/22/blank1271 > log/22/stdout1271 2> log/22/stderr1271 1271: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1271 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1271 ../src/curl -q --output log/22/curl1271.out --include --trace-ascii log/22/trace1271 --trace-config all --trace-time http://127.0.0.1:46761/we/want/our/1271 -w @log/22/blank1271 > log/22/stdout1271 2> log/22/stderr1271 === End of file commands.log === Start of file http_server.log 07:36:02.266346 ====> Client connect 07:36:02.266377 accept_connection 3 returned 4 07:36:02.266423 accept_connection 3 returned 0 07:36:02.266442 Read 93 bytes 07:36:02.266452 Process 93 bytes request 07:36:02.266464 Got request: GET /verifiedserver HTTP/1.1 07:36:02.266473 Are-we-friendly question received 07:36:02.266498 Wrote request (93 bytes) input to log/22/server.input 07:36:02.266513 Identifying ourselves as friends 07:36:02.266570 Response sent (56 bytes) and written to log/22/server.response 07:36:02.266580 special request received, no persistency 07:36:02.266588 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1271 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1271 ==142060== ==142060== Process terminating with default action of signal 4 (SIGILL) ==142060== Illegal opcode at address 0x4003082 ==142060== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142060== by 0x4003082: main (tool_main.c:234) === End of file valgrind1271 test 1274...[HTTP header line folding] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1274 ../src/curl -q --output log/14/curl1274.out --include --trace-ascii log/14/trace1274 --trace-config all --trace-time http://127.0.0.1:37963/1274 -D log/14/out1274 > log/14/stdout1274 2> log/14/stderr1274 1274: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1274 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1274 ../src/curl -q --output log/14/curl1274.out --include --trace-ascii log/14/trace1274 --trace-config all --trace-time http://127.0.0.1:37963/1274 -D log/14/out1274 > log/14/stdout1274 2> log/14/stderr1274 === End of file commands.log === Start of file http_server.log 07:36:02.282192 ====> Client connect 07:36:02.282230 accept_connection 3 returned 4 07:36:02.282248 accept_connection 3 returned 0 07:36:02.282264 Read 93 bytes 07:36:02.282275 Process 93 bytes request 07:36:02.282289 Got request: GET /verifiedserver HTTP/1.1 07:36:02.282298 Are-we-friendly question received 07:36:02.282325 Wrote request (93 bytes) input to log/14/server.input 07:36:02.282342 Identifying ourselves as friends 07:36:02.282413 Response sent (56 bytes) and written to log/14/server.response 07:36:02.RUN: Process with pid 73857 gracefully died CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1282 ../src/curl -q --output log/11/curl1282.out --include --trace-ascii log/11/trace1282 --trace-config all --trace-time ftp://127.0.0.1:43393/1282 > log/11/stdout1282 2> log/11/stderr1282 282424 special request received, no persistency 07:36:02.282433 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1274 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1274 ==142166== ==142166== Process terminating with default action of signal 4 (SIGILL) ==142166== Illegal opcode at address 0x4003082 ==142166== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142166== by 0x4003082: main (tool_main.c:234) === End of file valgrind1274 * starts no server test 1281...[reject non-numerical port number in URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1281 ../src/curl -q --output log/5/curl1281.out --include --trace-ascii log/5/trace1281 --trace-config all --trace-time http://127.0.0.1:alpha/beta/1281 > log/5/stdout1281 2> log/5/stderr1281 curl returned 132, when expecting 3 1281: exit FAILED == Contents of files in the log/5/ dir after test 1281 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1281 ../src/curl -q --output log/5/curl1281.out --include --trace-ascii log/5/trace1281 --trace-config all --trace-time http://127.0.0.1:alpha/beta/1281 > log/5/stdout1281 2> log/5/stderr1281 === End of file commands.log === Start of file server.cmd Testnum 1281 === End of file server.cmd === Start of file valgrind1281 ==142054== ==142054== Process terminating with default action of signal 4 (SIGILL) ==142054== Illegal opcode at address 0x4003082 ==142054== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142054== by 0x4003082: main (tool_main.c:234) === End of file valgrind1281 test 1273...[-f and resume transfer of an entirely-downloaded file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1273 ../src/curl -q --output log/7/curl1273.out --include --trace-ascii log/7/trace1273 --trace-config all --trace-time http://127.0.0.1:39077/1273 -C - -f > log/7/stdout1273 2> log/7/stderr1273 1273: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1273 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1273 ../src/curl -q --output log/7/curl1273.out --include --trace-ascii log/7/trace1273 --trace-config all --trace-time http://127.0.0.1:39077/1273 -C - -f > log/7/stdout1273 2> log/7/stderr1273 === End of file commands.log === Start of file curl1273.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1273.out === Start of file http_server.log 07:36:02.277470 ====> Client connect 07:36:02.277508 accept_connection 3 returned 4 07:36:02.277525 accept_connection 3 returned 0 07:36:02.277541 Read 93 bytes 07:36:02.277551 Process 93 bytes request 07:36:02.277565 Got request: GET /verifiedserver HTTP/1.1 07:36:02.277575 Are-we-friendly question received 07:36:02.277599 Wrote request (93 bytes) input to log/7/server.input 07:36:02.277615 Identifying ourselves as friends 07:36:02.277697 Response sent (56 bytes) and written to log/7/server.response 07:36:02.277708 special request received, no persistency 07:36:02.277716 ====> Client disconnect 0 exit_signal_handler: called 07:36:02.776095 signalled to die 07:36:02.776374 ========> IPv4 sws (port 39077 pid: 73857) exits with signal (15) 07:36:02.776396 ========> sws quits === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39077... * Connected to 127.0.0.1 (127.0.0.1) port 39077 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39077 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73857 === End of file http_verify.out === Start of file server.cmd Testnum 1273 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73857 === End of file server.response === Start of file valgrind1273 ==142158== ==142158== Process terminating with default action of signal 4 (SIGILL) ==142158== Illegal opcode at address 0x4003082 ==142158== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142158== by 0x4003082: main (tool_main.c:234) === End of file valgrind1273 test 1282...[FTP with 633 response before gss initialized] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1282 ../src/curl -q --output log/11/curl1282.out --include --trace-ascii log/11/trace1282 --trace-config all --trace-time ftp://127.0.0.1:43393/1282 > log/11/stdout1282 2> log/11/stderr1282 1282: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1282 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1282 ../src/curl -q --output log/11/curl1282.out --include --trace-ascii log/11/trace1282 --trace-config all --trace-time ftp://127.0.0.1:43393/1282 > log/11/stdout1282 2> log/11/stderr1282 === End of file commands.log === Start of file ftp_server.log 07:36:02.452277 ====> Client connect 07:36:02.452424 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:02.452717 < "USER anonymous" 07:36:02.452750 > "331 We are happy you popped in![CR][LF]" 07:36:02.452921 < "PASS ftp@example.com" 07:36:02.452950 > "230 Welcome you silly person[CR][LF]" 07:36:02.453201 < "PWD" 07:36:02.453228 > "257 "/" is current directory[CR][LF]" 07:36:02.453395 < "EPSV" 07:36:02.453417 ====> Passive DATA channel requested by client 07:36:02.453429 DATA sockfilt for passive data channel starting... 07:36:02.455009 DATA sockfilt for passive data channel started (pid 142207) 07:36:02.455112 DATA sockfilt for passive data channel listens on port 45709 07:36:02.455148 > "229 Entering Passive Mode (|||45709|)[LF]" 07:36:02.455165 Client has been notified that DATA conn will be accepted on port 45709 07:36:02.455376 Client connects to port 45709 07:36:02.455423 ====> Client established passive DATA connection on port 45709 07:36:02.455519 < "TYPE I" 07:36:02.455555 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:02.456153 < "SIZE verifiedserver" 07:36:02.456190 > "213 17[CR][LF]" 07:36:02.456325 < "RETR verifiedserver" 07:36:02.456353 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:02.456419 =====> Closing passive DATA connection... 07:36:02.456432 Server disconnects passive DATA connection 07:36:02.456CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1285 ../src/curl -q --output log/17/curl1285.out --include --trace-ascii log/17/trace1285 --trace-config all --trace-time -H "Content-Length: 85" -u auser:apasswd --digest -T log/17/put1285 http://127.0.0.1:39089/1285 > log/17/stdout1285 2> log/17/stderr1285 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1286 ../src/curl -q --output log/15/curl1286.out --include --trace-ascii log/15/trace1286 --trace-config all --trace-time -u auser:apasswd --location --digest http://127.0.0.1:36993/1286 > log/15/stdout1286 2> log/15/stderr1286 655 Server disconnected passive DATA connection 07:36:02.456710 DATA sockfilt for passive data channel quits (pid 142207) 07:36:02.457070 DATA sockfilt for passive data channel quit (pid 142207) 07:36:02.457105 =====> Closed passive DATA connection 07:36:02.457139 > "226 File transfer complete[CR][LF]" 07:36:02.500310 < "QUIT" 07:36:02.500365 > "221 bye bye baby[CR][LF]" 07:36:02.500863 MAIN sockfilt said DISC 07:36:02.500917 ====> Client disconnected 07:36:02.501000 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:02.298139 ====> Client connect 07:36:02.298421 Received DATA (on stdin) 07:36:02.298441 > 160 bytes data, server => client 07:36:02.298453 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:02.298464 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:02.298474 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:02.298579 < 16 bytes data, client => server 07:36:02.298590 'USER anonymous\r\n' 07:36:02.298734 Received DATA (on stdin) 07:36:02.298745 > 33 bytes data, server => client 07:36:02.298755 '331 We are happy you popped in!\r\n' 07:36:02.298808 < 22 bytes data, client => server 07:36:02.298826 'PASS ftp@example.com\r\n' 07:36:02.298935 Received DATA (on stdin) 07:36:02.298946 > 30 bytes data, server => client 07:36:02.298956 '230 Welcome you silly person\r\n' 07:36:02.299100 < 5 bytes data, client => server 07:36:02.299115 'PWD\r\n' 07:36:02.299210 Received DATA (on stdin) 07:36:02.299221 > 30 bytes data, server => client 07:36:02.299231 '257 "/" is current directory\r\n' 07:36:02.299281 < 6 bytes data, client => server 07:36:02.299315 'EPSV\r\n' 07:36:02.301154 Received DATA (on stdin) 07:36:02.301166 > 38 bytes data, server => client 07:36:02.301177 '229 Entering Passive Mode (|||45709|)\n' 07:36:02.301293 < 8 bytes data, client => server 07:36:02.301307 'TYPE I\r\n' 07:36:02.301953 Received DATA (on stdin) 07:36:02.301970 > 33 bytes data, server => client 07:36:02.301981 '200 I modify TYPE as you wanted\r\n' 07:36:02.302030 < 21 bytes data, client => server 07:36:02.302040 'SIZE verifiedserver\r\n' 07:36:02.302176 Received DATA (on stdin) 07:36:02.302188 > 8 bytes data, server => client 07:36:02.302197 '213 17\r\n' 07:36:02.302237 < 21 bytes data, client => server 07:36:02.302246 'RETR verifiedserver\r\n' 07:36:02.302415 Received DATA (on stdin) 07:36:02.302425 > 29 bytes data, server => client 07:36:02.302435 '150 Binary junk (17 bytes).\r\n' 07:36:02.303132 Received DATA (on stdin) 07:36:02.303150 > 28 bytes data, server => client 07:36:02.303166 '226 File transfer complete\r\n' 07:36:02.346099 < 6 bytes data, client => server 07:36:02.346133 'QUIT\r\n' 07:36:02.346356 Received DATA (on stdin) 07:36:02.346370 > 18 bytes data, server => client 07:36:02.346381 '221 bye bye baby\r\n' 07:36:02.346772 ====> Client disconnect 07:36:02.346988 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:02.300827 Running IPv4 version 07:36:02.300899 Listening on port 45709 07:36:02.300931 Wrote pid 142207 to log/11/server/ftp_sockdata.pid 07:36:02.300947 Received PING (on stdin) 07:36:02.301023 Received PORT (on stdin) 07:36:02.301285 ====> Client connect 07:36:02.302517 Received DATA (on stdin) 07:36:02.302539 > 17 bytes data, server => client 07:36:02.302551 'WE ROOLZ: 85489\r\n' 07:36:02.302595 Received DISC (on stdin) 07:36:02.302608 ====> Client forcibly disconnected 07:36:02.302714 Received QUIT (on stdin) 07:36:02.302729 quits 07:36:02.302792 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY PASS 633 XXXXXXXX\x00\x00XXXXXXXX Testnum 1282 === End of file server.cmd === Start of file valgrind1282 ==142609== ==142609== Process terminating with default action of signal 4 (SIGILL) ==142609== Illegal opcode at address 0x4003082 ==142609== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142609== by 0x4003082: main (tool_main.c:234) === End of file valgrind1282 test 1285...[HTTP PUT --digest with user-specified Content-Length header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1285 ../src/curl -q --output log/17/curl1285.out --include --trace-ascii log/17/trace1285 --trace-config all --trace-time -H "Content-Length: 85" -u auser:apasswd --digest -T log/17/put1285 http://127.0.0.1:39089/1285 > log/17/stdout1285 2> log/17/stderr1285 1285: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1285 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1285 ../src/curl -q --output log/17/curl1285.out --include --trace-ascii log/17/trace1285 --trace-config all --trace-time -H "Content-Length: 85" -u auser:apasswd --digest -T log/17/put1285 http://127.0.0.1:39089/1285 > log/17/stdout1285 2> log/17/stderr1285 === End of file commands.log === Start of file http_server.log 07:36:02.357750 ====> Client connect 07:36:02.357789 accept_connection 3 returned 4 07:36:02.357804 accept_connection 3 returned 0 07:36:02.357819 Read 93 bytes 07:36:02.357830 Process 93 bytes request 07:36:02.357844 Got request: GET /verifiedserver HTTP/1.1 07:36:02.357854 Are-we-friendly question received 07:36:02.357879 Wrote request (93 bytes) input to log/17/server.input 07:36:02.357897 Identifying ourselves as friends 07:36:02.357948 Response sent (56 bytes) and written to log/17/server.response 07:36:02.357957 special request received, no persistency 07:36:02.357966 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file put1285 This is data we upload with PUT a second line line three four is the number of lines === End of file put1285 === Start of file server.cmd Testnum 1285 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1285 ==142650== ==142650== Process terminating with default action of signal 4 (SIGILL) ==142650== Illegal opcode at address 0x4003082 ==142650== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142650== by 0x4003082: main (tool_main.c:234) === End of file valgrind1285 test 1286...[HTTP GET --digest increasing nonce-count] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1286 ../src/curl -q --output log/15/curl1286.out --include --trace-ascii log/15/trace1286 --trace-config all --trace-time -u auser:apasswd --location --digest http://127.0.0.1:36993/1286 > log/15/stdout1286 2> log/15/stderr1286 1286: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1286 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1286 ../src/curl -q --output log/15/curl1286.out --include --trace-ascii log/15/trace1286 --trace-config all --trace-time -u auser:apasswd --location --digest http://127.0.0.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1243 ../src/curl -q --output log/13/curl1243.out --include --trace-ascii log/13/trace1243 --trace-config all --trace-time -T log/13/test1243.txt tftp://127.0.0.1:35432// --tftp-no-options > log/13/stdout1243 2> log/13/stderr1243 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1289 ../src/curl -q --output log/8/curl1289.out --include --trace-ascii log/8/trace1289 --trace-config all --trace-time http://ur%20[0-60000000000000000000 > log/8/stdout1289 2> log/8/stderr1289 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1287 ../src/curl -q --output log/20/curl1287.out --include --trace-ascii log/20/trace1287 --trace-config all --trace-time -v --proxytunnel -x 127.0.0.1:39205 http://test.1287:37169/we/want/that/page/1287 > log/20/stdout1287 2> log/20/stderr1287 1:36993/1286 > log/15/stdout1286 2> log/15/stderr1286 === End of file commands.log === Start of file http_server.log 07:36:02.569696 ====> Client connect 07:36:02.569729 accept_connection 3 returned 4 07:36:02.569745 accept_connection 3 returned 0 07:36:02.569759 Read 93 bytes 07:36:02.569768 Process 93 bytes request 07:36:02.569781 Got request: GET /verifiedserver HTTP/1.1 07:36:02.569790 Are-we-friendly question received 07:36:02.569814 Wrote request (93 bytes) input to log/15/server.input 07:36:02.569828 Identifying ourselves as friends 07:36:02.569879 Response sent (56 bytes) and written to log/15/server.response 07:36:02.569889 special request received, no persistency 07:36:02.569898 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1286 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1286 ==142769== ==142769== Process terminating with default action of signal 4 (SIGILL) ==142769== Illegal opcode at address 0x4003082 ==142769== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142769== by 0x4003082: main (tool_main.c:234) === End of file valgrind1286 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/13/server/tftp_server.pid" --portfile "log/13/server/tftp_server.port" --logfile "log/13/tftp_server.log" --logdir "log/13" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 140296 port 35432 * pid tftp => 140296 140296 test 1243...[TFTP send without TFTP options requests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1243 ../src/curl -q --output log/13/curl1243.out --include --trace-ascii log/13/trace1243 --trace-config all --trace-time -T log/13/test1243.txt tftp://127.0.0.1:35432// --tftp-no-options > log/13/stdout1243 2> log/13/stderr1243 1243: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1243 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1243 ../src/curl -q --output log/13/curl1243.out --include --trace-ascii log/13/trace1243 --trace-config all --trace-time -T log/13/test1243.txt tftp://127.0.0.1:35432// --tftp-no-options > log/13/stdout1243 2> log/13/stderr1243 === End of file commands.log === Start of file server.cmd Testnum 1243 === End of file server.cmd === Start of file test1243.txt a chunk of data sent to server === End of file test1243.txt === Start of file tftp_server.log 07:36:01.636921 Wrote pid 140296 to log/13/server/tftp_server.pid 07:36:01.636974 Wrote port 35432 to log/13/server/tftp_server.port 07:36:01.636987 Running IPv4 version on port UDP/35432 === End of file tftp_server.log === Start of file valgrind1243 ==142819== ==142819== Process terminating with default action of signal 4 (SIGILL) ==142819== Illegal opcode at address 0x4003082 ==142819== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142819== by 0x4003082: main (tool_main.c:234) === End of file valgrind1243 test 1289...[globbing with overflow and bad syntax] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1289 ../src/curl -q --output log/8/curl1289.out --include --trace-ascii log/8/trace1289 --trace-config all --trace-time http://ur%20[0-60000000000000000000 > log/8/stdout1289 2> log/8/stderr1289 curl returned 132, when expecting 3 1289: exit FAILED == Contents of files in the log/8/ dir after test 1289 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1289 ../src/curl -q --output log/8/curl1289.out --include --trace-ascii log/8/trace1289 --trace-config all --trace-time http://ur%20[0-60000000000000000000 > log/8/stdout1289 2> log/8/stderr1289 === End of file commands.log === Start of file http_server.log 07:36:02.671901 ====> Client connect 07:36:02.671929 accept_connection 3 returned 4 07:36:02.671945 accept_connection 3 returned 0 07:36:02.671958 Read 93 bytes 07:36:02.671967 Process 93 bytes request 07:36:02.671978 Got request: GET /verifiedserver HTTP/1.1 07:36:02.671987 Are-we-friendly question received 07:36:02.672008 Wrote request (93 bytes) input to log/8/server.input 07:36:02.672024 Identifying ourselves as friends 07:36:02.672072 Response sent (56 bytes) and written to log/8/server.response 07:36:02.672082 special request received, no persistency 07:36:02.672091 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1289 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1289 ==142952== ==142952== Process terminating with default action of signal 4 (SIGILL) ==142952== Illegal opcode at address 0x4003082 ==142952== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142952== by 0x4003082: main (tool_main.c:234) === End of file valgrind1289 test 1287...[HTTP over proxy-tunnel ignore TE and CL in CONNECT 2xx responses] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1287 ../src/curl -q --output log/20/curl1287.out --include --trace-ascii log/20/trace1287 --trace-config all --trace-time -v --proxytunnel -x 127.0.0.1:39205 http://test.1287:37169/we/want/that/page/1287 > log/20/stdout1287 2> log/20/stderr1287 1287: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1287 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1287 ../src/curl -q --output log/20/curl1287.out --include --trace-ascii log/20/trace1287 --trace-config all --trace-time -v --proxytunnel -x 127.0.0.1:39205 http://test.1287:37169/we/want/that/page/1287 > log/20/stdout1287 2> log/20/stderr1287 === End of file commands.log === Start of file http2_server.log 07:36:02.680449 ====> Client connect 07:36:02.680480 accept_connection 3 returned 4 07:36:02.680496 accept_connection 3 returned 0 07:36:02.680510 Read 93 bytes 07:36:02.680520 Process 93 bytes request 07:36:02.680532 Got request: GET /verifiedserver HTTP/1.1 07:36:02.680541 Are-we-friendly question recCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1290 ../src/curl -q --output log/10/curl1290.out --include --trace-ascii log/10/trace1290 --trace-config all --trace-time "http://127.0.0.1:34851/we/want/[]/page/1290" > log/10/stdout1290 2> log/10/stderr1290 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1288 ../src/curl -q --include --trace-ascii log/4/trace1288 --trace-config all --trace-time --proxytunnel --suppress-connect-headers --dump-header - --include --write-out "\nCONNECT CODE: %{http_connect}\nRECEIVED HEADER BYTE TOTAL: %{size_header}\n" --proxy 127.0.0.1:40761 http://127.0.0.1:33235/we/want/that/page/1288 > log/4/stdout1288 2> log/4/stderr1288 eived 07:36:02.680564 Wrote request (93 bytes) input to log/20/proxy.input 07:36:02.680579 Identifying ourselves as friends 07:36:02.680629 Response sent (56 bytes) and written to log/20/proxy.response 07:36:02.680639 special request received, no persistency 07:36:02.680647 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:39205... * Connected to 127.0.0.1 (127.0.0.1) port 39205 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39205 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78734 === End of file http2_verify.out === Start of file http_server.log 07:36:02.650292 ====> Client connect 07:36:02.650322 accept_connection 3 returned 4 07:36:02.650337 accept_connection 3 returned 0 07:36:02.650350 Read 93 bytes 07:36:02.650359 Process 93 bytes request 07:36:02.650371 Got request: GET /verifiedserver HTTP/1.1 07:36:02.650380 Are-we-friendly question received 07:36:02.650402 Wrote request (93 bytes) input to log/20/server.input 07:36:02.650417 Identifying ourselves as friends 07:36:02.650465 Response sent (56 bytes) and written to log/20/server.response 07:36:02.650474 special request received, no persistency 07:36:02.650482 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78734 === End of file proxy.response === Start of file server.cmd Testnum 1287 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1287 ==142978== ==142978== Process terminating with default action of signal 4 (SIGILL) ==142978== Illegal opcode at address 0x4003082 ==142978== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142978== by 0x4003082: main (tool_main.c:234) === End of file valgrind1287 test 1290...[Verify URL globbing ignores []] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1290 ../src/curl -q --output log/10/curl1290.out --include --trace-ascii log/10/trace1290 --trace-config all --trace-time "http://127.0.0.1:34851/we/want/[]/page/1290" > log/10/stdout1290 2> log/10/stderr1290 1290: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1290 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1290 ../src/curl -q --output log/10/curl1290.out --include --trace-ascii log/10/trace1290 --trace-config all --trace-time "http://127.0.0.1:34851/we/want/[]/page/1290" > log/10/stdout1290 2> log/10/stderr1290 === End of file commands.log === Start of file http_server.log 07:36:02.690214 ====> Client connect 07:36:02.690249 accept_connection 3 returned 4 07:36:02.690265 accept_connection 3 returned 0 07:36:02.690279 Read 93 bytes 07:36:02.690289 Process 93 bytes request 07:36:02.690303 Got request: GET /verifiedserver HTTP/1.1 07:36:02.690312 Are-we-friendly question received 07:36:02.690338 Wrote request (93 bytes) input to log/10/server.input 07:36:02.690354 Identifying ourselves as friends 07:36:02.690411 Response sent (56 bytes) and written to log/10/server.response 07:36:02.690423 special request received, no persistency 07:36:02.690432 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1290 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1290 ==142990== ==142990== Process terminating with default action of signal 4 (SIGILL) ==142990== Illegal opcode at address 0x4003082 ==142990== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==142990== by 0x4003082: main (tool_main.c:234) === End of file valgrind1290 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1291 ../src/curl -q --output log/2/curl1291.out --include --trace-ascii log/2/trace1291 --trace-config all --trace-time -K log/2/cmd1291 --fail-early > log/2/stdout1291 2> log/2/stderr1291 test 1288...[Suppress proxy CONNECT response headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1288 ../src/curl -q --include --trace-ascii log/4/trace1288 --trace-config all --trace-time --proxytunnel --suppress-connect-headers --dump-header - --include --write-out "\nCONNECT CODE: %{http_connect}\nRECEIVED HEADER BYTE TOTAL: %{size_header}\n" --proxy 127.0.0.1:40761 http://127.0.0.1:33235/we/want/that/page/1288 > log/4/stdout1288 2> log/4/stderr1288 1288: stdout FAILED: --- log/4/check-expected 2025-07-18 07:36:03.413779630 +0000 +++ log/4/check-generated 2025-07-18 07:36:03.413779630 +0000 @@ -1,20 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Server: test-server/fake[CR][LF] -Content-Type: text/html[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -Funny-head: yesyes[CR][LF] -Content-Length: 9[CR][LF] -Content-Length: 9[CR][LF] -Connection: keep-alive[CR][LF] -Connection: keep-alive[CR][LF] -[CR][LF] -[CR][LF] -contents[LF] -[LF] -CONNECT CODE: 200[LF] -RECEIVED HEADER BYTE TOTAL: 231[LF] == Contents of files in the log/4/ dir after test 1288 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Server: test-server/fake[CR][LF] Content-Type: text/html[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] Funny-head: yesyes[CR][LF] Content-Length: 9[CR][LF] Content-Length: 9[CR][LF] Connection: keep-alive[CR][LF] Connection: keep-alive[CR][LF] [CR][LF] [CR][LF] contents[LF] [LF] CONNECT CODE: 200[LF] RECEIVED HEADER BYTE TOTAL: 231[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1288 ../src/curl -q --include --trace-ascii log/4/trace1288 --trace-config all --trace-time --proxytunnel --suppress-connect-headers --dump-header - --include --write-out "\nCONNECT CODE: %{http_connect}\nRECEIVED HEADER BYTE TOTAL: %{size_header}\n" --proxy 127.0.0.1:40761 http://127.0.0.1:33235/we/want/that/page/1288 > log/4/stdout1288 2> log/4/stderr1288 === End of file commands.log === Start of file http2_server.log 07:36:02.694075 ====> Client connect 07:36:02.694110 accept_connection 3 returned 4 07:36:02.694128 accept_connection 3 returned 0 07:36:02.694142 Read 93 bytes 07:36:02.694152 Process 93 bytes request 07:36:02.694164 Got request: GET /verifiedserver HTTP/1.1 07:36:02.694174 Are-we-friendly question received 07:36:02.694199 Wrote request (93 bytes) input to log/4/proxy.input 07:36:02.694216 Identifying ourselves as friends 07:36:02.694272 Response sent (56 bytes) and written to log/4/proxy.response 07:36:02.694283 special request received, no persistency 07:36:02.694292 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:40761... * Connected to 127.0.0.1 (127.0.0.1) port 40761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78735 === End of file http2_verify.out === Start of file http_server.log 07:36:02.669025 ====> Client connect 07:36:02.669058 accept_connection 3 returned 4 07:36:02.669073 accept_connection 3 returned 0 07:36:02.669086 Read 93 bytes 07:36:02.669096 Process 93 bytes request 07:36:02.669108 Got request: GET /verifiedserver HTTP/1.1 07:36:02.669117 Are-we-friendly question received 07:36:02.669149 Wrote request (93 bytes) input to log/4/server.input 07:36:02.669165 Identifying ourselves as friends 07:36:02.669216 Response sent (56 bytes) and written to log/4/server.response 07:36:02.669225 special request received, no persistency 07:36:02.669234 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78735 === End of file proxy.response === Start of file server.cmd Testnum 1288 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1288 ==143018== ==143018== Process terminating with default action of signal 4 (SIGILL) ==143018== Illegal opcode at address 0x4003082 ==143018== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143018== by 0x4003082: main (tool_main.c:234) === End of file valgrind1288 * starts no server prechecked /usr/bin/perl -e 'for(1 .. 1000) { printf("upload-file=log/2/upload-this\nurl=htttttp://non-existing-host.haxx.se/upload/1291\n", $_);}' > log/2/cmd1291; test 1291...[Attempt to upload 1000 files but fail immediately] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1291 ../src/curl -q --output log/2/curl1291.out --include --trace-ascii log/2/trace1291 --trace-config all --trace-time -K log/2/cmd1291 --fail-early > log/2/stdout1291 2> log/2/stderr1291 curl returned 132, when expecting 1 1291: exit FAILED == Contents of files in the log/2/ dir after test 1291 === Start of file cmd1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this === File too long: 599 lines omitted here upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 upload-file=log/2/upload-this url=htttttp://non-existing-host.haxx.se/upload/1291 === End of file cmd1291 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1291 ../src/curl -q --output log/2/curl1291.out --include --trace-ascii log/2/trace1291 --trace-config all --traceCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1292 ../src/curl -q --output log/9/curl1292.out --include --trace-ascii log/9/trace1292 --trace-config all --trace-time -H "Host;" -H "Accept;" http://127.0.0.1:34999/1292 > log/9/stdout1292 2> log/9/stderr1292 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1301 ./libtest/libtests lib1301 - > log/19/stdout1301 2> log/19/stderr1301 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1293 ../src/curl -q --output log/3/curl1293.out --include --trace-ascii log/3/trace1293 --trace-config all --trace-time http://0 http://127.0.0.1:42345/1293 -F= > log/3/stdout1293 2> log/3/stderr1293 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1296 ../src/curl -q --output log/1/curl1296.out --include --trace-ascii log/1/trace1296 --trace-config all --trace-time http://user%0aname:password@127.0.0.1:38941/1296 > log/1/stdout1296 2> log/1/stderr1296 -time -K log/2/cmd1291 --fail-early > log/2/stdout1291 2> log/2/stderr1291 === End of file commands.log === Start of file server.cmd Testnum 1291 === End of file server.cmd === Start of file upload-this XXXXXXXx === End of file upload-this === Start of file valgrind1291 ==143165== ==143165== Process terminating with default action of signal 4 (SIGILL) ==143165== Illegal opcode at address 0x4003082 ==143165== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143165== by 0x4003082: main (tool_main.c:234) === End of file valgrind1291 test 1292...[Replaced internal headers with a blank one] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1292 ../src/curl -q --output log/9/curl1292.out --include --trace-ascii log/9/trace1292 --trace-config all --trace-time -H "Host;" -H "Accept;" http://127.0.0.1:34999/1292 > log/9/stdout1292 2> log/9/stderr1292 1292: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1292 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1292 ../src/curl -q --output log/9/curl1292.out --include --trace-ascii log/9/trace1292 --trace-config all --trace-time -H "Host;" -H "Accept;" http://127.0.0.1:34999/1292 > log/9/stdout1292 2> log/9/stderr1292 === End of file commands.log === Start of file http_server.log 07:36:02.806698 ====> Client connect 07:36:02.806735 accept_connection 3 returned 4 07:36:02.806751 accept_connection 3 returned 0 07:36:02.806764 Read 93 bytes 07:36:02.806774 Process 93 bytes request 07:36:02.806786 Got request: GET /verifiedserver HTTP/1.1 07:36:02.806795 Are-we-friendly question received 07:36:02.806818 Wrote request (93 bytes) input to log/9/server.input 07:36:02.806833 Identifying ourselves as friends 07:36:02.806893 Response sent (56 bytes) and written to log/9/server.response 07:36:02.806903 special request received, no persistency 07:36:02.806912 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1292 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1292 ==143267== ==143267== Process terminating with default action of signal 4 (SIGILL) ==143267== Illegal opcode at address 0x4003082 ==143267== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143267== by 0x4003082: main (tool_main.c:234) === End of file valgrind1292 * starts no server test 1301...[curl_strequal tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1301 ./libtest/libtests lib1301 - > log/19/stdout1301 2> log/19/stderr1301 -------e-v- OK (1210 out of 1707, remaining: 00:30, took 0.619s, duration: 01:14) test 1293...[Multipart formpost to two URLs, the first failing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1293 ../src/curl -q --output log/3/curl1293.out --include --trace-ascii log/3/trace1293 --trace-config all --trace-time http://0 http://127.0.0.1:42345/1293 -F= > log/3/stdout1293 2> log/3/stderr1293 1293: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1293 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1293 ../src/curl -q --output log/3/curl1293.out --include --trace-ascii log/3/trace1293 --trace-config all --trace-time http://0 http://127.0.0.1:42345/1293 -F= > log/3/stdout1293 2> log/3/stderr1293 === End of file commands.log === Start of file http_server.log 07:36:02.807927 ====> Client connect 07:36:02.807952 accept_connection 3 returned 4 07:36:02.807965 accept_connection 3 returned 0 07:36:02.807975 Read 93 bytes 07:36:02.807982 Process 93 bytes request 07:36:02.807990 Got request: GET /verifiedserver HTTP/1.1 07:36:02.807997 Are-we-friendly question received 07:36:02.808016 Wrote request (93 bytes) input to log/3/server.input 07:36:02.808028 Identifying ourselves as friends 07:36:02.808068 Response sent (56 bytes) and written to log/3/server.response 07:36:02.808075 special request received, no persistency 07:36:02.808082 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1293 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1293 ==143279== ==143279== Process terminating with default action of signal 4 (SIGILL) ==143279== Illegal opcode at address 0x4003082 ==143279== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143279== by 0x4003082: main (tool_main.c:234) === End of file valgrind1293 test 1296...[HTTP URL with %0a in name part] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1296 ../src/curl -q --output log/1/curl1296.out --include --trace-ascii log/1/trace1296 --trace-config all --trace-time http://user%0aname:password@127.0.0.1:38941/1296 > log/1/stdout1296 2> log/1/stderr1296 1296: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1296 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1296 ../src/curl -q --output log/1/curl1296.out --include --trace-ascii log/1/trace1296 --trace-config all --trace-time http://user%0aname:password@127.0.0.1:38941/1296 > log/1/stdout1296 2> log/1/stderr1296 === End of file commands.log === Start of file http_server.log 07:36:02.806544 ====> Client connect 07:36:02.806580 accept_connection 3 returned 4 07:36:02.806596 accept_connection 3 returned 0 07:36:02.806615 Read 93 bytes 07:36:02.806625 Process 93 bytes request 07:36:02.806638 Got request: GET /verifiedserver HTTP/1.1 07:36:02.806649 Are-we-friendly question received 07:36:02.806677 Wrote request (93 bytes) input to log/1/server.input 07:36:02.806971 Identifying ourselves as friends 07:36:02.807048 Response sent (56 bytes) and written to log/1/server.response 07:36:02.807058 special request received, no persistency 07:36:02.80CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1298 ../src/curl -q --output log/24/curl1298.out --include --trace-ascii log/24/trace1298 --trace-config all --trace-time --request-target "XXX" "http://127.0.0.1:38675/" -H "Testno: 1298" > log/24/stdout1298 2> log/24/stderr1298 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1297 ../src/curl -q --output log/16/curl1297.out --include --trace-ascii log/16/trace1297 --trace-config all --trace-time --proxytunnel --proxy 127.0.0.1:39493 http://127.0.0.1:46739/we/want/that/page/1297 > log/16/stdout1297 2> log/16/stderr1297 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1299 ../src/curl -q --output log/6/curl1299.out --include --trace-ascii log/6/trace1299 --trace-config all --trace-time --request-target '*' -X OPTIONS http://127.0.0.1:35775/ -H "Testno: 1299" > log/6/stdout1299 2> log/6/stderr1299 7067 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1296 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1296 ==143270== ==143270== Process terminating with default action of signal 4 (SIGILL) ==143270== Illegal opcode at address 0x4003082 ==143270== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143270== by 0x4003082: main (tool_main.c:234) === End of file valgrind1296 test 1298...[HTTP GET special path with --request-target] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1298 ../src/curl -q --output log/24/curl1298.out --include --trace-ascii log/24/trace1298 --trace-config all --trace-time --request-target "XXX" "http://127.0.0.1:38675/" -H "Testno: 1298" > log/24/stdout1298 2> log/24/stderr1298 1298: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1298 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1298 ../src/curl -q --output log/24/curl1298.out --include --trace-ascii log/24/trace1298 --trace-config all --trace-time --request-target "XXX" "http://127.0.0.1:38675/" -H "Testno: 1298" > log/24/stdout1298 2> log/24/stderr1298 === End of file commands.log === Start of file http_server.log 07:36:02.827706 ====> Client connect 07:36:02.827741 accept_connection 3 returned 4 07:36:02.827758 accept_connection 3 returned 0 07:36:02.827772 Read 93 bytes 07:36:02.827782 Process 93 bytes request 07:36:02.827799 Got request: GET /verifiedserver HTTP/1.1 07:36:02.827808 Are-we-friendly question received 07:36:02.827836 Wrote request (93 bytes) input to log/24/server.input 07:36:02.827852 Identifying ourselves as friends 07:36:02.827912 Response sent (56 bytes) and written to log/24/server.response 07:36:02.827923 special request received, no persistency 07:36:02.827932 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1298 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1298 ==143412== ==143412== Process terminating with default action of signal 4 (SIGILL) ==143412== Illegal opcode at address 0x4003082 ==143412== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143412== by 0x4003082: main (tool_main.c:234) === End of file valgrind1298 test 1297...[CONNECT to peer that returns nothing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1297 ../src/curl -q --output log/16/curl1297.out --include --trace-ascii log/16/trace1297 --trace-config all --trace-time --proxytunnel --proxy 127.0.0.1:39493 http://127.0.0.1:46739/we/want/that/page/1297 > log/16/stdout1297 2> log/16/stderr1297 1297: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1297 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1297 ../src/curl -q --output log/16/curl1297.out --include --trace-ascii log/16/trace1297 --trace-config all --trace-time --proxytunnel --proxy 127.0.0.1:39493 http://127.0.0.1:46739/we/want/that/page/1297 > log/16/stdout1297 2> log/16/stderr1297 === End of file commands.log === Start of file http2_server.log 07:36:02.844262 ====> Client connect 07:36:02.844293 accept_connection 3 returned 4 07:36:02.844309 accept_connection 3 returned 0 07:36:02.844323 Read 93 bytes 07:36:02.844333 Process 93 bytes request 07:36:02.844352 Got request: GET /verifiedserver HTTP/1.1 07:36:02.844361 Are-we-friendly question received 07:36:02.844383 Wrote request (93 bytes) input to log/16/proxy.input 07:36:02.844403 Identifying ourselves as friends 07:36:02.844463 Response sent (56 bytes) and written to log/16/proxy.response 07:36:02.844475 special request received, no persistency 07:36:02.844484 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:39493... * Connected to 127.0.0.1 (127.0.0.1) port 39493 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39493 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 79520 === End of file http2_verify.out === Start of file http_server.log 07:36:02.817991 ====> Client connect 07:36:02.818027 accept_connection 3 returned 4 07:36:02.818043 accept_connection 3 returned 0 07:36:02.818056 Read 93 bytes 07:36:02.818065 Process 93 bytes request 07:36:02.818076 Got request: GET /verifiedserver HTTP/1.1 07:36:02.818085 Are-we-friendly question received 07:36:02.818109 Wrote request (93 bytes) input to log/16/server.input 07:36:02.818135 Identifying ourselves as friends 07:36:02.818198 Response sent (56 bytes) and written to log/16/server.response 07:36:02.818208 special request received, no persistency 07:36:02.818216 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 79520 === End of file proxy.response === Start of file server.cmd Testnum 1297 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1297 ==143550== ==143550== Process terminating with default action of signal 4 (SIGILL) ==143550== Illegal opcode at address 0x4003082 ==143550== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143550== by 0x4003082: main (tool_main.c:234) === End of file valgrind1297 test 1299...[Send "OPTIONS *" with --request-target] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/staCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1305 ./unit/units unit1305 1305 > log/5/stdout1305 2> log/5/stderr1305 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1304 ./unit/units unit1304 log/14/netrc1304 > log/14/stdout1304 2> log/14/stderr1304 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1306 ./unit/units unit1305 - > log/7/stdout1306 2> log/7/stderr1306 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1300 ./unit/units unit1300 - > log/12/stdout1300 2> log/12/stderr1300 rtdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1299 ../src/curl -q --output log/6/curl1299.out --include --trace-ascii log/6/trace1299 --trace-config all --trace-time --request-target '*' -X OPTIONS http://127.0.0.1:35775/ -H "Testno: 1299" > log/6/stdout1299 2> log/6/stderr1299 1299: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1299 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1299 ../src/curl -q --output log/6/curl1299.out --include --trace-ascii log/6/trace1299 --trace-config all --trace-time --request-target '*' -X OPTIONS http://127.0.0.1:35775/ -H "Testno: 1299" > log/6/stdout1299 2> log/6/stderr1299 === End of file commands.log === Start of file http_server.log 07:36:02.834894 ====> Client connect 07:36:02.834926 accept_connection 3 returned 4 07:36:02.834942 accept_connection 3 returned 0 07:36:02.834955 Read 93 bytes 07:36:02.834965 Process 93 bytes request 07:36:02.834976 Got request: GET /verifiedserver HTTP/1.1 07:36:02.834985 Are-we-friendly question received 07:36:02.835011 Wrote request (93 bytes) input to log/6/server.input 07:36:02.835026 Identifying ourselves as friends 07:36:02.835078 Response sent (56 bytes) and written to log/6/server.response 07:36:02.835088 special request received, no persistency 07:36:02.835096 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1299 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1299 ==143460== ==143460== Process terminating with default action of signal 4 (SIGILL) ==143460== Illegal opcode at address 0x4003082 ==143460== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143460== by 0x4003082: main (tool_main.c:234) === End of file valgrind1299 * starts no server test 1305...[internal hash create/destroy testing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1305 ./unit/units unit1305 1305 > log/5/stdout1305 2> log/5/stderr1305 -------e-v- OK (1214 out of 1707, remaining: 00:30, took 0.621s, duration: 01:14) * starts no server test 1304...[netrc parsing unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1304 ./unit/units unit1304 log/14/netrc1304 > log/14/stdout1304 2> log/14/stderr1304 -------e-v- OK (1213 out of 1707, remaining: 00:30, took 0.640s, duration: 01:14) * starts no server test 1306...[internal hash create/add/destroy testing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1306 ./unit/units unit1305 - > log/7/stdout1306 2> log/7/stderr1306 -------e-v- OK (1215 out of 1707, remaining: 00:30, took 0.618s, duration: 01:14) * starts no server test 1300...[llist unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1300 ./unit/units unit1300 - > log/12/stdout1300 2> log/12/stderr1300 units returned 132, when expecting 0 1300: exit FAILED == Contents of files in the log/12/ dir after test 1300 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1300 ./unit/units unit1300 - > log/12/stdout1300 2> log/12/stderr1300 === End of file commands.log === Start of file server.cmd Testnum 1300 === End of file server.cmd === Start of file stderr1300 URL: - === End of file stderr1300 === Start of file valgrind1300 ==143320== ==143320== Process terminating with default action of signal 4 (SIGILL) ==143320== Illegal opcode at address 0x400A47E ==143320== at 0x400A47E: UnknownInlinedFun (llist.c:89) ==143320== by 0x400A47E: test_unit1300.lto_priv.0 (unit1300.c:125) ==143320== by 0x400A15E: main (first.c:167) ==143320== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x532FFA5: __tsearch (tsearch.c:337) ==143320== by 0x532FFA5: tsearch (tsearch.c:290) ==143320== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143320== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143320== by 0x52423F0: add_alias (gconv_conf.c:178) ==143320== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143320== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143320== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== ==143320== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x532FFA5: __tsearch (tsearch.c:337) ==143320== by 0x532FFA5: tsearch (tsearch.c:290) ==143320== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143320== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143320== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== ==143320== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143320== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143320== by 0x52423F0: add_alias (gconv_conf.c:178) ==143320== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143320== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143320== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== ==143320== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143320== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143320CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1302 ./unit/units unit1302 - > log/23/stdout1302 2> log/23/stderr1302 == by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== ==143320== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x532FFA5: __tsearch (tsearch.c:337) ==143320== by 0x532FFA5: tsearch (tsearch.c:290) ==143320== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143320== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143320== by 0x52423F0: add_alias (gconv_conf.c:178) ==143320== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143320== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143320== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== ==143320== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==143320== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143320== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143320== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143320== by 0x52423F0: add_alias (gconv_conf.c:178) ==143320== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143320== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143320== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143320== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143320== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143320== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143320== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143320== by 0x524D142: setlocale (setlocale.c:337) ==143320== by 0x400A0CB: main (first.c:123) ==143320== === End of file valgrind1300 * starts no server test 1302...[base64 encode/decode unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1302 ./unit/units unit1302 - > log/23/stdout1302 2> log/23/stderr1302 units returned 132, when expecting 0 1302: exit FAILED == Contents of files in the log/23/ dir after test 1302 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1302 ./unit/units unit1302 - > log/23/stdout1302 2> log/23/stderr1302 === End of file commands.log === Start of file server.cmd Testnum 1302 === End of file server.cmd === Start of file stderr1302 URL: - === End of file stderr1302 === Start of file valgrind1302 ==143474== ==143474== Process terminating with default action of signal 4 (SIGILL) ==143474== Illegal opcode at address 0x4098643 ==143474== at 0x4098643: UnknownInlinedFun (string_fortified.h:59) ==143474== by 0x4098643: curlx_base64_decode (base64.c:119) ==143474== by 0x400B329: test_unit1302.lto_priv.0 (unit1302.c:146) ==143474== by 0x400A15E: main (first.c:167) ==143474== 2 bytes in 1 blocks are definitely lost in loss record 1 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x4098628: curlx_base64_decode (base64.c:113) ==143474== by 0x400B329: test_unit1302.lto_priv.0 (unit1302.c:146) ==143474== by 0x400A15E: main (first.c:167) ==143474== ==143474== 408 bytes in 17 blocks are possibly lost in loss record 10 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x532FFA5: __tsearch (tsearch.c:337) ==143474== by 0x532FFA5: tsearch (tsearch.c:290) ==143474== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143474== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143474== by 0x52423F0: add_alias (gconv_conf.c:178) ==143474== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143474== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143474== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== ==143474== 552 bytes in 23 blocks are possibly lost in loss record 12 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x532FFA5: __tsearch (tsearch.c:337) ==143474== by 0x532FFA5: tsearch (tsearch.c:290) ==143474== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143474== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143474== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== ==143474== 681 bytes in 17 blocks are possibly lost in loss record 15 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143474== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143474== by 0x52423F0: add_alias (gconv_conf.c:178) ==143474== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143474== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143474== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== ==143474== 1,018 bytes in 23 blocks are possibly lost in loss record 20 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143474== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143474== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== ==143474== 11,664 bytes in 486 blocks are possibly lost in loss record 27 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x532FFA5: __tsearch (tsearch.c:337) ==143474== by 0x532FFA5: tsearch (tsearch.c:290) ==143474== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143474== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143474== by 0x52423F0: add_alias (gconv_conf.c:178) ==143474== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdirCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1308 ./libtest/libtests lib1308 log/11/test-1308 > log/11/stdout1308 2> log/11/stderr1308 .h:101) ==143474== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143474== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== ==143474== 18,800 bytes in 486 blocks are possibly lost in loss record 29 of 30 ==143474== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143474== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143474== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143474== by 0x52423F0: add_alias (gconv_conf.c:178) ==143474== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143474== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143474== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143474== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143474== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143474== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143474== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143474== by 0x524D142: setlocale (setlocale.c:337) ==143474== by 0x400A0CB: main (first.c:123) ==143474== === End of file valgrind1302 * starts no server test 1308...[formpost tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1308 ./libtest/libtests lib1308 log/11/test-1308 > log/11/stdout1308 2> log/11/stderr1308 libtests returned 132, when expecting 0 1308: exit FAILED == Contents of files in the log/11/ dir after test 1308 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1308 ./libtest/libtests lib1308 log/11/test-1308 > log/11/stdout1308 2> log/11/stderr1308 === End of file commands.log === Start of file server.cmd Testnum 1308 === End of file server.cmd === Start of file stderr1308 URL: log/11/test-1308 === End of file stderr1308 === Start of file test-1308 Piece of the file that is to uploaded as a formpost === End of file test-1308 === Start of file valgrind1308 ==143868== ==143868== Process terminating with default action of signal 4 (SIGILL) ==143868== Illegal opcode at address 0x5177475 ==143868== at 0x5177475: UnknownInlinedFun (string_fortified.h:59) ==143868== by 0x5177475: curl_mime_init (mime.c:1292) ==143868== by 0x5147908: Curl_getformdata.part.0 (formdata.c:811) ==143868== by 0x5147DE9: UnknownInlinedFun (formdata.c:808) ==143868== by 0x5147DE9: curl_formget (formdata.c:701) ==143868== by 0x4021A80: test_lib1308.lto_priv.0 (lib1308.c:69) ==143868== by 0x4003443: main (first.c:167) ==143868== 96 bytes in 1 blocks are definitely lost in loss record 12 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x517744F: curl_mime_init (mime.c:1285) ==143868== by 0x5147908: Curl_getformdata.part.0 (formdata.c:811) ==143868== by 0x5147DE9: UnknownInlinedFun (formdata.c:808) ==143868== by 0x5147DE9: curl_formget (formdata.c:701) ==143868== by 0x4021A80: test_lib1308.lto_priv.0 (lib1308.c:69) ==143868== by 0x4003443: main (first.c:167) ==143868== ==143868== 408 bytes in 17 blocks are possibly lost in loss record 19 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x533CFA5: __tsearch (tsearch.c:337) ==143868== by 0x533CFA5: tsearch (tsearch.c:290) ==143868== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==143868== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==143868== by 0x524F3F0: add_alias (gconv_conf.c:178) ==143868== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143868== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143868== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== ==143868== 552 bytes in 23 blocks are possibly lost in loss record 21 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x533CFA5: __tsearch (tsearch.c:337) ==143868== by 0x533CFA5: tsearch (tsearch.c:290) ==143868== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==143868== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==143868== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== ==143868== 681 bytes in 17 blocks are possibly lost in loss record 24 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==143868== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==143868== by 0x524F3F0: add_alias (gconv_conf.c:178) ==143868== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143868== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143868== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== ==143868== 1,018 bytes in 23 blocks are possibly lost in loss record 29 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==143868== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==143868== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== ==143868== 11,664 bytes in 486 blocks are possibly lost in loss record 36 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x533CFA5: __tsearch (tsearch.c:337) ==143868== by 0x533CFA5: tsearch (tsearch.c:290) ==143868== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==143868== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==143868== by 0x524F3F0: add_alias (gconv_conf.c:178) ==143868== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143868== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143868== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1315 ../src/curl -q --output log/4/curl1315.out --include --trace-ascii log/4/trace1315 --trace-config all --trace-time http://127.0.0.1:33235/we/want/1315 -F name=value -F 'file=@log/4/test1315.txt,log/4/test1315.txt;type=magic/content,log/4/test1315.txt' > log/4/stdout1315 2> log/4/stderr1315 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1265 ../src/curl -q --output log/18/curl1265.out --include --trace-ascii log/18/trace1265 --trace-config all --trace-time http://[::1]:37095/1265 > log/18/stdout1265 2> log/18/stderr1265 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1310 ../src/curl -q --trace-ascii log/15/trace1310 --trace-config all --trace-time http://127.0.0.1:36993/junk -J -O --show-headers --output-dir log/15 > log/15/stdout1310 2> log/15/stderr1310 by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== ==143868== 18,800 bytes in 486 blocks are possibly lost in loss record 38 of 39 ==143868== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==143868== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==143868== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==143868== by 0x524F3F0: add_alias (gconv_conf.c:178) ==143868== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143868== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143868== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==143868== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143868== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143868== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==143868== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==143868== by 0x525A142: setlocale (setlocale.c:337) ==143868== by 0x400336E: main (first.c:123) ==143868== === End of file valgrind1308 test 1315...[HTTP RFC1867-type formposting - -F with three files, one with explicit type] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1315 ../src/curl -q --output log/4/curl1315.out --include --trace-ascii log/4/trace1315 --trace-config all --trace-time http://127.0.0.1:33235/we/want/1315 -F name=value -F 'file=@log/4/test1315.txt,log/4/test1315.txt;type=magic/content,log/4/test1315.txt' > log/4/stdout1315 2> log/4/stderr1315 1315: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1315 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1315 ../src/curl -q --output log/4/curl1315.out --include --trace-ascii log/4/trace1315 --trace-config all --trace-time http://127.0.0.1:33235/we/want/1315 -F name=value -F 'file=@log/4/test1315.txt,log/4/test1315.txt;type=magic/content,log/4/test1315.txt' > log/4/stdout1315 2> log/4/stderr1315 === End of file commands.log === Start of file http_server.log 07:36:03.300814 ====> Client connect 07:36:03.300859 accept_connection 3 returned 4 07:36:03.300923 accept_connection 3 returned 0 07:36:03.300940 Read 93 bytes 07:36:03.300950 Process 93 bytes request 07:36:03.300964 Got request: GET /verifiedserver HTTP/1.1 07:36:03.300973 Are-we-friendly question received 07:36:03.301000 Wrote request (93 bytes) input to log/4/server.input 07:36:03.301018 Identifying ourselves as friends 07:36:03.301076 Response sent (56 bytes) and written to log/4/server.response 07:36:03.301088 special request received, no persistency 07:36:03.301096 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1315 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file test1315.txt dummy data === End of file test1315.txt === Start of file valgrind1315 ==144316== ==144316== Process terminating with default action of signal 4 (SIGILL) ==144316== Illegal opcode at address 0x4003082 ==144316== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144316== by 0x4003082: main (tool_main.c:234) === End of file valgrind1315 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/18/server/http_ipv6_server.pid" --logfile "log/18/http_ipv6_server.log" --logdir "log/18" --portfile log/18/server/http_ipv6_server.port --config log/18/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 141738 port 37095 * pid http-ipv6 => 141738 141738 setenv http_proxy = http://127.0.0.1:45825 setenv NO_PROXY = ::1 test 1265...[NO_PROXY with IPv6 numerical address] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1265 ../src/curl -q --output log/18/curl1265.out --include --trace-ascii log/18/trace1265 --trace-config all --trace-time http://[::1]:37095/1265 > log/18/stdout1265 2> log/18/stderr1265 1265: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1265 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1265 ../src/curl -q --output log/18/curl1265.out --include --trace-ascii log/18/trace1265 --trace-config all --trace-time http://[::1]:37095/1265 > log/18/stdout1265 2> log/18/stderr1265 === End of file commands.log === Start of file http_ipv6_server.log 07:36:02.205693 Running HTTP IPv6 version on port 37095 07:36:02.205787 Wrote pid 141738 to log/18/server/http_ipv6_server.pid 07:36:02.205818 Wrote port 37095 to log/18/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 1265 === End of file server.cmd === Start of file valgrind1265 ==144000== ==144000== Process terminating with default action of signal 4 (SIGILL) ==144000== Illegal opcode at address 0x4003082 ==144000== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144000== by 0x4003082: main (tool_main.c:234) === End of file valgrind1265 test 1310...[HTTP GET with -J + --show-headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1310 ../src/curl -q --trace-ascii log/15/trace1310 --trace-config all --trace-time http://127.0.0.1:36993/junk -J -O --show-headers --output-dir log/15 > log/15/stdout1310 2> log/15/stderr1310 1310: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1310 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1310 ../src/curl -q --trace-ascii log/15/trace1310 --trace-config all --trace-time http://127.0.0.1:36993/junk -J -O --show-headers --output-dir log/15 > log/15/stdout1310 2> log/15/stderr1310 === End of file commands.log === Start of file http_server.log 07:36:03.174581 ====> Client connect 07:36:03.174618 accept_connection 3 returned 4 07:36:03.174634 accept_connection 3 returned 0 07:36:03.174648 Read 93 bytes 07:36:03.174657 Process 93 bytes request 07:36:03.174671 Got request: GET /verifiedserver HTTP/1.1 07:36:03.174680 Are-we-friendly question received 07:36:03.174704 Wrote request (93 bytes) input to log/15/server.input 07:36:03.174719 Identifying ourselves as friends 07:36:03.174772 Response sent (56 bytes) and written to log/15/server.response 07:36:03.174781 special request received, no persistency 07:36:03.174790 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * usiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1311 ../src/curl -q --trace-ascii log/13/trace1311 --trace-config all --trace-time http://127.0.0.1:33627/1311 -J -O --output-dir log/13 > log/13/stdout1311 2> log/13/stderr1311 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1309 ./unit/units unit1309 - > log/17/stdout1309 2> log/17/stderr1309 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1303 ./unit/units unit1303 - > log/22/stdout1303 2> log/22/stderr1303 ng HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1310 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1310 ==143981== ==143981== Process terminating with default action of signal 4 (SIGILL) ==143981== Illegal opcode at address 0x4003082 ==143981== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==143981== by 0x4003082: main (tool_main.c:234) === End of file valgrind1310 test 1311...[HTTP GET with -J and Content-Disposition] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1311 ../src/curl -q --trace-ascii log/13/trace1311 --trace-config all --trace-time http://127.0.0.1:33627/1311 -J -O --output-dir log/13 > log/13/stdout1311 2> log/13/stderr1311 1311: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1311 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1311 ../src/curl -q --trace-ascii log/13/trace1311 --trace-config all --trace-time http://127.0.0.1:33627/1311 -J -O --output-dir log/13 > log/13/stdout1311 2> log/13/stderr1311 === End of file commands.log === Start of file http_server.log 07:36:03.217846 ====> Client connect 07:36:03.217879 accept_connection 3 returned 4 07:36:03.217896 accept_connection 3 returned 0 07:36:03.217910 Read 93 bytes 07:36:03.217919 Process 93 bytes request 07:36:03.217933 Got request: GET /verifiedserver HTTP/1.1 07:36:03.217942 Are-we-friendly question received 07:36:03.217964 Wrote request (93 bytes) input to log/13/server.input 07:36:03.217980 Identifying ourselves as friends 07:36:03.218033 Response sent (56 bytes) and written to log/13/server.response 07:36:03.218043 special request received, no persistency 07:36:03.218052 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1311 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1311 ==144073== ==144073== Process terminating with default action of signal 4 (SIGILL) ==144073== Illegal opcode at address 0x4003082 ==144073== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144073== by 0x4003082: main (tool_main.c:234) === End of file valgrind1311 * starts no server test 1303...[Curl_timeleft unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1303 ./unit/units unit1303 - > log/22/stdout1303 2> log/22/stderr1303 units returned 132, when expecting 0 1303: exit FAILED == Contents of files in the log/22/ dir after test 1303 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1303 ./unit/units unit1303 - > log/22/stdout1303 2> log/22/stderr1303 === End of file commands.log === Start of file server.cmd Testnum 1303 === End of file server.cmd === Start of file stderr1303 URL: - === End of file stderr1303 === Start of file valgrind1303 ==143538== ==143538== Process terminating with default action of signal 4 (SIGILL) ==143538== Illegal opcode at address 0x40775D3 ==143538== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==143538== by 0x40775D3: UnknownInlinedFun (request.c:46) ==143538== by 0x40775D3: Curl_open (url.c:541) ==143538== by 0x403D525: curl_easy_init (easy.c:372) ==143538== by 0x400B70B: UnknownInlinedFun (unit1303.c:35) ==143538== by 0x400B70B: test_unit1303.lto_priv.0 (unit1303.c:72) ==143538== by 0x400A15E: main (first.c:167) ==143538== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x532FFA5: __tsearch (tsearch.c:337) ==143538== by 0x532FFA5: tsearch (tsearch.c:290) ==143538== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143538== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143538== by 0x52423F0: add_alias (gconv_conf.c:178) ==143538== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143538== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143538== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== ==143538== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x532FFA5: __tsearch (tsearch.c:337) ==143538== by 0x532FFA5: tsearch (tsearch.c:290) ==143538== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143538== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143538== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== ==143538== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143538== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143538== by 0x52423F0: add_alias (gconv_conf.c:178) ==143538== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143538== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143538== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== ==143538== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143538== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143538== by 0x524274A: __gCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1312 ../src/curl -q --trace-ascii log/8/trace1312 --trace-config all --trace-time 127.0.0.1:45261/1312 -J -O --output-dir log/8 > log/8/stdout1312 2> log/8/stderr1312 conv_read_conf (gconv_conf.c:508) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== ==143538== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==143538== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==143538== by 0x4077523: Curl_open (url.c:520) ==143538== by 0x403D525: curl_easy_init (easy.c:372) ==143538== by 0x400B70B: UnknownInlinedFun (unit1303.c:35) ==143538== by 0x400B70B: test_unit1303.lto_priv.0 (unit1303.c:72) ==143538== by 0x400A15E: main (first.c:167) ==143538== ==143538== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x532FFA5: __tsearch (tsearch.c:337) ==143538== by 0x532FFA5: tsearch (tsearch.c:290) ==143538== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143538== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143538== by 0x52423F0: add_alias (gconv_conf.c:178) ==143538== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143538== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143538== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== ==143538== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==143538== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143538== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143538== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143538== by 0x52423F0: add_alias (gconv_conf.c:178) ==143538== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143538== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143538== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143538== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143538== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143538== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143538== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143538== by 0x524D142: setlocale (setlocale.c:337) ==143538== by 0x400A0CB: main (first.c:123) ==143538== === End of file valgrind1303 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1314 ../src/curl -q --output log/10/curl1314.out --include --trace-ascii log/10/trace1314 --trace-config all --trace-time http://firstplace.example.com/want/1314 -L -x http://127.0.0.1:34851 > log/10/stdout1314 2> log/10/stderr1314 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1313 ../src/curl -q --trace-ascii log/20/trace1313 --trace-config all --trace-time http://127.0.0.1:37169/1313 -J -O --output-dir log/20 > log/20/stdout1313 2> log/20/stderr1313 * starts no server test 1309...[splay unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1309 ./unit/units unit1309 - > log/17/stdout1309 2> log/17/stderr1309 1309: stdout FAILED: --- log/17/check-expected 2025-07-18 07:36:03.957112975 +0000 +++ log/17/check-generated 2025-07-18 07:36:03.957112975 +0000 @@ -1,1537 +0,0 @@ -Result:[LF] - 0.1013[3][LF] - 0.1003[2][LF] - 0.954[3][LF] - 0.944[1][LF] -0.934[0][LF] - 0.895[1][LF] - 0.885[4][LF] - 0.875[3][LF] - 0.836[4][LF] - 0.826[7][LF] - 0.816[6][LF] - 0.777[5][LF] - 0.767[9][LF] - 0.757[8][LF] - 0.718[7][LF] - 0.708[10][LF] - 0.698[9][LF] - 0.659[8][LF] - 0.649[9][LF] - 0.639[10][LF] - 0.600[12][LF] - 0.590[13][LF] - 0.580[11][LF] - 0.541[6][LF] - 0.531[9][LF] - 0.521[10][LF] - 0.472[8][LF] - 0.462[9][LF] - 0.413[7][LF] - 0.403[2][LF] - 0.393[3][LF] - 0.354[5][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.295[7][LF] - 0.285[6][LF] - 0.275[7][LF] - 0.236[9][LF] - 0.226[8][LF] - 0.216[9][LF] - 0.177[11][LF] - 0.167[12][LF] - 0.157[10][LF] - 0.118[11][LF] - 0.108[13][LF] - 0.98[12][LF] - 0.59[13][LF] - 0.49[15][LF] - 0.39[14][LF] - 0.0[15][LF] -Tree look:[LF] - 0.1013[3][LF] - 0.1003[2][LF] - 0.954[3][LF] - 0.944[1][LF] -0.934[0][LF] - 0.895[1][LF] - 0.885[4][LF] - 0.875[3][LF] - 0.836[4][LF] - 0.826[7][LF] - 0.816[6][LF] - 0.777[5][LF] - 0.767[9][LF] - 0.757[8][LF] - 0.718[7][LF] - 0.708[10][LF] - 0.698[9][LF] - 0.659[8][LF] - 0.649[9][LF] - 0.639[10][LF] - 0.600[12][LF] - 0.590[13][LF] - 0.580[11][LF] - 0.541[6][LF] - 0.531[9][LF] - 0.521[10][LF] - 0.472[8][LF] - 0.462[9][LF] - 0.413[7][LF] - 0.403[2][LF] - 0.393[3][LF] - 0.354[5][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.295[7][LF] - 0.285[6][LF] - 0.275[7][LF] - 0.236[9][LF] - 0.226[8][LF] - 0.216[9][LF] - 0.177[11][LF] - 0.167[12][LF] - 0.157[10][LF] - 0.118[11][LF] - 0.108[13][LF] - 0.98[12][LF] - 0.59[13][LF] - 0.49[15][LF] - 0.39[14][LF] - 0.0[15][LF] -remove pointer 7, payload 718[LF] -Tree look:[LF] - 0.1013[5][LF] - 0.1003[4][LF] - 0.954[5][LF] - 0.944[3][LF] - 0.934[2][LF] - 0.895[1][LF] - 0.885[4][LF] - 0.875[3][LF] - 0.836[2][LF] - 0.826[5][LF] - 0.816[4][LF] - 0.777[3][LF] - 0.767[5][LF] - 0.757[4][LF] -0.708[0][LF] - 0.698[2][LF] - 0.659[3][LF] - 0.649[4][LF] - 0.639[5][LF] - 0.600[7][LF] - 0.590[8][LF] - 0.580[6][LF] - 0.541[1][LF] - 0.531[5][LF] - 0.521[6][LF] - 0.472[4][LF] - 0.462[5][LF] - 0.413[3][LF] - 0.403[2][LF] - 0.393[3][LF] - 0.354[5][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.295[7][LF] - 0.285[6][LF] - 0.275[7][LF] - 0.236[9][LF] - 0.226[8][LF] - 0.216[9][LF] - 0.177[11][LF] - 0.167[12][LF] - 0.157[10][LF] - 0.118[11][LF] - 0.108[13][LF] - 0.98[12][LF] - 0.59[13][LF] - 0.49[15][LF] - 0.39[14][LF] - 0.0[15][LF] -remove pointer 8, payload 236[LF] -Tree look:[LF] - 0.1013[7][LF] - 0.1003[6][LF] - 0.954[7][LF] - 0.944[5][LF] - 0.934[4][LF] - 0.895[3][LF] - 0.885[6][LF] - 0.875[5][LF] - 0.836[4][LF] - 0.826[7][LF] - 0.816[6][LF] - 0.777[5][LF] - 0.767[7][LF] - 0.757[6][LF] - 0.708[2][LF] - 0.698[3][LF] - 0.659[4][LF] - 0.649[5][LF] - 0.639[6][LF] - 0.600[8][LF] - 0.590[9][LF] - 0.580[7][LF] - 0.541[1][LF] - 0.531[6][LF] - 0.521[7][LF] - 0.472[5][LF] - 0.462[6][LF] - 0.413[4][LF] - 0.403[3][LF] - 0.393[2][LF] - 0.354[5][LF] - 0.344[4][LF] - 0.334[3][LF] - 0.295[6][LF] - 0.285[5][LF] - 0.275[4][LF] -0.226[0][LF] - 0.216[1][LF] - 0.177[3][LF] - 0.167[4][LF] - 0.157[2][LF] - 0.118[3][LF] - 0.108[5][LF] - 0.98[4][LF] - 0.59[5][LF] - 0.49[7][LF] - 0.39[6][LF] - 0.0[7][LF] -remove pointer 9, payload 777[LF] -Tree look:[LF] - 0.1013[6][LF] - 0.1003[5][LF] - 0.954[6][LF] - 0.944[4][LF] - 0.934[3][LF] - 0.895[2][LF] - 0.885[4][LF] - 0.875[3][LF] - 0.836[1][LF] - 0.826[3][LF] - 0.816[2][LF] -0.767[0][LF] - 0.757[2][LF] - 0.708[1][LF] - 0.698[3][LF] - 0.659[4][LF] - 0.649[5][LF] - 0.639[6][LF] - 0.600[8][LF] - 0.590[9][LF] - 0.580[7][LF] - 0.541[2][LF] - 0.531[8][LF] - 0.521[9][LF] - 0.472[7][LF] - 0.462[8][LF] - 0.413[6][LF] - 0.403[5][LF] - 0.393[4][LF] - 0.354[7][LF] - 0.344[6][LF] - 0.334[5][LF] - 0.295[8][LF] - 0.285[7][LF] - 0.275[6][LF] - 0.226[3][LF] - 0.216[4][LF] - 0.177[6][LF] - 0.167[7][LF] - 0.157[5][LF] - 0.118[6][LF] - 0.108[8][LF] - 0.98[7][LF] - 0.59[8][LF] - 0.49[10][LF] - 0.39[9][LF] - 0.0[10][LF] -remove pointer 10, payload 295[LF] -Tree look:[LF] - 0.1013[8][LF] - 0.1003[7][LF] - 0.954[8][LF] - 0.944[6][LF] - 0.934[5][LF] - 0.895[4][LF] - 0.885[6][LF] - 0.875[5][LF] - 0.836[3][LF] - 0.826[5][LF] - 0.816[4][LF] - 0.767[2][LF] - 0.757[3][LF] - 0.708[1][LF] - 0.698[3][LF] - 0.659[4][LF] - 0.649[5][LF] - 0.639[6][LF] - 0.600[8][LF] - 0.590[9][LF] - 0.580[7][LF] - 0.541[2][LF] - 0.531[8][LF] - 0.521[9][LF] - 0.472[7][LF] - 0.462[8][LF] - 0.413[6][LF] - 0.403[5][LF] - 0.393[4][LF] - 0.354[6][LF] - 0.344[5][LF] - 0.334[3][LF] -0.285[0][LF] - 0.275[2][LF] - 0.226[1][LF] - 0.216[2][LF] - 0.177[4][LF] - 0.167[5][LF] - 0.157[3][LF] - 0.118[4][LF] - 0.108[6][LF] - 0.98[5][LF] - 0.59[6][LF] - 0.49[8][LF] - 0.39[7][LF] - 0.0[8][LF] -remove pointer 11, payload 836[LF] -Tree look:[LF] - 0.1013[5][LF] - 0.1003[4][LF] - 0.954[5][LF] - 0.944[3][LF] - 0.934[2][LF] - 0.895[1][LF] - 0.885[3][LF] - 0.875[2][LF] -0.826[0][LF] - 0.816[2][LF] - 0.767[1][LF] - 0.757[3][LF] - 0.708[2][LF] - 0.698[5][LF] - 0.659[6][LF] - 0.649[7][LF] - 0.639[8][LF] - 0.600[10][LF] - 0.590[11][LF] - 0.580[9][LF] - 0.541[4][LF] - 0.531[10][LF] - 0.521[11][LF] - 0.472[9][LF] - 0.462[10][LF] - 0.413[8][LF] - 0.403[7][LF] - 0.393[6][LF] - 0.354[8][LF] - 0.344[7][LF] - 0.334[5][LF] - 0.285[3][LF] - 0.275[5][LF] - 0.226[4][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.167[8][LF] - 0.157[6][LF] - 0.118[7][LF] - 0.108[9][LF] - 0.98[8][LF] - 0.59[9][LF] - 0.49[11][LF] - 0.39[10][LF] - 0.0[11][LF] -remove pointer 12, payload 354[LF] -Tree look:[LF] - 0.1013[7][LF] - 0.1003[6][LF] - 0.954[7][LF] - 0.944[5][LF] - 0.934[4][LF] - 0.895[3][LF] - 0.885[5][LF] - 0.875[4][LF] - 0.826[2][LF] - 0.816[3][LF] - 0.767[1][LF] - 0.757[3][LF] - 0.708[2][LF] - 0.698[4][LF] - 0.659[5][LF] - 0.649[6][LF] - 0.639[7][LF] - 0.600[9][LF] - 0.590[10][LF] - 0.580[8][LF] - 0.541[3][LF] - 0.531[8][LF] - 0.521[9][LF] - 0.472[7][LF] - 0.462[8][LF] - 0.413[6][LF] - 0.403[5][LF] - 0.393[4][LF] -0.344[0][LF] - 0.334[1][LF] - 0.285[2][LF] - 0.275[4][LF] - 0.226[3][LF] - 0.216[4][LF] - 0.177[6][LF] - 0.167[7][LF] - 0.157[5][LF] - 0.118[6][LF] - 0.108[8][LF] - 0.98[7][LF] - 0.59[8][LF] - 0.49[10][LF] - 0.39[9][LF] - 0.0[10][LF] -remove pointer 13, payload 895[LF] -Tree look:[LF] - 0.1013[4][LF] - 0.1003[3][LF] - 0.954[4][LF] - 0.944[2][LF] - 0.934[1][LF] -0.885[0][LF] - 0.875[2][LF] - 0.826[1][LF] - 0.816[3][LF] - 0.767[2][LF] - 0.757[5][LF] - 0.708[4][LF] - 0.698[6][LF] - 0.659[7][LF] - 0.649[8][LF] - 0.639[9][LF] - 0.600[11][LF] - 0.590[12][LF] - 0.580[10][LF] - 0.541[5][LF] - 0.531[10][LF] - 0.521[11][LF] - 0.472[9][LF] - 0.462[10][LF] - 0.413[8][LF] - 0.403[7][LF] - 0.393[6][LF] - 0.344[3][LF] - 0.334[4][LF] - 0.285[5][LF] - 0.275[7][LF] - 0.226[6][LF] - 0.216[7][LF] - 0.177[9][LF] - 0.167[10][LF] - 0.157[8][LF] - 0.118[9][LF] - 0.108[11][LF] - 0.98[10][LF] - 0.59[11][LF] - 0.49[13][LF] - 0.39[12][LF] - 0.0[13][LF] -remove pointer 14, payload 413[LF] -Tree look:[LF] - 0.1013[6][LF] - 0.1003[5][LF] - 0.954[6][LF] - 0.944[4][LF] - 0.934[3][LF] - 0.885[2][LF] - 0.875[3][LF] - 0.826[1][LF] - 0.816[3][LF] - 0.767[2][LF] - 0.757[5][LF] - 0.708[4][LF] - 0.698[5][LF] - 0.659[6][LF] - 0.649[7][LF] - 0.639[8][LF] - 0.600[10][LF] - 0.590[11][LF] - 0.580[9][LF] - 0.541[3][LF] - 0.531[5][LF] - 0.521[6][LF] - 0.472[4][LF] - 0.462[5][LF] -0.403[0][LF] - 0.393[2][LF] - 0.344[1][LF] - 0.334[2][LF] - 0.285[3][LF] - 0.275[5][LF] - 0.226[4][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.167[8][LF] - 0.157[6][LF] - 0.118[7][LF] - 0.108[9][LF] - 0.98[8][LF] - 0.59[9][LF] - 0.49[11][LF] - 0.39[10][LF] - 0.0[11][LF] -remove pointer 15, payload 954[LF] -Tree look:[LF] - 0.1013[2][LF] - 0.1003[1][LF] -0.944[0][LF] - 0.934[1][LF] - 0.885[3][LF] - 0.875[4][LF] - 0.826[2][LF] - 0.816[5][LF] - 0.767[4][LF] - 0.757[7][LF] - 0.708[6][LF] - 0.698[7][LF] - 0.659[8][LF] - 0.649[9][LF] - 0.639[10][LF] - 0.600[12][LF] - 0.590[13][LF] - 0.580[11][LF] - 0.541[5][LF] - 0.531[7][LF] - 0.521[8][LF] - 0.472[6][LF] - 0.462[7][LF] - 0.403[3][LF] - 0.393[5][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.285[6][LF] - 0.275[8][LF] - 0.226[7][LF] - 0.216[8][LF] - 0.177[10][LF] - 0.167[11][LF] - 0.157[9][LF] - 0.118[10][LF] - 0.108[12][LF] - 0.98[11][LF] - 0.59[12][LF] - 0.49[14][LF] - 0.39[13][LF] - 0.0[14][LF] -remove pointer 16, payload 472[LF] -Tree look:[LF] - 0.1013[4][LF] - 0.1003[3][LF] - 0.944[2][LF] - 0.934[1][LF] - 0.885[3][LF] - 0.875[4][LF] - 0.826[2][LF] - 0.816[5][LF] - 0.767[4][LF] - 0.757[6][LF] - 0.708[5][LF] - 0.698[6][LF] - 0.659[7][LF] - 0.649[8][LF] - 0.639[9][LF] - 0.600[11][LF] - 0.590[12][LF] - 0.580[10][LF] - 0.541[3][LF] - 0.531[4][LF] - 0.521[5][LF] -0.462[0][LF] - 0.403[1][LF] - 0.393[3][LF] - 0.344[2][LF] - 0.334[3][LF] - 0.285[4][LF] - 0.275[6][LF] - 0.226[5][LF] - 0.216[6][LF] - 0.177[8][LF] - 0.167[9][LF] - 0.157[7][LF] - 0.118[8][LF] - 0.108[10][LF] - 0.98[9][LF] - 0.59[10][LF] - 0.49[12][LF] - 0.39[11][LF] - 0.0[12][LF] -remove pointer 17, payload 1013[LF] -Tree look:[LF] -0.1003[0][LF] - 0.944[2][LF] - 0.934[1][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.826[3][LF] - 0.816[6][LF] - 0.767[5][LF] - 0.757[7][LF] - 0.708[6][LF] - 0.698[7][LF] - 0.659[8][LF] - 0.649[9][LF] - 0.639[10][LF] - 0.600[12][LF] - 0.590[13][LF] - 0.580[11][LF] - 0.541[4][LF] - 0.531[5][LF] - 0.521[6][LF] - 0.462[2][LF] - 0.403[3][LF] - 0.393[5][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.285[6][LF] - 0.275[8][LF] - 0.226[7][LF] - 0.216[8][LF] - 0.177[10][LF] - 0.167[11][LF] - 0.157[9][LF] - 0.118[10][LF] - 0.108[12][LF] - 0.98[11][LF] - 0.59[12][LF] - 0.49[14][LF] - 0.39[13][LF] - 0.0[14][LF] -remove pointer 18, payload 531[LF] -Tree look:[LF] - 0.1003[2][LF] - 0.944[3][LF] - 0.934[1][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.826[3][LF] - 0.816[5][LF] - 0.767[4][LF] - 0.757[6][LF] - 0.708[5][LF] - 0.698[6][LF] - 0.659[7][LF] - 0.649[8][LF] - 0.639[9][LF] - 0.600[11][LF] - 0.590[12][LF] - 0.580[10][LF] - 0.541[2][LF] -0.521[0][LF] - 0.462[1][LF] - 0.403[2][LF] - 0.393[4][LF] - 0.344[3][LF] - 0.334[4][LF] - 0.285[5][LF] - 0.275[7][LF] - 0.226[6][LF] - 0.216[7][LF] - 0.177[9][LF] - 0.167[10][LF] - 0.157[8][LF] - 0.118[9][LF] - 0.108[11][LF] - 0.98[10][LF] - 0.59[11][LF] - 0.49[13][LF] - 0.39[12][LF] - 0.0[13][LF] -remove pointer 19, payload 49[LF] -Tree look:[LF] - 0.1003[4][LF] - 0.944[5][LF] - 0.934[3][LF] - 0.885[6][LF] - 0.875[7][LF] - 0.826[5][LF] - 0.816[7][LF] - 0.767[6][LF] - 0.757[8][LF] - 0.708[7][LF] - 0.698[8][LF] - 0.659[9][LF] - 0.649[10][LF] - 0.639[11][LF] - 0.600[13][LF] - 0.590[14][LF] - 0.580[12][LF] - 0.541[4][LF] - 0.521[2][LF] - 0.462[1][LF] - 0.403[3][LF] - 0.393[4][LF] - 0.344[2][LF] - 0.334[4][LF] - 0.285[3][LF] - 0.275[6][LF] - 0.226[5][LF] - 0.216[4][LF] - 0.177[7][LF] - 0.167[8][LF] - 0.157[6][LF] - 0.118[5][LF] - 0.108[8][LF] - 0.98[7][LF] - 0.59[6][LF] -0.39[0][LF] - 0.0[1][LF] -remove pointer 20, payload 590[LF] -Tree look:[LF] - 0.1003[2][LF] - 0.944[3][LF] - 0.934[1][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.826[3][LF] - 0.816[4][LF] - 0.767[2][LF] - 0.757[5][LF] - 0.708[4][LF] - 0.698[3][LF] - 0.659[5][LF] - 0.649[4][LF] - 0.639[5][LF] - 0.600[6][LF] -0.580[0][LF] - 0.541[2][LF] - 0.521[1][LF] - 0.462[2][LF] - 0.403[5][LF] - 0.393[6][LF] - 0.344[4][LF] - 0.334[6][LF] - 0.285[5][LF] - 0.275[8][LF] - 0.226[7][LF] - 0.216[6][LF] - 0.177[9][LF] - 0.167[10][LF] - 0.157[8][LF] - 0.118[7][LF] - 0.108[10][LF] - 0.98[9][LF] - 0.59[8][LF] - 0.39[3][LF] - 0.0[4][LF] -remove pointer 21, payload 108[LF] -Tree look:[LF] - 0.1003[4][LF] - 0.944[5][LF] - 0.934[3][LF] - 0.885[6][LF] - 0.875[7][LF] - 0.826[5][LF] - 0.816[6][LF] - 0.767[4][LF] - 0.757[7][LF] - 0.708[6][LF] - 0.698[5][LF] - 0.659[7][LF] - 0.649[6][LF] - 0.639[7][LF] - 0.600[8][LF] - 0.580[2][LF] - 0.541[3][LF] - 0.521[1][LF] - 0.462[2][LF] - 0.403[5][LF] - 0.393[6][LF] - 0.344[4][LF] - 0.334[5][LF] - 0.285[3][LF] - 0.275[7][LF] - 0.226[6][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.167[8][LF] - 0.157[6][LF] - 0.118[4][LF] -0.98[0][LF] - 0.59[2][LF] - 0.39[1][LF] - 0.0[2][LF] -remove pointer 22, payload 649[LF] -Tree look:[LF] - 0.1003[3][LF] - 0.944[4][LF] - 0.934[2][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.826[3][LF] - 0.816[4][LF] - 0.767[1][LF] - 0.757[4][LF] - 0.708[3][LF] - 0.698[2][LF] - 0.659[3][LF] -0.639[0][LF] - 0.600[2][LF] - 0.580[1][LF] - 0.541[3][LF] - 0.521[2][LF] - 0.462[4][LF] - 0.403[7][LF] - 0.393[8][LF] - 0.344[6][LF] - 0.334[7][LF] - 0.285[5][LF] - 0.275[9][LF] - 0.226[8][LF] - 0.216[7][LF] - 0.177[9][LF] - 0.167[10][LF] - 0.157[8][LF] - 0.118[6][LF] - 0.98[3][LF] - 0.59[5][LF] - 0.39[4][LF] - 0.0[5][LF] -remove pointer 23, payload 167[LF] -Tree look:[LF] - 0.1003[5][LF] - 0.944[6][LF] - 0.934[4][LF] - 0.885[6][LF] - 0.875[7][LF] - 0.826[5][LF] - 0.816[6][LF] - 0.767[3][LF] - 0.757[6][LF] - 0.708[5][LF] - 0.698[4][LF] - 0.659[5][LF] - 0.639[2][LF] - 0.600[3][LF] - 0.580[1][LF] - 0.541[3][LF] - 0.521[2][LF] - 0.462[4][LF] - 0.403[6][LF] - 0.393[7][LF] - 0.344[5][LF] - 0.334[6][LF] - 0.285[3][LF] - 0.275[6][LF] - 0.226[5][LF] - 0.216[4][LF] - 0.177[5][LF] -0.157[0][LF] - 0.118[1][LF] - 0.98[2][LF] - 0.59[4][LF] - 0.39[3][LF] - 0.0[4][LF] -remove pointer 24, payload 708[LF] -Tree look:[LF] - 0.1003[3][LF] - 0.944[4][LF] - 0.934[2][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.826[3][LF] - 0.816[4][LF] - 0.767[1][LF] - 0.757[2][LF] -0.698[0][LF] - 0.659[2][LF] - 0.639[1][LF] - 0.600[3][LF] - 0.580[2][LF] - 0.541[5][LF] - 0.521[4][LF] - 0.462[6][LF] - 0.403[8][LF] - 0.393[9][LF] - 0.344[7][LF] - 0.334[8][LF] - 0.285[5][LF] - 0.275[8][LF] - 0.226[7][LF] - 0.216[6][LF] - 0.177[7][LF] - 0.157[3][LF] - 0.118[4][LF] - 0.98[5][LF] - 0.59[7][LF] - 0.39[6][LF] - 0.0[7][LF] -remove pointer 25, payload 226[LF] -Tree look:[LF] - 0.1003[5][LF] - 0.944[6][LF] - 0.934[4][LF] - 0.885[6][LF] - 0.875[7][LF] - 0.826[5][LF] - 0.816[6][LF] - 0.767[3][LF] - 0.757[4][LF] - 0.698[2][LF] - 0.659[3][LF] - 0.639[1][LF] - 0.600[3][LF] - 0.580[2][LF] - 0.541[5][LF] - 0.521[4][LF] - 0.462[5][LF] - 0.403[7][LF] - 0.393[8][LF] - 0.344[6][LF] - 0.334[7][LF] - 0.285[3][LF] - 0.275[4][LF] -0.216[0][LF] - 0.177[2][LF] - 0.157[1][LF] - 0.118[2][LF] - 0.98[3][LF] - 0.59[5][LF] - 0.39[4][LF] - 0.0[5][LF] -remove pointer 26, payload 767[LF] -Tree look:[LF] - 0.1003[2][LF] - 0.944[3][LF] - 0.934[1][LF] - 0.885[3][LF] - 0.875[4][LF] - 0.826[2][LF] - 0.816[3][LF] -0.757[0][LF] - 0.698[1][LF] - 0.659[3][LF] - 0.639[2][LF] - 0.600[5][LF] - 0.580[4][LF] - 0.541[7][LF] - 0.521[6][LF] - 0.462[7][LF] - 0.403[9][LF] - 0.393[10][LF] - 0.344[8][LF] - 0.334[9][LF] - 0.285[5][LF] - 0.275[6][LF] - 0.216[3][LF] - 0.177[5][LF] - 0.157[4][LF] - 0.118[5][LF] - 0.98[6][LF] - 0.59[8][LF] - 0.39[7][LF] - 0.0[8][LF] -remove pointer 27, payload 285[LF] -Tree look:[LF] - 0.1003[4][LF] - 0.944[5][LF] - 0.934[3][LF] - 0.885[5][LF] - 0.875[6][LF] - 0.826[4][LF] - 0.816[5][LF] - 0.757[2][LF] - 0.698[1][LF] - 0.659[3][LF] - 0.639[2][LF] - 0.600[4][LF] - 0.580[3][LF] - 0.541[5][LF] - 0.521[4][LF] - 0.462[5][LF] - 0.403[7][LF] - 0.393[8][LF] - 0.344[6][LF] - 0.334[7][LF] -0.275[0][LF] - 0.216[1][LF] - 0.177[3][LF] - 0.157[2][LF] - 0.118[3][LF] - 0.98[4][LF] - 0.59[6][LF] - 0.39[5][LF] - 0.0[6][LF] -remove pointer 28, payload 826[LF] -Tree look:[LF] - 0.1003[2][LF] - 0.944[3][LF] - 0.934[1][LF] - 0.885[2][LF] - 0.875[3][LF] -0.816[0][LF] - 0.757[1][LF] - 0.698[2][LF] - 0.659[5][LF] - 0.639[4][LF] - 0.600[6][LF] - 0.580[5][LF] - 0.541[7][LF] - 0.521[6][LF] - 0.462[7][LF] - 0.403[9][LF] - 0.393[10][LF] - 0.344[8][LF] - 0.334[9][LF] - 0.275[3][LF] - 0.216[4][LF] - 0.177[6][LF] - 0.157[5][LF] - 0.118[6][LF] - 0.98[7][LF] - 0.59[9][LF] - 0.39[8][LF] - 0.0[9][LF] -remove pointer 29, payload 344[LF] -Tree look:[LF] - 0.1003[4][LF] - 0.944[5][LF] - 0.934[3][LF] - 0.885[4][LF] - 0.875[5][LF] - 0.816[2][LF] - 0.757[1][LF] - 0.698[2][LF] - 0.659[5][LF] - 0.639[4][LF] - 0.600[5][LF] - 0.580[3][LF] - 0.541[6][LF] - 0.521[5][LF] - 0.462[4][LF] - 0.403[5][LF] - 0.393[6][LF] -0.334[0][LF] - 0.275[1][LF] - 0.216[2][LF] - 0.177[4][LF] - 0.157[3][LF] - 0.118[4][LF] - 0.98[5][LF] - 0.59[7][LF] - 0.39[6][LF] - 0.0[7][LF] -remove pointer 30, payload 885[LF] -Tree look:[LF] - 0.1003[2][LF] - 0.944[3][LF] - 0.934[1][LF] -0.875[0][LF] - 0.816[1][LF] - 0.757[2][LF] - 0.698[4][LF] - 0.659[7][LF] - 0.639[6][LF] - 0.600[7][LF] - 0.580[5][LF] - 0.541[8][LF] - 0.521[7][LF] - 0.462[6][LF] - 0.403[7][LF] - 0.393[8][LF] - 0.334[3][LF] - 0.275[4][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.157[6][LF] - 0.118[7][LF] - 0.98[8][LF] - 0.59[10][LF] - 0.39[9][LF] - 0.0[10][LF] -remove pointer 31, payload 403[LF] -Tree look:[LF] - 0.1003[4][LF] - 0.944[5][LF] - 0.934[3][LF] - 0.875[2][LF] - 0.816[1][LF] - 0.757[2][LF] - 0.698[4][LF] - 0.659[6][LF] - 0.639[5][LF] - 0.600[6][LF] - 0.580[3][LF] - 0.541[6][LF] - 0.521[5][LF] - 0.462[4][LF] -0.393[0][LF] - 0.334[1][LF] - 0.275[2][LF] - 0.216[3][LF] - 0.177[5][LF] - 0.157[4][LF] - 0.118[5][LF] - 0.98[6][LF] - 0.59[8][LF] - 0.39[7][LF] - 0.0[8][LF] -remove pointer 32, payload 944[LF] -Tree look:[LF] - 0.1003[1][LF] -0.934[0][LF] - 0.875[2][LF] - 0.816[1][LF] - 0.757[3][LF] - 0.698[5][LF] - 0.659[7][LF] - 0.639[6][LF] - 0.600[7][LF] - 0.580[4][LF] - 0.541[7][LF] - 0.521[6][LF] - 0.462[5][LF] - 0.393[2][LF] - 0.334[3][LF] - 0.275[4][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.157[6][LF] - 0.118[7][LF] - 0.98[8][LF] - 0.59[10][LF] - 0.39[9][LF] - 0.0[10][LF] -remove pointer 33, payload 462[LF] -Tree look:[LF] - 0.1003[3][LF] - 0.934[2][LF] - 0.875[3][LF] - 0.816[1][LF] - 0.757[3][LF] - 0.698[4][LF] - 0.659[6][LF] - 0.639[5][LF] - 0.600[6][LF] - 0.580[2][LF] - 0.541[4][LF] - 0.521[3][LF] -0.393[0][LF] - 0.334[1][LF] - 0.275[2][LF] - 0.216[3][LF] - 0.177[5][LF] - 0.157[4][LF] - 0.118[5][LF] - 0.98[6][LF] - 0.59[8][LF] - 0.39[7][LF] - 0.0[8][LF] -remove pointer 34, payload 1003[LF] -Tree look:[LF] -0.934[0][LF] - 0.875[2][LF] - 0.816[1][LF] - 0.757[4][LF] - 0.698[5][LF] - 0.659[7][LF] - 0.639[6][LF] - 0.600[7][LF] - 0.580[3][LF] - 0.541[5][LF] - 0.521[4][LF] - 0.393[2][LF] - 0.334[3][LF] - 0.275[4][LF] - 0.216[5][LF] - 0.177[7][LF] - 0.157[6][LF] - 0.118[7][LF] - 0.98[8][LF] - 0.59[10][LF] - 0.39[9][LF] - 0.0[10][LF] -remove pointer 35, payload 521[LF] -Tree look:[LF] - 0.934[2][LF] - 0.875[3][LF] - 0.816[1][LF] - 0.757[3][LF] - 0.698[4][LF] - 0.659[6][LF] - 0.639[5][LF] - 0.600[6][LF] - 0.580[2][LF] - 0.541[3][LF] -0.393[0][LF] - 0.334[1][LF] - 0.275[2][LF] - 0.216[3][LF] - 0.177[5][LF] - 0.157[4][LF] - 0.118[5][LF] - 0.98[6][LF] - 0.59[8][LF] - 0.39[7][LF] - 0.0[8][LF] -remove pointer 36, payload 39[LF] -Tree look:[LF] - 0.934[4][LF] - 0.875[5][LF] - 0.816[3][LF] - 0.757[5][LF] - 0.698[6][LF] - 0.659[8][LF] - 0.639[7][LF] - 0.600[8][LF] - 0.580[4][LF] - 0.541[5][LF] - 0.393[2][LF] - 0.334[1][LF] - 0.275[3][LF] - 0.216[2][LF] - 0.177[5][LF] - 0.157[4][LF] - 0.118[3][LF] - 0.98[4][LF] - 0.59[5][LF] -0.0[0][LF] -remove pointer 37, payload 580[LF] -Tree look:[LF] - 0.934[2][LF] - 0.875[3][LF] - 0.816[1][LF] - 0.757[2][LF] - 0.698[3][LF] - 0.659[5][LF] - 0.639[4][LF] - 0.600[5][LF] -0.541[0][LF] - 0.393[1][LF] - 0.334[2][LF] - 0.275[5][LF] - 0.216[4][LF] - 0.177[7][LF] - 0.157[6][LF] - 0.118[5][LF] - 0.98[6][LF] - 0.59[7][LF] - 0.0[3][LF] -remove pointer 38, payload 98[LF] -Tree look:[LF] - 0.934[4][LF] - 0.875[5][LF] - 0.816[3][LF] - 0.757[4][LF] - 0.698[5][LF] - 0.659[7][LF] - 0.639[6][LF] - 0.600[7][LF] - 0.541[2][LF] - 0.393[1][LF] - 0.334[2][LF] - 0.275[5][LF] - 0.216[4][LF] - 0.177[6][LF] - 0.157[5][LF] - 0.118[3][LF] -0.59[0][LF] - 0.0[1][LF] -remove pointer 39, payload 639[LF] -Tree look:[LF] - 0.934[3][LF] - 0.875[4][LF] - 0.816[2][LF] - 0.757[1][LF] - 0.698[2][LF] - 0.659[3][LF] -0.600[0][LF] - 0.541[1][LF] - 0.393[2][LF] - 0.334[4][LF] - 0.275[7][LF] - 0.216[6][LF] - 0.177[8][LF] - 0.157[7][LF] - 0.118[5][LF] - 0.59[3][LF] - 0.0[4][LF] -remove pointer 40, payload 157[LF] -Tree look:[LF] - 0.934[5][LF] - 0.875[6][LF] - 0.816[4][LF] - 0.757[3][LF] - 0.698[4][LF] - 0.659[5][LF] - 0.600[2][LF] - 0.541[1][LF] - 0.393[2][LF] - 0.334[3][LF] - 0.275[5][LF] - 0.216[4][LF] - 0.177[5][LF] -0.118[0][LF] - 0.59[1][LF] - 0.0[2][LF] -remove pointer 41, payload 698[LF] -Tree look:[LF] - 0.934[3][LF] - 0.875[4][LF] - 0.816[2][LF] - 0.757[1][LF] -0.659[0][LF] - 0.600[1][LF] - 0.541[2][LF] - 0.393[4][LF] - 0.334[5][LF] - 0.275[7][LF] - 0.216[6][LF] - 0.177[7][LF] - 0.118[3][LF] - 0.59[4][LF] - 0.0[5][LF] -remove pointer 42, payload 216[LF] -Tree look:[LF] - 0.934[5][LF] - 0.875[6][LF] - 0.816[4][LF] - 0.757[3][LF] - 0.659[2][LF] - 0.600[1][LF] - 0.541[2][LF] - 0.393[4][LF] - 0.334[3][LF] - 0.275[4][LF] -0.177[0][LF] - 0.118[1][LF] - 0.59[2][LF] - 0.0[3][LF] -remove pointer 43, payload 757[LF] -Tree look:[LF] - 0.934[2][LF] - 0.875[3][LF] - 0.816[1][LF] -0.659[0][LF] - 0.600[1][LF] - 0.541[3][LF] - 0.393[5][LF] - 0.334[4][LF] - 0.275[5][LF] - 0.177[2][LF] - 0.118[3][LF] - 0.59[4][LF] - 0.0[5][LF] -remove pointer 44, payload 275[LF] -Tree look:[LF] - 0.934[4][LF] - 0.875[5][LF] - 0.816[3][LF] - 0.659[2][LF] - 0.600[1][LF] - 0.541[3][LF] - 0.393[4][LF] - 0.334[2][LF] -0.177[0][LF] - 0.118[1][LF] - 0.59[2][LF] - 0.0[3][LF] -remove pointer 45, payload 816[LF] -Tree look:[LF] - 0.934[1][LF] - 0.875[2][LF] -0.659[0][LF] - 0.600[1][LF] - 0.541[4][LF] - 0.393[5][LF] - 0.334[3][LF] - 0.177[2][LF] - 0.118[3][LF] - 0.59[4][LF] - 0.0[5][LF] -remove pointer 46, payload 334[LF] -Tree look:[LF] - 0.934[3][LF] - 0.875[4][LF] - 0.659[2][LF] - 0.600[1][LF] - 0.541[2][LF] - 0.393[3][LF] -0.177[0][LF] - 0.118[1][LF] - 0.59[2][LF] - 0.0[3][LF] -remove pointer 47, payload 875[LF] -Tree look:[LF] - 0.934[1][LF] -0.659[0][LF] - 0.600[1][LF] - 0.541[3][LF] - 0.393[4][LF] - 0.177[2][LF] - 0.118[3][LF] - 0.59[4][LF] - 0.0[5][LF] -remove pointer 48, payload 393[LF] -Tree look:[LF] - 0.934[3][LF] - 0.659[2][LF] - 0.600[1][LF] - 0.541[2][LF] -0.177[0][LF] - 0.118[1][LF] - 0.59[2][LF] - 0.0[3][LF] -remove pointer 49, payload 934[LF] -Tree look:[LF] -0.659[0][LF] - 0.600[1][LF] - 0.541[3][LF] - 0.177[2][LF] - 0.118[3][LF] - 0.59[4][LF] - 0.0[5][LF] -remove pointer 0, payload 0[LF] -Tree look:[LF] - 0.659[1][LF] -0.600[0][LF] - 0.541[3][LF] - 0.177[2][LF] - 0.118[1][LF] - 0.59[2][LF] -remove pointer 1, payload 541[LF] -Tree look:[LF] - 0.659[2][LF] - 0.600[1][LF] -0.177[0][LF] - 0.118[1][LF] - 0.59[2][LF] -remove pointer 2, payload 59[LF] -Tree look:[LF] - 0.659[3][LF] - 0.600[2][LF] - 0.177[1][LF] -0.118[0][LF] -remove pointer 3, payload 600[LF] -Tree look:[LF] - 0.659[1][LF] -0.177[0][LF] - 0.118[1][LF] -remove pointer 4, payload 118[LF] -Tree look:[LF] - 0.659[1][LF] -0.177[0][LF] -remove pointer 5, payload 659[LF] -Tree look:[LF] -0.177[0][LF] -remove pointer 6, payload 177[LF] -Removing nodes not larger than 0[LF] -removed payload 0[0][LF] -Removing nodes not larger than 100[LF] -removed payload 39[0][LF] -removed payload 49[0][LF] -removed payload 49[1][LF] -removed payload 59[0][LF] -removed payload 59[1][LF] -removed payload 59[2][LF] -removed payload 98[0][LF] -removed payload 98[1][LF] -removed payload 98[2][LF] -Removing nodes not larger than 200[LF] -removed payload 108[0][LF] -removed payload 118[0][LF] -removed payload 118[1][LF] -removed payload 157[0][LF] -removed payload 157[1][LF] -removed payload 167[0][LF] -removed payload 167[1][LF] -removed payload 167[2][LF] -removed payload 177[0][LF] -Removing nodes not larger than 300[LF] -removed payload 216[0][LF] -removed payload 226[0][LF] -removed payload 226[1][LF] -removed payload 236[0][LF] -removed payload 236[1][LF] -removed payload 236[2][LF] -removed payload 275[0][LF] -removed payload 275[1][LF] -removed payload 275[2][LF] -removed payload 285[0][LF] -removed payload 295[0][LF] -removed payload 295[1][LF] -Removing nodes not larger than 400[LF] -removed payload 334[0][LF] -removed payload 334[1][LF] -removed payload 344[0][LF] -removed payload 344[1][LF] -removed payload 344[2][LF] -removed payload 354[0][LF] -removed payload 393[0][LF] -Removing nodes not larger than 500[LF] -removed payload 403[0][LF] -removed payload 403[1][LF] -removed payload 413[0][LF] -removed payload 413[1][LF] -removed payload 413[2][LF] -removed payload 462[0][LF] -removed payload 472[0][LF] -removed payload 472[1][LF] -Removing nodes not larger than 600[LF] -removed payload 521[0][LF] -removed payload 521[1][LF] -removed payload 521[2][LF] -removed payload 531[0][LF] -removed payload 541[0][LF] -removed payload 541[1][LF] -removed payload 580[0][LF] -removed payload 580[1][LF] -removed payload 590[0][LF] -removed payload 590[1][LF] -removed payload 590[2][LF] -removed payload 600[0][LF] -Removing nodes not larger than 700[LF] -removed payload 639[0][LF] -removed payload 649[0][LF] -removed payload 649[1][LF] -removed payload 659[0][LF] -removed payload 659[1][LF] -removed payload 659[2][LF] -removed payload 698[0][LF] -removed payload 698[1][LF] -removed payload 698[2][LF] -Removing nodes not larger than 800[LF] -removed payload 708[0][LF] -removed payload 718[0][LF] -removed payload 718[1][LF] -removed payload 757[0][LF] -removed payload 757[1][LF] -removed payload 767[0][LF] -removed payload 767[1][LF] -removed payload 767[2][LF] -removed payload 777[0][LF] -Removing nodes not larger than 900[LF] -removed payload 816[0][LF] -removed payload 826[0][LF] -removed payload 826[1][LF] -removed payload 836[0][LF] -removed payload 836[1][LF] -removed payload 836[2][LF] -removed payload 875[0][LF] -removed payload 875[1][LF] -removed payload 875[2][LF] -removed payload 885[0][LF] -removed payload 895[0][LF] -removed payload 895[1][LF] -Removing nodes not larger than 1000[LF] -removed payload 934[0][LF] -removed payload 934[1][LF] -removed payload 944[0][LF] -removed payload 944[1][LF] -removed payload 944[2][LF] -removed payload 954[0][LF] -Removing nodes not larger than 1100[LF] -removed payload 1003[0][LF] -removed payload 1003[1][LF] -removed payload 1013[0][LF] -removed payload 1013[1][LF] -removed payload 1013[2][LF] == Contents of files in the log/17/ dir after test 1309 === Start of file check-expected Result:[LF] 0.1013[3][LF] 0.1003[2][LF] 0.954[3][LF] 0.944[1][LF] 0.934[0][LF] 0.895[1][LF] 0.885[4][LF] 0.875[3][LF] 0.836[4][LF] 0.826[7][LF] 0.816[6][LF] 0.777[5][LF] 0.767[9][LF] 0.757[8][LF] 0.718[7][LF] 0.708[10][LF] 0.698[9][LF] 0.659[8][LF] 0.649[9][LF] 0.639[10][LF] 0.600[12][LF] 0.590[13][LF] 0.580[11][LF] 0.541[6][LF] 0.531[9][LF] 0.521[10][LF] 0.472[8][LF] 0.462[9][LF] 0.413[7][LF] 0.403[2][LF] 0.393[3][LF] 0.354[5][LF] 0.344[4][LF] 0.334[5][LF] 0.295[7][LF] 0.285[6][LF] 0.275[7][LF] 0.236[9][LF] 0.226[8][LF] 0.216[9][LF] 0.177[11][LF] 0.167[12][LF] 0.157[10][LF] 0.118[11][LF] 0.108[13][LF] 0.98[12][LF] 0.59[13][LF] 0.49[15][LF] 0.39[14][LF] 0.0[15][LF] Tree look:[LF] 0.1013[3][LF] 0.1003[2][LF] 0.954[3][LF] 0.944[1][LF] 0.934[0][LF] 0.895[1][LF] 0.885[4][LF] 0.875[3][LF] 0.836[4][LF] 0.826[7][LF] 0.816[6][LF] 0.777[5][LF] 0.767[9][LF] 0.757[8][LF] 0.718[7][LF] 0.708[10][LF] 0.698[9][LF] 0.659[8][LF] 0.649[9][LF] 0.639[10][LF] 0.600[12][LF] 0.590[13][LF] 0.580[11][LF] 0.541[6][LF] 0.531[9][LF] 0.521[10][LF] 0.472[8][LF] 0.462[9][LF] 0.413[7][LF] 0.403[2][LF] 0.393[3][LF] 0.354[5][LF] 0.344[4][LF] 0.334[5][LF] 0.295[7][LF] 0.285[6][LF] 0.275[7][LF] 0.236[9][LF] 0.226[8][LF] 0.216[9][LF] 0.177[11][LF] 0.167[12][LF] 0.157[10][LF] 0.118[11][LF] 0.108[13][LF] 0.98[12][LF] 0.59[13][LF] 0.49[15][LF] 0.39[14][LF] 0.0[15][LF] remove pointer 7, payload 718[LF] Tree look:[LF] 0.1013[5][LF] 0.1003[4][LF] 0.954[5][LF] 0.944[3][LF] 0.934[2][LF] 0.895[1][LF] 0.885[4][LF] 0.875[3][LF] 0.836[2][LF] 0.826[5][LF] 0.816[4][LF] 0.777[3][LF] 0.767[5][LF] 0.757[4][LF] 0.708[0][LF] 0.698[2][LF] 0.659[3][LF] 0.649[4][LF] 0.639[5][LF] 0.600[7][LF] 0.590[8][LF] 0.580[6][LF] 0.541[1][LF] 0.531[5][LF] 0.521[6][LF] 0.472[4][LF] 0.462[5][LF] 0.413[3][LF] 0.403[2][LF] 0.393[3][LF] 0.354[5][LF] 0.344[4][LF] 0.334[5][LF] 0.295[7][LF] 0.285[6][LF] 0.275[7][LF] 0.236[9][LF] 0.226[8][LF] 0.216[9][LF] 0.177[11][LF] 0.167[12][LF] 0.157[10][LF] 0.118[11][LF] 0.108[13][LF] 0.98[12][LF] 0.59[13][LF] 0.49[15][LF] 0.39[14][LF] 0.0[15][LF] remove pointer 8, payload 236[LF] Tree look:[LF] 0.1013[7][LF] 0.1003[6][LF] 0.954[7][LF] 0.944[5][LF] 0.934[4][LF] 0.895[3][LF] 0.885[6][LF] 0.875[5][LF] 0.836[4][LF] 0.826[7][LF] 0.816[6][LF] 0.777[5][LF] 0.767[7][LF] 0.757[6][LF] 0.708[2][LF] 0.698[3][LF] 0.659[4][LF] 0.649[5][LF] 0.639[6][LF] 0.600[8][LF] 0.590[9][LF] 0.580[7][LF] 0.541[1][LF] 0.531[6][LF] 0.521[7][LF] 0.472[5][LF] 0.462[6][LF] 0.413[4][LF] 0.403[3][LF] 0.393[2][LF] 0.354[5][LF] 0.344[4][LF] 0.334[3][LF] 0.295[6][LF] 0.285[5][LF] 0.275[4][LF] 0.226[0][LF] 0.216[1][LF] 0.177[3][LF] 0.167[4][LF] 0.157[2][LF] 0.118[3][LF] 0.108[5][LF] 0.98[4][LF] 0.59[5][LF] 0.49[7][LF] 0.39[6][LF] 0.0[7][LF] remove pointer 9, payload 777[LF] Tree look:[LF] 0.1013[6][LF] 0.1003[5][LF] 0.954[6][LF] 0.944[4][LF] 0.934[3][LF] 0.895[2][LF] 0.885[4][LF] 0.875[3][LF] 0.836[1][LF] 0.826[3][LF] 0.816[2][LF] 0.767[0][LF] 0.757[2][LF] 0.708[1][LF] 0.698[3][LF] 0.659[4][LF] 0.649[5][LF] 0.639[6][LF] 0.600[8][LF] 0.590[9][LF] 0.580[7][LF] 0.541[2][LF] 0.531[8][LF] 0.521[9][LF] 0.472[7][LF] 0.462[8][LF] 0.413[6][LF] 0.403[5][LF] 0.393[4][LF] 0.354[7][LF] 0.344[6][LF] 0.334[5][LF] 0.295[8][LF] 0.285[7][LF] 0.275[6][LF] 0.226[3][LF] 0.216[4][LF] 0.177[6][LF] 0.167[7][LF] 0.157[5][LF] 0.118[6][LF] 0.108[8][LF] 0.98[7][LF] 0.59[8][LF] 0.49[10][LF] 0.39[9][LF] 0.0[10][LF] remove pointer 10, payload 295[LF] Tree look:[LF] 0.1013[8][LF] 0.1003[7][LF] 0.954[8][LF] 0.944[6][LF] 0.934[5][LF] 0.895[4][LF] 0.885[6][LF] 0.875[5][LF] 0.836[3][LF] 0.826[5][LF] 0.816[4][LF] 0.767[2][LF] 0.757[3][LF] 0.708[1][LF] 0.698[3][LF] 0.659[4][LF] 0.649[5][LF] 0.639[6][LF] 0.600[8][LF] 0.590[9][LF] 0.580[7][LF] 0.541[2][LF] 0.531[8][LF] 0.521[9][LF] 0.472[7][LF] 0.462[8][LF] 0.413[6][LF] 0.403[5][LF] 0.393[4][LF] 0.354[6][LF] 0.344[5][LF] 0.334[3][LF] 0.285[0][LF] 0.275[2][LF] 0.226[1][LF] 0.216[2][LF] 0.177[4][LF] 0.167[5][LF] 0.157[3][LF] 0.118[4][LF] 0.108[6][LF] 0.98[5][LF] 0.59[6][LF] 0.49[8][LF] 0.39[7][LF] 0.0[8][LF] remove pointer 11, payload 836[LF] Tree look:[LF] 0.1013[5][LF] 0.1003[4][LF] 0.954[5][LF] 0.944[3][LF] 0.934[2][LF] 0.895[1][LF] 0.885[3][LF] 0.875[2][LF] 0.826[0][LF] 0.816[2][LF] 0.767[1][LF] 0.757[3][LF] 0.708[2][LF] 0.698[5][LF] 0.659[6][LF] 0.649[7][LF] 0.639[8][LF] 0.600[10][LF] 0.590[11][LF] 0.580[9][LF] 0.541[4][LF] 0.531[10][LF] 0.521[11][LF] 0.472[9][LF] 0.462[10][LF] 0.413[8][LF] 0.403[7][LF] 0.393[6][LF] 0.354[8][LF] 0.344[7][LF] 0.334[5][LF] 0.285[3][LF] 0.275[5][LF] 0.226[4][LF] 0.216[5][LF] 0.177[7][LF] 0.167[8][LF] 0.157[6][LF] 0.118[7][LF] 0.108[9][LF] 0.98[8][LF] 0.59[9][LF] 0.49[11][LF] 0.39[10][LF] 0.0[11][LF] remove pointer 12, payload 354[LF] Tree look:[LF] 0.1013[7][LF] 0.1003[6][LF] 0.954[7][LF] 0.944[5][LF] 0.934[4][LF] 0.895[3][LF] 0.885[5][LF] 0.875[4][LF] 0.826[2][LF] 0.816[3][LF] 0.767[1][LF] 0.757[3][LF] 0.708[2][LF] 0.698[4][LF] 0.659[5][LF] 0.649[6][LF] 0.639[7][LF] 0.600[9][LF] 0.590[10][LF] 0.580[8][LF] 0.541[3][LF] 0.531[8][LF] 0.521[9][LF] 0.472[7][LF] 0.462[8][LF] 0.413[6][LF] 0.403[5][LF] 0.393[4][LF] 0.344[0][LF] 0.334[1][LF] 0.285[2][LF] 0.275[4][LF] 0.226[3][LF] 0.216[4][LF] 0.177[6][LF] 0.167[7][LF] 0.157[5][LF] 0.118[6][LF] 0.108[8][LF] 0.98[7][LF] 0.59[8][LF] 0.49[10][LF] 0.39[9][LF] 0.0[10][LF] remove pointer 13, payload 895[LF] Tree look:[LF] 0.1013[4][LF] 0.1003[3][LF] 0.954[4][LF] 0.944[2][LF] 0.934[1][LF] 0.885[0][LF] 0.875[2][LF] 0.826[1][LF] 0.816[3][LF] 0.767[2][LF] 0.757[5][LF] 0.708[4][LF] 0.698[6][LF] 0.659[7][LF] 0.649[8][LF] 0.639[9][LF] 0.600[11][LF] 0.590[12][LF] 0.580[10][LF] 0.541[5][LF] 0.531[10][LF] 0.521[11][LF] 0.472[9][LF] 0.462[10][LF] 0.413[8][LF] 0.403[7][LF] 0.393[6][LF] 0.344[3][LF] 0.334[4][LF] 0.285[5][LF] 0.275[7][LF] 0.226[6][LF] 0.216[7][LF] 0.177[9][LF] 0.167[10][LF] 0.157[8][LF] 0.118[9][LF] 0.108[11][LF] 0.98[10][LF] 0.59[11][LF] 0.49[13][LF] 0.39[12][LF] 0.0[13][LF] remove pointer 14, payload 413[LF] Tree look:[LF] 0.1013[6][LF] 0.1003[5][LF] 0.954[6][LF] 0.944[4][LF] 0.934[3][LF] 0.885[2][LF] 0.875[3][LF] 0.826[1][LF] 0.816[3][LF] 0.767[2][LF] 0.757[5][LF] 0.708[4][LF] 0.698[5][LF] 0.659[6][LF] 0.649[7][LF] 0.639[8][LF] 0.600[10][LF] 0.590[11][LF] 0.580[9][LF] 0.541[3][LF] 0.531[5][LF] 0.521[6][LF] 0.472[4][LF] 0.462[5][LF] 0.403[0][LF] 0.393[2][LF] 0.344[1][LF] 0.334[2][LF] 0.285[3][LF] 0.275[5][LF] 0.226[4][LF] 0.216[5][LF] 0.177[7][LF] 0.167[8][LF] 0.157[6][LF] 0.118[7][LF] 0.108[9][LF] 0.98[8][LF] 0.59[9][LF] 0.49[11][LF] 0.39[10][LF] 0.0[11][LF] remove pointer 15, payload 954[LF] Tree look:[LF] 0.1013[2][LF] 0.1003[1][LF] 0.944[0][LF] 0.934[1][LF] 0.885[3][LF] 0.875[4][LF] 0.826[2][LF] 0.816[5][LF] 0.767[4][LF] 0.757[7][LF] 0.708[6][LF] 0.698[7][LF] 0.659[8][LF] 0.649[9][LF] 0.639[10][LF] 0.600[12][LF] 0.590[13][LF] 0.580[11][LF] 0.541[5][LF] 0.531[7][LF] 0.521[8][LF] 0.472[6][LF] 0.462[7][LF] 0.403[3][LF] 0.393[5][LF] 0.344[4][LF] 0.334[5][LF] 0.285[6][LF] 0.275[8][LF] 0.226[7][LF] 0.216[8][LF] 0.177[10][LF] 0.167[11][LF] 0.157[9][LF] 0.118[10][LF] 0.108[12][LF] 0.98[11][LF] 0.59[12][LF] 0.49[14][LF] 0.39[13][LF] 0.0[14][LF] remove pointer 16, payload 472[LF] Tree look:[LF] 0.1013[4][LF] 0.1003[3][LF] 0.944[2][LF] 0.934[1][LF] 0.885[3][LF] 0.875[4][LF] 0.826[2][LF] 0.816[5][LF] 0.767[4][LF] 0.757[6][LF] 0.708[5][LF] 0.698[6][LF] 0.659[7][LF] 0.649[8][LF] 0.639[9][LF] 0.600[11][LF] 0.590[12][LF] 0.580[10][LF] 0.541[3][LF] 0.531[4][LF] 0.521[5][LF] 0.462[0][LF] 0.403[1][LF] 0.393[3][LF] 0.344[2][LF] 0.334[3][LF] 0.285[4][LF] 0.275[6][LF] 0.226[5][LF] 0.216[6][LF] 0.177[8][LF] 0.167[9][LF] 0.157[7][LF] 0.118[8][LF] 0.108[10][LF] 0.98[9][LF] 0.59[10][LF] 0.49[12][LF] 0.39[11][LF] 0.0[12][LF] remove pointer 17, payload 1013[LF] Tree look:[LF] 0.1003[0][LF] 0.944[2][LF] 0.934[1][LF] 0.885[4][LF] 0.875[5][LF] 0.826[3][LF] 0.816[6][LF] 0.767[5][LF] 0.757[7][LF] 0.708[6][LF] 0.698[7][LF] 0.659[8][LF] 0.649[9][LF] 0.639[10][LF] 0.600[12][LF] 0.590[13][LF] 0.580[11][LF] 0.541[4][LF] 0.531[5][LF] 0.521[6][LF] 0.462[2][LF] 0.403[3][LF] 0.393[5][LF] 0.344[4][LF] 0.334[5][LF] 0.285[6][LF] 0.275[8][LF] 0.226[7][LF] 0.216[8][LF] 0.177[10][LF] 0.167[11][LF] 0.157[9][LF] 0.118[10][LF] 0.108[12][LF] 0.98[11][LF] 0.59[12][LF] 0.49[14][LF] 0.39[13][LF] 0.0[14][LF] remove pointer 18, payload 531[LF] Tree look:[LF] 0.1003[2][LF] 0.944[3][LF] 0.934[1][LF] 0.885[4][LF] 0.875[5][LF] 0.826[3][LF] 0.816[5][LF] 0.767[4][LF] 0.757[6][LF] 0.708[5][LF] 0.698[6][LF] 0.659[7][LF] 0.649[8][LF] 0.639[9][LF] 0.600[11][LF] 0.590[12][LF] 0.580[10][LF] 0.541[2][LF] 0.521[0][LF] 0.462[1][LF] 0.403[2][LF] 0.393[4][LF] 0.344[3][LF] 0.334[4][LF] 0.285[5][LF] 0.275[7][LF] 0.226[6][LF] 0.216[7][LF] 0.177[9][LF] 0.167[10][LF] 0.157[8][LF] 0.118[9][LF] 0.108[11][LF] 0.98[10][LF] 0.59[11][LF] 0.49[13][LF] 0.39[12][LF] 0.0[13][LF] remove pointer 19, payload 49[LF] Tree look:[LF] 0.1003[4][LF] 0.944[5][LF] 0.934[3][LF] 0.885[6][LF] 0.875[7][LF] 0.826[5][LF] 0.816[7][LF] 0.767[6][LF] 0.757[8][LF] 0.708[7][LF] 0.698[8][LF] 0.659[9][LF] 0.649[10][LF] 0.639[11][LF] 0.600[13][LF] 0.590[14][LF] 0.580[12][LF] 0.541[4][LF] 0.521[2][LF] 0.462[1][LF] 0.403[3][LF] 0.393[4][LF] 0.344[2][LF] 0.334[4][LF] 0.285[3][LF] 0.275[6][LF] 0.226[5][LF] 0.216[4][LF] 0.177[7][LF] 0.167[8][LF] 0.157[6][LF] 0.118[5][LF] 0.108[8][LF] 0.98[7][LF] 0.59[6][LF] 0.39[0][LF] 0.0[1][LF] remove pointer 20, payload 590[LF] Tree look:[LF] 0.1003[2][LF] 0.944[3][LF] 0.934[1][LF] 0.885[4][LF] 0.875[5][LF] 0.826[3][LF] 0.816[4][LF] 0.767[2][LF] 0.757[5][LF] 0.708[4][LF] 0.698[3][LF] 0.659[5][LF] 0.649[4][LF] 0.639[5][LF] 0.600[6][LF] 0.580[0][LF] 0.541[2][LF] 0.521[1][LF] 0.462[2][LF] 0.403[5][LF] 0.393[6][LF] 0.344[4][LF] 0.334[6][LF] 0.285[5][LF] 0.275[8][LF] 0.226[7][LF] 0.216[6][LF] 0.177[9][LF] 0.167[10][LF] 0.157[8][LF] 0.118[7][LF] 0.108[10][LF] 0.98[9][LF] 0.59[8][LF] 0.39[3][LF] 0.0[4][LF] remove pointer 21, payload 108[LF] Tree look:[LF] 0.1003[4][LF] 0.944[5][LF] 0.934[3][LF] 0.885[6][LF] 0.875[7][LF] 0.826[5][LF] 0.816[6][LF] 0.767[4][LF] 0.757[7][LF] 0.708[6][LF] 0.698[5][LF] 0.659[7][LF] 0.649[6][LF] 0.639[7][LF] 0.600[8][LF] 0.580[2][LF] 0.541[3][LF] 0.521[1][LF] 0.462[2][LF] 0.403[5][LF] 0.393[6][LF] 0.344[4][LF] 0.334[5][LF] 0.285[3][LF] 0.275[7][LF] 0.226[6][LF] 0.216[5][LF] 0.177[7][LF] 0.167[8][LF] 0.157[6][LF] 0.118[4][LF] 0.98[0][LF] 0.59[2][LF] 0.39[1][LF] 0.0[2][LF] remove pointer 22, payload 649[LF] Tree look:[LF] 0.1003[3][LF] 0.944[4][LF] 0.934[2][LF] 0.885[4][LF] 0.875[5][LF] 0.826[3][LF] 0.816[4][LF] 0.767[1][LF] 0.757[4][LF] 0.708[3][LF] 0.698[2][LF] 0.659[3][LF] 0.639[0][LF] 0.600[2][LF] 0.580[1][LF] 0.541[3][LF] 0.521[2][LF] 0.462[4][LF] 0.403[7][LF] 0.393[8][LF] 0.344[6][LF] 0.334[7][LF] 0.285[5][LF] 0.275[9][LF] 0.226[8][LF] 0.216[7][LF] 0.177[9][LF] 0.167[10][LF] 0.157[8][LF] 0.118[6][LF] 0.98[3][LF] 0.59[5][LF] 0.39[4][LF] 0.0[5][LF] remove pointer 23, payload 167[LF] Tree look:[LF] 0.1003[5][LF] 0.944[6][LF] 0.934[4][LF] 0.885[6][LF] 0.875[7][LF] 0.826[5][LF] 0.816[6][LF] 0.767[3][LF] 0.757[6][LF] 0.708[5][LF] 0.698[4][LF] 0.659[5][LF] 0.639[2][LF] 0.600[3][LF] 0.580[1][LF] 0.541[3][LF] 0.521[2][LF] 0.462[4][LF] 0.403[6][LF] 0.393[7][LF] 0.344[5][LF] 0.334[6][LF] 0.285[3][LF] 0.275[6][LF] 0.226[5][LF] 0.216[4][LF] 0.177[5][LF] 0.157[0][LF] 0.118[1][LF] 0.98[2][LF] 0.59[4][LF] 0.39[3][LF] 0.0[4][LF] remove pointer 24, payload 708[LF] Tree look:[LF] 0.1003[3][LF] 0.944[4][LF] 0.934[2][LF] 0.885[4][LF] 0.875[5][LF] 0.826[3][LF] 0.816[4][LF] 0.767[1][LF] 0.757[2][LF] 0.698[0][LF] 0.659[2][LF] 0.639[1][LF] 0.600[3][LF] 0.580[2][LF] 0.541[5][LF] 0.521[4][LF] 0.462[6][LF] 0.403[8][LF] 0.393[9][LF] 0.344[7][LF] 0.334[8][LF] 0.285[5][LF] 0.275[8][LF] 0.226[7][LF] 0.216[6][LF] 0.177[7][LF] 0.157[3][LF] 0.118[4][LF] 0.98[5][LF] 0.59[7][LF] 0.39[6][LF] 0.0[7][LF] remove pointer 25, payload 226[LF] Tree look:[LF] 0.1003[5][LF] 0.944[6][LF] 0.934[4][LF] 0.885[6][LF] 0.875[7][LF] 0.826[5][LF] 0.816[6][LF] 0.767[3][LF] 0.757[4][LF] 0.698[2][LF] 0.659[3][LF] 0.639[1][LF] 0.600[3][LF] 0.580[2][LF] 0.541[5][LF] 0.521[4][LF] 0.462[5][LF] 0.403[7][LF] 0.393[8][LF] 0.344[6][LF] 0.334[7][LF] 0.285[3][LF] 0.275[4][LF] 0.216[0][LF] 0.177[2][LF] 0.157[1][LF] 0.118[2][LF] 0.98[3][LF] 0.59[5][LF] 0.39[4][LF] 0.0[5][LF] remove pointer 26, payload 767[LF] Tree look:[LF] 0.1003[2][LF] 0.944[3][LF] 0.934[1][LF] 0.885[3][LF] 0.875[4][LF] 0.826[2][LF] 0.816[3][LF] 0.757[0][LF] 0.698[1][LF] 0.659[3][LF] 0.639[2][LF] 0.600[5][LF] 0.580[4][LF] 0.541[7][LF] 0.521[6][LF] 0.462[7][LF] 0.403[9][LF] 0.393[10][LF] 0.344[8][LF] 0.334[9][LF] 0.285[5][LF] 0.275[6][LF] 0.216[3][LF] 0.177[5][LF] 0.157[4][LF] 0.118[5][LF] 0.98[6][LF] 0.59[8][LF] 0.39[7][LF] 0.0[8][LF] remove pointer 27, payload 285[LF] Tree look:[LF] 0.1003[4][LF] 0.944[5][LF] 0.934[3][LF] 0.885[5][LF] 0.875[6][LF] 0.826[4][LF] 0.816[5][LF] 0.757[2][LF] 0.698[1][LF] 0.659[3][LF] 0.639[2][LF] 0.600[4][LF] 0.580[3][LF] 0.541[5][LF] 0.521[4][LF] 0.462[5][LF] 0.403[7][LF] 0.393[8][LF] 0.344[6][LF] 0.334[7][LF] 0.275[0][LF] 0.216[1][LF] 0.177[3][LF] 0.157[2][LF] 0.118[3][LF] 0.98[4][LF] 0.59[6][LF] 0.39[5][LF] 0.0[6][LF] remove pointer 28, payload 826[LF] Tree look:[LF] 0.1003[2][LF] 0.944[3][LF] 0.934[1][LF] 0.885[2][LF] 0.875[3][LF] 0.816[0][LF] 0.757[1][LF] 0.698[2][LF] 0.659[5][LF] 0.639[4][LF] 0.600[6][LF] 0.580[5][LF] 0.541[7][LF] 0.521[6][LF] 0.462[7][LF] 0.403[9][LF] 0.393[10][LF] 0.344[8][LF] 0.334[9][LF] 0.275[3][LF] 0.216[4][LF] 0.177[6][LF] 0.157[5][LF] 0.118[6][LF] 0.98[7][LF] 0.59[9][LF] 0.39[8][LF] 0.0[9][LF] remove pointer 29, payload 344[LF] Tree look:[LF] 0.1003[4][LF] 0.944[5][LF] 0.934[3][LF] 0.885[4][LF] 0.875[5][LF] 0.816[2][LF] 0.757[1][LF] 0.698[2][LF] 0.659[5][LF] 0.639[4][LF] 0.600[5][LF] 0.580[3][LF] 0.541[6][LF] 0.521[5][LF] 0.462[4][LF] 0.403[5][LF] 0.393[6][LF] 0.334[0][LF] 0.275[1][LF] 0.216[2][LF] 0.177[4][LF] 0.157[3][LF] 0.118[4][LF] 0.98[5][LF] 0.59[7][LF] 0.39[6][LF] 0.0[7][LF] remove pointer 30, payload 885[LF] Tree look:[LF] 0.1003[2][LF] 0.944[3][LF] 0.934[1][LF] 0.875[0][LF] 0.816[1][LF] 0.757[2][LF] 0.698[4][LF] 0.659[7][LF] 0.639[6][LF] 0.600[7][LF] 0.580[5][LF] 0.541[8][LF] 0.521[7][LF] 0.462[6][LF] 0.403[7][LF] 0.393[8][LF] 0.334[3][LF] 0.275[4][LF] 0.216[5][LF] 0.177[7][LF] 0.157[6][LF] 0.118[7][LF] 0.98[8][LF] 0.59[10][LF] 0.39[9][LF] 0.0[10][LF] remove pointer 31, payload 403[LF] Tree look:[LF] 0.1003[4][LF] 0.944[5][LF] 0.934[3][LF] 0.875[2][LF] 0.816[1][LF] 0.757[2][LF] 0.698[4][LF] 0.659[6][LF] 0.639[5][LF] 0.600[6][LF] 0.580[3][LF] 0.541[6][LF] 0.521[5][LF] 0.462[4][LF] 0.393[0][LF] 0.334[1][LF] 0.275[2][LF] 0.216[3][LF] 0.177[5][LF] 0.157[4][LF] 0.118[5][LF] 0.98[6][LF] 0.59[8][LF] 0.39[7][LF] 0.0[8][LF] remove pointer 32, payload 944[LF] Tree look:[LF] 0.1003[1][LF] 0.934[0][LF] 0.875[2][LF] 0.816[1][LF] 0.757[3][LF] 0.698[5][LF] 0.659[7][LF] 0.639[6][LF] 0.600[7][LF] 0.580[4][LF] 0.541[7][LF] 0.521[6][LF] 0.462[5][LF] 0.393[2][LF] 0.334[3][LF] 0.275[4][LF] 0.216[5][LF] 0.177[7][LF] 0.157[6][LF] 0.118[7][LF] 0.98[8][LF] 0.59[10][LF] 0.39[9][LF] 0.0[10][LF] remove pointer 33, payload 462[LF] Tree look:[LF] 0.1003[3][LF] 0.934[2][LF] 0.875[3][LF] 0.816[1][LF] 0.757[3][LF] 0.698[4][LF] 0.659[6][LF] 0.639[5][LF] 0.600[6][LF] 0.580[2][LF] 0.541[4][LF] 0.521[3][LF] 0.393[0][LF] 0.334[1][LF] 0.275[2][LF] 0.216[3][LF] 0.177[5][LF] 0.157[4][LF] 0.118[5][LF] 0.98[6][LF] 0.59[8][LF] 0.39[7][LF] 0.0[8][LF] remove pointer 34, payload 1003[LF] Tree look:[LF] 0.934[0][LF] 0.875[2][LF] 0.816[1][LF] 0.757[4][LF] 0.698[5][LF] 0.659[7][LF] 0.639[6][LF] 0.600[7][LF] 0.580[3][LF] 0.541[5][LF] 0.521[4][LF] 0.393[2][LF] 0.334[3][LF] 0.275[4][LF] 0.216[5][LF] 0.177[7][LF] 0.157[6][LF] 0.118[7][LF] 0.98[8][LF] 0.59[10][LF] 0.39[9][LF] 0.0[10][LF] remove pointer 35, payload 521[LF] Tree look:[LF] 0.934[2][LF] 0.875[3][LF] 0.816[1][LF] 0.757[3][LF] 0.698[4][LF] 0.659[6][LF] 0.639[5][LF] 0.600[6][LF] 0.580[2][LF] 0.541[3][LF] 0.393[0][LF] 0.334[1][LF] 0.275[2][LF] 0.216[3][LF] 0.177[5][LF] 0.157[4][LF] 0.118[5][LF] 0.98[6][LF] 0.59[8][LF] 0.39[7][LF] 0.0[8][LF] remove pointer 36, payload 39[LF] Tree look:[LF] 0.934[4][LF] 0.875[5][LF] 0.816[3][LF] 0.757[5][LF] 0.698[6][LF] 0.659[8][LF] 0.639[7][LF] 0.600[8][LF] 0.580[4][LF] 0.541[5][LF] 0.393[2][LF] 0.334[1][LF] 0.275[3][LF] 0.216[2][LF] 0.177[5][LF] 0.157[4][LF] 0.118[3][LF] 0.98[4][LF] 0.59[5][LF] 0.0[0][LF] remove pointer 37, payload 580[LF] Tree look:[LF] 0.934[2][LF] 0.875[3][LF] === File too long: 136 lines omitted here remove pointer 45, payload 816[LF] Tree look:[LF] 0.934[1][LF] 0.875[2][LF] 0.659[0][LF] 0.600[1][LF] 0.541[4][LF] 0.393[5][LF] 0.334[3][LF] 0.177[2][LF] 0.118[3][LF] 0.59[4][LF] 0.0[5][LF] remove pointer 46, payload 334[LF] Tree look:[LF] 0.934[3][LF] 0.875[4][LF] 0.659[2][LF] 0.600[1][LF] 0.541[2][LF] 0.393[3][LF] 0.177[0][LF] 0.118[1][LF] 0.59[2][LF] 0.0[3][LF] remove pointer 47, payload 875[LF] Tree look:[LF] 0.934[1][LF] 0.659[0][LF] 0.600[1][LF] 0.541[3][LF] 0.393[4][LF] 0.177[2][LF] 0.118[3][LF] 0.59[4][LF] 0.0[5][LF] remove pointer 48, payload 393[LF] Tree look:[LF] 0.934[3][LF] 0.659[2][LF] 0.600[1][LF] 0.541[2][LF] 0.177[0][LF] 0.118[1][LF] 0.59[2][LF] 0.0[3][LF] remove pointer 49, payload 934[LF] Tree look:[LF] 0.659[0][LF] 0.600[1][LF] 0.541[3][LF] 0.177[2][LF] 0.118[3][LF] 0.59[4][LF] 0.0[5][LF] remove pointer 0, payload 0[LF] Tree look:[LF] 0.659[1][LF] 0.600[0][LF] 0.541[3][LF] 0.177[2][LF] 0.118[1][LF] 0.59[2][LF] remove pointer 1, payload 541[LF] Tree look:[LF] 0.659[2][LF] 0.600[1][LF] 0.177[0][LF] 0.118[1][LF] 0.59[2][LF] remove pointer 2, payload 59[LF] Tree look:[LF] 0.659[3][LF] 0.600[2][LF] 0.177[1][LF] 0.118[0][LF] remove pointer 3, payload 600[LF] Tree look:[LF] 0.659[1][LF] 0.177[0][LF] 0.118[1][LF] remove pointer 4, payload 118[LF] Tree look:[LF] 0.659[1][LF] 0.177[0][LF] remove pointer 5, payload 659[LF] Tree look:[LF] 0.177[0][LF] remove pointer 6, payload 177[LF] Removing nodes not larger than 0[LF] removed payload 0[0][LF] Removing nodes not larger than 100[LF] removed payload 39[0][LF] removed payload 49[0][LF] removed payload 49[1][LF] removed payload 59[0][LF] removed payload 59[1][LF] removed payload 59[2][LF] removed payload 98[0][LF] removed payload 98[1][LF] removed payload 98[2][LF] Removing nodes not larger than 200[LF] removed payload 108[0][LF] removed payload 118[0][LF] removed payload 118[1][LF] removed payload 157[0][LF] removed payload 157[1][LF] removed payload 167[0][LF] removed payload 167[1][LF] removed payload 167[2][LF] removed payload 177[0][LF] Removing nodes not larger than 300[LF] removed payload 216[0][LF] removed payload 226[0][LF] removed payload 226[1][LF] removed payload 236[0][LF] removed payload 236[1][LF] removed payload 236[2][LF] removed payload 275[0][LF] removed payload 275[1][LF] removed payload 275[2][LF] removed payload 285[0][LF] removed payload 295[0][LF] removed payload 295[1][LF] Removing nodes not larger than 400[LF] removed payload 334[0][LF] removed payload 334[1][LF] removed payload 344[0][LF] removed payload 344[1][LF] removed payload 344[2][LF] removed payload 354[0][LF] removed payload 393[0][LF] Removing nodes not larger than 500[LF] removed payload 403[0][LF] removed payload 403[1][LF] removed payload 413[0][LF] removed payload 413[1][LF] removed payload 413[2][LF] removed payload 462[0][LF] removed payload 472[0][LF] removed payload 472[1][LF] Removing nodes not larger than 600[LF] removed payload 521[0][LF] removed payload 521[1][LF] removed payload 521[2][LF] removed payload 531[0][LF] removed payload 541[0][LF] removed payload 541[1][LF] removed payload 580[0][LF] removed payload 580[1][LF] removed payload 590[0][LF] removed payload 590[1][LF] removed payload 590[2][LF] removed payload 600[0][LF] Removing nodes not larger than 700[LF] removed payload 639[0][LF] removed payload 649[0][LF] removed payload 649[1][LF] removed payload 659[0][LF] removed payload 659[1][LF] removed payload 659[2][LF] removed payload 698[0][LF] removed payload 698[1][LF] removed payload 698[2][LF] Removing nodes not larger than 800[LF] removed payload 708[0][LF] removed payload 718[0][LF] removed payload 718[1][LF] removed payload 757[0][LF] removed payload 757[1][LF] removed payload 767[0][LF] removed payload 767[1][LF] removed payload 767[2][LF] removed payload 777[0][LF] Removing nodes not larger than 900[LF] removed payload 816[0][LF] removed payload 826[0][LF] removed payload 826[1][LF] removed payload 836[0][LF] removed payload 836[1][LF] removed payload 836[2][LF] removed payload 875[0][LF] removed payload 875[1][LF] removed payload 875[2][LF] removed payload 885[0][LF] removed payload 895[0][LF] removed payload 895[1][LF] Removing nodes not larger than 1000[LF] removed payload 934[0][LF] removed payload 934[1][LF] removed payload 944[0][LF] removed payload 944[1][LF] removed payload 944[2][LF] removed payload 954[0][LF] Removing nodes not larger than 1100[LF] removed payload 1003[0][LF] removed payload 1003[1][LF] removed payload 1013[0][LF] removed payload 1013[1][LF] removed payload 1013[2][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1309 ./unit/units unit1309 - > log/17/stdout1309 2> log/17/stderr1309 === End of file commands.log === Start of file server.cmd Testnum 1309 === End of file server.cmd === Start of file stderr1309 URL: - === End of file stderr1309 === Start of file valgrind1309 ==143933== ==143933== Process terminating with default action of signal 4 (SIGILL) ==143933== Illegal opcode at address 0x400CF47 ==143933== at 0x400CF47: test_unit1309.lto_priv.0 (unit1309.c:81) ==143933== by 0x400A15E: main (first.c:167) ==143933== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x532FFA5: __tsearch (tsearch.c:337) ==143933== by 0x532FFA5: tsearch (tsearch.c:290) ==143933== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143933== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143933== by 0x52423F0: add_alias (gconv_conf.c:178) ==143933== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143933== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143933== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== ==143933== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x532FFA5: __tsearch (tsearch.c:337) ==143933== by 0x532FFA5: tsearch (tsearch.c:290) ==143933== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143933== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143933== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== ==143933== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143933== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143933== by 0x52423F0: add_alias (gconv_conf.c:178) ==143933== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143933== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==143933== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== ==143933== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143933== by 0x524274A: add_alias2 (gconv_conf.c:105) ==143933== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== ==143933== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x532FFA5: __tsearch (tsearch.c:337) ==143933== by 0x532FFA5: tsearch (tsearch.c:290) ==143933== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==143933== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143933== by 0x52423F0: add_alias (gconv_conf.c:178) ==143933== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143933== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143933== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== ==143933== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==143933== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==143933== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==143933== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==143933== by 0x52423F0: add_alias (gconv_conf.c:178) ==143933== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==143933== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==143933== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==143933== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==143933== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==143933== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==143933== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==143933== by 0x524D142: setlocale (setlocale.c:337) ==143933== by 0x400A0CB: main (first.c:123) ==143933== === End of file valgrind1309 test 1312...[HTTP GET with -J, Content-Disposition and ; in filename] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1312 ../src/curl -q --trace-ascii log/8/trace1312 --trace-config all --trace-time 127.0.0.1:45261/1312 -J -O --output-dir log/8 > log/8/stdout1312 2> log/8/stderr1312 1312: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1312 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1312 ../src/curl -q --trace-ascii log/8/trace1312 --trace-config all --trace-time 127.0.0.1:45261/1312 -J -O --output-dir log/8 > log/8/stdout1312 2> log/8/stderr1312 === End of file commands.log === Start of file http_server.log 07:36:03.220265 ====> Client connect 07:36:03.220300 accept_connection 3 returned 4 07:36:03.220317 accept_connection 3 returned 0 07:36:03.220331 Read 93 bytes 07:36:03.220341 Process 93 bytes request 07:36:03.220353 Got request: GET /verifiedserver HTTP/1.1 07:36:03.220362 Are-we-friendly question received 07:36:03.220390 Wrote request (93 bytes) input to log/8/server.input 07:36:03.220406 Identifying ourselves as friends 07:36:03.220466 Response sent (56 bytes) and written to log/8/server.response 07:36:03.220476 special request received, no persistency 07:36:03.220484 ====> Client disconnect 0 === End of file http_CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1318 ../src/curl -q --output log/9/curl1318.out --include --trace-ascii log/9/trace1318 --trace-config all --trace-time --resolve MiXeDcAsE.cOm:34999:127.0.0.1 http://MiXeDcAsE.cOm:34999/1318 http://mixedcase.com:34999/13180001 > log/9/stdout1318 2> log/9/stderr1318 server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1312 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1312 ==144077== ==144077== Process terminating with default action of signal 4 (SIGILL) ==144077== Illegal opcode at address 0x4003082 ==144077== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144077== by 0x4003082: main (tool_main.c:234) === End of file valgrind1312 test 1314...[HTTP Location: following a // prefixed url] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1314 ../src/curl -q --output log/10/curl1314.out --include --trace-ascii log/10/trace1314 --trace-config all --trace-time http://firstplace.example.com/want/1314 -L -x http://127.0.0.1:34851 > log/10/stdout1314 2> log/10/stderr1314 1314: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1314 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1314 ../src/curl -q --output log/10/curl1314.out --include --trace-ascii log/10/trace1314 --trace-config all --trace-time http://firstplace.example.com/want/1314 -L -x http://127.0.0.1:34851 > log/10/stdout1314 2> log/10/stderr1314 === End of file commands.log === Start of file http_server.log 07:36:03.271028 ====> Client connect 07:36:03.271063 accept_connection 3 returned 4 07:36:03.271081 accept_connection 3 returned 0 07:36:03.271096 Read 93 bytes 07:36:03.271107 Process 93 bytes request 07:36:03.271120 Got request: GET /verifiedserver HTTP/1.1 07:36:03.271129 Are-we-friendly question received 07:36:03.271155 Wrote request (93 bytes) input to log/10/server.input 07:36:03.271172 Identifying ourselves as friends 07:36:03.271234 Response sent (56 bytes) and written to log/10/server.response 07:36:03.271246 special request received, no persistency 07:36:03.271255 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1314 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1314 ==144251== ==144251== Process terminating with default action of signal 4 (SIGILL) ==144251== Illegal opcode at address 0x4003082 ==144251== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144251== by 0x4003082: main (tool_main.c:234) === End of file valgrind1314 test 1313...[HTTP GET with -J, Content-Disposition, uneven quotes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1313 ../src/curl -q --trace-ascii log/20/trace1313 --trace-config all --trace-time http://127.0.0.1:37169/1313 -J -O --output-dir log/20 > log/20/stdout1313 2> log/20/stderr1313 1313: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1313 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1313 ../src/curl -q --trace-ascii log/20/trace1313 --trace-config all --trace-time http://127.0.0.1:37169/1313 -J -O --output-dir log/20 > log/20/stdout1313 2> log/20/stderr1313 === End of file commands.log === Start of file http_server.log 07:36:03.261131 ====> Client connect 07:36:03.261168 accept_connection 3 returned 4 07:36:03.261186 accept_connection 3 returned 0 07:36:03.261201 Read 93 bytes 07:36:03.261211 Process 93 bytes request 07:36:03.261225 Got request: GET /verifiedserver HTTP/1.1 07:36:03.261234 Are-we-friendly question received 07:36:03.261259 Wrote request (93 bytes) input to log/20/server.input 07:36:03.261276 Identifying ourselves as friends 07:36:03.261332 Response sent (56 bytes) and written to log/20/server.response 07:36:03.261343 special request received, no persistency 07:36:03.261352 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1313 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1313 ==144225== ==144225== Process terminating with default action of signal 4 (SIGILL) ==144225== Illegal opcode at address 0x4003082 ==144225== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144225== by 0x4003082: main (tool_main.c:234) === End of file valgrind1313 test 1318...[HTTP with --resolve and same host name using different cases] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1318 ../src/curl -q --output log/9/curl1318.out --include --trace-ascii log/9/trace1318 --trace-config all --trace-time --resolve MiXeDcAsE.cOm:34999:127.0.0.1 http://MiXeDcAsE.cOm:34999/1318 http://mixedcase.com:34999/13180001 > log/9/stdout1318 2> log/9/stderr1318 1318: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1318 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1318 ../src/curl -q --output log/9/curl1318.out --include --trace-ascii log/9/trace1318 --trace-config all --trace-time --resolve MiXeDcAsE.cOm:34999:127.0.0.1 http://MiXeDcAsE.cOm:34999/1318 http://mixedcase.com:34999/13180001 > log/9/stdout1318 2> log/9/stderr1318 === End of file commands.log === Start of file http_server.log 07:36:03.478793 ====> Client connect 07:36:03.478823 accept_connection 3 returned 4 07:36:03.478839 accept_connection 3 returned 0 07:36:03.478853 Read 93 bytes 07:36:03.478862 Process 93 bytes request 07:36:03.478874 Got request: GET /verifiedserver HTTP/1.1 07:36:03.478883 Are-we-friendly question received 07:36:03.478904 Wrote request (93 bytes) input to loCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1317 ../src/curl -q --output log/2/curl1317.out --include --trace-ascii log/2/trace1317 --trace-config all --trace-time --resolve example.com:45457:127.0.0.1 http://example.com:45457/1317 > log/2/stdout1317 2> log/2/stderr1317 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1325 ../src/curl -q --output log/5/curl1325.out --include --trace-ascii log/5/trace1325 --trace-config all --trace-time http://127.0.0.1:46675/we/1325 -L -d "moo" > log/5/stdout1325 2> log/5/stderr1325 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1322 ../src/curl -q --output log/24/curl1322.out --include --trace-ascii log/24/trace1322 --trace-config all --trace-time --ipv4 --resolve example.com.:38675:127.0.0.1 http://example.com.:38675/1322 > log/24/stdout1322 2> log/24/stderr1322 g/9/server.input 07:36:03.478918 Identifying ourselves as friends 07:36:03.478979 Response sent (56 bytes) and written to log/9/server.response 07:36:03.478988 special request received, no persistency 07:36:03.478996 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1318 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1318 ==144589== ==144589== Process terminating with default action of signal 4 (SIGILL) ==144589== Illegal opcode at address 0x4003082 ==144589== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144589== by 0x4003082: main (tool_main.c:234) === End of file valgrind1318 test 1317...[HTTP with --resolve] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1317 ../src/curl -q --output log/2/curl1317.out --include --trace-ascii log/2/trace1317 --trace-config all --trace-time --resolve example.com:45457:127.0.0.1 http://example.com:45457/1317 > log/2/stdout1317 2> log/2/stderr1317 1317: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1317 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1317 ../src/curl -q --output log/2/curl1317.out --include --trace-ascii log/2/trace1317 --trace-config all --trace-time --resolve example.com:45457:127.0.0.1 http://example.com:45457/1317 > log/2/stdout1317 2> log/2/stderr1317 === End of file commands.log === Start of file http_server.log 07:36:03.428898 ====> Client connect 07:36:03.428931 accept_connection 3 returned 4 07:36:03.428946 accept_connection 3 returned 0 07:36:03.429070 Read 93 bytes 07:36:03.429083 Process 93 bytes request 07:36:03.429096 Got request: GET /verifiedserver HTTP/1.1 07:36:03.429105 Are-we-friendly question received 07:36:03.429131 Wrote request (93 bytes) input to log/2/server.input 07:36:03.429147 Identifying ourselves as friends 07:36:03.429198 Response sent (56 bytes) and written to log/2/server.response 07:36:03.429207 special request received, no persistency 07:36:03.429216 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1317 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1317 ==144427== ==144427== Process terminating with default action of signal 4 (SIGILL) ==144427== Illegal opcode at address 0x4003082 ==144427== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144427== by 0x4003082: main (tool_main.c:234) === End of file valgrind1317 test 1325...[HTTP 308-redirect with POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1325 ../src/curl -q --output log/5/curl1325.out --include --trace-ascii log/5/trace1325 --trace-config all --trace-time http://127.0.0.1:46675/we/1325 -L -d "moo" > log/5/stdout1325 2> log/5/stderr1325 1325: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1325 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1325 ../src/curl -q --output log/5/curl1325.out --include --trace-ascii log/5/trace1325 --trace-config all --trace-time http://127.0.0.1:46675/we/1325 -L -d "moo" > log/5/stdout1325 2> log/5/stderr1325 === End of file commands.log === Start of file http_server.log 07:36:03.497962 ====> Client connect 07:36:03.498003 accept_connection 3 returned 4 07:36:03.498018 accept_connection 3 returned 0 07:36:03.498030 Read 93 bytes 07:36:03.498039 Process 93 bytes request 07:36:03.498051 Got request: GET /verifiedserver HTTP/1.1 07:36:03.498059 Are-we-friendly question received 07:36:03.498080 Wrote request (93 bytes) input to log/5/server.input 07:36:03.498095 Identifying ourselves as friends 07:36:03.498145 Response sent (56 bytes) and written to log/5/server.response 07:36:03.498155 special request received, no persistency 07:36:03.498163 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1325 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1325 ==144658== ==144658== Process terminating with default action of signal 4 (SIGILL) ==144658== Illegal opcode at address 0x4003082 ==144658== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144658== by 0x4003082: main (tool_main.c:234) === End of file valgrind1325 test 1322...[HTTP with --resolve and hostname with trailing dot] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1322 ../src/curl -q --output log/24/curl1322.out --include --trace-ascii log/24/trace1322 --trace-config all --trace-time --ipv4 --resolve example.com.:38675:127.0.0.1 http://example.com.:38675/1322 > log/24/stdout1322 2> log/24/stderr1322 1322: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1322 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1322 ../src/curl -q --output log/24/curl1322.out --include --trace-ascii log/24/trace1322 --trace-config all --trace-time --ipv4 --resolve example.com.:38675:127.0.0.1 http://example.com.:38675/1322 > log/24/stdout1322 2> log/24/stderr1322 === End of file commands.log === Start of file http_server.log 07:36:03.489224 ====> Client connect 07:36:03.489254 accept_connection 3 returned 4 07:36:03.489268 accept_connection 3 returned 0 07:36:03.489281 Read 93 bytes 07:36:03.489373 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1329 ../src/curl -q --output log/23/curl1329.out --include --trace-ascii log/23/trace1329 --trace-config all --trace-time http://127.0.0.1:45701/we/want/that/page/1329 -x "/server" > log/23/stdout1329 2> log/23/stderr1329 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1323 ./unit/units unit1323 - > log/16/stdout1323 2> log/16/stderr1323 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1328 ../src/curl -q --output log/12/curl1328.out --include --trace-ascii log/12/trace1328 --trace-config all --trace-time -f 'http://127.0.0.1:37285/[13280000-13280001]' -o log/12/#1 > log/12/stdout1328 2> log/12/stderr1328 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1326 ../src/curl -q --output log/14/curl1326.out --include --trace-ascii log/14/trace1326 --trace-config all --trace-time telnet://127.0.0.1:37963 --upload-file - log/14/stdout1326 2> log/14/stderr1326 Process 93 bytes request 07:36:03.489387 Got request: GET /verifiedserver HTTP/1.1 07:36:03.489395 Are-we-friendly question received 07:36:03.489420 Wrote request (93 bytes) input to log/24/server.input 07:36:03.489434 Identifying ourselves as friends 07:36:03.489489 Response sent (56 bytes) and written to log/24/server.response 07:36:03.489498 special request received, no persistency 07:36:03.489506 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1322 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1322 ==144616== ==144616== Process terminating with default action of signal 4 (SIGILL) ==144616== Illegal opcode at address 0x4003082 ==144616== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144616== by 0x4003082: main (tool_main.c:234) === End of file valgrind1322 test 1329...[/-prefixed proxy name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1329 ../src/curl -q --output log/23/curl1329.out --include --trace-ascii log/23/trace1329 --trace-config all --trace-time http://127.0.0.1:45701/we/want/that/page/1329 -x "/server" > log/23/stdout1329 2> log/23/stderr1329 curl returned 132, when expecting 5 1329: exit FAILED == Contents of files in the log/23/ dir after test 1329 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1329 ../src/curl -q --output log/23/curl1329.out --include --trace-ascii log/23/trace1329 --trace-config all --trace-time http://127.0.0.1:45701/we/want/that/page/1329 -x "/server" > log/23/stdout1329 2> log/23/stderr1329 === End of file commands.log === Start of file http_server.log 07:36:03.533095 ====> Client connect 07:36:03.533126 accept_connection 3 returned 4 07:36:03.533142 accept_connection 3 returned 0 07:36:03.533154 Read 93 bytes 07:36:03.533164 Process 93 bytes request 07:36:03.533175 Got request: GET /verifiedserver HTTP/1.1 07:36:03.533184 Are-we-friendly question received 07:36:03.533206 Wrote request (93 bytes) input to log/23/server.input 07:36:03.533222 Identifying ourselves as friends 07:36:03.533273 Response sent (56 bytes) and written to log/23/server.response 07:36:03.533283 special request received, no persistency 07:36:03.533291 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1329 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1329 ==144805== ==144805== Process terminating with default action of signal 4 (SIGILL) ==144805== Illegal opcode at address 0x4003082 ==144805== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144805== by 0x4003082: main (tool_main.c:234) === End of file valgrind1329 * starts no server test 1323...[curlx_tvdiff] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1323 ./unit/units unit1323 - > log/16/stdout1323 2> log/16/stderr1323 -------e-v- OK (1230 out of 1707, remaining: 00:29, took 0.544s, duration: 01:15) test 1328...[HTTP GET a globbed range with -f] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1328 ../src/curl -q --output log/12/curl1328.out --include --trace-ascii log/12/trace1328 --trace-config all --trace-time -f 'http://127.0.0.1:37285/[13280000-13280001]' -o log/12/#1 > log/12/stdout1328 2> log/12/stderr1328 1328: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1328 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1328 ../src/curl -q --output log/12/curl1328.out --include --trace-ascii log/12/trace1328 --trace-config all --trace-time -f 'http://127.0.0.1:37285/[13280000-13280001]' -o log/12/#1 > log/12/stdout1328 2> log/12/stderr1328 === End of file commands.log === Start of file http_server.log 07:36:03.528219 ====> Client connect 07:36:03.528252 accept_connection 3 returned 4 07:36:03.528269 accept_connection 3 returned 0 07:36:03.528282 Read 93 bytes 07:36:03.528292 Process 93 bytes request 07:36:03.528306 Got request: GET /verifiedserver HTTP/1.1 07:36:03.528316 Are-we-friendly question received 07:36:03.528339 Wrote request (93 bytes) input to log/12/server.input 07:36:03.528355 Identifying ourselves as friends 07:36:03.528411 Response sent (56 bytes) and written to log/12/server.response 07:36:03.528421 special request received, no persistency 07:36:03.528429 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1328 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1328 ==144803== ==144803== Process terminating with default action of signal 4 (SIGILL) ==144803== Illegal opcode at address 0x4003082 ==144803== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144803== by 0x4003082: main (tool_main.c:234) === End of file valgrind1328 test 1326...[TELNET to HTTP server] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1326 ../src/curl -q --output log/14/curl1326.out --include --trace-ascii log/14/trace1326 --trace-config all --trace-time telnet://127.0.0.1:37963 --upload-file - log/14/stdout1326 2> log/14/stderr1326 1326: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1326 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1331 ../src/curl -q --output log/11/curl1331.out --include --trace-ascii log/11/trace1331 --trace-config all --trace-time -U myname:mypassword -x 127.0.0.1:41173 http://z.x.com/1331 --proxy-anyauth -c log/11/dump1331 > log/11/stdout1331 2> log/11/stderr1331 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1332 ../src/curl -q --output log/4/curl1332.out --include --trace-ascii log/4/trace1332 --trace-config all --trace-time http://127.0.0.1:33235/blah/1332 -L -d "moo" --post303 > log/4/stdout1332 2> log/4/stderr1332 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1334 ../src/curl -q --trace-ascii log/15/trace1334 --trace-config all --trace-time http://127.0.0.1:36993/1334 -O -D log/15/heads1334 --output-dir log/15 > log/15/stdout1334 2> log/15/stderr1334 og/14/valgrind1326 ../src/curl -q --output log/14/curl1326.out --include --trace-ascii log/14/trace1326 --trace-config all --trace-time telnet://127.0.0.1:37963 --upload-file - log/14/stdout1326 2> log/14/stderr1326 === End of file commands.log === Start of file http_server.log 07:36:03.515194 ====> Client connect 07:36:03.515220 accept_connection 3 returned 4 07:36:03.515233 accept_connection 3 returned 0 07:36:03.515243 Read 93 bytes 07:36:03.515251 Process 93 bytes request 07:36:03.515261 Got request: GET /verifiedserver HTTP/1.1 07:36:03.515268 Are-we-friendly question received 07:36:03.515286 Wrote request (93 bytes) input to log/14/server.input 07:36:03.515299 Identifying ourselves as friends 07:36:03.515338 Response sent (56 bytes) and written to log/14/server.response 07:36:03.515345 special request received, no persistency 07:36:03.515352 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1326 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stdin-for-1326 GET /we/want/1326 HTTP/1.0 === End of file stdin-for-1326 === Start of file valgrind1326 ==144734== ==144734== Process terminating with default action of signal 4 (SIGILL) ==144734== Illegal opcode at address 0x4003082 ==144734== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144734== by 0x4003082: main (tool_main.c:234) === End of file valgrind1326 test 1331...[HTTP --proxy-anyauth and 407 with cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1331 ../src/curl -q --output log/11/curl1331.out --include --trace-ascii log/11/trace1331 --trace-config all --trace-time -U myname:mypassword -x 127.0.0.1:41173 http://z.x.com/1331 --proxy-anyauth -c log/11/dump1331 > log/11/stdout1331 2> log/11/stderr1331 1331: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1331 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1331 ../src/curl -q --output log/11/curl1331.out --include --trace-ascii log/11/trace1331 --trace-config all --trace-time -U myname:mypassword -x 127.0.0.1:41173 http://z.x.com/1331 --proxy-anyauth -c log/11/dump1331 > log/11/stdout1331 2> log/11/stderr1331 === End of file commands.log === Start of file http_server.log 07:36:03.620498 ====> Client connect 07:36:03.620576 accept_connection 3 returned 4 07:36:03.620592 accept_connection 3 returned 0 07:36:03.620607 Read 93 bytes 07:36:03.620616 Process 93 bytes request 07:36:03.620630 Got request: GET /verifiedserver HTTP/1.1 07:36:03.620639 Are-we-friendly question received 07:36:03.620664 Wrote request (93 bytes) input to log/11/server.input 07:36:03.620680 Identifying ourselves as friends 07:36:03.620740 Response sent (56 bytes) and written to log/11/server.response 07:36:03.620750 special request received, no persistency 07:36:03.620758 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1331 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1331 ==144967== ==144967== Process terminating with default action of signal 4 (SIGILL) ==144967== Illegal opcode at address 0x4003082 ==144967== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==144967== by 0x4003082: main (tool_main.c:234) === End of file valgrind1331 test 1332...[HTTP POST with 303 redirect and --post303] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1332 ../src/curl -q --output log/4/curl1332.out --include --trace-ascii log/4/trace1332 --trace-config all --trace-time http://127.0.0.1:33235/blah/1332 -L -d "moo" --post303 > log/4/stdout1332 2> log/4/stderr1332 1332: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1332 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1332 ../src/curl -q --output log/4/curl1332.out --include --trace-ascii log/4/trace1332 --trace-config all --trace-time http://127.0.0.1:33235/blah/1332 -L -d "moo" --post303 > log/4/stdout1332 2> log/4/stderr1332 === End of file commands.log === Start of file http_server.log 07:36:03.756317 ====> Client connect 07:36:03.756347 accept_connection 3 returned 4 07:36:03.756362 accept_connection 3 returned 0 07:36:03.756375 Read 93 bytes 07:36:03.756382 Process 93 bytes request 07:36:03.756393 Got request: GET /verifiedserver HTTP/1.1 07:36:03.756400 Are-we-friendly question received 07:36:03.756419 Wrote request (93 bytes) input to log/4/server.input 07:36:03.756432 Identifying ourselves as friends 07:36:03.756475 Response sent (56 bytes) and written to log/4/server.response 07:36:03.756482 special request received, no persistency 07:36:03.756489 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1332 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1332 ==145040== ==145040== Process terminating with default action of signal 4 (SIGILL) ==145040== Illegal opcode at address 0x4003082 ==145040== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145040== by 0x4003082: main (tool_main.c:234) === End of file valgrind1332 test 1334...[HTTP GET with -O without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1334 ../src/curl -q --trace-ascii log/15/trace1334 --trace-config all --trace-time http://127.0.0.1:36993/1334 -O -D log/15/heads1334 --output-dir log/15 > log/15/stdout1334 2> log/15/stderr1334 1334: protocol FAILED! There was no CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1340 ../src/curl -q --trace-ascii log/8/trace1340 --trace-config all --trace-time http://127.0.0.1:45261/1340 -J -O -D log/8/heads1340 -w "curl saved to filename %{filename_effective}\n" --output-dir log/8 > log/8/stdout1340 2> log/8/stderr1340 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1333 ../src/curl -q --output log/18/curl1333.out --include --trace-ascii log/18/trace1333 --trace-config all --trace-time -d "" --header "Transfer-Encoding: chunked" http://127.0.0.1:45825/1333 > log/18/stdout1333 2> log/18/stderr1333 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1337 ../src/curl -q --trace-ascii log/17/trace1337 --trace-config all --trace-time http://127.0.0.1:39089/1337 -O -D - --output-dir log/17 > log/17/stdout1337 2> log/17/stderr1337 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1338 ../src/curl -q --trace-ascii log/20/trace1338 --trace-config all --trace-time http://127.0.0.1:37169/1338 -J -O -D log/20/heads1338 --output-dir log/20 > log/20/stdout1338 2> log/20/stderr1338 content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1334 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1334 ../src/curl -q --trace-ascii log/15/trace1334 --trace-config all --trace-time http://127.0.0.1:36993/1334 -O -D log/15/heads1334 --output-dir log/15 > log/15/stdout1334 2> log/15/stderr1334 === End of file commands.log === Start of file http_server.log 07:36:03.811996 ====> Client connect 07:36:03.812028 accept_connection 3 returned 4 07:36:03.812046 accept_connection 3 returned 0 07:36:03.812059 Read 93 bytes 07:36:03.812068 Process 93 bytes request 07:36:03.812079 Got request: GET /verifiedserver HTTP/1.1 07:36:03.812088 Are-we-friendly question received 07:36:03.812113 Wrote request (93 bytes) input to log/15/server.input 07:36:03.812130 Identifying ourselves as friends 07:36:03.812182 Response sent (56 bytes) and written to log/15/server.response 07:36:03.812191 special request received, no persistency 07:36:03.812199 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1334 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1334 ==145166== ==145166== Process terminating with default action of signal 4 (SIGILL) ==145166== Illegal opcode at address 0x4003082 ==145166== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145166== by 0x4003082: main (tool_main.c:234) === End of file valgrind1334 test 1340...[HTTP GET with -O -J and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1340 ../src/curl -q --trace-ascii log/8/trace1340 --trace-config all --trace-time http://127.0.0.1:45261/1340 -J -O -D log/8/heads1340 -w "curl saved to filename %{filename_effective}\n" --output-dir log/8 > log/8/stdout1340 2> log/8/stderr1340 1340: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1340 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1340 ../src/curl -q --trace-ascii log/8/trace1340 --trace-config all --trace-time http://127.0.0.1:45261/1340 -J -O -D log/8/heads1340 -w "curl saved to filename %{filename_effective}\n" --output-dir log/8 > log/8/stdout1340 2> log/8/stderr1340 === End of file commands.log === Start of file http_server.log 07:36:03.847351 ====> Client connect 07:36:03.847386 accept_connection 3 returned 4 07:36:03.847401 accept_connection 3 returned 0 07:36:03.847414 Read 93 bytes 07:36:03.847424 Process 93 bytes request 07:36:03.847434 Got request: GET /verifiedserver HTTP/1.1 07:36:03.847443 Are-we-friendly question received 07:36:03.847469 Wrote request (93 bytes) input to log/8/server.input 07:36:03.847486 Identifying ourselves as friends 07:36:03.847539 Response sent (56 bytes) and written to log/8/server.response 07:36:03.847549 special request received, no persistency 07:36:03.847557 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1340 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1340 ==145355== ==145355== Process terminating with default action of signal 4 (SIGILL) ==145355== Illegal opcode at address 0x4003082 ==145355== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145355== by 0x4003082: main (tool_main.c:234) === End of file valgrind1340 test 1333...[HTTP POST zero length, chunked-encoded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1333 ../src/curl -q --output log/18/curl1333.out --include --trace-ascii log/18/trace1333 --trace-config all --trace-time -d "" --header "Transfer-Encoding: chunked" http://127.0.0.1:45825/1333 > log/18/stdout1333 2> log/18/stderr1333 1333: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1333 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1333 ../src/curl -q --output log/18/curl1333.out --include --trace-ascii log/18/trace1333 --trace-config all --trace-time -d "" --header "Transfer-Encoding: chunked" http://127.0.0.1:45825/1333 > log/18/stdout1333 2> log/18/stderr1333 === End of file commands.log === Start of file http_server.log 07:36:03.809866 ====> Client connect 07:36:03.809901 accept_connection 3 returned 4 07:36:03.809918 accept_connection 3 returned 0 07:36:03.809931 Read 93 bytes 07:36:03.809940 Process 93 bytes request 07:36:03.809953 Got request: GET /verifiedserver HTTP/1.1 07:36:03.809961 Are-we-friendly question received 07:36:03.809987 Wrote request (93 bytes) input to log/18/server.input 07:36:03.810001 Identifying ourselves as friends 07:36:03.810056 Response sent (56 bytes) and written to log/18/server.response 07:36:03.810065 special request received, no persistency 07:36:03.810073 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1333 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1333 ==145161== ==145161== Process terminating with default action of signal 4 (SIGILL) ==145161== Illegal opcode at address 0x4003082 ==145161== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145161== by 0x4003082: main (tool_main.c:234) === End of file valgrind1333 test 1337...[HTTP GET with -O and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1335 ../src/curl -q --trace-ascii log/13/trace1335 --trace-config all --trace-time http://127.0.0.1:33627/1335 -O -D - --output-dir log/13 > log/13/stdout1335 2> log/13/stderr1335 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1339 ../src/curl -q --trace-ascii log/10/trace1339 --trace-config all --trace-time http://127.0.0.1:34851/1339 -J -O -D - --output-dir log/10 > log/10/stdout1339 2> log/10/stderr1339 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1336 ../src/curl -q --trace-ascii log/22/trace1336 --trace-config all --trace-time http://127.0.0.1:46761/1336 -O -D log/22/heads1336 --output-dir log/22 > log/22/stdout1336 2> log/22/stderr1336 log/17/valgrind1337 ../src/curl -q --trace-ascii log/17/trace1337 --trace-config all --trace-time http://127.0.0.1:39089/1337 -O -D - --output-dir log/17 > log/17/stdout1337 2> log/17/stderr1337 1337: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1337 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1337 ../src/curl -q --trace-ascii log/17/trace1337 --trace-config all --trace-time http://127.0.0.1:39089/1337 -O -D - --output-dir log/17 > log/17/stdout1337 2> log/17/stderr1337 === End of file commands.log === Start of file http_server.log 07:36:03.841869 ====> Client connect 07:36:03.841907 accept_connection 3 returned 4 07:36:03.841922 accept_connection 3 returned 0 07:36:03.841936 Read 93 bytes 07:36:03.841945 Process 93 bytes request 07:36:03.841958 Got request: GET /verifiedserver HTTP/1.1 07:36:03.841967 Are-we-friendly question received 07:36:03.841991 Wrote request (93 bytes) input to log/17/server.input 07:36:03.842006 Identifying ourselves as friends 07:36:03.842056 Response sent (56 bytes) and written to log/17/server.response 07:36:03.842065 special request received, no persistency 07:36:03.842074 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1337 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1337 ==145329== ==145329== Process terminating with default action of signal 4 (SIGILL) ==145329== Illegal opcode at address 0x4003082 ==145329== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145329== by 0x4003082: main (tool_main.c:234) === End of file valgrind1337 test 1338...[HTTP GET with -O -J without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1338 ../src/curl -q --trace-ascii log/20/trace1338 --trace-config all --trace-time http://127.0.0.1:37169/1338 -J -O -D log/20/heads1338 --output-dir log/20 > log/20/stdout1338 2> log/20/stderr1338 1338: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1338 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1338 ../src/curl -q --trace-ascii log/20/trace1338 --trace-config all --trace-time http://127.0.0.1:37169/1338 -J -O -D log/20/heads1338 --output-dir log/20 > log/20/stdout1338 2> log/20/stderr1338 === End of file commands.log === Start of file http_server.log 07:36:03.845092 ====> Client connect 07:36:03.845134 accept_connection 3 returned 4 07:36:03.845151 accept_connection 3 returned 0 07:36:03.845165 Read 93 bytes 07:36:03.845175 Process 93 bytes request 07:36:03.845186 Got request: GET /verifiedserver HTTP/1.1 07:36:03.845195 Are-we-friendly question received 07:36:03.845248 Wrote request (93 bytes) input to log/20/server.input 07:36:03.845264 Identifying ourselves as friends 07:36:03.845350 Response sent (56 bytes) and written to log/20/server.response 07:36:03.845361 special request received, no persistency 07:36:03.845369 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1338 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1338 ==145338== ==145338== Process terminating with default action of signal 4 (SIGILL) ==145338== Illegal opcode at address 0x4003082 ==145338== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145338== by 0x4003082: main (tool_main.c:234) === End of file valgrind1338 test 1339...[HTTP GET with -O -J without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1339 ../src/curl -q --trace-ascii log/10/trace1339 --trace-config all --trace-time http://127.0.0.1:34851/1339 -J -O -D - --output-dir log/10 > log/10/stdout1339 2> log/10/stderr1339 1339: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1339 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1339 ../src/curl -q --trace-ascii log/10/trace1339 --trace-config all --trace-time http://127.0.0.1:34851/1339 -J -O -D - --output-dir log/10 > log/10/stdout1339 2> log/10/stderr1339 === End of file commands.log === Start of file http_server.log 07:36:03.845822 ====> Client connect 07:36:03.845844 accept_connection 3 returned 4 07:36:03.845857 accept_connection 3 returned 0 07:36:03.845867 Read 93 bytes 07:36:03.845875 Process 93 bytes request 07:36:03.845884 Got request: GET /verifiedserver HTTP/1.1 07:36:03.845891 Are-we-friendly question received 07:36:03.845908 Wrote request (93 bytes) input to log/10/server.input 07:36:03.845921 Identifying ourselves as friends 07:36:03.845969 Response sent (56 bytes) and written to log/10/server.response 07:36:03.845977 special request received, no persistency 07:36:03.845983 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1339 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1339 ==145336== ==145336== Process terminating with default action of signal 4 (SIGILL) ==145336== Illegal opcode at address 0x4003082 ==145336== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145336== by 0x4003082: main (tool_main.c:234) === End of file valgrind1339 test 1335...[HTTP GET with -O without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1344 ../src/curl -q --trace-ascii log/24/trace1344 --trace-config all --trace-time http://127.0.0.1:38675/1344 -i -O -D log/24/heads1344 --output-dir log/24 > log/24/stdout1344 2> log/24/stderr1344 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1341 ../src/curl -q --trace-ascii log/9/trace1341 --trace-config all --trace-time http://127.0.0.1:34999/1341 -J -O -D - -w "curl saved to filename %{filename_effective}\n" --output-dir log/9 > log/9/stdout1341 2> log/9/stderr1341 curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1335 ../src/curl -q --trace-ascii log/13/trace1335 --trace-config all --trace-time http://127.0.0.1:33627/1335 -O -D - --output-dir log/13 > log/13/stdout1335 2> log/13/stderr1335 1335: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1335 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1335 ../src/curl -q --trace-ascii log/13/trace1335 --trace-config all --trace-time http://127.0.0.1:33627/1335 -O -D - --output-dir log/13 > log/13/stdout1335 2> log/13/stderr1335 === End of file commands.log === Start of file http_server.log 07:36:03.821436 ====> Client connect 07:36:03.821469 accept_connection 3 returned 4 07:36:03.821486 accept_connection 3 returned 0 07:36:03.821502 Read 93 bytes 07:36:03.821511 Process 93 bytes request 07:36:03.821522 Got request: GET /verifiedserver HTTP/1.1 07:36:03.821531 Are-we-friendly question received 07:36:03.821553 Wrote request (93 bytes) input to log/13/server.input 07:36:03.821568 Identifying ourselves as friends 07:36:03.821635 Response sent (56 bytes) and written to log/13/server.response 07:36:03.821644 special request received, no persistency 07:36:03.821652 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1335 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1335 ==145227== ==145227== Process terminating with default action of signal 4 (SIGILL) ==145227== Illegal opcode at address 0x4003082 ==145227== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145227== by 0x4003082: main (tool_main.c:234) === End of file valgrind1335 test 1336...[HTTP GET with -O and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1336 ../src/curl -q --trace-ascii log/22/trace1336 --trace-config all --trace-time http://127.0.0.1:46761/1336 -O -D log/22/heads1336 --output-dir log/22 > log/22/stdout1336 2> log/22/stderr1336 1336: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1336 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1336 ../src/curl -q --trace-ascii log/22/trace1336 --trace-config all --trace-time http://127.0.0.1:46761/1336 -O -D log/22/heads1336 --output-dir log/22 > log/22/stdout1336 2> log/22/stderr1336 === End of file commands.log === Start of file http_server.log 07:36:03.822243 ====> Client connect 07:36:03.822267 accept_connection 3 returned 4 07:36:03.822279 accept_connection 3 returned 0 07:36:03.822289 Read 93 bytes 07:36:03.822297 Process 93 bytes request 07:36:03.822306 Got request: GET /verifiedserver HTTP/1.1 07:36:03.822313 Are-we-friendly question received 07:36:03.822331 Wrote request (93 bytes) input to log/22/server.input 07:36:03.822344 Identifying ourselves as friends 07:36:03.822385 Response sent (56 bytes) and written to log/22/server.response 07:36:03.822392 special request received, no persistency 07:36:03.822398 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1336 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1336 ==145211== ==145211== Process terminating with default action of signal 4 (SIGILL) ==145211== Illegal opcode at address 0x4003082 ==145211== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145211== by 0x4003082: main (tool_main.c:234) === End of file valgrind1336 test 1344...[HTTP GET with -O -i and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1344 ../src/curl -q --trace-ascii log/24/trace1344 --trace-config all --trace-time http://127.0.0.1:38675/1344 -i -O -D log/24/heads1344 --output-dir log/24 > log/24/stdout1344 2> log/24/stderr1344 1344: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1344 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1344 ../src/curl -q --trace-ascii log/24/trace1344 --trace-config all --trace-time http://127.0.0.1:38675/1344 -i -O -D log/24/heads1344 --output-dir log/24 > log/24/stdout1344 2> log/24/stderr1344 === End of file commands.log === Start of file http_server.log 07:36:04.019694 ====> Client connect 07:36:04.019727 accept_connection 3 returned 4 07:36:04.019742 accept_connection 3 returned 0 07:36:04.019756 Read 93 bytes 07:36:04.019765 Process 93 bytes request 07:36:04.019777 Got request: GET /verifiedserver HTTP/1.1 07:36:04.019785 Are-we-friendly question received 07:36:04.019809 Wrote request (93 bytes) input to log/24/server.input 07:36:04.019824 Identifying ourselves as friends 07:36:04.019874 Response sent (56 bytes) and written to log/24/server.response 07:36:04.019883 special request received, no persistency 07:36:04.019891 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1344 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1344 ==145738== ==145738== Process terminating with default action of signal 4 (SIGILL) ==145738== Illegal opcode at address 0x4003082 ==145738== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145738== by 0x4003082: main (tool_main.c:234) === End of file valgrind1344 test 1341...[HTTP GET with -O -J and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1343 ../src/curl -q --trace-ascii log/5/trace1343 --trace-config all --trace-time http://127.0.0.1:46675/1343 -i -O -D - --output-dir log/5 > log/5/stdout1343 2> log/5/stderr1343 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1342 ../src/curl -q --trace-ascii log/2/trace1342 --trace-config all --trace-time http://127.0.0.1:45457/1342 -i -O -D log/2/heads1342 --output-dir log/2 > log/2/stdout1342 2> log/2/stderr1342 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1348 ../src/curl -q --trace-ascii log/14/trace1348 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1348 -O --output-dir log/14 > log/14/stdout1348 2> log/14/stderr1348 memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1341 ../src/curl -q --trace-ascii log/9/trace1341 --trace-config all --trace-time http://127.0.0.1:34999/1341 -J -O -D - -w "curl saved to filename %{filename_effective}\n" --output-dir log/9 > log/9/stdout1341 2> log/9/stderr1341 1341: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1341 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1341 ../src/curl -q --trace-ascii log/9/trace1341 --trace-config all --trace-time http://127.0.0.1:34999/1341 -J -O -D - -w "curl saved to filename %{filename_effective}\n" --output-dir log/9 > log/9/stdout1341 2> log/9/stderr1341 === End of file commands.log === Start of file http_server.log 07:36:04.006808 ====> Client connect 07:36:04.006843 accept_connection 3 returned 4 07:36:04.006861 accept_connection 3 returned 0 07:36:04.006874 Read 93 bytes 07:36:04.006884 Process 93 bytes request 07:36:04.006896 Got request: GET /verifiedserver HTTP/1.1 07:36:04.006905 Are-we-friendly question received 07:36:04.006932 Wrote request (93 bytes) input to log/9/server.input 07:36:04.006949 Identifying ourselves as friends 07:36:04.007011 Response sent (56 bytes) and written to log/9/server.response 07:36:04.007023 special request received, no persistency 07:36:04.007032 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1341 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1341 ==145686== ==145686== Process terminating with default action of signal 4 (SIGILL) ==145686== Illegal opcode at address 0x4003082 ==145686== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145686== by 0x4003082: main (tool_main.c:234) === End of file valgrind1341 test 1343...[HTTP GET with -O -i without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1343 ../src/curl -q --trace-ascii log/5/trace1343 --trace-config all --trace-time http://127.0.0.1:46675/1343 -i -O -D - --output-dir log/5 > log/5/stdout1343 2> log/5/stderr1343 1343: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1343 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1343 ../src/curl -q --trace-ascii log/5/trace1343 --trace-config all --trace-time http://127.0.0.1:46675/1343 -i -O -D - --output-dir log/5 > log/5/stdout1343 2> log/5/stderr1343 === End of file commands.log === Start of file http_server.log 07:36:04.019697 ====> Client connect 07:36:04.019728 accept_connection 3 returned 4 07:36:04.019744 accept_connection 3 returned 0 07:36:04.019756 Read 93 bytes 07:36:04.019765 Process 93 bytes request 07:36:04.019777 Got request: GET /verifiedserver HTTP/1.1 07:36:04.019785 Are-we-friendly question received 07:36:04.019809 Wrote request (93 bytes) input to log/5/server.input 07:36:04.019824 Identifying ourselves as friends 07:36:04.019875 Response sent (56 bytes) and written to log/5/server.response 07:36:04.019884 special request received, no persistency 07:36:04.019893 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1343 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1343 ==145739== ==145739== Process terminating with default action of signal 4 (SIGILL) ==145739== Illegal opcode at address 0x4003082 ==145739== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145739== by 0x4003082: main (tool_main.c:234) === End of file valgrind1343 test 1342...[HTTP GET with -O -i without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1342 ../src/curl -q --trace-ascii log/2/trace1342 --trace-config all --trace-time http://127.0.0.1:45457/1342 -i -O -D log/2/heads1342 --output-dir log/2 > log/2/stdout1342 2> log/2/stderr1342 1342: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1342 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1342 ../src/curl -q --trace-ascii log/2/trace1342 --trace-config all --trace-time http://127.0.0.1:45457/1342 -i -O -D log/2/heads1342 --output-dir log/2 > log/2/stdout1342 2> log/2/stderr1342 === End of file commands.log === Start of file http_server.log 07:36:04.007386 ====> Client connect 07:36:04.007420 accept_connection 3 returned 4 07:36:04.007435 accept_connection 3 returned 0 07:36:04.007447 Read 93 bytes 07:36:04.007456 Process 93 bytes request 07:36:04.007467 Got request: GET /verifiedserver HTTP/1.1 07:36:04.007476 Are-we-friendly question received 07:36:04.007499 Wrote request (93 bytes) input to log/2/server.input 07:36:04.007516 Identifying ourselves as friends 07:36:04.007567 Response sent (56 bytes) and written to log/2/server.response 07:36:04.007576 special request received, no persistency 07:36:04.007584 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1342 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1342 ==145685== ==145685== Process terminating with default action of signal 4 (SIGILL) ==145685== Illegal opcode at address 0x4003082 ==145685== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145685== by 0x4003082: main (tool_main.c:234) === End of file valgrind1342 teCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1346 ../src/curl -q --trace-ascii log/16/trace1346 --trace-config all --trace-time http://127.0.0.1:46739/1346 -i -O --output-dir log/16 > log/16/stdout1346 2> log/16/stderr1346 st 1348...[FTP download, file without Content-Disposition inside, using -O] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1348 ../src/curl -q --trace-ascii log/14/trace1348 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1348 -O --output-dir log/14 > log/14/stdout1348 2> log/14/stderr1348 1348: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1348 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1348 ../src/curl -q --trace-ascii log/14/trace1348 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1348 -O --output-dir log/14 > log/14/stdout1348 2> log/14/stderr1348 === End of file commands.log === Start of file ftp_server.log 07:36:04.208246 ====> Client connect 07:36:04.208400 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.208718 < "USER anonymous" 07:36:04.208765 > "331 We are happy you popped in![CR][LF]" 07:36:04.209106 < "PASS ftp@example.com" 07:36:04.209141 > "230 Welcome you silly person[CR][LF]" 07:36:04.209283 < "PWD" 07:36:04.209312 > "257 "/" is current directory[CR][LF]" 07:36:04.209468 < "EPSV" 07:36:04.209498 ====> Passive DATA channel requested by client 07:36:04.209513 DATA sockfilt for passive data channel starting... 07:36:04.211088 DATA sockfilt for passive data channel started (pid 145898) 07:36:04.211187 DATA sockfilt for passive data channel listens on port 43747 07:36:04.211224 > "229 Entering Passive Mode (|||43747|)[LF]" 07:36:04.211241 Client has been notified that DATA conn will be accepted on port 43747 07:36:04.211535 Client connects to port 43747 07:36:04.211563 ====> Client established passive DATA connection on port 43747 07:36:04.211619 < "TYPE I" 07:36:04.211644 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.211816 < "SIZE verifiedserver" 07:36:04.211851 > "213 17[CR][LF]" 07:36:04.211968 < "RETR verifiedserver" 07:36:04.211999 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.212063 =====> Closing passive DATA connection... 07:36:04.212077 Server disconnects passive DATA connection 07:36:04.212148 Server disconnected passive DATA connection 07:36:04.212165 DATA sockfilt for passive data channel quits (pid 145898) 07:36:04.212376 DATA sockfilt for passive data channel quit (pid 145898) 07:36:04.212395 =====> Closed passive DATA connection 07:36:04.212418 > "226 File transfer complete[CR][LF]" 07:36:04.253738 < "QUIT" 07:36:04.253797 > "221 bye bye baby[CR][LF]" 07:36:04.254465 MAIN sockfilt said DISC 07:36:04.254491 ====> Client disconnected 07:36:04.254561 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.054135 ====> Client connect 07:36:04.054392 Received DATA (on stdin) 07:36:04.054404 > 160 bytes data, server => client 07:36:04.054415 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.054426 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.054435 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.054524 < 16 bytes data, client => server 07:36:04.054547 'USER anonymous\r\n' 07:36:04.054752 Received DATA (on stdin) 07:36:04.054764 > 33 bytes data, server => client 07:36:04.054774 '331 We are happy you popped in!\r\n' 07:36:04.054959 < 22 bytes data, client => server 07:36:04.054980 'PASS ftp@example.com\r\n' 07:36:04.055126 Received DATA (on stdin) 07:36:04.055137 > 30 bytes data, server => client 07:36:04.055147 '230 Welcome you silly person\r\n' 07:36:04.055191 < 5 bytes data, client => server 07:36:04.055202 'PWD\r\n' 07:36:04.055294 Received DATA (on stdin) 07:36:04.055304 > 30 bytes data, server => client 07:36:04.055314 '257 "/" is current directory\r\n' 07:36:04.055366 < 6 bytes data, client => server 07:36:04.055376 'EPSV\r\n' 07:36:04.057230 Received DATA (on stdin) 07:36:04.057246 > 38 bytes data, server => client 07:36:04.057257 '229 Entering Passive Mode (|||43747|)\n' 07:36:04.057448 < 8 bytes data, client => server 07:36:04.057459 'TYPE I\r\n' 07:36:04.057628 Received DATA (on stdin) 07:36:04.057639 > 33 bytes data, server => client 07:36:04.057650 '200 I modify TYPE as you wanted\r\n' 07:36:04.057709 < 21 bytes data, client => server 07:36:04.057727 'SIZE verifiedserver\r\n' 07:36:04.057834 Received DATA (on stdin) 07:36:04.057844 > 8 bytes data, server => client 07:36:04.057854 '213 17\r\n' 07:36:04.057897 < 21 bytes data, client => server 07:36:04.057910 'RETR verifiedserver\r\n' 07:36:04.058061 Received DATA (on stdin) 07:36:04.058073 > 29 bytes data, server => client 07:36:04.058083 '150 Binary junk (17 bytes).\r\n' 07:36:04.058401 Received DATA (on stdin) 07:36:04.058421 > 28 bytes data, server => client 07:36:04.058432 '226 File transfer complete\r\n' 07:36:04.099525 < 6 bytes data, client => server 07:36:04.099560 'QUIT\r\n' 07:36:04.099776 Received DATA (on stdin) 07:36:04.099795 > 18 bytes data, server => client 07:36:04.099805 '221 bye bye baby\r\n' 07:36:04.100403 ====> Client disconnect 07:36:04.100544 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.056911 Running IPv4 version 07:36:04.056962 Listening on port 43747 07:36:04.056999 Wrote pid 145898 to log/14/server/ftp_sockdata.pid 07:36:04.057018 Received PING (on stdin) 07:36:04.057096 Received PORT (on stdin) 07:36:04.057452 ====> Client connect 07:36:04.057991 Received DATA (on stdin) 07:36:04.058004 > 17 bytes data, server => client 07:36:04.058014 'WE ROOLZ: 79837\r\n' 07:36:04.058060 Received DISC (on stdin) 07:36:04.058074 ====> Client forcibly disconnected 07:36:04.058155 Received QUIT (on stdin) 07:36:04.058169 quits 07:36:04.058225 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1348 === End of file server.cmd === Start of file valgrind1348 ==146073== ==146073== Process terminating with default action of signal 4 (SIGILL) ==146073== Illegal opcode at address 0x4003082 ==146073== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146073== by 0x4003082: main (tool_main.c:234) === End of file valgrind1348 test 1346...[HTTP GET with -O -i without Content-Disposition, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1346 ../src/curl -q --trace-ascii log/16/trace1346 --trace-config all --trace-time http://127.0.0.1:46739/1346 -i -O --output-dir log/16 > log/16/stdout1346 2> log/16/stderr1346 1346: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1346 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1346 ../src/curl -q --trace-ascii log/16/trace1346 --trace-config all --trace-time http://127.0.0.1:46739/1346 -i -O --output-dir log/16 > log/16/stdout1346 2> log/16/stderr1346 === End of file commands.log === Start of file http_server.log 07:36:04.037477 ====> Client connect 07:36:04.037507 accept_connection 3 returned 4 07:36:04.037522 accept_connection 3 returned 0 07:36:04.037536 Read 93 bytes 07:36:04.037546 Process 93 bytes request 07:36:04.037555 Got request: GET /verifiedserver HTTP/1.1 07:36:04.037563 Are-we-friendly question received 07:36:04.037581 Wrote request (93 bytes) input to log/16/server.input 07:36:04.037594 Identifying ourselves as friCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1345 ../src/curl -q --trace-ascii log/23/trace1345 --trace-config all --trace-time http://127.0.0.1:45701/1345 -i -O -D - --output-dir log/23 > log/23/stdout1345 2> log/23/stderr1345 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1347 ../src/curl -q --trace-ascii log/12/trace1347 --trace-config all --trace-time http://127.0.0.1:37285/1347 -i -O --output-dir log/12 > log/12/stdout1347 2> log/12/stderr1347 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1349 ../src/curl -q --trace-ascii log/11/trace1349 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1349 -O -D log/11/heads1349 --output-dir log/11 > log/11/stdout1349 2> log/11/stderr1349 ends 07:36:04.037637 Response sent (56 bytes) and written to log/16/server.response 07:36:04.037645 special request received, no persistency 07:36:04.037652 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1346 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1346 ==145841== ==145841== Process terminating with default action of signal 4 (SIGILL) ==145841== Illegal opcode at address 0x4003082 ==145841== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145841== by 0x4003082: main (tool_main.c:234) === End of file valgrind1346 test 1347...[HTTP GET with -O -i and Content-Disposition, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1347 ../src/curl -q --trace-ascii log/12/trace1347 --trace-config all --trace-time http://127.0.0.1:37285/1347 -i -O --output-dir log/12 > log/12/stdout1347 2> log/12/stderr1347 1347: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1347 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1347 ../src/curl -q --trace-ascii log/12/trace1347 --trace-config all --trace-time http://127.0.0.1:37285/1347 -i -O --output-dir log/12 > log/12/stdout1347 2> log/12/stderr1347 === End of file commands.log === Start of file http_server.log 07:36:04.052470 ====> Client connect 07:36:04.052504 accept_connection 3 returned 4 07:36:04.052520 accept_connection 3 returned 0 07:36:04.052534 Read 93 bytes 07:36:04.052542 Process 93 bytes request 07:36:04.052553 Got request: GET /verifiedserver HTTP/1.1 07:36:04.052560 Are-we-friendly question received 07:36:04.052584 Wrote request (93 bytes) input to log/12/server.input 07:36:04.052599 Identifying ourselves as friends 07:36:04.052771 Response sent (56 bytes) and written to log/12/server.response 07:36:04.052794 special request received, no persistency 07:36:04.052803 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1347 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1347 ==145958== ==145958== Process terminating with default action of signal 4 (SIGILL) ==145958== Illegal opcode at address 0x4003082 ==145958== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145958== by 0x4003082: main (tool_main.c:234) === End of file valgrind1347 test 1345...[HTTP GET with -O -i and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1345 ../src/curl -q --trace-ascii log/23/trace1345 --trace-config all --trace-time http://127.0.0.1:45701/1345 -i -O -D - --output-dir log/23 > log/23/stdout1345 2> log/23/stderr1345 1345: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1345 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1345 ../src/curl -q --trace-ascii log/23/trace1345 --trace-config all --trace-time http://127.0.0.1:45701/1345 -i -O -D - --output-dir log/23 > log/23/stdout1345 2> log/23/stderr1345 === End of file commands.log === Start of file http_server.log 07:36:04.031862 ====> Client connect 07:36:04.031897 accept_connection 3 returned 4 07:36:04.031914 accept_connection 3 returned 0 07:36:04.031930 Read 93 bytes 07:36:04.031940 Process 93 bytes request 07:36:04.031954 Got request: GET /verifiedserver HTTP/1.1 07:36:04.031963 Are-we-friendly question received 07:36:04.031988 Wrote request (93 bytes) input to log/23/server.input 07:36:04.032005 Identifying ourselves as friends 07:36:04.032082 Response sent (56 bytes) and written to log/23/server.response 07:36:04.032092 special request received, no persistency 07:36:04.032101 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1345 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1345 ==145823== ==145823== Process terminating with default action of signal 4 (SIGILL) ==145823== Illegal opcode at address 0x4003082 ==145823== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==145823== by 0x4003082: main (tool_main.c:234) === End of file valgrind1345 test 1349...[FTP download, file without C-D inside, using -O -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1349 ../src/curl -q --trace-ascii log/11/trace1349 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1349 -O -D log/11/heads1349 --output-dir log/11 > log/11/stdout1349 2> log/11/stderr1349 1349: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1349 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1349 ../src/curl -q --trace-ascii log/11/trace1349 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1349 -O -D log/11/heads1349 --output-dir log/11 > log/11/stdout1349 2> log/11/stderr1349 === End of file commands.log === Start of file ftp_server.log 07:36:04.326885 ====> Client connect 07:36:04.327056 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.327338 < "USER anonymous" 07:36:04.327373 > "331 We are happy you popped in![CR][LF]" 07:36:04.327538 < "PASS ftp@examCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1350 ../src/curl -q --trace-ascii log/4/trace1350 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1350 -O -D - --output-dir log/4 > log/4/stdout1350 2> log/4/stderr1350 ple.com" 07:36:04.327567 > "230 Welcome you silly person[CR][LF]" 07:36:04.327714 < "PWD" 07:36:04.327741 > "257 "/" is current directory[CR][LF]" 07:36:04.327893 < "EPSV" 07:36:04.327916 ====> Passive DATA channel requested by client 07:36:04.327929 DATA sockfilt for passive data channel starting... 07:36:04.329918 DATA sockfilt for passive data channel started (pid 146140) 07:36:04.330061 DATA sockfilt for passive data channel listens on port 40705 07:36:04.330105 > "229 Entering Passive Mode (|||40705|)[LF]" 07:36:04.330122 Client has been notified that DATA conn will be accepted on port 40705 07:36:04.330345 Client connects to port 40705 07:36:04.330379 ====> Client established passive DATA connection on port 40705 07:36:04.330452 < "TYPE I" 07:36:04.330478 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.330603 < "SIZE verifiedserver" 07:36:04.330634 > "213 17[CR][LF]" 07:36:04.330741 < "RETR verifiedserver" 07:36:04.330770 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.330839 =====> Closing passive DATA connection... 07:36:04.330853 Server disconnects passive DATA connection 07:36:04.330916 Server disconnected passive DATA connection 07:36:04.330932 DATA sockfilt for passive data channel quits (pid 146140) 07:36:04.331119 DATA sockfilt for passive data channel quit (pid 146140) 07:36:04.331138 =====> Closed passive DATA connection 07:36:04.331161 > "226 File transfer complete[CR][LF]" 07:36:04.377269 < "QUIT" 07:36:04.377322 > "221 bye bye baby[CR][LF]" 07:36:04.378307 MAIN sockfilt said DISC 07:36:04.378333 ====> Client disconnected 07:36:04.378404 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.172741 ====> Client connect 07:36:04.173053 Received DATA (on stdin) 07:36:04.173068 > 160 bytes data, server => client 07:36:04.173080 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.173091 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.173100 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.173173 < 16 bytes data, client => server 07:36:04.173188 'USER anonymous\r\n' 07:36:04.173362 Received DATA (on stdin) 07:36:04.173376 > 33 bytes data, server => client 07:36:04.173386 '331 We are happy you popped in!\r\n' 07:36:04.173435 < 22 bytes data, client => server 07:36:04.173448 'PASS ftp@example.com\r\n' 07:36:04.173551 Received DATA (on stdin) 07:36:04.173563 > 30 bytes data, server => client 07:36:04.173573 '230 Welcome you silly person\r\n' 07:36:04.173619 < 5 bytes data, client => server 07:36:04.173629 'PWD\r\n' 07:36:04.173724 Received DATA (on stdin) 07:36:04.173736 > 30 bytes data, server => client 07:36:04.173746 '257 "/" is current directory\r\n' 07:36:04.173799 < 6 bytes data, client => server 07:36:04.173810 'EPSV\r\n' 07:36:04.176112 Received DATA (on stdin) 07:36:04.176128 > 38 bytes data, server => client 07:36:04.176138 '229 Entering Passive Mode (|||40705|)\n' 07:36:04.176305 < 8 bytes data, client => server 07:36:04.176316 'TYPE I\r\n' 07:36:04.176461 Received DATA (on stdin) 07:36:04.176473 > 33 bytes data, server => client 07:36:04.176483 '200 I modify TYPE as you wanted\r\n' 07:36:04.176531 < 21 bytes data, client => server 07:36:04.176542 'SIZE verifiedserver\r\n' 07:36:04.176615 Received DATA (on stdin) 07:36:04.176626 > 8 bytes data, server => client 07:36:04.176635 '213 17\r\n' 07:36:04.176673 < 21 bytes data, client => server 07:36:04.176684 'RETR verifiedserver\r\n' 07:36:04.176836 Received DATA (on stdin) 07:36:04.176846 > 29 bytes data, server => client 07:36:04.176856 '150 Binary junk (17 bytes).\r\n' 07:36:04.177143 Received DATA (on stdin) 07:36:04.177154 > 28 bytes data, server => client 07:36:04.177163 '226 File transfer complete\r\n' 07:36:04.222992 < 6 bytes data, client => server 07:36:04.223035 'QUIT\r\n' 07:36:04.223310 Received DATA (on stdin) 07:36:04.223323 > 18 bytes data, server => client 07:36:04.223334 '221 bye bye baby\r\n' 07:36:04.224242 ====> Client disconnect 07:36:04.224387 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.175716 Running IPv4 version 07:36:04.175781 Listening on port 40705 07:36:04.175820 Wrote pid 146140 to log/11/server/ftp_sockdata.pid 07:36:04.175839 Received PING (on stdin) 07:36:04.175942 Received PORT (on stdin) 07:36:04.176282 ====> Client connect 07:36:04.176758 Received DATA (on stdin) 07:36:04.176768 > 17 bytes data, server => client 07:36:04.176778 'WE ROOLZ: 85489\r\n' 07:36:04.176834 Received DISC (on stdin) 07:36:04.176844 ====> Client forcibly disconnected 07:36:04.176921 Received QUIT (on stdin) 07:36:04.176932 quits 07:36:04.176989 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1349 === End of file server.cmd === Start of file valgrind1349 ==146145== ==146145== Process terminating with default action of signal 4 (SIGILL) ==146145== Illegal opcode at address 0x4003082 ==146145== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146145== by 0x4003082: main (tool_main.c:234) === End of file valgrind1349 test 1350...[FTP download, file without C-D inside, using -O -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1350 ../src/curl -q --trace-ascii log/4/trace1350 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1350 -O -D - --output-dir log/4 > log/4/stdout1350 2> log/4/stderr1350 1350: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1350 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1350 ../src/curl -q --trace-ascii log/4/trace1350 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1350 -O -D - --output-dir log/4 > log/4/stdout1350 2> log/4/stderr1350 === End of file commands.log === Start of file ftp_server.log 07:36:04.421447 ====> Client connect 07:36:04.421622 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.422382 < "USER anonymous" 07:36:04.422432 > "331 We are happy you popped in![CR][LF]" 07:36:04.422731 < "PASS ftp@example.com" 07:36:04.422776 > "230 Welcome you silly person[CR][LF]" 07:36:04.423123 < "PWD" 07:36:04.423161 > "257 "/" is current directory[CR][LF]" 07:36:04.423369 < "EPSV" 07:36:04.423389 ====> Passive DATA channel requested by client 07:36:04.423399 DATA sockfilt for passive data channel starting... 07:36:04.424615 DATA sockfilt for passive data channel started (pid 146196) 07:36:04.424693 DATA sockfilt for passive data channel listens on port 38269 07:36:04.424722 > "229 Entering Passive Mode (|||38269|)[LF]" 07:36:04.424734 Client has been notified that DATA conn will be accepted on port 38269 07:36:04.424891 Client connects to port 38269 07:36:04.424912 ====> Client established passive DATA connection on port 38269 07:36:04.424959 < "TYPE I" 07:36:04.424981 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.425092 < "SIZE verifiedserver" 07:36:04.425114 > "213 17[CR][LF]" 07:36:04.425213 < "RETR verifiedserver" 07:36:04.425235 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.425286 =====> Closing passive DATA connection... 07:36:04.425296 Server disconnects passive DATA connection 07:36:04.425411 Server disconnected passive DATA connection 07:36:04.425425 DATA sockfilt for passive data channel quits (pid 146196) 07:36:04.425572 DATA sockfilt for passive data channel quit (pid 146196) 07:36:04.425588 =====> Closed passive DATA connection 07:36:04.425609 > "226 File transfer complete[CR][LF]" 07:36:04.467406 < "QUIT" 07:36:04.467462 > "221 bye bye baby[CR][LF]" 07:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1351 ../src/curl -q --trace-ascii log/15/trace1351 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1351 -O -J -D log/15/heads1351 --output-dir log/15 > log/15/stdout1351 2> log/15/stderr1351 36:04.468002 MAIN sockfilt said DISC 07:36:04.468067 ====> Client disconnected 07:36:04.468141 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.267264 ====> Client connect 07:36:04.267609 Received DATA (on stdin) 07:36:04.267639 > 160 bytes data, server => client 07:36:04.267652 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.267664 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.267674 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.268024 < 16 bytes data, client => server 07:36:04.268039 'USER anonymous\r\n' 07:36:04.268421 Received DATA (on stdin) 07:36:04.268434 > 33 bytes data, server => client 07:36:04.268445 '331 We are happy you popped in!\r\n' 07:36:04.268650 < 22 bytes data, client => server 07:36:04.268679 'PASS ftp@example.com\r\n' 07:36:04.268738 Received DATA (on stdin) 07:36:04.268750 > 30 bytes data, server => client 07:36:04.268761 '230 Welcome you silly person\r\n' 07:36:04.268831 < 5 bytes data, client => server 07:36:04.268865 'PWD\r\n' 07:36:04.269167 Received DATA (on stdin) 07:36:04.269188 > 30 bytes data, server => client 07:36:04.269198 '257 "/" is current directory\r\n' 07:36:04.269261 < 6 bytes data, client => server 07:36:04.269270 'EPSV\r\n' 07:36:04.270715 Received DATA (on stdin) 07:36:04.270726 > 38 bytes data, server => client 07:36:04.270734 '229 Entering Passive Mode (|||38269|)\n' 07:36:04.270820 < 8 bytes data, client => server 07:36:04.270835 'TYPE I\r\n' 07:36:04.270960 Received DATA (on stdin) 07:36:04.270969 > 33 bytes data, server => client 07:36:04.270977 '200 I modify TYPE as you wanted\r\n' 07:36:04.271013 < 21 bytes data, client => server 07:36:04.271021 'SIZE verifiedserver\r\n' 07:36:04.271092 Received DATA (on stdin) 07:36:04.271100 > 8 bytes data, server => client 07:36:04.271107 '213 17\r\n' 07:36:04.271138 < 21 bytes data, client => server 07:36:04.271145 'RETR verifiedserver\r\n' 07:36:04.271276 Received DATA (on stdin) 07:36:04.271285 > 29 bytes data, server => client 07:36:04.271292 '150 Binary junk (17 bytes).\r\n' 07:36:04.271592 Received DATA (on stdin) 07:36:04.271604 > 28 bytes data, server => client 07:36:04.271614 '226 File transfer complete\r\n' 07:36:04.313195 < 6 bytes data, client => server 07:36:04.313225 'QUIT\r\n' 07:36:04.313452 Received DATA (on stdin) 07:36:04.313464 > 18 bytes data, server => client 07:36:04.313473 '221 bye bye baby\r\n' 07:36:04.313711 ====> Client disconnect 07:36:04.314034 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.270460 Running IPv4 version 07:36:04.270506 Listening on port 38269 07:36:04.270539 Wrote pid 146196 to log/4/server/ftp_sockdata.pid 07:36:04.270553 Received PING (on stdin) 07:36:04.270613 Received PORT (on stdin) 07:36:04.270822 ====> Client connect 07:36:04.271310 Received DATA (on stdin) 07:36:04.271319 > 17 bytes data, server => client 07:36:04.271327 'WE ROOLZ: 79844\r\n' 07:36:04.271347 Received DISC (on stdin) 07:36:04.271355 ====> Client forcibly disconnected 07:36:04.271408 Received QUIT (on stdin) 07:36:04.271416 quits 07:36:04.271459 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1350 === End of file server.cmd === Start of file valgrind1350 ==146227== ==146227== Process terminating with default action of signal 4 (SIGILL) ==146227== Illegal opcode at address 0x4003082 ==146227== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146227== by 0x4003082: main (tool_main.c:234) === End of file valgrind1350 test 1351...[FTP download, file without C-D inside, using -O -J -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1351 ../src/curl -q --trace-ascii log/15/trace1351 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1351 -O -J -D log/15/heads1351 --output-dir log/15 > log/15/stdout1351 2> log/15/stderr1351 1351: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1351 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1351 ../src/curl -q --trace-ascii log/15/trace1351 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1351 -O -J -D log/15/heads1351 --output-dir log/15 > log/15/stdout1351 2> log/15/stderr1351 === End of file commands.log === Start of file ftp_server.log 07:36:04.442825 ====> Client connect 07:36:04.443033 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.443423 < "USER anonymous" 07:36:04.443456 > "331 We are happy you popped in![CR][LF]" 07:36:04.443599 < "PASS ftp@example.com" 07:36:04.443622 > "230 Welcome you silly person[CR][LF]" 07:36:04.443742 < "PWD" 07:36:04.443766 > "257 "/" is current directory[CR][LF]" 07:36:04.443889 < "EPSV" 07:36:04.443908 ====> Passive DATA channel requested by client 07:36:04.443919 DATA sockfilt for passive data channel starting... 07:36:04.445253 DATA sockfilt for passive data channel started (pid 146225) 07:36:04.445330 DATA sockfilt for passive data channel listens on port 36533 07:36:04.445357 > "229 Entering Passive Mode (|||36533|)[LF]" 07:36:04.445369 Client has been notified that DATA conn will be accepted on port 36533 07:36:04.445530 Client connects to port 36533 07:36:04.445551 ====> Client established passive DATA connection on port 36533 07:36:04.445597 < "TYPE I" 07:36:04.445616 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.445721 < "SIZE verifiedserver" 07:36:04.445745 > "213 17[CR][LF]" 07:36:04.445843 < "RETR verifiedserver" 07:36:04.445865 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.445920 =====> Closing passive DATA connection... 07:36:04.445931 Server disconnects passive DATA connection 07:36:04.446084 Server disconnected passive DATA connection 07:36:04.446102 DATA sockfilt for passive data channel quits (pid 146225) 07:36:04.446262 DATA sockfilt for passive data channel quit (pid 146225) 07:36:04.446279 =====> Closed passive DATA connection 07:36:04.446297 > "226 File transfer complete[CR][LF]" 07:36:04.490430 < "QUIT" 07:36:04.490485 > "221 bye bye baby[CR][LF]" 07:36:04.490674 MAIN sockfilt said DISC 07:36:04.490761 ====> Client disconnected 07:36:04.490837 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.288710 ====> Client connect 07:36:04.289035 Received DATA (on stdin) 07:36:04.289071 > 160 bytes data, server => client 07:36:04.289083 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.289094 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.289104 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.289228 < 16 bytes data, client => server 07:36:04.289241 'USER anonymous\r\n' 07:36:04.289442 Received DATA (on stdin) 07:36:04.289453 > 33 bytes data, server => client 07:36:04.289463 '331 We are happy you popped in!\r\n' 07:36:04.289508 < 22 bytes data, client => server 07:36:04.289518 'PASS ftp@example.com\r\n' 07:36:04.289602 Received DATA (on stdin) 07:36:04.289612 > 30 bytes data, server => client 07:36:04.289621 '230 Welcome you silly person\r\n' 07:36:04.289658 < 5 bytes data, client => server 07:36:04.289667 'PWD\r\n' 07:36:04.289744 Received DATA (on stdin) 07:36:04.289754 > 30 bytes data, server => client 07:36:04.289763 '257 "/" is current directory\r\n' 07:36:04.289807 < 6 bytes data, client => server 07:36:04.289816 'EPSV\r\n' 07:36:04.291349 Received DATA (on stdin) 07:36:04.291359 > 38 bytes data, server => client 07:36:04.291367 '229 Entering Passive Mode (|||36533|)\n' 07:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1327 ../src/curl -q --include --trace-ascii log/7/trace1327 --trace-config all --trace-time telnet://127.0.0.1:43423 -T log/7/1327.txt log/7/stdout1327 2> log/7/stderr1327 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1320 ../src/curl -q --output log/3/curl1320.out --include --trace-ascii log/3/trace1320 --trace-config all --trace-time smtp://smtp.1320:38981/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x 127.0.0.1:44545 log/3/stdout1320 2> log/3/stderr1320 36:04.291459 < 8 bytes data, client => server 07:36:04.291473 'TYPE I\r\n' 07:36:04.291594 Received DATA (on stdin) 07:36:04.291603 > 33 bytes data, server => client 07:36:04.291610 '200 I modify TYPE as you wanted\r\n' 07:36:04.291645 < 21 bytes data, client => server 07:36:04.291652 'SIZE verifiedserver\r\n' 07:36:04.291722 Received DATA (on stdin) 07:36:04.291730 > 8 bytes data, server => client 07:36:04.291737 '213 17\r\n' 07:36:04.291768 < 21 bytes data, client => server 07:36:04.291775 'RETR verifiedserver\r\n' 07:36:04.291908 Received DATA (on stdin) 07:36:04.291917 > 29 bytes data, server => client 07:36:04.291924 '150 Binary junk (17 bytes).\r\n' 07:36:04.292275 Received DATA (on stdin) 07:36:04.292294 > 28 bytes data, server => client 07:36:04.292319 '226 File transfer complete\r\n' 07:36:04.336264 < 6 bytes data, client => server 07:36:04.336286 'QUIT\r\n' 07:36:04.336465 Received DATA (on stdin) 07:36:04.336485 > 18 bytes data, server => client 07:36:04.336496 '221 bye bye baby\r\n' 07:36:04.336574 ====> Client disconnect 07:36:04.336819 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.291095 Running IPv4 version 07:36:04.291144 Listening on port 36533 07:36:04.291174 Wrote pid 146225 to log/15/server/ftp_sockdata.pid 07:36:04.291188 Received PING (on stdin) 07:36:04.291249 Received PORT (on stdin) 07:36:04.291461 ====> Client connect 07:36:04.291941 Received DATA (on stdin) 07:36:04.291950 > 17 bytes data, server => client 07:36:04.291958 'WE ROOLZ: 79835\r\n' 07:36:04.291973 Received DISC (on stdin) 07:36:04.291981 ====> Client forcibly disconnected 07:36:04.292084 Received QUIT (on stdin) 07:36:04.292093 quits 07:36:04.292146 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1351 === End of file server.cmd === Start of file valgrind1351 ==146263== ==146263== Process terminating with default action of signal 4 (SIGILL) ==146263== Illegal opcode at address 0x4003082 ==146263== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146263== by 0x4003082: main (tool_main.c:234) === End of file valgrind1351 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/7/server/http_server.pid" --logfile "log/7/http_server.log" --logdir "log/7" --portfile log/7/server/http_server.port --config log/7/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 144614 port 43423 * pid http => 144614 144614 test 1327...[TELNET check of upload with stdout redirected] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1327 ../src/curl -q --include --trace-ascii log/7/trace1327 --trace-config all --trace-time telnet://127.0.0.1:43423 -T log/7/1327.txt log/7/stdout1327 2> log/7/stderr1327 1327: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1327 === Start of file 1327.txt GET /we/want/1327 HTTP/1.0 === End of file 1327.txt === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1327 ../src/curl -q --include --trace-ascii log/7/trace1327 --trace-config all --trace-time telnet://127.0.0.1:43423 -T log/7/1327.txt log/7/stdout1327 2> log/7/stderr1327 === End of file commands.log === Start of file http_server.log 07:36:03.523393 Running HTTP IPv4 version on port 43423 07:36:03.523473 Wrote pid 144614 to log/7/server/http_server.pid 07:36:03.523510 Wrote port 43423 to log/7/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 1327 === End of file server.cmd === Start of file stdin-for-1327 GET /ignore/for/1327 HTTP/1.0 === End of file stdin-for-1327 === Start of file valgrind1327 ==146830== ==146830== Process terminating with default action of signal 4 (SIGILL) ==146830== Illegal opcode at address 0x4003082 ==146830== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146830== by 0x4003082: main (tool_main.c:234) === End of file valgrind1327 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/3/server/http2_server.pid" --logfile "log/3/http2_server.log" --logdir "log/3" --portfile log/3/server/http2_server.port --config log/3/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 144578 port 44545 * pid http-proxy => 144578 144578 test 1320...[SMTP send tunneled through HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1320 ../src/curl -q --output log/3/curl1320.out --include --trace-ascii log/3/trace1320 --trace-config all --trace-time smtp://smtp.1320:38981/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x 127.0.0.1:44545 log/3/stdout1320 2> log/3/stderr1320 1320: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1320 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1320 ../src/curl -q --output log/3/curl1320.out --include --trace-ascii log/3/trace1320 --trace-config all --trace-time smtp://smtp.1320:38981/1320 --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x 127.0.0.1:44545 log/3/stdout1320 2> log/3/stderr1320 === End of file commands.log === Start of file http2_server.log 07:36:03.510984 Run as proxy, CONNECT to host 127.0.0.1 07:36:03.511101 Running HTTP IPv4 version on port 44545 07:36:03.511144 Wrote pid 144578 to log/3/server/http2_server.pid 07:36:03.511171 Wrote port 44545 to log/3/server/http2_server.port === End of file http2_server.log === Start of file server.cmd Testnum 1320 === End of file server.cmd === Start of file smtp_server.log 07:36:03.639697 ====> Client connect 07:36:03.639849 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:03.640146 < "EHLO verifiedserver" 07:36:03.640194 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:03.640367 < "HELP" 07:36:03.640397 > "214 WE ROOLZ: 108217[CR][LF]" 07:36:03.640413 return proof we are we 07:36:03.640608 < "QUIT" 07:36:03.640636 > "221 curl ESMTP server signing off[CR][LF]" 07:36:03.641446 MAIN sockfilt said DISC 07:36:03.641475 ====> Client disconnected 07:36:03.641539 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:03.485569 ====> Client connect 07:36:03.485847 Received DATA (on stdin) 07:36:03.485863 > 160 bytes data, server => client 07:36:03.485875 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:03.485886 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:03.485896 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:03.485976 < 21 bytes data, client => server 07:36:03.485992 'EHLO verifiedserver\r\n' 07:36:03.486183 Received DATA (on stdin) 07:36:03.486197 > 53 bytes data, server => client 07:36:03.486208 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:03.486262 < 6 bytes data, client => server 07:36:03.486275 'HELP\r\n' 07:36:03.486397 Received DATA (on stdin) 07:36:03.486409 > 22 bytes data, server => client 07:36:03.486420 '214 WE CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1321 ../src/curl -q --output log/1/curl1321.out --include --trace-ascii log/1/trace1321 --trace-config all --trace-time 'imap://imap.1321:40395/1321/;MAILINDEX=1' -u user:secret -p -x 127.0.0.1:34035 > log/1/stdout1321 2> log/1/stderr1321 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1319 ../src/curl -q --output log/19/curl1319.out --include --trace-ascii log/19/trace1319 --trace-config all --trace-time pop3://pop.1319:39035/1319 -p -x 127.0.0.1:38499 -u user:secret > log/19/stdout1319 2> log/19/stderr1319 ROOLZ: 108217\r\n' 07:36:03.486504 < 6 bytes data, client => server 07:36:03.486519 'QUIT\r\n' 07:36:03.486641 Received DATA (on stdin) 07:36:03.486654 > 35 bytes data, server => client 07:36:03.486665 '221 curl ESMTP server signing off\r\n' 07:36:03.487379 ====> Client disconnect 07:36:03.487527 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-1320 From: different To: another body === End of file stdin-for-1320 === Start of file valgrind1320 ==146797== ==146797== Process terminating with default action of signal 4 (SIGILL) ==146797== Illegal opcode at address 0x4003082 ==146797== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146797== by 0x4003082: main (tool_main.c:234) === End of file valgrind1320 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/1/server/http2_server.pid" --logfile "log/1/http2_server.log" --logdir "log/1" --portfile log/1/server/http2_server.port --config log/1/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 144771 port 34035 * pid http-proxy => 144771 144771 test 1321...[IMAP FETCH tunneled through HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1321 ../src/curl -q --output log/1/curl1321.out --include --trace-ascii log/1/trace1321 --trace-config all --trace-time 'imap://imap.1321:40395/1321/;MAILINDEX=1' -u user:secret -p -x 127.0.0.1:34035 > log/1/stdout1321 2> log/1/stderr1321 1321: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1321 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1321 ../src/curl -q --output log/1/curl1321.out --include --trace-ascii log/1/trace1321 --trace-config all --trace-time 'imap://imap.1321:40395/1321/;MAILINDEX=1' -u user:secret -p -x 127.0.0.1:34035 > log/1/stdout1321 2> log/1/stderr1321 === End of file commands.log === Start of file http2_server.log 07:36:03.556339 Run as proxy, CONNECT to host 127.0.0.1 07:36:03.556485 Running HTTP IPv4 version on port 34035 07:36:03.556532 Wrote pid 144771 to log/1/server/http2_server.pid 07:36:03.556561 Wrote port 34035 to log/1/server/http2_server.port === End of file http2_server.log === Start of file imap_server.log 07:36:03.642536 ====> Client connect 07:36:03.642659 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:03.642969 < "A001 CAPABILITY" 07:36:03.643002 > "A001 BAD Command[CR][LF]" 07:36:03.643141 < "A002 LIST "verifiedserver" *" 07:36:03.643165 LIST_imap got "verifiedserver" * 07:36:03.643188 > "* LIST () "/" "WE ROOLZ: 115310"[CR][LF]" 07:36:03.643204 > "A002 OK LIST Completed[CR][LF]" 07:36:03.643216 return proof we are we 07:36:03.686935 < "A003 LOGOUT" 07:36:03.686990 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:03.687008 > "A003 OK LOGOUT completed[CR][LF]" 07:36:03.687188 MAIN sockfilt said DISC 07:36:03.687214 ====> Client disconnected 07:36:03.687280 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:03.488422 ====> Client connect 07:36:03.488663 Received DATA (on stdin) 07:36:03.488678 > 178 bytes data, server => client 07:36:03.488689 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:03.488700 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:03.488711 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:03.488721 'rve\r\n' 07:36:03.488824 < 17 bytes data, client => server 07:36:03.488838 'A001 CAPABILITY\r\n' 07:36:03.488986 Received DATA (on stdin) 07:36:03.488997 > 18 bytes data, server => client 07:36:03.489007 'A001 BAD Command\r\n' 07:36:03.489065 < 30 bytes data, client => server 07:36:03.489085 'A002 LIST "verifiedserver" *\r\n' 07:36:03.489197 Received DATA (on stdin) 07:36:03.489208 > 34 bytes data, server => client 07:36:03.489218 '* LIST () "/" "WE ROOLZ: 115310"\r\n' 07:36:03.489239 Received DATA (on stdin) 07:36:03.489248 > 24 bytes data, server => client 07:36:03.489258 'A002 OK LIST Completed\r\n' 07:36:03.532757 < 13 bytes data, client => server 07:36:03.532783 'A003 LOGOUT\r\n' 07:36:03.532991 Received DATA (on stdin) 07:36:03.533003 > 36 bytes data, server => client 07:36:03.533013 '* BYE curl IMAP server signing off\r\n' 07:36:03.533034 Received DATA (on stdin) 07:36:03.533043 > 26 bytes data, server => client 07:36:03.533053 'A003 OK LOGOUT completed\r\n' 07:36:03.533122 ====> Client disconnect 07:36:03.533264 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 1321 === End of file server.cmd === Start of file valgrind1321 ==146934== ==146934== Process terminating with default action of signal 4 (SIGILL) ==146934== Illegal opcode at address 0x4003082 ==146934== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146934== by 0x4003082: main (tool_main.c:234) === End of file valgrind1321 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/19/server/http2_server.pid" --logfile "log/19/http2_server.log" --logdir "log/19" --portfile log/19/server/http2_server.port --config log/19/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 144721 port 38499 * pid http-proxy => 144721 144721 test 1319...[POP3 fetch tunneled through HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1319 ../src/curl -q --output log/19/curl1319.out --include --trace-ascii log/19/trace1319 --trace-config all --trace-time pop3://pop.1319:39035/1319 -p -x 127.0.0.1:38499 -u user:secret > log/19/stdout1319 2> log/19/stderr1319 1319: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1319 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1319 ../src/curl -q --output log/19/curl1319.out --include --trace-ascii log/19/trace1319 --trace-config all --trace-time pop3://pop.1319:39035/1319 -p -x 127.0.0.1:38499 -u user:secret > log/19/stdout1319 2> log/19/stderr1319 === End of file commands.log === Start of file http2_server.log 07:36:03.546321 Run as proxy, CONNECT to host 127.0.0.1 07:36:03.546429 Running HTTP IPv4 version on port 38499 07:36:03.546467 Wrote pid 144721 to log/19/server/http2_server.pid 07:36:03.546496 Wrote port 38499 to log/19/server/http2_server.port === End of file http2_server.log === Start of file pop3_server.log 07:36:03.632969 ====> Client connect 07:36:03.633104 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:36:03.633598 < "CAPA" 07:36:03.633635 > "-ERR Unrecognized command[CR][LF]" 07:36:03.633795 < "RETR verifiedserver" 07:36:03.633819 return proof we are we 07:36:03.633838 > "+OK Mail transfer starts[CR][LF]" 07:36:03.633853 > "WE ROOLZ: 117679[CR][LF]" 07:36:03.633867 > ".[CR][LF]" 07:36:03.677046 < "QUIT" 07:36:03.677096 > "+OK curl POP3 server signing off[CR][LF]" 07:36:03.677352 MAIN sockfilt said DISC 07:36:03.677409 ====> CCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1357 ../src/curl -q --trace-ascii log/13/trace1357 --trace-config all --trace-time ftp://127.0.0.1:40375/path/file1357 -O -D log/13/heads1357 --output-dir log/13 > log/13/stdout1357 2> log/13/stderr1357 lient disconnected 07:36:03.677475 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:36:04.478657 ====> Client connect 07:36:04.479097 Received DATA (on stdin) 07:36:04.479113 > 178 bytes data, server => client 07:36:04.479125 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:04.479136 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:04.479146 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:36:04.479155 've \r\n' 07:36:04.479221 < 6 bytes data, client => server 07:36:04.479233 'CAPA\r\n' 07:36:04.479620 Received DATA (on stdin) 07:36:04.479632 > 27 bytes data, server => client 07:36:04.479643 '-ERR Unrecognized command\r\n' 07:36:04.479694 < 21 bytes data, client => server 07:36:04.479706 'RETR verifiedserver\r\n' 07:36:04.479849 Received DATA (on stdin) 07:36:04.479859 > 26 bytes data, server => client 07:36:04.479869 '+OK Mail transfer starts\r\n' 07:36:04.479890 Received DATA (on stdin) 07:36:04.479901 > 18 bytes data, server => client 07:36:04.479912 'WE ROOLZ: 117679\r\n' 07:36:04.479925 Received DATA (on stdin) 07:36:04.479936 > 3 bytes data, server => client 07:36:04.479946 '.\r\n' 07:36:04.522874 < 6 bytes data, client => server 07:36:04.522898 'QUIT\r\n' 07:36:04.523081 Received DATA (on stdin) 07:36:04.523092 > 34 bytes data, server => client 07:36:04.523103 '+OK curl POP3 server signing off\r\n' 07:36:04.523258 ====> Client disconnect 07:36:04.523462 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd Testnum 1319 === End of file server.cmd === Start of file valgrind1319 ==146909== ==146909== Process terminating with default action of signal 4 (SIGILL) ==146909== Illegal opcode at address 0x4003082 ==146909== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146909== by 0x4003082: main (tool_main.c:234) === End of file valgrind1319 test 1357...[FTP download, file with C-D inside, using -O -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1357 ../src/curl -q --trace-ascii log/13/trace1357 --trace-config all --trace-time ftp://127.0.0.1:40375/path/file1357 -O -D log/13/heads1357 --output-dir log/13 > log/13/stdout1357 2> log/13/stderr1357 1357: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1357 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1357 ../src/curl -q --trace-ascii log/13/trace1357 --trace-config all --trace-time ftp://127.0.0.1:40375/path/file1357 -O -D log/13/heads1357 --output-dir log/13 > log/13/stdout1357 2> log/13/stderr1357 === End of file commands.log === Start of file ftp_server.log 07:36:04.557296 ====> Client connect 07:36:04.557454 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.557740 < "USER anonymous" 07:36:04.557777 > "331 We are happy you popped in![CR][LF]" 07:36:04.557926 < "PASS ftp@example.com" 07:36:04.557956 > "230 Welcome you silly person[CR][LF]" 07:36:04.558087 < "PWD" 07:36:04.558115 > "257 "/" is current directory[CR][LF]" 07:36:04.558242 < "EPSV" 07:36:04.558263 ====> Passive DATA channel requested by client 07:36:04.558276 DATA sockfilt for passive data channel starting... 07:36:04.559936 DATA sockfilt for passive data channel started (pid 146434) 07:36:04.560054 DATA sockfilt for passive data channel listens on port 43247 07:36:04.560089 > "229 Entering Passive Mode (|||43247|)[LF]" 07:36:04.560107 Client has been notified that DATA conn will be accepted on port 43247 07:36:04.560311 Client connects to port 43247 07:36:04.560338 ====> Client established passive DATA connection on port 43247 07:36:04.560387 < "TYPE I" 07:36:04.560407 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.560521 < "SIZE verifiedserver" 07:36:04.560548 > "213 17[CR][LF]" 07:36:04.560721 < "RETR verifiedserver" 07:36:04.560769 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.560833 =====> Closing passive DATA connection... 07:36:04.560844 Server disconnects passive DATA connection 07:36:04.561035 Server disconnected passive DATA connection 07:36:04.561057 DATA sockfilt for passive data channel quits (pid 146434) 07:36:04.561249 DATA sockfilt for passive data channel quit (pid 146434) 07:36:04.561265 =====> Closed passive DATA connection 07:36:04.561285 > "226 File transfer complete[CR][LF]" 07:36:04.606965 < "QUIT" 07:36:04.607013 > "221 bye bye baby[CR][LF]" 07:36:04.607487 MAIN sockfilt said DISC 07:36:04.607512 ====> Client disconnected 07:36:04.607576 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.403179 ====> Client connect 07:36:04.403454 Received DATA (on stdin) 07:36:04.403474 > 160 bytes data, server => client 07:36:04.403486 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.403497 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.403507 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.403591 < 16 bytes data, client => server 07:36:04.403606 'USER anonymous\r\n' 07:36:04.403764 Received DATA (on stdin) 07:36:04.403776 > 33 bytes data, server => client 07:36:04.403787 '331 We are happy you popped in!\r\n' 07:36:04.403832 < 22 bytes data, client => server 07:36:04.403846 'PASS ftp@example.com\r\n' 07:36:04.403941 Received DATA (on stdin) 07:36:04.403955 > 30 bytes data, server => client 07:36:04.403966 '230 Welcome you silly person\r\n' 07:36:04.404016 < 5 bytes data, client => server 07:36:04.404031 'PWD\r\n' 07:36:04.404096 Received DATA (on stdin) 07:36:04.404108 > 30 bytes data, server => client 07:36:04.404119 '257 "/" is current directory\r\n' 07:36:04.404170 < 6 bytes data, client => server 07:36:04.404185 'EPSV\r\n' 07:36:04.406096 Received DATA (on stdin) 07:36:04.406110 > 38 bytes data, server => client 07:36:04.406122 '229 Entering Passive Mode (|||43247|)\n' 07:36:04.406247 < 8 bytes data, client => server 07:36:04.406258 'TYPE I\r\n' 07:36:04.406387 Received DATA (on stdin) 07:36:04.406396 > 33 bytes data, server => client 07:36:04.406405 '200 I modify TYPE as you wanted\r\n' 07:36:04.406440 < 21 bytes data, client => server 07:36:04.406448 'SIZE verifiedserver\r\n' 07:36:04.406528 Received DATA (on stdin) 07:36:04.406537 > 8 bytes data, server => client 07:36:04.406545 '213 17\r\n' 07:36:04.406577 < 21 bytes data, client => server 07:36:04.406585 'RETR verifiedserver\r\n' 07:36:04.406828 Received DATA (on stdin) 07:36:04.406841 > 29 bytes data, server => client 07:36:04.406849 '150 Binary junk (17 bytes).\r\n' 07:36:04.407264 Received DATA (on stdin) 07:36:04.407274 > 28 bytes data, server => client 07:36:04.407282 '226 File transfer complete\r\n' 07:36:04.452802 < 6 bytes data, client => server 07:36:04.452826 'QUIT\r\n' 07:36:04.452996 Received DATA (on stdin) 07:36:04.453006 > 18 bytes data, server => client 07:36:04.453014 '221 bye bye baby\r\n' 07:36:04.453426 ====> Client disconnect 07:36:04.453555 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.405747 Running IPv4 version 07:36:04.405809 Listening on port 43247 07:36:04.405848 Wrote pid 146434 to log/13/server/ftp_sockdata.pid 07:36:04.405866 Received PING (on stdin) 07:36:04.405948 Received PORT (on stdin) 07:36:04.406220 ====> Client connect 07:36:04.406877 Received DATA (on stdin) 07:36:04.406891 > 17 bytes data, server => client 07:36:04.406899 'WE ROOLZ: 87629\r\n' 07:36:04.406916 Received DISC (on stdin) 07:36:04.406925 ====> Client forcibly disconnected 07:36:04.407042 Received QUIT (on stdin) 07:36:04.407051CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1353 ../src/curl -q --trace-ascii log/18/trace1353 --trace-config all --trace-time ftp://127.0.0.1:33107/path/file1353 -O -i -D log/18/heads1353 --output-dir log/18 > log/18/stdout1353 2> log/18/stderr1353 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1352 ../src/curl -q --trace-ascii log/8/trace1352 --trace-config all --trace-time ftp://127.0.0.1:44159/path/file1352 -O -J -D - --output-dir log/8 > log/8/stdout1352 2> log/8/stderr1352 quits 07:36:04.407099 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1357 === End of file server.cmd === Start of file valgrind1357 ==146546== ==146546== Process terminating with default action of signal 4 (SIGILL) ==146546== Illegal opcode at address 0x4003082 ==146546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146546== by 0x4003082: main (tool_main.c:234) === End of file valgrind1357 test 1353...[FTP download, file without C-D inside, using -O -i -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1353 ../src/curl -q --trace-ascii log/18/trace1353 --trace-config all --trace-time ftp://127.0.0.1:33107/path/file1353 -O -i -D log/18/heads1353 --output-dir log/18 > log/18/stdout1353 2> log/18/stderr1353 1353: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1353 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1353 ../src/curl -q --trace-ascii log/18/trace1353 --trace-config all --trace-time ftp://127.0.0.1:33107/path/file1353 -O -i -D log/18/heads1353 --output-dir log/18 > log/18/stdout1353 2> log/18/stderr1353 === End of file commands.log === Start of file ftp_server.log 07:36:04.541708 ====> Client connect 07:36:04.541859 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.542122 < "USER anonymous" 07:36:04.542151 > "331 We are happy you popped in![CR][LF]" 07:36:04.542357 < "PASS ftp@example.com" 07:36:04.542405 > "230 Welcome you silly person[CR][LF]" 07:36:04.542581 < "PWD" 07:36:04.542611 > "257 "/" is current directory[CR][LF]" 07:36:04.542798 < "EPSV" 07:36:04.542831 ====> Passive DATA channel requested by client 07:36:04.542844 DATA sockfilt for passive data channel starting... 07:36:04.544485 DATA sockfilt for passive data channel started (pid 146389) 07:36:04.544579 DATA sockfilt for passive data channel listens on port 35689 07:36:04.544610 > "229 Entering Passive Mode (|||35689|)[LF]" 07:36:04.544622 Client has been notified that DATA conn will be accepted on port 35689 07:36:04.544780 Client connects to port 35689 07:36:04.544805 ====> Client established passive DATA connection on port 35689 07:36:04.544860 < "TYPE I" 07:36:04.544880 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.544989 < "SIZE verifiedserver" 07:36:04.545017 > "213 17[CR][LF]" 07:36:04.545198 < "RETR verifiedserver" 07:36:04.545239 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.545307 =====> Closing passive DATA connection... 07:36:04.545322 Server disconnects passive DATA connection 07:36:04.545530 Server disconnected passive DATA connection 07:36:04.545559 DATA sockfilt for passive data channel quits (pid 146389) 07:36:04.545800 DATA sockfilt for passive data channel quit (pid 146389) 07:36:04.545835 =====> Closed passive DATA connection 07:36:04.545868 > "226 File transfer complete[CR][LF]" 07:36:04.588379 < "QUIT" 07:36:04.588419 > "221 bye bye baby[CR][LF]" 07:36:04.588499 MAIN sockfilt said DISC 07:36:04.588514 ====> Client disconnected 07:36:04.588563 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.387098 ====> Client connect 07:36:04.387857 Received DATA (on stdin) 07:36:04.387875 > 160 bytes data, server => client 07:36:04.387887 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.387897 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.387907 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.387983 < 16 bytes data, client => server 07:36:04.387994 'USER anonymous\r\n' 07:36:04.388134 Received DATA (on stdin) 07:36:04.388145 > 33 bytes data, server => client 07:36:04.388155 '331 We are happy you popped in!\r\n' 07:36:04.388212 < 22 bytes data, client => server 07:36:04.388222 'PASS ftp@example.com\r\n' 07:36:04.388395 Received DATA (on stdin) 07:36:04.388411 > 30 bytes data, server => client 07:36:04.388422 '230 Welcome you silly person\r\n' 07:36:04.388482 < 5 bytes data, client => server 07:36:04.388493 'PWD\r\n' 07:36:04.388594 Received DATA (on stdin) 07:36:04.388605 > 30 bytes data, server => client 07:36:04.388615 '257 "/" is current directory\r\n' 07:36:04.388674 < 6 bytes data, client => server 07:36:04.388693 'EPSV\r\n' 07:36:04.390607 Received DATA (on stdin) 07:36:04.390619 > 38 bytes data, server => client 07:36:04.390628 '229 Entering Passive Mode (|||35689|)\n' 07:36:04.390715 < 8 bytes data, client => server 07:36:04.390730 'TYPE I\r\n' 07:36:04.390860 Received DATA (on stdin) 07:36:04.390869 > 33 bytes data, server => client 07:36:04.390878 '200 I modify TYPE as you wanted\r\n' 07:36:04.390918 < 21 bytes data, client => server 07:36:04.390930 'SIZE verifiedserver\r\n' 07:36:04.390995 Received DATA (on stdin) 07:36:04.391004 > 8 bytes data, server => client 07:36:04.391011 '213 17\r\n' 07:36:04.391073 < 21 bytes data, client => server 07:36:04.391093 'RETR verifiedserver\r\n' 07:36:04.391306 Received DATA (on stdin) 07:36:04.391317 > 29 bytes data, server => client 07:36:04.391327 '150 Binary junk (17 bytes).\r\n' 07:36:04.391863 Received DATA (on stdin) 07:36:04.391880 > 28 bytes data, server => client 07:36:04.391892 '226 File transfer complete\r\n' 07:36:04.434227 < 6 bytes data, client => server 07:36:04.434247 'QUIT\r\n' 07:36:04.434400 Received DATA (on stdin) 07:36:04.434409 > 18 bytes data, server => client 07:36:04.434416 '221 bye bye baby\r\n' 07:36:04.434448 ====> Client disconnect 07:36:04.434540 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.390262 Running IPv4 version 07:36:04.390322 Listening on port 35689 07:36:04.390359 Wrote pid 146389 to log/18/server/ftp_sockdata.pid 07:36:04.390405 Received PING (on stdin) 07:36:04.390491 Received PORT (on stdin) 07:36:04.390718 ====> Client connect 07:36:04.391354 Received DATA (on stdin) 07:36:04.391368 > 17 bytes data, server => client 07:36:04.391378 'WE ROOLZ: 82311\r\n' 07:36:04.391402 Received DISC (on stdin) 07:36:04.391412 ====> Client forcibly disconnected 07:36:04.391553 Received QUIT (on stdin) 07:36:04.391565 quits 07:36:04.391617 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1353 === End of file server.cmd === Start of file valgrind1353 ==146452== ==146452== Process terminating with default action of signal 4 (SIGILL) ==146452== Illegal opcode at address 0x4003082 ==146452== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146452== by 0x4003082: main (tool_main.c:234) === End of file valgrind1353 test 1352...[FTP download, file without C-D inside, using -O -J -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1352 ../src/curl -q --trace-ascii log/8/trace1352 --trace-config all --trace-time ftp://127.0.0.1:44159/path/file1352 -O -J -D - --output-dir log/8 > log/8/stdout1352 2> log/8/stderr1352 1352: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1352 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1352 ../src/curl -q --trace-ascii log/8/trace1352 --trace-config all --trace-time ftp://127.0.0.1:44159/path/file1352 -O -J -D - --output-dir log/8 > lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1354 ../src/curl -q --trace-ascii log/17/trace1354 --trace-config all --trace-time ftp://127.0.0.1:39713/path/file1354 -O -i -D - --output-dir log/17 > log/17/stdout1354 2> log/17/stderr1354 og/8/stdout1352 2> log/8/stderr1352 === End of file commands.log === Start of file ftp_server.log 07:36:04.535508 ====> Client connect 07:36:04.535661 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.535929 < "USER anonymous" 07:36:04.535962 > "331 We are happy you popped in![CR][LF]" 07:36:04.536090 < "PASS ftp@example.com" 07:36:04.536114 > "230 Welcome you silly person[CR][LF]" 07:36:04.536312 < "PWD" 07:36:04.536346 > "257 "/" is current directory[CR][LF]" 07:36:04.536532 < "EPSV" 07:36:04.536552 ====> Passive DATA channel requested by client 07:36:04.536563 DATA sockfilt for passive data channel starting... 07:36:04.538300 DATA sockfilt for passive data channel started (pid 146357) 07:36:04.538391 DATA sockfilt for passive data channel listens on port 38895 07:36:04.538430 > "229 Entering Passive Mode (|||38895|)[LF]" 07:36:04.538448 Client has been notified that DATA conn will be accepted on port 38895 07:36:04.538675 Client connects to port 38895 07:36:04.538701 ====> Client established passive DATA connection on port 38895 07:36:04.538761 < "TYPE I" 07:36:04.538786 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.538924 < "SIZE verifiedserver" 07:36:04.538958 > "213 17[CR][LF]" 07:36:04.539127 < "RETR verifiedserver" 07:36:04.539162 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.539229 =====> Closing passive DATA connection... 07:36:04.539245 Server disconnects passive DATA connection 07:36:04.539402 Server disconnected passive DATA connection 07:36:04.539426 DATA sockfilt for passive data channel quits (pid 146357) 07:36:04.539648 DATA sockfilt for passive data channel quit (pid 146357) 07:36:04.539670 =====> Closed passive DATA connection 07:36:04.539692 > "226 File transfer complete[CR][LF]" 07:36:04.580350 < "QUIT" 07:36:04.580404 > "221 bye bye baby[CR][LF]" 07:36:04.580731 MAIN sockfilt said DISC 07:36:04.580797 ====> Client disconnected 07:36:04.580957 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.381397 ====> Client connect 07:36:05.381649 Received DATA (on stdin) 07:36:05.381670 > 160 bytes data, server => client 07:36:05.381682 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.381693 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.381704 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.381773 < 16 bytes data, client => server 07:36:05.381788 'USER anonymous\r\n' 07:36:05.381945 Received DATA (on stdin) 07:36:05.381956 > 33 bytes data, server => client 07:36:05.381966 '331 We are happy you popped in!\r\n' 07:36:05.382018 < 22 bytes data, client => server 07:36:05.382034 'PASS ftp@example.com\r\n' 07:36:05.382094 Received DATA (on stdin) 07:36:05.382104 > 30 bytes data, server => client 07:36:05.382114 '230 Welcome you silly person\r\n' 07:36:05.382221 < 5 bytes data, client => server 07:36:05.382241 'PWD\r\n' 07:36:05.382355 Received DATA (on stdin) 07:36:05.382377 > 30 bytes data, server => client 07:36:05.382386 '257 "/" is current directory\r\n' 07:36:05.382466 < 6 bytes data, client => server 07:36:05.382475 'EPSV\r\n' 07:36:05.384439 Received DATA (on stdin) 07:36:05.384455 > 38 bytes data, server => client 07:36:05.384465 '229 Entering Passive Mode (|||38895|)\n' 07:36:05.384582 < 8 bytes data, client => server 07:36:05.384597 'TYPE I\r\n' 07:36:05.384757 Received DATA (on stdin) 07:36:05.384778 > 33 bytes data, server => client 07:36:05.384790 '200 I modify TYPE as you wanted\r\n' 07:36:05.384848 < 21 bytes data, client => server 07:36:05.384857 'SIZE verifiedserver\r\n' 07:36:05.384945 Received DATA (on stdin) 07:36:05.384959 > 8 bytes data, server => client 07:36:05.384969 '213 17\r\n' 07:36:05.385031 < 21 bytes data, client => server 07:36:05.385042 'RETR verifiedserver\r\n' 07:36:05.385229 Received DATA (on stdin) 07:36:05.385241 > 29 bytes data, server => client 07:36:05.385252 '150 Binary junk (17 bytes).\r\n' 07:36:05.385676 Received DATA (on stdin) 07:36:05.385688 > 28 bytes data, server => client 07:36:05.385697 '226 File transfer complete\r\n' 07:36:05.426136 < 6 bytes data, client => server 07:36:05.426169 'QUIT\r\n' 07:36:05.426391 Received DATA (on stdin) 07:36:05.426403 > 18 bytes data, server => client 07:36:05.426412 '221 bye bye baby\r\n' 07:36:05.426627 ====> Client disconnect 07:36:05.426779 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.384026 Running IPv4 version 07:36:04.384081 Listening on port 38895 07:36:04.384113 Wrote pid 146357 to log/8/server/ftp_sockdata.pid 07:36:04.384233 Received PING (on stdin) 07:36:04.384303 Received PORT (on stdin) 07:36:04.384616 ====> Client connect 07:36:04.385278 Received DATA (on stdin) 07:36:04.385290 > 17 bytes data, server => client 07:36:04.385300 'WE ROOLZ: 81995\r\n' 07:36:04.385324 Received DISC (on stdin) 07:36:04.385338 ====> Client forcibly disconnected 07:36:04.385418 Received QUIT (on stdin) 07:36:04.385429 quits 07:36:04.385479 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1352 === End of file server.cmd === Start of file valgrind1352 ==146437== ==146437== Process terminating with default action of signal 4 (SIGILL) ==146437== Illegal opcode at address 0x4003082 ==146437== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146437== by 0x4003082: main (tool_main.c:234) === End of file valgrind1352 test 1354...[FTP download, file without C-D inside, using -O -i -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1354 ../src/curl -q --trace-ascii log/17/trace1354 --trace-config all --trace-time ftp://127.0.0.1:39713/path/file1354 -O -i -D - --output-dir log/17 > log/17/stdout1354 2> log/17/stderr1354 1354: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1354 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1354 ../src/curl -q --trace-ascii log/17/trace1354 --trace-config all --trace-time ftp://127.0.0.1:39713/path/file1354 -O -i -D - --output-dir log/17 > log/17/stdout1354 2> log/17/stderr1354 === End of file commands.log === Start of file ftp_server.log 07:36:04.553573 ====> Client connect 07:36:04.553766 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.554048 < "USER anonymous" 07:36:04.554089 > "331 We are happy you popped in![CR][LF]" 07:36:04.554246 < "PASS ftp@example.com" 07:36:04.554272 > "230 Welcome you silly person[CR][LF]" 07:36:04.554413 < "PWD" 07:36:04.554442 > "257 "/" is current directory[CR][LF]" 07:36:04.554587 < "EPSV" 07:36:04.554609 ====> Passive DATA channel requested by client 07:36:04.554621 DATA sockfilt for passive data channel starting... 07:36:04.555975 DATA sockfilt for passive data channel started (pid 146431) 07:36:04.556052 DATA sockfilt for passive data channel listens on port 45433 07:36:04.556079 > "229 Entering Passive Mode (|||45433|)[LF]" 07:36:04.556090 Client has been notified that DATA conn will be accepted on port 45433 07:36:04.556253 Client connects to port 45433 07:36:04.556273 ====> Client established passive DATA connection on port 45433 07:36:04.556320 < "TYPE I" 07:36:04.556338 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.556478 < "SIZE verifiedserver" 07:36:04.556501 > "213 17[CR][LF]" 07:36:04.556727 < "RETR verifiedserver" 07:36:04.556755 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.556815 =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1358 ../src/curl -q --trace-ascii log/10/trace1358 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1358 -O -D - --output-dir log/10 > log/10/stdout1358 2> log/10/stderr1358 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1355 ../src/curl -q --trace-ascii log/20/trace1355 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1355 -O -i --output-dir log/20 > log/20/stdout1355 2> log/20/stderr1355 ====> Closing passive DATA connection... 07:36:04.556825 Server disconnects passive DATA connection 07:36:04.557088 Server disconnected passive DATA connection 07:36:04.557106 DATA sockfilt for passive data channel quits (pid 146431) 07:36:04.557414 DATA sockfilt for passive data channel quit (pid 146431) 07:36:04.557432 =====> Closed passive DATA connection 07:36:04.557451 > "226 File transfer complete[CR][LF]" 07:36:04.600613 < "QUIT" 07:36:04.600654 > "221 bye bye baby[CR][LF]" 07:36:04.600758 MAIN sockfilt said DISC 07:36:04.600782 ====> Client disconnected 07:36:04.600837 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.399438 ====> Client connect 07:36:04.399765 Received DATA (on stdin) 07:36:04.399779 > 160 bytes data, server => client 07:36:04.399790 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.399801 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.399811 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.399879 < 16 bytes data, client => server 07:36:04.399890 'USER anonymous\r\n' 07:36:04.400076 Received DATA (on stdin) 07:36:04.400087 > 33 bytes data, server => client 07:36:04.400098 '331 We are happy you popped in!\r\n' 07:36:04.400144 < 22 bytes data, client => server 07:36:04.400155 'PASS ftp@example.com\r\n' 07:36:04.400256 Received DATA (on stdin) 07:36:04.400267 > 30 bytes data, server => client 07:36:04.400276 '230 Welcome you silly person\r\n' 07:36:04.400320 < 5 bytes data, client => server 07:36:04.400330 'PWD\r\n' 07:36:04.400425 Received DATA (on stdin) 07:36:04.400436 > 30 bytes data, server => client 07:36:04.400446 '257 "/" is current directory\r\n' 07:36:04.400494 < 6 bytes data, client => server 07:36:04.400505 'EPSV\r\n' 07:36:04.402071 Received DATA (on stdin) 07:36:04.402081 > 38 bytes data, server => client 07:36:04.402089 '229 Entering Passive Mode (|||45433|)\n' 07:36:04.402193 < 8 bytes data, client => server 07:36:04.402201 'TYPE I\r\n' 07:36:04.402315 Received DATA (on stdin) 07:36:04.402324 > 33 bytes data, server => client 07:36:04.402332 '200 I modify TYPE as you wanted\r\n' 07:36:04.402385 < 21 bytes data, client => server 07:36:04.402392 'SIZE verifiedserver\r\n' 07:36:04.402480 Received DATA (on stdin) 07:36:04.402489 > 8 bytes data, server => client 07:36:04.402497 '213 17\r\n' 07:36:04.402538 < 21 bytes data, client => server 07:36:04.402551 'RETR verifiedserver\r\n' 07:36:04.402723 Received DATA (on stdin) 07:36:04.402735 > 29 bytes data, server => client 07:36:04.402745 '150 Binary junk (17 bytes).\r\n' 07:36:04.403436 Received DATA (on stdin) 07:36:04.403448 > 28 bytes data, server => client 07:36:04.403457 '226 File transfer complete\r\n' 07:36:04.446438 < 6 bytes data, client => server 07:36:04.446462 'QUIT\r\n' 07:36:04.446636 Received DATA (on stdin) 07:36:04.446645 > 18 bytes data, server => client 07:36:04.446652 '221 bye bye baby\r\n' 07:36:04.446697 ====> Client disconnect 07:36:04.446815 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.401837 Running IPv4 version 07:36:04.401872 Listening on port 45433 07:36:04.401899 Wrote pid 146431 to log/17/server/ftp_sockdata.pid 07:36:04.401912 Received PING (on stdin) 07:36:04.401973 Received PORT (on stdin) 07:36:04.402181 ====> Client connect 07:36:04.402824 Received DATA (on stdin) 07:36:04.402835 > 17 bytes data, server => client 07:36:04.402843 'WE ROOLZ: 79834\r\n' 07:36:04.402860 Received DISC (on stdin) 07:36:04.402869 ====> Client forcibly disconnected 07:36:04.403172 Received QUIT (on stdin) 07:36:04.403184 quits 07:36:04.403230 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1354 === End of file server.cmd === Start of file valgrind1354 ==146494== ==146494== Process terminating with default action of signal 4 (SIGILL) ==146494== Illegal opcode at address 0x4003082 ==146494== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146494== by 0x4003082: main (tool_main.c:234) === End of file valgrind1354 test 1358...[FTP download, file with C-D inside, using -O -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1358 ../src/curl -q --trace-ascii log/10/trace1358 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1358 -O -D - --output-dir log/10 > log/10/stdout1358 2> log/10/stderr1358 1358: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1358 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1358 ../src/curl -q --trace-ascii log/10/trace1358 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1358 -O -D - --output-dir log/10 > log/10/stdout1358 2> log/10/stderr1358 === End of file commands.log === Start of file ftp_server.log 07:36:04.557498 ====> Client connect 07:36:04.557635 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.557892 < "USER anonymous" 07:36:04.557937 > "331 We are happy you popped in![CR][LF]" 07:36:04.558098 < "PASS ftp@example.com" 07:36:04.558120 > "230 Welcome you silly person[CR][LF]" 07:36:04.558258 < "PWD" 07:36:04.558282 > "257 "/" is current directory[CR][LF]" 07:36:04.558387 < "EPSV" 07:36:04.558404 ====> Passive DATA channel requested by client 07:36:04.558414 DATA sockfilt for passive data channel starting... 07:36:04.559625 DATA sockfilt for passive data channel started (pid 146435) 07:36:04.559727 DATA sockfilt for passive data channel listens on port 38237 07:36:04.559761 > "229 Entering Passive Mode (|||38237|)[LF]" 07:36:04.559777 Client has been notified that DATA conn will be accepted on port 38237 07:36:04.559911 Client connects to port 38237 07:36:04.559934 ====> Client established passive DATA connection on port 38237 07:36:04.559991 < "TYPE I" 07:36:04.560126 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.560270 < "SIZE verifiedserver" 07:36:04.560298 > "213 18[CR][LF]" 07:36:04.560425 < "RETR verifiedserver" 07:36:04.560454 > "150 Binary junk (18 bytes).[CR][LF]" 07:36:04.560513 =====> Closing passive DATA connection... 07:36:04.560527 Server disconnects passive DATA connection 07:36:04.560667 Server disconnected passive DATA connection 07:36:04.560699 DATA sockfilt for passive data channel quits (pid 146435) 07:36:04.560927 DATA sockfilt for passive data channel quit (pid 146435) 07:36:04.560947 =====> Closed passive DATA connection 07:36:04.560974 > "226 File transfer complete[CR][LF]" 07:36:04.606960 < "QUIT" 07:36:04.607023 > "221 bye bye baby[CR][LF]" 07:36:04.607255 MAIN sockfilt said DISC 07:36:04.607279 ====> Client disconnected 07:36:04.607344 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.403390 ====> Client connect 07:36:05.403630 Received DATA (on stdin) 07:36:05.403648 > 160 bytes data, server => client 07:36:05.403660 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.403670 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.403678 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.403743 < 16 bytes data, client => server 07:36:05.403752 'USER anonymous\r\n' 07:36:05.403923 Received DATA (on stdin) 07:36:05.403938 > 33 bytes data, server => client 07:36:05.403948 '331 We are happy you popped in!\r\n' 07:36:05.404003 < 22 bytes data, client => server 07:36:05.404014 'PASS ftp@example.com\r\n' 07:36:05.404101 Received DATA (on stdin) 07:36:05.404111 > 30 bytes data, server => client 07:36:05.404121 '230 Welcome you silly person\r\n' 07:36:05.404162 < 5 bytes data, client => server 07:36:05.404173 'PWD\r\n' 07:36:05.404259 Received DATA (on stdin) 07:36:05.404268 > 30 bytes data, server => client 07:36:05.404275 '257 "/" is current directory\r\n' 07:36:05.404317 < 6 bytes data, client => server 07:36:05.404330 'EPSV\r\n' 07:36:05.405729 Received DATA (on stdin) 07:36:05.405742 > 38 bytes data, server => client 07:36:05.405754 '229 Entering Passive Mode (|||38237|)\n' 07:36:05.405872 < 8 bytes data, client => server 07:36:05.405884 'TYPE I\r\n' 07:36:05.406109 Received DATA (on stdin) 07:36:05.406121 > 33 bytes data, server => client 07:36:05.406133 '200 I modify TYPE as you wanted\r\n' 07:36:05.406180 < 21 bytes data, client => server 07:36:05.406190 'SIZE verifiedserver\r\n' 07:36:05.406279 Received DATA (on stdin) 07:36:05.406289 > 8 bytes data, server => client 07:36:05.406301 '213 18\r\n' 07:36:05.406339 < 21 bytes data, client => server 07:36:05.406350 'RETR verifiedserver\r\n' 07:36:05.406509 Received DATA (on stdin) 07:36:05.406523 > 29 bytes data, server => client 07:36:05.406533 '150 Binary junk (18 bytes).\r\n' 07:36:05.406962 Received DATA (on stdin) 07:36:05.406976 > 28 bytes data, server => client 07:36:05.406987 '226 File transfer complete\r\n' 07:36:05.452760 < 6 bytes data, client => server 07:36:05.452786 'QUIT\r\n' 07:36:05.453014 Received DATA (on stdin) 07:36:05.453028 > 18 bytes data, server => client 07:36:05.453038 '221 bye bye baby\r\n' 07:36:05.453196 ====> Client disconnect 07:36:05.453328 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.405457 Running IPv4 version 07:36:04.405501 Listening on port 38237 07:36:04.405539 Wrote pid 146435 to log/10/server/ftp_sockdata.pid 07:36:04.405557 Received PING (on stdin) 07:36:04.405640 Received PORT (on stdin) 07:36:04.405846 ====> Client connect 07:36:04.406444 Received DATA (on stdin) 07:36:04.406457 > 18 bytes data, server => client 07:36:04.406468 'WE ROOLZ: 133133\r\n' 07:36:04.406508 Received DISC (on stdin) 07:36:04.406524 ====> Client forcibly disconnected 07:36:04.406700 Received QUIT (on stdin) 07:36:04.406717 quits 07:36:04.406767 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1358 === End of file server.cmd === Start of file valgrind1358 ==146543== ==146543== Process terminating with default action of signal 4 (SIGILL) ==146543== Illegal opcode at address 0x4003082 ==146543== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146543== by 0x4003082: main (tool_main.c:234) === End of file valgrind1358 test 1355...[FTP download, file without C-D inside, using -O -i, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1355 ../src/curl -q --trace-ascii log/20/trace1355 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1355 -O -i --output-dir log/20 > log/20/stdout1355 2> log/20/stderr1355 1355: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1355 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1355 ../src/curl -q --trace-ascii log/20/trace1355 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1355 -O -i --output-dir log/20 > log/20/stdout1355 2> log/20/stderr1355 === End of file commands.log === Start of file ftp_server.log 07:36:04.553505 ====> Client connect 07:36:04.553714 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.554000 < "USER anonymous" 07:36:04.554032 > "331 We are happy you popped in![CR][LF]" 07:36:04.554149 < "PASS ftp@example.com" 07:36:04.554166 > "230 Welcome you silly person[CR][LF]" 07:36:04.554271 < "PWD" 07:36:04.554293 > "257 "/" is current directory[CR][LF]" 07:36:04.554398 < "EPSV" 07:36:04.554416 ====> Passive DATA channel requested by client 07:36:04.554425 DATA sockfilt for passive data channel starting... 07:36:04.555915 DATA sockfilt for passive data channel started (pid 146430) 07:36:04.556010 DATA sockfilt for passive data channel listens on port 39751 07:36:04.556045 > "229 Entering Passive Mode (|||39751|)[LF]" 07:36:04.556061 Client has been notified that DATA conn will be accepted on port 39751 07:36:04.556267 Client connects to port 39751 07:36:04.556294 ====> Client established passive DATA connection on port 39751 07:36:04.556356 < "TYPE I" 07:36:04.556382 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.556604 < "SIZE verifiedserver" 07:36:04.556629 > "213 17[CR][LF]" 07:36:04.556978 < "RETR verifiedserver" 07:36:04.557004 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.557057 =====> Closing passive DATA connection... 07:36:04.557068 Server disconnects passive DATA connection 07:36:04.557348 Server disconnected passive DATA connection 07:36:04.557370 DATA sockfilt for passive data channel quits (pid 146430) 07:36:04.557556 DATA sockfilt for passive data channel quit (pid 146430) 07:36:04.557576 =====> Closed passive DATA connection 07:36:04.557599 > "226 File transfer complete[CR][LF]" 07:36:04.600262 < "QUIT" 07:36:04.600300 > "221 bye bye baby[CR][LF]" 07:36:04.600494 MAIN sockfilt said DISC 07:36:04.600533 ====> Client disconnected 07:36:04.600599 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.399348 ====> Client connect 07:36:04.399705 Received DATA (on stdin) 07:36:04.399717 > 160 bytes data, server => client 07:36:04.399726 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.399735 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.399742 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.399808 < 16 bytes data, client => server 07:36:04.399817 'USER anonymous\r\n' 07:36:04.400013 Received DATA (on stdin) 07:36:04.400022 > 33 bytes data, server => client 07:36:04.400030 '331 We are happy you popped in!\r\n' 07:36:04.400067 < 22 bytes data, client => server 07:36:04.400075 'PASS ftp@example.com\r\n' 07:36:04.400145 Received DATA (on stdin) 07:36:04.400153 > 30 bytes data, server => client 07:36:04.400161 '230 Welcome you silly person\r\n' 07:36:04.400196 < 5 bytes data, client => server 07:36:04.400203 'PWD\r\n' 07:36:04.400271 Received DATA (on stdin) 07:36:04.400278 > 30 bytes data, server => client 07:36:04.400286 '257 "/" is current directory\r\n' 07:36:04.400323 < 6 bytes data, client => server 07:36:04.400330 'EPSV\r\n' 07:36:04.402049 Received DATA (on stdin) 07:36:04.402061 > 38 bytes data, server => client 07:36:04.402071 '229 Entering Passive Mode (|||39751|)\n' 07:36:04.402167 < 8 bytes data, client => server 07:36:04.402179 'TYPE I\r\n' 07:36:04.402350 Received DATA (on stdin) 07:36:04.402358 > 33 bytes data, server => client 07:36:04.402366 '200 I modify TYPE as you wanted\r\n' 07:36:04.402517 < 21 bytes data, client => server 07:36:04.402526 'SIZE verifiedserver\r\n' 07:36:04.402652 Received DATA (on stdin) 07:36:04.402661 > 8 bytes data, server => client 07:36:04.402669 '213 17\r\n' 07:36:04.402890 < 21 bytes data, client => server 07:36:04.402899 'RETR verifiedserver\r\n' 07:36:04.403092 Received DATA (on stdin) 07:36:04.403101 > 29 bytes data, server => client 07:36:04.403109 '150 Binary junk (17 bytes).\r\n' 07:36:04.403582 Received DATA (on stdin) 07:36:04.403600 > 28 bytes data, server => client 07:36:04.403610 '226 File transfer complete\r\n' 07:36:04.446115 < 6 bytes data, client => server 07:36:04.446135 'QUIT\r\n' 07:36:04.446285 Received DATA (on stdin) 07:36:04.446294 > 18 bytes data, server => client 07:36:04.446301 '221 bye bye baby\r\n' 07:36:04.446428CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1324 ../src/curl -q --output log/6/curl1324.out --include --trace-ascii log/6/trace1324 --trace-config all --trace-time --resolve example.com:37357:[::1] http://example.com:37357/1324 > log/6/stdout1324 2> log/6/stderr1324 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1356 ../src/curl -q --trace-ascii log/22/trace1356 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1356 -O --output-dir log/22 > log/22/stdout1356 2> log/22/stderr1356 ====> Client disconnect 07:36:04.446495 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.401649 Running IPv4 version 07:36:04.401697 Listening on port 39751 07:36:04.401732 Wrote pid 146430 to log/20/server/ftp_sockdata.pid 07:36:04.401847 Received PING (on stdin) 07:36:04.401921 Received PORT (on stdin) 07:36:04.402206 ====> Client connect 07:36:04.402993 Received DATA (on stdin) 07:36:04.403007 > 17 bytes data, server => client 07:36:04.403017 'WE ROOLZ: 88588\r\n' 07:36:04.403049 Received DISC (on stdin) 07:36:04.403061 ====> Client forcibly disconnected 07:36:04.403352 Received QUIT (on stdin) 07:36:04.403364 quits 07:36:04.403423 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1355 === End of file server.cmd === Start of file valgrind1355 ==146489== ==146489== Process terminating with default action of signal 4 (SIGILL) ==146489== Illegal opcode at address 0x4003082 ==146489== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146489== by 0x4003082: main (tool_main.c:234) === End of file valgrind1355 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/6/server/http_ipv6_server.pid" --logfile "log/6/http_ipv6_server.log" --logdir "log/6" --portfile log/6/server/http_ipv6_server.port --config log/6/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 144515 port 37357 * pid http-ipv6 => 144515 144515 test 1324...[HTTP with --resolve and [ipv6address]] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1324 ../src/curl -q --output log/6/curl1324.out --include --trace-ascii log/6/trace1324 --trace-config all --trace-time --resolve example.com:37357:[::1] http://example.com:37357/1324 > log/6/stdout1324 2> log/6/stderr1324 1324: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1324 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1324 ../src/curl -q --output log/6/curl1324.out --include --trace-ascii log/6/trace1324 --trace-config all --trace-time --resolve example.com:37357:[::1] http://example.com:37357/1324 > log/6/stdout1324 2> log/6/stderr1324 === End of file commands.log === Start of file http_ipv6_server.log 07:36:03.495413 Running HTTP IPv6 version on port 37357 07:36:03.495490 Wrote pid 144515 to log/6/server/http_ipv6_server.pid 07:36:03.495524 Wrote port 37357 to log/6/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 1324 === End of file server.cmd === Start of file valgrind1324 ==146711== ==146711== Process terminating with default action of signal 4 (SIGILL) ==146711== Illegal opcode at address 0x4003082 ==146711== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146711== by 0x4003082: main (tool_main.c:234) === End of file valgrind1324 test 1356...[FTP download, file with Content-Disposition inside, using -O] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1356 ../src/curl -q --trace-ascii log/22/trace1356 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1356 -O --output-dir log/22 > log/22/stdout1356 2> log/22/stderr1356 1356: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1356 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1356 ../src/curl -q --trace-ascii log/22/trace1356 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1356 -O --output-dir log/22 > log/22/stdout1356 2> log/22/stderr1356 === End of file commands.log === Start of file ftp_server.log 07:36:04.556650 ====> Client connect 07:36:04.556832 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.557093 < "USER anonymous" 07:36:04.557126 > "331 We are happy you popped in![CR][LF]" 07:36:04.557279 < "PASS ftp@example.com" 07:36:04.557305 > "230 Welcome you silly person[CR][LF]" 07:36:04.557455 < "PWD" 07:36:04.557487 > "257 "/" is current directory[CR][LF]" 07:36:04.557598 < "EPSV" 07:36:04.557621 ====> Passive DATA channel requested by client 07:36:04.557633 DATA sockfilt for passive data channel starting... 07:36:04.559216 DATA sockfilt for passive data channel started (pid 146433) 07:36:04.559312 DATA sockfilt for passive data channel listens on port 45827 07:36:04.559347 > "229 Entering Passive Mode (|||45827|)[LF]" 07:36:04.559364 Client has been notified that DATA conn will be accepted on port 45827 07:36:04.559529 Client connects to port 45827 07:36:04.559549 ====> Client established passive DATA connection on port 45827 07:36:04.559604 < "TYPE I" 07:36:04.559628 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.559805 < "SIZE verifiedserver" 07:36:04.559857 > "213 17[CR][LF]" 07:36:04.560207 < "RETR verifiedserver" 07:36:04.560248 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.560326 =====> Closing passive DATA connection... 07:36:04.560341 Server disconnects passive DATA connection 07:36:04.560398 Server disconnected passive DATA connection 07:36:04.560416 DATA sockfilt for passive data channel quits (pid 146433) 07:36:04.560697 DATA sockfilt for passive data channel quit (pid 146433) 07:36:04.560727 =====> Closed passive DATA connection 07:36:04.560759 > "226 File transfer complete[CR][LF]" 07:36:04.606993 < "QUIT" 07:36:04.607045 > "221 bye bye baby[CR][LF]" 07:36:04.607681 MAIN sockfilt said DISC 07:36:04.607708 ====> Client disconnected 07:36:04.607792 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.402529 ====> Client connect 07:36:04.402826 Received DATA (on stdin) 07:36:04.402840 > 160 bytes data, server => client 07:36:04.402852 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.402863 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.402873 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.402939 < 16 bytes data, client => server 07:36:04.402951 'USER anonymous\r\n' 07:36:04.403112 Received DATA (on stdin) 07:36:04.403123 > 33 bytes data, server => client 07:36:04.403134 '331 We are happy you popped in!\r\n' 07:36:04.403179 < 22 bytes data, client => server 07:36:04.403191 'PASS ftp@example.com\r\n' 07:36:04.403288 Received DATA (on stdin) 07:36:04.403300 > 30 bytes data, server => client 07:36:04.403311 '230 Welcome you silly person\r\n' 07:36:04.403356 < 5 bytes data, client => server 07:36:04.403369 'PWD\r\n' 07:36:04.403456 Received DATA (on stdin) 07:36:04.403469 > 30 bytes data, server => client 07:36:04.403479 '257 "/" is current directory\r\n' 07:36:04.403525 < 6 bytes data, client => server 07:36:04.403537 'EPSV\r\n' 07:36:04.405344 Received DATA (on stdin) 07:36:04.405362 > 38 bytes data, server => client 07:36:04.405373 '229 Entering Passive Mode (|||45827|)\n' 07:36:04.405491 < 8 bytes data, client => server 07:36:04.405501 'TYPE I\r\n' 07:36:04.405611 Received DATA (on stdin) 07:36:04.405623 > 33 bytes data, server => client 07:36:04.405634 '200 I modify TYPE as you wanted\r\n' 07:36:04.405685 < 21 bytes data, client => server 07:36:04.405697 'SIZE verifiedserver\r\n' 07:36:04.405932 Received DATA (on stdin) 07:36:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1367 ../src/curl -q --trace-ascii log/11/trace1367 --trace-config all --trace-time http://127.0.0.1:41173/1367 -o log/11/outfile1367 -D - > log/11/stdout1367 2> log/11/stderr1367 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1366 ../src/curl -q --trace-ascii log/12/trace1366 --trace-config all --trace-time http://127.0.0.1:37285/1366 -o log/12/outfile1366 -D log/12/heads1366 > log/12/stdout1366 2> log/12/stderr1366 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1365 ../src/curl -q --trace-ascii log/23/trace1365 --trace-config all --trace-time http://127.0.0.1:45701/1365 -o log/23/outfile1365 -D - > log/23/stdout1365 2> log/23/stderr1365 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1363 ../src/curl -q --trace-ascii log/14/trace1363 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1363 -O -i --output-dir log/14 > log/14/stdout1363 2> log/14/stderr1363 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1364 ../src/curl -q --trace-ascii log/16/trace1364 --trace-config all --trace-time http://127.0.0.1:46739/1364 -o log/16/outfile1364 -D log/16/heads1364 > log/16/stdout1364 2> log/16/stderr1364 04.405946 > 8 bytes data, server => client 07:36:04.405957 '213 17\r\n' 07:36:04.406091 < 21 bytes data, client => server 07:36:04.406105 'RETR verifiedserver\r\n' 07:36:04.406228 Received DATA (on stdin) 07:36:04.406249 > 29 bytes data, server => client 07:36:04.406262 '150 Binary junk (17 bytes).\r\n' 07:36:04.406752 Received DATA (on stdin) 07:36:04.406769 > 28 bytes data, server => client 07:36:04.406779 '226 File transfer complete\r\n' 07:36:04.452830 < 6 bytes data, client => server 07:36:04.452853 'QUIT\r\n' 07:36:04.453034 Received DATA (on stdin) 07:36:04.453052 > 18 bytes data, server => client 07:36:04.453066 '221 bye bye baby\r\n' 07:36:04.453617 ====> Client disconnect 07:36:04.453699 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.405023 Running IPv4 version 07:36:04.405081 Listening on port 45827 07:36:04.405127 Wrote pid 146433 to log/22/server/ftp_sockdata.pid 07:36:04.405145 Received PING (on stdin) 07:36:04.405219 Received PORT (on stdin) 07:36:04.405466 ====> Client connect 07:36:04.406264 Received DATA (on stdin) 07:36:04.406288 > 17 bytes data, server => client 07:36:04.406305 'WE ROOLZ: 79849\r\n' 07:36:04.406337 Received DISC (on stdin) 07:36:04.406351 ====> Client forcibly disconnected 07:36:04.406438 Received QUIT (on stdin) 07:36:04.406452 quits 07:36:04.406508 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1356 === End of file server.cmd === Start of file valgrind1356 ==146540== ==146540== Process terminating with default action of signal 4 (SIGILL) ==146540== Illegal opcode at address 0x4003082 ==146540== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==146540== by 0x4003082: main (tool_main.c:234) === End of file valgrind1356 test 1367...[HTTP GET -o fname and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1367 ../src/curl -q --trace-ascii log/11/trace1367 --trace-config all --trace-time http://127.0.0.1:41173/1367 -o log/11/outfile1367 -D - > log/11/stdout1367 2> log/11/stderr1367 1367: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1367 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1367 ../src/curl -q --trace-ascii log/11/trace1367 --trace-config all --trace-time http://127.0.0.1:41173/1367 -o log/11/outfile1367 -D - > log/11/stdout1367 2> log/11/stderr1367 === End of file commands.log === Start of file http_server.log 07:36:04.753800 ====> Client connect 07:36:04.753828 accept_connection 3 returned 4 07:36:04.753842 accept_connection 3 returned 0 07:36:04.753853 Read 93 bytes 07:36:04.753861 Process 93 bytes request 07:36:04.753877 Got request: GET /verifiedserver HTTP/1.1 07:36:04.753885 Are-we-friendly question received 07:36:04.753904 Wrote request (93 bytes) input to log/11/server.input 07:36:04.753917 Identifying ourselves as friends 07:36:04.753958 Response sent (56 bytes) and written to log/11/server.response 07:36:04.753966 special request received, no persistency 07:36:04.753973 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1367 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1367 ==147567== ==147567== Process terminating with default action of signal 4 (SIGILL) ==147567== Illegal opcode at address 0x4003082 ==147567== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147567== by 0x4003082: main (tool_main.c:234) === End of file valgrind1367 test 1366...[HTTP GET -o fname and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1366 ../src/curl -q --trace-ascii log/12/trace1366 --trace-config all --trace-time http://127.0.0.1:37285/1366 -o log/12/outfile1366 -D log/12/heads1366 > log/12/stdout1366 2> log/12/stderr1366 1366: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1366 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1366 ../src/curl -q --trace-ascii log/12/trace1366 --trace-config all --trace-time http://127.0.0.1:37285/1366 -o log/12/outfile1366 -D log/12/heads1366 > log/12/stdout1366 2> log/12/stderr1366 === End of file commands.log === Start of file http_server.log 07:36:04.621703 ====> Client connect 07:36:04.621732 accept_connection 3 returned 4 07:36:04.621746 accept_connection 3 returned 0 07:36:04.621759 Read 93 bytes 07:36:04.621768 Process 93 bytes request 07:36:04.621779 Got request: GET /verifiedserver HTTP/1.1 07:36:04.621787 Are-we-friendly question received 07:36:04.621807 Wrote request (93 bytes) input to log/12/server.input 07:36:04.621824 Identifying ourselves as friends 07:36:04.621871 Response sent (56 bytes) and written to log/12/server.response 07:36:04.621881 special request received, no persistency 07:36:04.621889 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1366 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1366 ==147165== ==147165== Process terminating with default action of signal 4 (SIGILL) ==147165== Illegal opcode at address 0x4003082 ==147165== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147165== by 0x4003082: main (tool_main.c:234) === End of file valgrind1366 test 1365...[HTTP GET -o fname without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1365 ../src/curl -q --trace-ascii log/23/trace1365 --trace-config all --trace-time http://127.0.0.1:45701/1365 -o log/23/outfile1365 -D - > log/23/stdout1365 2> log/23/stderr1365 1365: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1365 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1365 ../src/curl -q --tracCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1359 ../src/curl -q --trace-ascii log/24/trace1359 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1359 -O -J -D log/24/heads1359 --output-dir log/24 > log/24/stdout1359 2> log/24/stderr1359 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1362 ../src/curl -q --trace-ascii log/2/trace1362 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1362 -O -i -D - --output-dir log/2 > log/2/stdout1362 2> log/2/stderr1362 e-ascii log/23/trace1365 --trace-config all --trace-time http://127.0.0.1:45701/1365 -o log/23/outfile1365 -D - > log/23/stdout1365 2> log/23/stderr1365 === End of file commands.log === Start of file http_server.log 07:36:04.619106 ====> Client connect 07:36:04.619141 accept_connection 3 returned 4 07:36:04.619156 accept_connection 3 returned 0 07:36:04.619169 Read 93 bytes 07:36:04.619178 Process 93 bytes request 07:36:04.619190 Got request: GET /verifiedserver HTTP/1.1 07:36:04.619198 Are-we-friendly question received 07:36:04.619219 Wrote request (93 bytes) input to log/23/server.input 07:36:04.619234 Identifying ourselves as friends 07:36:04.619312 Response sent (56 bytes) and written to log/23/server.response 07:36:04.619321 special request received, no persistency 07:36:04.619329 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1365 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1365 ==147162== ==147162== Process terminating with default action of signal 4 (SIGILL) ==147162== Illegal opcode at address 0x4003082 ==147162== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147162== by 0x4003082: main (tool_main.c:234) === End of file valgrind1365 test 1363...[FTP download, file with C-D inside, using -O -i, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1363 ../src/curl -q --trace-ascii log/14/trace1363 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1363 -O -i --output-dir log/14 > log/14/stdout1363 2> log/14/stderr1363 1363: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1363 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1363 ../src/curl -q --trace-ascii log/14/trace1363 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1363 -O -i --output-dir log/14 > log/14/stdout1363 2> log/14/stderr1363 === End of file commands.log === Start of file ftp_server.log 07:36:04.759973 ====> Client connect 07:36:04.760119 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.760357 < "USER anonymous" 07:36:04.760388 > "331 We are happy you popped in![CR][LF]" 07:36:04.760533 < "PASS ftp@example.com" 07:36:04.760554 > "230 Welcome you silly person[CR][LF]" 07:36:04.760691 < "PWD" 07:36:04.760718 > "257 "/" is current directory[CR][LF]" 07:36:04.760859 < "EPSV" 07:36:04.760881 ====> Passive DATA channel requested by client 07:36:04.760893 DATA sockfilt for passive data channel starting... 07:36:04.762891 DATA sockfilt for passive data channel started (pid 147132) 07:36:04.763005 DATA sockfilt for passive data channel listens on port 35487 07:36:04.763047 > "229 Entering Passive Mode (|||35487|)[LF]" 07:36:04.763066 Client has been notified that DATA conn will be accepted on port 35487 07:36:04.763427 Client connects to port 35487 07:36:04.763453 ====> Client established passive DATA connection on port 35487 07:36:04.763527 < "TYPE I" 07:36:04.763555 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.763695 < "SIZE verifiedserver" 07:36:04.763727 > "213 17[CR][LF]" 07:36:04.763852 < "RETR verifiedserver" 07:36:04.763882 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.763959 =====> Closing passive DATA connection... 07:36:04.763973 Server disconnects passive DATA connection 07:36:04.764180 Server disconnected passive DATA connection 07:36:04.764205 DATA sockfilt for passive data channel quits (pid 147132) 07:36:04.764411 DATA sockfilt for passive data channel quit (pid 147132) 07:36:04.764430 =====> Closed passive DATA connection 07:36:04.764455 > "226 File transfer complete[CR][LF]" 07:36:04.807097 < "QUIT" 07:36:04.807147 > "221 bye bye baby[CR][LF]" 07:36:04.808141 MAIN sockfilt said DISC 07:36:04.808172 ====> Client disconnected 07:36:04.808255 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.605863 ====> Client connect 07:36:04.606111 Received DATA (on stdin) 07:36:04.606124 > 160 bytes data, server => client 07:36:04.606136 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.606147 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.606156 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.606214 < 16 bytes data, client => server 07:36:04.606225 'USER anonymous\r\n' 07:36:04.606374 Received DATA (on stdin) 07:36:04.606385 > 33 bytes data, server => client 07:36:04.606396 '331 We are happy you popped in!\r\n' 07:36:04.606440 < 22 bytes data, client => server 07:36:04.606451 'PASS ftp@example.com\r\n' 07:36:04.606537 Received DATA (on stdin) 07:36:04.606547 > 30 bytes data, server => client 07:36:04.606557 '230 Welcome you silly person\r\n' 07:36:04.606602 < 5 bytes data, client => server 07:36:04.606615 'PWD\r\n' 07:36:04.606699 Received DATA (on stdin) 07:36:04.606715 > 30 bytes data, server => client 07:36:04.606726 '257 "/" is current directory\r\n' 07:36:04.606771 < 6 bytes data, client => server 07:36:04.606782 'EPSV\r\n' 07:36:04.609057 Received DATA (on stdin) 07:36:04.609075 > 38 bytes data, server => client 07:36:04.609085 '229 Entering Passive Mode (|||35487|)\n' 07:36:04.609360 < 8 bytes data, client => server 07:36:04.609371 'TYPE I\r\n' 07:36:04.609540 Received DATA (on stdin) 07:36:04.609551 > 33 bytes data, server => client 07:36:04.609561 '200 I modify TYPE as you wanted\r\n' 07:36:04.609606 < 21 bytes data, client => server 07:36:04.609617 'SIZE verifiedserver\r\n' 07:36:04.609707 Received DATA (on stdin) 07:36:04.609719 > 8 bytes data, server => client 07:36:04.609729 '213 17\r\n' 07:36:04.609767 < 21 bytes data, client => server 07:36:04.609777 'RETR verifiedserver\r\n' 07:36:04.609956 Received DATA (on stdin) 07:36:04.609968 > 29 bytes data, server => client 07:36:04.609978 '150 Binary junk (17 bytes).\r\n' 07:36:04.610438 Received DATA (on stdin) 07:36:04.610451 > 28 bytes data, server => client 07:36:04.610465 '226 File transfer complete\r\n' 07:36:04.652928 < 6 bytes data, client => server 07:36:04.652953 'QUIT\r\n' 07:36:04.653132 Received DATA (on stdin) 07:36:04.653142 > 18 bytes data, server => client 07:36:04.653151 '221 bye bye baby\r\n' 07:36:04.654075 ====> Client disconnect 07:36:04.654237 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.608691 Running IPv4 version 07:36:04.608767 Listening on port 35487 07:36:04.608803 Wrote pid 147132 to log/14/server/ftp_sockdata.pid 07:36:04.608821 Received PING (on stdin) 07:36:04.608906 Received PORT (on stdin) 07:36:04.609329 ====> Client connect 07:36:04.610001 Received DATA (on stdin) 07:36:04.610014 > 17 bytes data, server => client 07:36:04.610024 'WE ROOLZ: 79837\r\n' 07:36:04.610046 Received DISC (on stdin) 07:36:04.610057 ====> Client forcibly disconnected 07:36:04.610194 Received QUIT (on stdin) 07:36:04.610206 quits 07:36:04.610263 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1363 === End of file server.cmd === Start of file valgrind1363 ==147294== ==147294== Process terminating with default action of signal 4 (SIGILL) ==147294== Illegal opcode at address 0x4003082 ==147294== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147294== by 0x4003082: main (tool_main.c:234) === End of file valgrind1363 test 1364...[HTTP GET -o fname without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1364 ../src/curl -q --trace-ascii log/16/trace1364 --trace-config all --trace-time http://127.0.0.1:46739/1364 -o log/16/outfile1364 -D log/16/heads1364 > log/16/stdout1364 2> log/16/stderr1364 1364: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1364 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1364 ../src/curl -q --trace-ascii log/16/trace1364 --trace-config all --trace-time http://127.0.0.1:46739/1364 -o log/16/outfile1364 -D log/16/heads1364 > log/16/stdout1364 2> log/16/stderr1364 === End of file commands.log === Start of file http_server.log 07:36:04.615914 ====> Client connect 07:36:04.615946 accept_connection 3 returned 4 07:36:04.615975 accept_connection 3 returned 0 07:36:04.615989 Read 93 bytes 07:36:04.615999 Process 93 bytes request 07:36:04.616011 Got request: GET /verifiedserver HTTP/1.1 07:36:04.616020 Are-we-friendly question received 07:36:04.616044 Wrote request (93 bytes) input to log/16/server.input 07:36:04.616060 Identifying ourselves as friends 07:36:04.616115 Response sent (56 bytes) and written to log/16/server.response 07:36:04.616124 special request received, no persistency 07:36:04.616133 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1364 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1364 ==147163== ==147163== Process terminating with default action of signal 4 (SIGILL) ==147163== Illegal opcode at address 0x4003082 ==147163== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147163== by 0x4003082: main (tool_main.c:234) === End of file valgrind1364 test 1359...[FTP download, file with C-D inside, using -O -J -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1359 ../src/curl -q --trace-ascii log/24/trace1359 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1359 -O -J -D log/24/heads1359 --output-dir log/24 > log/24/stdout1359 2> log/24/stderr1359 1359: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1359 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1359 ../src/curl -q --trace-ascii log/24/trace1359 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1359 -O -J -D log/24/heads1359 --output-dir log/24 > log/24/stdout1359 2> log/24/stderr1359 === End of file commands.log === Start of file ftp_server.log 07:36:04.753967 ====> Client connect 07:36:04.754122 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.754415 < "USER anonymous" 07:36:04.754448 > "331 We are happy you popped in![CR][LF]" 07:36:04.754601 < "PASS ftp@example.com" 07:36:04.754623 > "230 Welcome you silly person[CR][LF]" 07:36:04.754919 < "PWD" 07:36:04.754969 > "257 "/" is current directory[CR][LF]" 07:36:04.755116 < "EPSV" 07:36:04.755139 ====> Passive DATA channel requested by client 07:36:04.755150 DATA sockfilt for passive data channel starting... 07:36:04.757105 DATA sockfilt for passive data channel started (pid 147116) 07:36:04.757222 DATA sockfilt for passive data channel listens on port 38015 07:36:04.757264 > "229 Entering Passive Mode (|||38015|)[LF]" 07:36:04.757282 Client has been notified that DATA conn will be accepted on port 38015 07:36:04.757838 Client connects to port 38015 07:36:04.757868 ====> Client established passive DATA connection on port 38015 07:36:04.757937 < "TYPE I" 07:36:04.757965 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.758113 < "SIZE verifiedserver" 07:36:04.758149 > "213 17[CR][LF]" 07:36:04.758290 < "RETR verifiedserver" 07:36:04.758320 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.758393 =====> Closing passive DATA connection... 07:36:04.758409 Server disconnects passive DATA connection 07:36:04.758628 Server disconnected passive DATA connection 07:36:04.758658 DATA sockfilt for passive data channel quits (pid 147116) 07:36:04.758935 DATA sockfilt for passive data channel quit (pid 147116) 07:36:04.758961 =====> Closed passive DATA connection 07:36:04.758989 > "226 File transfer complete[CR][LF]" 07:36:04.803830 < "QUIT" 07:36:04.803890 > "221 bye bye baby[CR][LF]" 07:36:04.804057 MAIN sockfilt said DISC 07:36:04.804109 ====> Client disconnected 07:36:04.804194 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.599839 ====> Client connect 07:36:04.600119 Received DATA (on stdin) 07:36:04.600134 > 160 bytes data, server => client 07:36:04.600146 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.600158 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.600168 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.600235 < 16 bytes data, client => server 07:36:04.600248 'USER anonymous\r\n' 07:36:04.600434 Received DATA (on stdin) 07:36:04.600445 > 33 bytes data, server => client 07:36:04.600455 '331 We are happy you popped in!\r\n' 07:36:04.600501 < 22 bytes data, client => server 07:36:04.600512 'PASS ftp@example.com\r\n' 07:36:04.600604 Received DATA (on stdin) 07:36:04.600615 > 30 bytes data, server => client 07:36:04.600625 '230 Welcome you silly person\r\n' 07:36:04.600721 < 5 bytes data, client => server 07:36:04.600742 'PWD\r\n' 07:36:04.600954 Received DATA (on stdin) 07:36:04.600964 > 30 bytes data, server => client 07:36:04.600974 '257 "/" is current directory\r\n' 07:36:04.601027 < 6 bytes data, client => server 07:36:04.601036 'EPSV\r\n' 07:36:04.603273 Received DATA (on stdin) 07:36:04.603289 > 38 bytes data, server => client 07:36:04.603300 '229 Entering Passive Mode (|||38015|)\n' 07:36:04.603767 < 8 bytes data, client => server 07:36:04.603780 'TYPE I\r\n' 07:36:04.603950 Received DATA (on stdin) 07:36:04.603962 > 33 bytes data, server => client 07:36:04.603973 '200 I modify TYPE as you wanted\r\n' 07:36:04.604019 < 21 bytes data, client => server 07:36:04.604030 'SIZE verifiedserver\r\n' 07:36:04.604133 Received DATA (on stdin) 07:36:04.604145 > 8 bytes data, server => client 07:36:04.604154 '213 17\r\n' 07:36:04.604197 < 21 bytes data, client => server 07:36:04.604208 'RETR verifiedserver\r\n' 07:36:04.604394 Received DATA (on stdin) 07:36:04.604406 > 29 bytes data, server => client 07:36:04.604416 '150 Binary junk (17 bytes).\r\n' 07:36:04.604973 Received DATA (on stdin) 07:36:04.604987 > 28 bytes data, server => client 07:36:04.604997 '226 File transfer complete\r\n' 07:36:04.649630 < 6 bytes data, client => server 07:36:04.649671 'QUIT\r\n' 07:36:04.649884 Received DATA (on stdin) 07:36:04.649904 > 18 bytes data, server => client 07:36:04.649915 '221 bye bye baby\r\n' 07:36:04.649972 ====> Client disconnect 07:36:04.650111 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.602907 Running IPv4 version 07:36:04.602971 Listening on port 38015 07:36:04.603006 Wrote pid 147116 to log/24/server/ftp_sockdata.pid 07:36:04.603027 Received PING (on stdin) 07:36:04.603119 Received PORT (on stdin) 07:36:04.603733 ====> Client connect 07:36:04.604440 Received DATA (on stdin) 07:36:04.604455 > 17 bytes data, server => client 07:36:04.604465 'WE ROOLZ: 81588\r\n' 07:36:04.604487 Received DISC (on stdin) 07:36:04.604498 ====> Client forcibly disconnected 07:36:04.604650 Received QUIT (on stdin) 07:36:04.604662 quits 07:36:04.604728 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1359 === End of file server.cmd === Start of file valgrind1359 ==147282== ==147282== Process terminating with default action of signal 4 (SIGILL) ==147282== Illegal opcode at address 0x4003082 ==147282== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147282== by 0x4003082: main (tool_main.c:234) === End of file valgrind1359 test 1362...[FTP download, file with C-D inside, using -O -i -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1362 ../src/curl -q --trace-ascii log/2/trace1362 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1362 -O -i -D - --output-dir log/2 > log/2/stdout1362 2> log/2/stderr1362 1362: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1362 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1362 ../src/curl -q --trace-ascii log/2/trace1362 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1362 -O -i -D - --output-dir log/2 > log/2/stdout1362 2> log/2/stderr1362 === End of file commands.log === Start of file ftp_server.log 07:36:04.760241 ====> Client connect 07:36:04.760390 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.760670 < "USER anonymous" 07:36:04.760709 > "331 We are happy you popped in![CR][LF]" 07:36:04.760888 < "PASS ftp@example.com" 07:36:04.760915 > "230 Welcome you silly person[CR][LF]" 07:36:04.761070 < "PWD" 07:36:04.761100 > "257 "/" is current directory[CR][LF]" 07:36:04.761260 < "EPSV" 07:36:04.761288 ====> Passive DATA channel requested by client 07:36:04.761302 DATA sockfilt for passive data channel starting... 07:36:04.763385 DATA sockfilt for passive data channel started (pid 147133) 07:36:04.763503 DATA sockfilt for passive data channel listens on port 40397 07:36:04.763544 > "229 Entering Passive Mode (|||40397|)[LF]" 07:36:04.763560 Client has been notified that DATA conn will be accepted on port 40397 07:36:04.763817 Client connects to port 40397 07:36:04.763854 ====> Client established passive DATA connection on port 40397 07:36:04.763927 < "TYPE I" 07:36:04.763959 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.764134 < "SIZE verifiedserver" 07:36:04.764254 > "213 17[CR][LF]" 07:36:04.764346 < "RETR verifiedserver" 07:36:04.764380 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.764456 =====> Closing passive DATA connection... 07:36:04.764474 Server disconnects passive DATA connection 07:36:04.764624 Server disconnected passive DATA connection 07:36:04.764652 DATA sockfilt for passive data channel quits (pid 147133) 07:36:04.764879 DATA sockfilt for passive data channel quit (pid 147133) 07:36:04.764902 =====> Closed passive DATA connection 07:36:04.764928 > "226 File transfer complete[CR][LF]" 07:36:04.808036 < "QUIT" 07:36:04.808085 > "221 bye bye baby[CR][LF]" 07:36:04.808188 MAIN sockfilt said DISC 07:36:04.808209 ====> Client disconnected 07:36:04.808278 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.606121 ====> Client connect 07:36:04.606387 Received DATA (on stdin) 07:36:04.606404 > 160 bytes data, server => client 07:36:04.606416 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.606428 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.606438 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.606502 < 16 bytes data, client => server 07:36:04.606516 'USER anonymous\r\n' 07:36:04.606697 Received DATA (on stdin) 07:36:04.606717 > 33 bytes data, server => client 07:36:04.606729 '331 We are happy you popped in!\r\n' 07:36:04.606780 < 22 bytes data, client => server 07:36:04.606795 'PASS ftp@example.com\r\n' 07:36:04.606900 Received DATA (on stdin) 07:36:04.606912 > 30 bytes data, server => client 07:36:04.606923 '230 Welcome you silly person\r\n' 07:36:04.606970 < 5 bytes data, client => server 07:36:04.606983 'PWD\r\n' 07:36:04.607086 Received DATA (on stdin) 07:36:04.607098 > 30 bytes data, server => client 07:36:04.607109 '257 "/" is current directory\r\n' 07:36:04.607161 < 6 bytes data, client => server 07:36:04.607174 'EPSV\r\n' 07:36:04.609550 Received DATA (on stdin) 07:36:04.609567 > 38 bytes data, server => client 07:36:04.609586 '229 Entering Passive Mode (|||40397|)\n' 07:36:04.609737 < 8 bytes data, client => server 07:36:04.609755 'TYPE I\r\n' 07:36:04.609946 Received DATA (on stdin) 07:36:04.609959 > 33 bytes data, server => client 07:36:04.609971 '200 I modify TYPE as you wanted\r\n' 07:36:04.610019 < 21 bytes data, client => server 07:36:04.610031 'SIZE verifiedserver\r\n' 07:36:04.610143 Received DATA (on stdin) 07:36:04.610156 > 8 bytes data, server => client 07:36:04.610166 '213 17\r\n' 07:36:04.610229 < 21 bytes data, client => server 07:36:04.610243 'RETR verifiedserver\r\n' 07:36:04.610461 Received DATA (on stdin) 07:36:04.610473 > 29 bytes data, server => client 07:36:04.610484 '150 Binary junk (17 bytes).\r\n' 07:36:04.610912 Received DATA (on stdin) 07:36:04.610924 > 28 bytes data, server => client 07:36:04.610934 '226 File transfer complete\r\n' 07:36:04.653869 < 6 bytes data, client => server 07:36:04.653893 'QUIT\r\n' 07:36:04.654071 Received DATA (on stdin) 07:36:04.654083 > 18 bytes data, server => client 07:36:04.654094 '221 bye bye baby\r\n' 07:36:04.654134 ====> Client disconnect 07:36:04.654261 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.608942 Running IPv4 version 07:36:04.608999 Listening on port 40397 07:36:04.609035 Wrote pid 147133 to log/2/server/ftp_sockdata.pid 07:36:04.609284 Received PING (on stdin) 07:36:04.609400 Received PORT (on stdin) 07:36:04.609697 ====> Client connect 07:36:04.610485 Received DATA (on stdin) 07:36:04.610502 > 17 bytes data, server => client 07:36:04.610512 'WE ROOLZ: 79845\r\n' 07:36:04.610534 Received DISC (on stdin) 07:36:04.610546 ====> Client forcibly disconnected 07:36:04.610643 Received QUIT (on stdin) 07:36:04.610654 quits 07:36:04.610710 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1362 === End of file server.cmd === Start of file valgrind1362 ==147303== ==147303== Process terminating with default action of signal 4 (SIGILL) ==147303== Illegal opcode at address 0x4003082 ==147303== at 0x4003082CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1360 ../src/curl -q --trace-ascii log/9/trace1360 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1360 -O -J -D - --output-dir log/9 > log/9/stdout1360 2> log/9/stderr1360 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1361 ../src/curl -q --trace-ascii log/5/trace1361 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1361 -O -i -D log/5/heads1361 --output-dir log/5 > log/5/stdout1361 2> log/5/stderr1361 : UnknownInlinedFun (string_fortified.h:59) ==147303== by 0x4003082: main (tool_main.c:234) === End of file valgrind1362 test 1360...[FTP download, file with C-D inside, using -O -J -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1360 ../src/curl -q --trace-ascii log/9/trace1360 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1360 -O -J -D - --output-dir log/9 > log/9/stdout1360 2> log/9/stderr1360 1360: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1360 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1360 ../src/curl -q --trace-ascii log/9/trace1360 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1360 -O -J -D - --output-dir log/9 > log/9/stdout1360 2> log/9/stderr1360 === End of file commands.log === Start of file ftp_server.log 07:36:04.757497 ====> Client connect 07:36:04.757631 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.757872 < "USER anonymous" 07:36:04.757903 > "331 We are happy you popped in![CR][LF]" 07:36:04.758048 < "PASS ftp@example.com" 07:36:04.758072 > "230 Welcome you silly person[CR][LF]" 07:36:04.758204 < "PWD" 07:36:04.758229 > "257 "/" is current directory[CR][LF]" 07:36:04.758364 < "EPSV" 07:36:04.758387 ====> Passive DATA channel requested by client 07:36:04.758400 DATA sockfilt for passive data channel starting... 07:36:04.760350 DATA sockfilt for passive data channel started (pid 147124) 07:36:04.760486 DATA sockfilt for passive data channel listens on port 41959 07:36:04.760538 > "229 Entering Passive Mode (|||41959|)[LF]" 07:36:04.760559 Client has been notified that DATA conn will be accepted on port 41959 07:36:04.760806 Client connects to port 41959 07:36:04.760837 ====> Client established passive DATA connection on port 41959 07:36:04.760917 < "TYPE I" 07:36:04.760947 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.761084 < "SIZE verifiedserver" 07:36:04.761119 > "213 17[CR][LF]" 07:36:04.761244 < "RETR verifiedserver" 07:36:04.761276 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.761348 =====> Closing passive DATA connection... 07:36:04.761362 Server disconnects passive DATA connection 07:36:04.761512 Server disconnected passive DATA connection 07:36:04.761533 DATA sockfilt for passive data channel quits (pid 147124) 07:36:04.761782 DATA sockfilt for passive data channel quit (pid 147124) 07:36:04.761803 =====> Closed passive DATA connection 07:36:04.761827 > "226 File transfer complete[CR][LF]" 07:36:04.807405 < "QUIT" 07:36:04.807451 > "221 bye bye baby[CR][LF]" 07:36:04.808446 MAIN sockfilt said DISC 07:36:04.808473 ====> Client disconnected 07:36:04.808533 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.603384 ====> Client connect 07:36:04.603613 Received DATA (on stdin) 07:36:04.603626 > 160 bytes data, server => client 07:36:04.603637 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.603648 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.603658 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.603716 < 16 bytes data, client => server 07:36:04.603727 'USER anonymous\r\n' 07:36:04.603887 Received DATA (on stdin) 07:36:04.603899 > 33 bytes data, server => client 07:36:04.603909 '331 We are happy you popped in!\r\n' 07:36:04.603954 < 22 bytes data, client => server 07:36:04.603965 'PASS ftp@example.com\r\n' 07:36:04.604054 Received DATA (on stdin) 07:36:04.604064 > 30 bytes data, server => client 07:36:04.604075 '230 Welcome you silly person\r\n' 07:36:04.604114 < 5 bytes data, client => server 07:36:04.604125 'PWD\r\n' 07:36:04.604210 Received DATA (on stdin) 07:36:04.604221 > 30 bytes data, server => client 07:36:04.604231 '257 "/" is current directory\r\n' 07:36:04.604276 < 6 bytes data, client => server 07:36:04.604286 'EPSV\r\n' 07:36:04.606542 Received DATA (on stdin) 07:36:04.606566 > 38 bytes data, server => client 07:36:04.606577 '229 Entering Passive Mode (|||41959|)\n' 07:36:04.606739 < 8 bytes data, client => server 07:36:04.606750 'TYPE I\r\n' 07:36:04.606932 Received DATA (on stdin) 07:36:04.606943 > 33 bytes data, server => client 07:36:04.606953 '200 I modify TYPE as you wanted\r\n' 07:36:04.606995 < 21 bytes data, client => server 07:36:04.607005 'SIZE verifiedserver\r\n' 07:36:04.607100 Received DATA (on stdin) 07:36:04.607111 > 8 bytes data, server => client 07:36:04.607119 '213 17\r\n' 07:36:04.607158 < 21 bytes data, client => server 07:36:04.607168 'RETR verifiedserver\r\n' 07:36:04.607346 Received DATA (on stdin) 07:36:04.607356 > 29 bytes data, server => client 07:36:04.607365 '150 Binary junk (17 bytes).\r\n' 07:36:04.607810 Received DATA (on stdin) 07:36:04.607822 > 28 bytes data, server => client 07:36:04.607831 '226 File transfer complete\r\n' 07:36:04.653216 < 6 bytes data, client => server 07:36:04.653241 'QUIT\r\n' 07:36:04.653436 Received DATA (on stdin) 07:36:04.653447 > 18 bytes data, server => client 07:36:04.653457 '221 bye bye baby\r\n' 07:36:04.654380 ====> Client disconnect 07:36:04.654515 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.606160 Running IPv4 version 07:36:04.606214 Listening on port 41959 07:36:04.606251 Wrote pid 147124 to log/9/server/ftp_sockdata.pid 07:36:04.606271 Received PING (on stdin) 07:36:04.606373 Received PORT (on stdin) 07:36:04.606712 ====> Client connect 07:36:04.607387 Received DATA (on stdin) 07:36:04.607402 > 17 bytes data, server => client 07:36:04.607412 'WE ROOLZ: 80150\r\n' 07:36:04.607435 Received DISC (on stdin) 07:36:04.607448 ====> Client forcibly disconnected 07:36:04.607520 Received QUIT (on stdin) 07:36:04.607530 quits 07:36:04.607586 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1360 === End of file server.cmd === Start of file valgrind1360 ==147295== ==147295== Process terminating with default action of signal 4 (SIGILL) ==147295== Illegal opcode at address 0x4003082 ==147295== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147295== by 0x4003082: main (tool_main.c:234) === End of file valgrind1360 test 1361...[FTP download, file with C-D inside, using -O -i -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1361 ../src/curl -q --trace-ascii log/5/trace1361 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1361 -O -i -D log/5/heads1361 --output-dir log/5 > log/5/stdout1361 2> log/5/stderr1361 1361: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1361 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1361 ../src/curl -q --trace-ascii log/5/trace1361 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1361 -O -i -D log/5/heads1361 --output-dir log/5 > log/5/stdout1361 2> log/5/stderr1361 === End of file commands.log === Start of file ftp_server.log 07:36:04.760528 ====> Client connect 07:36:04.760691 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:04.760962 < "USCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1368 ../src/curl -q --trace-ascii log/4/trace1368 --trace-config all --trace-time http://127.0.0.1:33235/1368 -J -o log/4/outfile1368 -D log/4/heads1368 > log/4/stdout1368 2> log/4/stderr1368 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1369 ../src/curl -q --trace-ascii log/15/trace1369 --trace-config all --trace-time http://127.0.0.1:36993/1369 -J -o log/15/outfile1369 -D - > log/15/stdout1369 2> log/15/stderr1369 ER anonymous" 07:36:04.760999 > "331 We are happy you popped in![CR][LF]" 07:36:04.761152 < "PASS ftp@example.com" 07:36:04.761177 > "230 Welcome you silly person[CR][LF]" 07:36:04.761314 < "PWD" 07:36:04.761342 > "257 "/" is current directory[CR][LF]" 07:36:04.761483 < "EPSV" 07:36:04.761511 ====> Passive DATA channel requested by client 07:36:04.761524 DATA sockfilt for passive data channel starting... 07:36:04.763410 DATA sockfilt for passive data channel started (pid 147135) 07:36:04.763527 DATA sockfilt for passive data channel listens on port 42343 07:36:04.763568 > "229 Entering Passive Mode (|||42343|)[LF]" 07:36:04.763584 Client has been notified that DATA conn will be accepted on port 42343 07:36:04.763939 Client connects to port 42343 07:36:04.763976 ====> Client established passive DATA connection on port 42343 07:36:04.764048 < "TYPE I" 07:36:04.764076 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:04.764217 < "SIZE verifiedserver" 07:36:04.764251 > "213 17[CR][LF]" 07:36:04.764388 < "RETR verifiedserver" 07:36:04.764423 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:04.764492 =====> Closing passive DATA connection... 07:36:04.764507 Server disconnects passive DATA connection 07:36:04.764584 Server disconnected passive DATA connection 07:36:04.764603 DATA sockfilt for passive data channel quits (pid 147135) 07:36:04.764831 DATA sockfilt for passive data channel quit (pid 147135) 07:36:04.764853 =====> Closed passive DATA connection 07:36:04.764874 > "226 File transfer complete[CR][LF]" 07:36:04.810431 < "QUIT" 07:36:04.810479 > "221 bye bye baby[CR][LF]" 07:36:04.813211 MAIN sockfilt said DISC 07:36:04.813265 ====> Client disconnected 07:36:04.813343 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:04.606408 ====> Client connect 07:36:04.606687 Received DATA (on stdin) 07:36:04.606701 > 160 bytes data, server => client 07:36:04.606718 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:04.606729 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:04.606740 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:04.606805 < 16 bytes data, client => server 07:36:04.606817 'USER anonymous\r\n' 07:36:04.606987 Received DATA (on stdin) 07:36:04.606999 > 33 bytes data, server => client 07:36:04.607009 '331 We are happy you popped in!\r\n' 07:36:04.607055 < 22 bytes data, client => server 07:36:04.607066 'PASS ftp@example.com\r\n' 07:36:04.607160 Received DATA (on stdin) 07:36:04.607171 > 30 bytes data, server => client 07:36:04.607181 '230 Welcome you silly person\r\n' 07:36:04.607224 < 5 bytes data, client => server 07:36:04.607234 'PWD\r\n' 07:36:04.607324 Received DATA (on stdin) 07:36:04.607335 > 30 bytes data, server => client 07:36:04.607345 '257 "/" is current directory\r\n' 07:36:04.607392 < 6 bytes data, client => server 07:36:04.607403 'EPSV\r\n' 07:36:04.609575 Received DATA (on stdin) 07:36:04.609591 > 38 bytes data, server => client 07:36:04.609601 '229 Entering Passive Mode (|||42343|)\n' 07:36:04.609862 < 8 bytes data, client => server 07:36:04.609878 'TYPE I\r\n' 07:36:04.610059 Received DATA (on stdin) 07:36:04.610071 > 33 bytes data, server => client 07:36:04.610081 '200 I modify TYPE as you wanted\r\n' 07:36:04.610126 < 21 bytes data, client => server 07:36:04.610136 'SIZE verifiedserver\r\n' 07:36:04.610235 Received DATA (on stdin) 07:36:04.610246 > 8 bytes data, server => client 07:36:04.610257 '213 17\r\n' 07:36:04.610300 < 21 bytes data, client => server 07:36:04.610311 'RETR verifiedserver\r\n' 07:36:04.610493 Received DATA (on stdin) 07:36:04.610505 > 29 bytes data, server => client 07:36:04.610515 '150 Binary junk (17 bytes).\r\n' 07:36:04.610854 Received DATA (on stdin) 07:36:04.610865 > 28 bytes data, server => client 07:36:04.610873 '226 File transfer complete\r\n' 07:36:04.656254 < 6 bytes data, client => server 07:36:04.656276 'QUIT\r\n' 07:36:04.656465 Received DATA (on stdin) 07:36:04.656477 > 18 bytes data, server => client 07:36:04.656487 '221 bye bye baby\r\n' 07:36:04.657558 ====> Client disconnect 07:36:04.659334 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:04.609178 Running IPv4 version 07:36:04.609235 Listening on port 42343 07:36:04.609267 Wrote pid 147135 to log/5/server/ftp_sockdata.pid 07:36:04.609285 Received PING (on stdin) 07:36:04.609429 Received PORT (on stdin) 07:36:04.609824 ====> Client connect 07:36:04.610414 Received DATA (on stdin) 07:36:04.610428 > 17 bytes data, server => client 07:36:04.610440 'WE ROOLZ: 79836\r\n' 07:36:04.610512 Received DISC (on stdin) 07:36:04.610531 ====> Client forcibly disconnected 07:36:04.610599 Received QUIT (on stdin) 07:36:04.610613 quits 07:36:04.610668 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1361 === End of file server.cmd === Start of file valgrind1361 ==147501== ==147501== Process terminating with default action of signal 4 (SIGILL) ==147501== Illegal opcode at address 0x4003082 ==147501== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147501== by 0x4003082: main (tool_main.c:234) === End of file valgrind1361 test 1368...[HTTP GET -o fname -J without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1368 ../src/curl -q --trace-ascii log/4/trace1368 --trace-config all --trace-time http://127.0.0.1:33235/1368 -J -o log/4/outfile1368 -D log/4/heads1368 > log/4/stdout1368 2> log/4/stderr1368 1368: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1368 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1368 ../src/curl -q --trace-ascii log/4/trace1368 --trace-config all --trace-time http://127.0.0.1:33235/1368 -J -o log/4/outfile1368 -D log/4/heads1368 > log/4/stdout1368 2> log/4/stderr1368 === End of file commands.log === Start of file http_server.log 07:36:04.866017 ====> Client connect 07:36:04.866056 accept_connection 3 returned 4 07:36:04.866077 accept_connection 3 returned 0 07:36:04.866094 Read 93 bytes 07:36:04.866104 Process 93 bytes request 07:36:04.866120 Got request: GET /verifiedserver HTTP/1.1 07:36:04.866129 Are-we-friendly question received 07:36:04.866157 Wrote request (93 bytes) input to log/4/server.input 07:36:04.866175 Identifying ourselves as friends 07:36:04.866234 Response sent (56 bytes) and written to log/4/server.response 07:36:04.866247 special request received, no persistency 07:36:04.866256 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1368 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1368 ==147654== ==147654== Process terminating with default action of signal 4 (SIGILL) ==147654== Illegal opcode at address 0x4003082 ==147654== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147654== by 0x4003082: main (tool_main.c:234) === End of file valgrind1368 test 1369...[HTTP GET -o fname -J without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1370 ../src/curl -q --trace-ascii log/7/trace1370 --trace-config all --trace-time http://127.0.0.1:43423/1370 -J -o log/7/outfile1370 -D log/7/heads1370 > log/7/stdout1370 2> log/7/stderr1370 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1371 ../src/curl -q --trace-ascii log/3/trace1371 --trace-config all --trace-time http://127.0.0.1:42345/1371 -J -o log/3/outfile1371 -D - > log/3/stdout1371 2> log/3/stderr1371 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1378 ../src/curl -q --trace-ascii log/20/trace1378 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1378 -o log/20/download1378 > log/20/stdout1378 2> log/20/stderr1378 --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1369 ../src/curl -q --trace-ascii log/15/trace1369 --trace-config all --trace-time http://127.0.0.1:36993/1369 -J -o log/15/outfile1369 -D - > log/15/stdout1369 2> log/15/stderr1369 1369: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1369 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1369 ../src/curl -q --trace-ascii log/15/trace1369 --trace-config all --trace-time http://127.0.0.1:36993/1369 -J -o log/15/outfile1369 -D - > log/15/stdout1369 2> log/15/stderr1369 === End of file commands.log === Start of file http_server.log 07:36:04.867435 ====> Client connect 07:36:04.867469 accept_connection 3 returned 4 07:36:04.867486 accept_connection 3 returned 0 07:36:04.867500 Read 93 bytes 07:36:04.867510 Process 93 bytes request 07:36:04.867523 Got request: GET /verifiedserver HTTP/1.1 07:36:04.867532 Are-we-friendly question received 07:36:04.867556 Wrote request (93 bytes) input to log/15/server.input 07:36:04.867574 Identifying ourselves as friends 07:36:04.867628 Response sent (56 bytes) and written to log/15/server.response 07:36:04.867637 special request received, no persistency 07:36:04.867646 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1369 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1369 ==147655== ==147655== Process terminating with default action of signal 4 (SIGILL) ==147655== Illegal opcode at address 0x4003082 ==147655== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147655== by 0x4003082: main (tool_main.c:234) === End of file valgrind1369 test 1370...[HTTP GET -o fname -J and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1370 ../src/curl -q --trace-ascii log/7/trace1370 --trace-config all --trace-time http://127.0.0.1:43423/1370 -J -o log/7/outfile1370 -D log/7/heads1370 > log/7/stdout1370 2> log/7/stderr1370 1370: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1370 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1370 ../src/curl -q --trace-ascii log/7/trace1370 --trace-config all --trace-time http://127.0.0.1:43423/1370 -J -o log/7/outfile1370 -D log/7/heads1370 > log/7/stdout1370 2> log/7/stderr1370 === End of file commands.log === Start of file http_server.log 07:36:05.008824 ====> Client connect 07:36:05.008861 accept_connection 3 returned 4 07:36:05.008877 accept_connection 3 returned 0 07:36:05.008891 Read 93 bytes 07:36:05.008900 Process 93 bytes request 07:36:05.008917 Got request: GET /verifiedserver HTTP/1.1 07:36:05.008926 Are-we-friendly question received 07:36:05.008947 Wrote request (93 bytes) input to log/7/server.input 07:36:05.008965 Identifying ourselves as friends 07:36:05.009018 Response sent (57 bytes) and written to log/7/server.response 07:36:05.009031 special request received, no persistency 07:36:05.009040 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1370 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind1370 ==147783== ==147783== Process terminating with default action of signal 4 (SIGILL) ==147783== Illegal opcode at address 0x4003082 ==147783== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147783== by 0x4003082: main (tool_main.c:234) === End of file valgrind1370 test 1371...[HTTP GET -o fname -J and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1371 ../src/curl -q --trace-ascii log/3/trace1371 --trace-config all --trace-time http://127.0.0.1:42345/1371 -J -o log/3/outfile1371 -D - > log/3/stdout1371 2> log/3/stderr1371 1371: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1371 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1371 ../src/curl -q --trace-ascii log/3/trace1371 --trace-config all --trace-time http://127.0.0.1:42345/1371 -J -o log/3/outfile1371 -D - > log/3/stdout1371 2> log/3/stderr1371 === End of file commands.log === Start of file http_server.log 07:36:05.020344 ====> Client connect 07:36:05.020373 accept_connection 3 returned 4 07:36:05.020390 accept_connection 3 returned 0 07:36:05.020401 Read 93 bytes 07:36:05.020409 Process 93 bytes request 07:36:05.020420 Got request: GET /verifiedserver HTTP/1.1 07:36:05.020427 Are-we-friendly question received 07:36:05.020447 Wrote request (93 bytes) input to log/3/server.input 07:36:05.020460 Identifying ourselves as friends 07:36:05.020503 Response sent (56 bytes) and written to log/3/server.response 07:36:05.020510 special request received, no persistency 07:36:05.020517 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1371 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1371 ==147817== ==147817== Process terminating with default action of signal 4 (SIGILL) ==147817== Illegal opcode at address 0x4003082 ==147817== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147817== by 0x4003082: main (tool_main.c:234) === End of file valgrind1371 test 1378...[FTP DL, file without Content-Disposition inside, using -o fname] ../libtool --mode=execute /usr/bin/valgrind --tool=memchecCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1372 ../src/curl -q --trace-ascii log/1/trace1372 --trace-config all --trace-time http://127.0.0.1:38941/1372 -i -o log/1/outfile1372 -D log/1/heads1372 > log/1/stdout1372 2> log/1/stderr1372 k --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1378 ../src/curl -q --trace-ascii log/20/trace1378 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1378 -o log/20/download1378 > log/20/stdout1378 2> log/20/stderr1378 1378: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1378 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1378 ../src/curl -q --trace-ascii log/20/trace1378 --trace-config all --trace-time ftp://127.0.0.1:45671/path/file1378 -o log/20/download1378 > log/20/stdout1378 2> log/20/stderr1378 === End of file commands.log === Start of file ftp_server.log 07:36:05.256311 ====> Client connect 07:36:05.256456 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.256792 < "USER anonymous" 07:36:05.256847 > "331 We are happy you popped in![CR][LF]" 07:36:05.257163 < "PASS ftp@example.com" 07:36:05.257193 > "230 Welcome you silly person[CR][LF]" 07:36:05.257362 < "PWD" 07:36:05.257395 > "257 "/" is current directory[CR][LF]" 07:36:05.257551 < "EPSV" 07:36:05.257575 ====> Passive DATA channel requested by client 07:36:05.257589 DATA sockfilt for passive data channel starting... 07:36:05.259461 DATA sockfilt for passive data channel started (pid 148137) 07:36:05.259564 DATA sockfilt for passive data channel listens on port 37933 07:36:05.259601 > "229 Entering Passive Mode (|||37933|)[LF]" 07:36:05.259619 Client has been notified that DATA conn will be accepted on port 37933 07:36:05.259812 Client connects to port 37933 07:36:05.259843 ====> Client established passive DATA connection on port 37933 07:36:05.259908 < "TYPE I" 07:36:05.259935 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.260087 < "SIZE verifiedserver" 07:36:05.260122 > "213 17[CR][LF]" 07:36:05.260274 < "RETR verifiedserver" 07:36:05.260310 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.260387 =====> Closing passive DATA connection... 07:36:05.260406 Server disconnects passive DATA connection 07:36:05.260641 Server disconnected passive DATA connection 07:36:05.260671 DATA sockfilt for passive data channel quits (pid 148137) 07:36:05.260901 DATA sockfilt for passive data channel quit (pid 148137) 07:36:05.260926 =====> Closed passive DATA connection 07:36:05.260955 > "226 File transfer complete[CR][LF]" 07:36:05.303826 < "QUIT" 07:36:05.303885 > "221 bye bye baby[CR][LF]" 07:36:05.304010 MAIN sockfilt said DISC 07:36:05.304033 ====> Client disconnected 07:36:05.304107 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.102181 ====> Client connect 07:36:05.102454 Received DATA (on stdin) 07:36:05.102469 > 160 bytes data, server => client 07:36:05.102482 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.102494 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.102505 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.102577 < 16 bytes data, client => server 07:36:05.102591 'USER anonymous\r\n' 07:36:05.102844 Received DATA (on stdin) 07:36:05.102863 > 33 bytes data, server => client 07:36:05.102875 '331 We are happy you popped in!\r\n' 07:36:05.102950 < 22 bytes data, client => server 07:36:05.102965 'PASS ftp@example.com\r\n' 07:36:05.103179 Received DATA (on stdin) 07:36:05.103193 > 30 bytes data, server => client 07:36:05.103204 '230 Welcome you silly person\r\n' 07:36:05.103257 < 5 bytes data, client => server 07:36:05.103271 'PWD\r\n' 07:36:05.103378 Received DATA (on stdin) 07:36:05.103389 > 30 bytes data, server => client 07:36:05.103400 '257 "/" is current directory\r\n' 07:36:05.103455 < 6 bytes data, client => server 07:36:05.103467 'EPSV\r\n' 07:36:05.105606 Received DATA (on stdin) 07:36:05.105620 > 38 bytes data, server => client 07:36:05.105631 '229 Entering Passive Mode (|||37933|)\n' 07:36:05.105756 < 8 bytes data, client => server 07:36:05.105772 'TYPE I\r\n' 07:36:05.105902 Received DATA (on stdin) 07:36:05.105915 > 33 bytes data, server => client 07:36:05.105926 '200 I modify TYPE as you wanted\r\n' 07:36:05.105984 < 21 bytes data, client => server 07:36:05.105996 'SIZE verifiedserver\r\n' 07:36:05.106106 Received DATA (on stdin) 07:36:05.106119 > 8 bytes data, server => client 07:36:05.106129 '213 17\r\n' 07:36:05.106176 < 21 bytes data, client => server 07:36:05.106188 'RETR verifiedserver\r\n' 07:36:05.106391 Received DATA (on stdin) 07:36:05.106403 > 29 bytes data, server => client 07:36:05.106414 '150 Binary junk (17 bytes).\r\n' 07:36:05.106940 Received DATA (on stdin) 07:36:05.106953 > 28 bytes data, server => client 07:36:05.106964 '226 File transfer complete\r\n' 07:36:05.149449 < 6 bytes data, client => server 07:36:05.149578 'QUIT\r\n' 07:36:05.149875 Received DATA (on stdin) 07:36:05.149892 > 18 bytes data, server => client 07:36:05.149902 '221 bye bye baby\r\n' 07:36:05.149952 ====> Client disconnect 07:36:05.150089 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.105136 Running IPv4 version 07:36:05.105210 Listening on port 37933 07:36:05.105260 Wrote pid 148137 to log/20/server/ftp_sockdata.pid 07:36:05.105390 Received PING (on stdin) 07:36:05.105471 Received PORT (on stdin) 07:36:05.105741 ====> Client connect 07:36:05.106485 Received DATA (on stdin) 07:36:05.106506 > 17 bytes data, server => client 07:36:05.106518 'WE ROOLZ: 88588\r\n' 07:36:05.106547 Received DISC (on stdin) 07:36:05.106561 ====> Client forcibly disconnected 07:36:05.106675 Received QUIT (on stdin) 07:36:05.106689 quits 07:36:05.106748 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1378 === End of file server.cmd === Start of file valgrind1378 ==148324== ==148324== Process terminating with default action of signal 4 (SIGILL) ==148324== Illegal opcode at address 0x4003082 ==148324== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148324== by 0x4003082: main (tool_main.c:234) === End of file valgrind1378 test 1372...[HTTP GET -o fname -i without Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1372 ../src/curl -q --trace-ascii log/1/trace1372 --trace-config all --trace-time http://127.0.0.1:38941/1372 -i -o log/1/outfile1372 -D log/1/heads1372 > log/1/stdout1372 2> log/1/stderr1372 1372: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1372 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1372 ../src/curl -q --trace-ascii log/1/trace1372 --trace-config all --trace-time http://127.0.0.1:38941/1372 -i -o log/1/outfile1372 -D log/1/heads1372 > log/1/stdout1372 2> log/1/stderr1372 === End of file commands.log === Start of file http_server.log 07:36:05.044801 ====> Client connect 07:36:05.044832 accept_connection 3 returned 4 07:36:05.044848 accept_connection 3 returned 0 07:36:05.044861 Read 93 bytes 07:36:05.044870 Process 93 bytes request 07:36:05.044882 Got request: GET /verifiedserver HTTP/1.1 07:36:05.044891 Are-we-friendly question received 07:36:05.044914 Wrote request (93 bytes) input to log/1/server.input 07:36:05.044929 Identifying ourselves as friends 07:36:05.044993 Response sent (56 bytes) and written to log/1/server.response 07:36:05.045003 special requCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1373 ../src/curl -q --trace-ascii log/19/trace1373 --trace-config all --trace-time http://127.0.0.1:33487/1373 -i -o log/19/outfile1373 -D - > log/19/stdout1373 2> log/19/stderr1373 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1374 ../src/curl -q --trace-ascii log/13/trace1374 --trace-config all --trace-time http://127.0.0.1:33627/1374 -i -o log/13/outfile1374 -D log/13/heads1374 > log/13/stdout1374 2> log/13/stderr1374 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1375 ../src/curl -q --trace-ascii log/18/trace1375 --trace-config all --trace-time http://127.0.0.1:45825/1375 -i -o log/18/outfile1375 -D - > log/18/stdout1375 2> log/18/stderr1375 est received, no persistency 07:36:05.045011 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1372 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1372 ==147893== ==147893== Process terminating with default action of signal 4 (SIGILL) ==147893== Illegal opcode at address 0x4003082 ==147893== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147893== by 0x4003082: main (tool_main.c:234) === End of file valgrind1372 test 1373...[HTTP GET -o fname -i without Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1373 ../src/curl -q --trace-ascii log/19/trace1373 --trace-config all --trace-time http://127.0.0.1:33487/1373 -i -o log/19/outfile1373 -D - > log/19/stdout1373 2> log/19/stderr1373 1373: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1373 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1373 ../src/curl -q --trace-ascii log/19/trace1373 --trace-config all --trace-time http://127.0.0.1:33487/1373 -i -o log/19/outfile1373 -D - > log/19/stdout1373 2> log/19/stderr1373 === End of file commands.log === Start of file http_server.log 07:36:05.050720 ====> Client connect 07:36:05.050747 accept_connection 3 returned 4 07:36:05.050760 accept_connection 3 returned 0 07:36:05.050770 Read 93 bytes 07:36:05.050779 Process 93 bytes request 07:36:05.050788 Got request: GET /verifiedserver HTTP/1.1 07:36:05.050795 Are-we-friendly question received 07:36:05.050819 Wrote request (93 bytes) input to log/19/server.input 07:36:05.050835 Identifying ourselves as friends 07:36:05.050889 Response sent (56 bytes) and written to log/19/server.response 07:36:05.050898 special request received, no persistency 07:36:05.050907 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1373 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1373 ==147911== ==147911== Process terminating with default action of signal 4 (SIGILL) ==147911== Illegal opcode at address 0x4003082 ==147911== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==147911== by 0x4003082: main (tool_main.c:234) === End of file valgrind1373 test 1374...[HTTP GET -o fname -i and Content-Disposition, -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1374 ../src/curl -q --trace-ascii log/13/trace1374 --trace-config all --trace-time http://127.0.0.1:33627/1374 -i -o log/13/outfile1374 -D log/13/heads1374 > log/13/stdout1374 2> log/13/stderr1374 1374: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1374 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1374 ../src/curl -q --trace-ascii log/13/trace1374 --trace-config all --trace-time http://127.0.0.1:33627/1374 -i -o log/13/outfile1374 -D log/13/heads1374 > log/13/stdout1374 2> log/13/stderr1374 === End of file commands.log === Start of file http_server.log 07:36:05.066838 ====> Client connect 07:36:05.066875 accept_connection 3 returned 4 07:36:05.066891 accept_connection 3 returned 0 07:36:05.066910 Read 93 bytes 07:36:05.066920 Process 93 bytes request 07:36:05.066933 Got request: GET /verifiedserver HTTP/1.1 07:36:05.066942 Are-we-friendly question received 07:36:05.066968 Wrote request (93 bytes) input to log/13/server.input 07:36:05.066985 Identifying ourselves as friends 07:36:05.067040 Response sent (56 bytes) and written to log/13/server.response 07:36:05.067050 special request received, no persistency 07:36:05.067058 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1374 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1374 ==148019== ==148019== Process terminating with default action of signal 4 (SIGILL) ==148019== Illegal opcode at address 0x4003082 ==148019== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148019== by 0x4003082: main (tool_main.c:234) === End of file valgrind1374 test 1375...[HTTP GET -o fname -i and Content-Disposition, -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1375 ../src/curl -q --trace-ascii log/18/trace1375 --trace-config all --trace-time http://127.0.0.1:45825/1375 -i -o log/18/outfile1375 -D - > log/18/stdout1375 2> log/18/stderr1375 1375: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1375 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1375 ../src/curl -q --trace-ascii log/18/trace1375 --trace-config all --trace-time http://127.0.0.1:45825/1375 -i -o log/18/outfile1375 -D - > log/18/stdout1375 2> log/18/stderr1375 === End of file commands.log === Start of file http_server.log 07:36:05.092357 ====> Client connect 07:36:05.092393 accept_connection 3 returned 4 07:36:05.092411 accept_connection 3 returned 0 07:36:05.092427 Read 93 bytes 07:36:05.092437 Process 93 bytes request 07:36:05.092450 Got request: GET /verifiedserver HTTP/1.1 07:36:05.092460 Are-we-friendly question received 07:36:05.092490 Wrote request (93 bytes) input to log/18/server.input 07:36:05.092508 Identifying ourselves as friends 07:36:05.092572 Response sent (56 bytes) and written to lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1377 ../src/curl -q --trace-ascii log/17/trace1377 --trace-config all --trace-time http://127.0.0.1:39089/1377 -i -o log/17/outfile1377 > log/17/stdout1377 2> log/17/stderr1377 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1376 ../src/curl -q --trace-ascii log/8/trace1376 --trace-config all --trace-time http://127.0.0.1:45261/1376 -i -o log/8/outfile1376 > log/8/stdout1376 2> log/8/stderr1376 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1381 ../src/curl -q --trace-ascii log/22/trace1381 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1381 -o log/22/download1381 -J -D log/22/heads1381 > log/22/stdout1381 2> log/22/stderr1381 og/18/server.response 07:36:05.092582 special request received, no persistency 07:36:05.092647 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1375 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1375 ==148156== ==148156== Process terminating with default action of signal 4 (SIGILL) ==148156== Illegal opcode at address 0x4003082 ==148156== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148156== by 0x4003082: main (tool_main.c:234) === End of file valgrind1375 test 1377...[HTTP GET -o fname -i and Content-Disposition, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1377 ../src/curl -q --trace-ascii log/17/trace1377 --trace-config all --trace-time http://127.0.0.1:39089/1377 -i -o log/17/outfile1377 > log/17/stdout1377 2> log/17/stderr1377 1377: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1377 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1377 ../src/curl -q --trace-ascii log/17/trace1377 --trace-config all --trace-time http://127.0.0.1:39089/1377 -i -o log/17/outfile1377 > log/17/stdout1377 2> log/17/stderr1377 === End of file commands.log === Start of file http_server.log 07:36:05.101165 ====> Client connect 07:36:05.101198 accept_connection 3 returned 4 07:36:05.101215 accept_connection 3 returned 0 07:36:05.101229 Read 93 bytes 07:36:05.101238 Process 93 bytes request 07:36:05.101251 Got request: GET /verifiedserver HTTP/1.1 07:36:05.101260 Are-we-friendly question received 07:36:05.101285 Wrote request (93 bytes) input to log/17/server.input 07:36:05.101302 Identifying ourselves as friends 07:36:05.101355 Response sent (56 bytes) and written to log/17/server.response 07:36:05.101366 special request received, no persistency 07:36:05.101374 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1377 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1377 ==148174== ==148174== Process terminating with default action of signal 4 (SIGILL) ==148174== Illegal opcode at address 0x4003082 ==148174== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148174== by 0x4003082: main (tool_main.c:234) === End of file valgrind1377 test 1376...[HTTP GET -o fname -i without Content-Disposition, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1376 ../src/curl -q --trace-ascii log/8/trace1376 --trace-config all --trace-time http://127.0.0.1:45261/1376 -i -o log/8/outfile1376 > log/8/stdout1376 2> log/8/stderr1376 1376: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1376 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1376 ../src/curl -q --trace-ascii log/8/trace1376 --trace-config all --trace-time http://127.0.0.1:45261/1376 -i -o log/8/outfile1376 > log/8/stdout1376 2> log/8/stderr1376 === End of file commands.log === Start of file http_server.log 07:36:05.094959 ====> Client connect 07:36:05.094993 accept_connection 3 returned 4 07:36:05.095010 accept_connection 3 returned 0 07:36:05.095025 Read 93 bytes 07:36:05.095035 Process 93 bytes request 07:36:05.095049 Got request: GET /verifiedserver HTTP/1.1 07:36:05.095059 Are-we-friendly question received 07:36:05.095086 Wrote request (93 bytes) input to log/8/server.input 07:36:05.095102 Identifying ourselves as friends 07:36:05.095161 Response sent (56 bytes) and written to log/8/server.response 07:36:05.095172 special request received, no persistency 07:36:05.095182 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1376 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1376 ==148160== ==148160== Process terminating with default action of signal 4 (SIGILL) ==148160== Illegal opcode at address 0x4003082 ==148160== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148160== by 0x4003082: main (tool_main.c:234) === End of file valgrind1376 test 1381...[FTP DL, file without C-D inside, using -o fname -J -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1381 ../src/curl -q --trace-ascii log/22/trace1381 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1381 -o log/22/download1381 -J -D log/22/heads1381 > log/22/stdout1381 2> log/22/stderr1381 1381: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1381 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1381 ../src/curl -q --trace-ascii log/22/trace1381 --trace-config all --trace-time ftp://127.0.0.1:42651/path/file1381 -o log/22/download1381 -J -D log/22/heads1381 > log/22/stdout1381 2> log/22/stderr1381 === End of file commands.log === Start of file ftp_server.log 07:36:05.260856 ====> Client connect 07:36:05.261004 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.261254 < "USER anonymous" 07:36:05.261287 > "331 We are happy you popped in![CR][LF]" 07:36:05.261473 < "PASS ftp@example.com" 07:36:05.261520 > "230 Welcome you silly person[CR][LF]" 07:36:0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1380 ../src/curl -q --trace-ascii log/6/trace1380 --trace-config all --trace-time ftp://127.0.0.1:36135/path/file1380 -o log/6/download1380 -D - > log/6/stdout1380 2> log/6/stderr1380 5.261654 < "PWD" 07:36:05.261694 > "257 "/" is current directory[CR][LF]" 07:36:05.261817 < "EPSV" 07:36:05.261839 ====> Passive DATA channel requested by client 07:36:05.261851 DATA sockfilt for passive data channel starting... 07:36:05.263396 DATA sockfilt for passive data channel started (pid 148152) 07:36:05.263510 DATA sockfilt for passive data channel listens on port 44533 07:36:05.263553 > "229 Entering Passive Mode (|||44533|)[LF]" 07:36:05.263569 Client has been notified that DATA conn will be accepted on port 44533 07:36:05.263781 Client connects to port 44533 07:36:05.263806 ====> Client established passive DATA connection on port 44533 07:36:05.263868 < "TYPE I" 07:36:05.263895 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.264029 < "SIZE verifiedserver" 07:36:05.264064 > "213 17[CR][LF]" 07:36:05.264194 < "RETR verifiedserver" 07:36:05.264223 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.264298 =====> Closing passive DATA connection... 07:36:05.264314 Server disconnects passive DATA connection 07:36:05.264456 Server disconnected passive DATA connection 07:36:05.264499 DATA sockfilt for passive data channel quits (pid 148152) 07:36:05.264763 DATA sockfilt for passive data channel quit (pid 148152) 07:36:05.264787 =====> Closed passive DATA connection 07:36:05.264821 > "226 File transfer complete[CR][LF]" 07:36:05.310352 < "QUIT" 07:36:05.310414 > "221 bye bye baby[CR][LF]" 07:36:05.311850 MAIN sockfilt said DISC 07:36:05.311880 ====> Client disconnected 07:36:05.311963 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.106743 ====> Client connect 07:36:05.106996 Received DATA (on stdin) 07:36:05.107011 > 160 bytes data, server => client 07:36:05.107023 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.107034 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.107044 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.107106 < 16 bytes data, client => server 07:36:05.107117 'USER anonymous\r\n' 07:36:05.107273 Received DATA (on stdin) 07:36:05.107286 > 33 bytes data, server => client 07:36:05.107296 '331 We are happy you popped in!\r\n' 07:36:05.107340 < 22 bytes data, client => server 07:36:05.107351 'PASS ftp@example.com\r\n' 07:36:05.107486 Received DATA (on stdin) 07:36:05.107498 > 30 bytes data, server => client 07:36:05.107508 '230 Welcome you silly person\r\n' 07:36:05.107546 < 5 bytes data, client => server 07:36:05.107556 'PWD\r\n' 07:36:05.107678 Received DATA (on stdin) 07:36:05.107689 > 30 bytes data, server => client 07:36:05.107699 '257 "/" is current directory\r\n' 07:36:05.107740 < 6 bytes data, client => server 07:36:05.107751 'EPSV\r\n' 07:36:05.109561 Received DATA (on stdin) 07:36:05.109574 > 38 bytes data, server => client 07:36:05.109587 '229 Entering Passive Mode (|||44533|)\n' 07:36:05.109687 < 8 bytes data, client => server 07:36:05.109701 'TYPE I\r\n' 07:36:05.109878 Received DATA (on stdin) 07:36:05.109890 > 33 bytes data, server => client 07:36:05.109899 '200 I modify TYPE as you wanted\r\n' 07:36:05.109939 < 21 bytes data, client => server 07:36:05.109950 'SIZE verifiedserver\r\n' 07:36:05.110048 Received DATA (on stdin) 07:36:05.110059 > 8 bytes data, server => client 07:36:05.110068 '213 17\r\n' 07:36:05.110108 < 21 bytes data, client => server 07:36:05.110118 'RETR verifiedserver\r\n' 07:36:05.110297 Received DATA (on stdin) 07:36:05.110309 > 29 bytes data, server => client 07:36:05.110319 '150 Binary junk (17 bytes).\r\n' 07:36:05.110814 Received DATA (on stdin) 07:36:05.110832 > 28 bytes data, server => client 07:36:05.110843 '226 File transfer complete\r\n' 07:36:05.156150 < 6 bytes data, client => server 07:36:05.156177 'QUIT\r\n' 07:36:05.156401 Received DATA (on stdin) 07:36:05.156412 > 18 bytes data, server => client 07:36:05.156422 '221 bye bye baby\r\n' 07:36:05.157783 ====> Client disconnect 07:36:05.157948 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.109142 Running IPv4 version 07:36:05.109238 Listening on port 44533 07:36:05.109303 Wrote pid 148152 to log/22/server/ftp_sockdata.pid 07:36:05.109322 Received PING (on stdin) 07:36:05.109405 Received PORT (on stdin) 07:36:05.109721 ====> Client connect 07:36:05.110343 Received DATA (on stdin) 07:36:05.110355 > 17 bytes data, server => client 07:36:05.110365 'WE ROOLZ: 79849\r\n' 07:36:05.110386 Received DISC (on stdin) 07:36:05.110397 ====> Client forcibly disconnected 07:36:05.110501 Received QUIT (on stdin) 07:36:05.110519 quits 07:36:05.110581 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1381 === End of file server.cmd === Start of file valgrind1381 ==148344== ==148344== Process terminating with default action of signal 4 (SIGILL) ==148344== Illegal opcode at address 0x4003082 ==148344== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148344== by 0x4003082: main (tool_main.c:234) === End of file valgrind1381 test 1380...[FTP DL, file without C-D inside, using -o fname -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1380 ../src/curl -q --trace-ascii log/6/trace1380 --trace-config all --trace-time ftp://127.0.0.1:36135/path/file1380 -o log/6/download1380 -D - > log/6/stdout1380 2> log/6/stderr1380 1380: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1380 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1380 ../src/curl -q --trace-ascii log/6/trace1380 --trace-config all --trace-time ftp://127.0.0.1:36135/path/file1380 -o log/6/download1380 -D - > log/6/stdout1380 2> log/6/stderr1380 === End of file commands.log === Start of file ftp_server.log 07:36:05.260203 ====> Client connect 07:36:05.260345 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.260589 < "USER anonymous" 07:36:05.260624 > "331 We are happy you popped in![CR][LF]" 07:36:05.260777 < "PASS ftp@example.com" 07:36:05.260801 > "230 Welcome you silly person[CR][LF]" 07:36:05.260936 < "PWD" 07:36:05.260964 > "257 "/" is current directory[CR][LF]" 07:36:05.261106 < "EPSV" 07:36:05.261133 ====> Passive DATA channel requested by client 07:36:05.261148 DATA sockfilt for passive data channel starting... 07:36:05.262717 DATA sockfilt for passive data channel started (pid 148150) 07:36:05.262813 DATA sockfilt for passive data channel listens on port 40785 07:36:05.262847 > "229 Entering Passive Mode (|||40785|)[LF]" 07:36:05.262863 Client has been notified that DATA conn will be accepted on port 40785 07:36:05.263056 Client connects to port 40785 07:36:05.263081 ====> Client established passive DATA connection on port 40785 07:36:05.263142 < "TYPE I" 07:36:05.263164 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.263335 < "SIZE verifiedserver" 07:36:05.263367 > "213 17[CR][LF]" 07:36:05.263635 < "RETR verifiedserver" 07:36:05.263703 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.263808 =====> Closing passive DATA connection... 07:36:05.263826 Server disconnects passive DATA connection 07:36:05.264257 Server disconnected passive DATA connection 07:36:05.264287 DATA sockfilt for passive data channel quits (pid 148150) 07:36:05.264546 DATA sockfilt for passive data channel quit (pid 148150) 07:36:05.264568 =====> Closed passive DATA connection 07:36:05.264598 > "226 File transfer complete[CR][LF]" 07:36:05.311454 < "QUIT" 07:36:05.311509 > "221 bye bye baby[CR][LF]" 07:36:05.312660 MAIN sockfilt said DISC 07:36:05.312690 ====> Client disconneCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1379 ../src/curl -q --trace-ascii log/10/trace1379 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1379 -o log/10/download1379 -D log/10/heads1379 > log/10/stdout1379 2> log/10/stderr1379 cted 07:36:05.312760 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.106071 ====> Client connect 07:36:05.106340 Received DATA (on stdin) 07:36:05.106354 > 160 bytes data, server => client 07:36:05.106366 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.106376 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.106386 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.106445 < 16 bytes data, client => server 07:36:05.106457 'USER anonymous\r\n' 07:36:05.106610 Received DATA (on stdin) 07:36:05.106623 > 33 bytes data, server => client 07:36:05.106633 '331 We are happy you popped in!\r\n' 07:36:05.106681 < 22 bytes data, client => server 07:36:05.106692 'PASS ftp@example.com\r\n' 07:36:05.106784 Received DATA (on stdin) 07:36:05.106795 > 30 bytes data, server => client 07:36:05.106805 '230 Welcome you silly person\r\n' 07:36:05.106845 < 5 bytes data, client => server 07:36:05.106855 'PWD\r\n' 07:36:05.106945 Received DATA (on stdin) 07:36:05.106956 > 30 bytes data, server => client 07:36:05.106966 '257 "/" is current directory\r\n' 07:36:05.107015 < 6 bytes data, client => server 07:36:05.107026 'EPSV\r\n' 07:36:05.108849 Received DATA (on stdin) 07:36:05.108861 > 38 bytes data, server => client 07:36:05.108871 '229 Entering Passive Mode (|||40785|)\n' 07:36:05.108990 < 8 bytes data, client => server 07:36:05.109000 'TYPE I\r\n' 07:36:05.109147 Received DATA (on stdin) 07:36:05.109158 > 33 bytes data, server => client 07:36:05.109168 '200 I modify TYPE as you wanted\r\n' 07:36:05.109231 < 21 bytes data, client => server 07:36:05.109242 'SIZE verifiedserver\r\n' 07:36:05.109350 Received DATA (on stdin) 07:36:05.109361 > 8 bytes data, server => client 07:36:05.109371 '213 17\r\n' 07:36:05.109453 < 21 bytes data, client => server 07:36:05.109480 'RETR verifiedserver\r\n' 07:36:05.109812 Received DATA (on stdin) 07:36:05.109825 > 29 bytes data, server => client 07:36:05.109835 '150 Binary junk (17 bytes).\r\n' 07:36:05.110584 Received DATA (on stdin) 07:36:05.110596 > 28 bytes data, server => client 07:36:05.110607 '226 File transfer complete\r\n' 07:36:05.157231 < 6 bytes data, client => server 07:36:05.157254 'QUIT\r\n' 07:36:05.157678 Received DATA (on stdin) 07:36:05.157695 > 18 bytes data, server => client 07:36:05.157705 '221 bye bye baby\r\n' 07:36:05.158591 ====> Client disconnect 07:36:05.158742 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.108535 Running IPv4 version 07:36:05.108588 Listening on port 40785 07:36:05.108630 Wrote pid 148150 to log/6/server/ftp_sockdata.pid 07:36:05.108648 Received PING (on stdin) 07:36:05.108723 Received PORT (on stdin) 07:36:05.108966 ====> Client connect 07:36:05.109833 Received DATA (on stdin) 07:36:05.109857 > 17 bytes data, server => client 07:36:05.109868 'WE ROOLZ: 79833\r\n' 07:36:05.109916 Received DISC (on stdin) 07:36:05.109929 ====> Client forcibly disconnected 07:36:05.110280 Received QUIT (on stdin) 07:36:05.110293 quits 07:36:05.110359 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1380 === End of file server.cmd === Start of file valgrind1380 ==148343== ==148343== Process terminating with default action of signal 4 (SIGILL) ==148343== Illegal opcode at address 0x4003082 ==148343== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148343== by 0x4003082: main (tool_main.c:234) === End of file valgrind1380 test 1379...[FTP DL, file without C-D inside, using -o fname -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1379 ../src/curl -q --trace-ascii log/10/trace1379 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1379 -o log/10/download1379 -D log/10/heads1379 > log/10/stdout1379 2> log/10/stderr1379 1379: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1379 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1379 ../src/curl -q --trace-ascii log/10/trace1379 --trace-config all --trace-time ftp://127.0.0.1:34951/path/file1379 -o log/10/download1379 -D log/10/heads1379 > log/10/stdout1379 2> log/10/stderr1379 === End of file commands.log === Start of file ftp_server.log 07:36:05.256913 ====> Client connect 07:36:05.257048 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.257288 < "USER anonymous" 07:36:05.257320 > "331 We are happy you popped in![CR][LF]" 07:36:05.257466 < "PASS ftp@example.com" 07:36:05.257491 > "230 Welcome you silly person[CR][LF]" 07:36:05.257627 < "PWD" 07:36:05.257653 > "257 "/" is current directory[CR][LF]" 07:36:05.257788 < "EPSV" 07:36:05.257810 ====> Passive DATA channel requested by client 07:36:05.257822 DATA sockfilt for passive data channel starting... 07:36:05.260479 DATA sockfilt for passive data channel started (pid 148139) 07:36:05.260583 DATA sockfilt for passive data channel listens on port 38321 07:36:05.260619 > "229 Entering Passive Mode (|||38321|)[LF]" 07:36:05.260637 Client has been notified that DATA conn will be accepted on port 38321 07:36:05.261080 Client connects to port 38321 07:36:05.261124 ====> Client established passive DATA connection on port 38321 07:36:05.261221 < "TYPE I" 07:36:05.261257 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.261391 < "SIZE verifiedserver" 07:36:05.261427 > "213 18[CR][LF]" 07:36:05.261633 < "RETR verifiedserver" 07:36:05.261669 > "150 Binary junk (18 bytes).[CR][LF]" 07:36:05.261747 =====> Closing passive DATA connection... 07:36:05.261763 Server disconnects passive DATA connection 07:36:05.261992 Server disconnected passive DATA connection 07:36:05.262020 DATA sockfilt for passive data channel quits (pid 148139) 07:36:05.262359 DATA sockfilt for passive data channel quit (pid 148139) 07:36:05.262388 =====> Closed passive DATA connection 07:36:05.262418 > "226 File transfer complete[CR][LF]" 07:36:05.304321 < "QUIT" 07:36:05.304387 > "221 bye bye baby[CR][LF]" 07:36:05.304553 MAIN sockfilt said DISC 07:36:05.304581 ====> Client disconnected 07:36:05.304735 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:06.102793 ====> Client connect 07:36:06.103040 Received DATA (on stdin) 07:36:06.103054 > 160 bytes data, server => client 07:36:06.103066 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:06.103077 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:06.103087 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:06.103145 < 16 bytes data, client => server 07:36:06.103156 'USER anonymous\r\n' 07:36:06.103306 Received DATA (on stdin) 07:36:06.103318 > 33 bytes data, server => client 07:36:06.103328 '331 We are happy you popped in!\r\n' 07:36:06.103372 < 22 bytes data, client => server 07:36:06.103383 'PASS ftp@example.com\r\n' 07:36:06.103473 Received DATA (on stdin) 07:36:06.103484 > 30 bytes data, server => client 07:36:06.103495 '230 Welcome you silly person\r\n' 07:36:06.103534 < 5 bytes data, client => server 07:36:06.103549 'PWD\r\n' 07:36:06.103633 Received DATA (on stdin) 07:36:06.103644 > 30 bytes data, server => client 07:36:06.103654 '257 "/" is current directory\r\n' 07:36:06.103702 < 6 bytes data, client => server 07:36:06.103712 'EPSV\r\n' 07:36:06.106627 Received DATA (on stdin) 07:36:06.106643 > 38 bytes data, server => client 07:36:06.106655 '229 Entering Passive Mode (|||38321|)\n' 07:36:06.106762 < 8 bytes data, client => server 07:36:06.106776 'TYPE I\r\n' 07:36:0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1390 ../src/curl -q --trace-ascii log/5/trace1390 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1390 -o log/5/download1390 -J -D - > log/5/stdout1390 2> log/5/stderr1390 6.107235 Received DATA (on stdin) 07:36:06.107252 > 33 bytes data, server => client 07:36:06.107263 '200 I modify TYPE as you wanted\r\n' 07:36:06.107314 < 21 bytes data, client => server 07:36:06.107325 'SIZE verifiedserver\r\n' 07:36:06.107416 Received DATA (on stdin) 07:36:06.107435 > 8 bytes data, server => client 07:36:06.107446 '213 18\r\n' 07:36:06.107526 < 21 bytes data, client => server 07:36:06.107542 'RETR verifiedserver\r\n' 07:36:06.107750 Received DATA (on stdin) 07:36:06.107763 > 29 bytes data, server => client 07:36:06.107774 '150 Binary junk (18 bytes).\r\n' 07:36:06.108403 Received DATA (on stdin) 07:36:06.108416 > 28 bytes data, server => client 07:36:06.108427 '226 File transfer complete\r\n' 07:36:06.149523 < 6 bytes data, client => server 07:36:06.149546 'QUIT\r\n' 07:36:06.150353 Received DATA (on stdin) 07:36:06.150372 > 18 bytes data, server => client 07:36:06.150383 '221 bye bye baby\r\n' 07:36:06.150485 ====> Client disconnect 07:36:06.150587 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.105555 Running IPv4 version 07:36:05.105606 Listening on port 38321 07:36:05.105648 Wrote pid 148139 to log/10/server/ftp_sockdata.pid 07:36:05.106397 Received PING (on stdin) 07:36:05.106488 Received PORT (on stdin) 07:36:05.107001 ====> Client connect 07:36:05.107801 Received DATA (on stdin) 07:36:05.107815 > 18 bytes data, server => client 07:36:05.107827 'WE ROOLZ: 133133\r\n' 07:36:05.107852 Received DISC (on stdin) 07:36:05.107864 ====> Client forcibly disconnected 07:36:05.108013 Received QUIT (on stdin) 07:36:05.108025 quits 07:36:05.108079 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1379 === End of file server.cmd === Start of file valgrind1379 ==148330== ==148330== Process terminating with default action of signal 4 (SIGILL) ==148330== Illegal opcode at address 0x4003082 ==148330== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148330== by 0x4003082: main (tool_main.c:234) === End of file valgrind1379 test 1390...[FTP DL, file with C-D inside, using -o fname -J -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1390 ../src/curl -q --trace-ascii log/5/trace1390 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1390 -o log/5/download1390 -J -D - > log/5/stdout1390 2> log/5/stderr1390 1390: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1390 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1390 ../src/curl -q --trace-ascii log/5/trace1390 --trace-config all --trace-time ftp://127.0.0.1:42261/path/file1390 -o log/5/download1390 -J -D - > log/5/stdout1390 2> log/5/stderr1390 === End of file commands.log === Start of file ftp_server.log 07:36:05.457741 ====> Client connect 07:36:05.457871 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.458072 < "USER anonymous" 07:36:05.458099 > "331 We are happy you popped in![CR][LF]" 07:36:05.458210 < "PASS ftp@example.com" 07:36:05.458229 > "230 Welcome you silly person[CR][LF]" 07:36:05.458329 < "PWD" 07:36:05.458352 > "257 "/" is current directory[CR][LF]" 07:36:05.458456 < "EPSV" 07:36:05.458476 ====> Passive DATA channel requested by client 07:36:05.458486 DATA sockfilt for passive data channel starting... 07:36:05.459617 DATA sockfilt for passive data channel started (pid 148669) 07:36:05.459696 DATA sockfilt for passive data channel listens on port 37867 07:36:05.459722 > "229 Entering Passive Mode (|||37867|)[LF]" 07:36:05.459736 Client has been notified that DATA conn will be accepted on port 37867 07:36:05.459900 Client connects to port 37867 07:36:05.459925 ====> Client established passive DATA connection on port 37867 07:36:05.459973 < "TYPE I" 07:36:05.459998 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.460115 < "SIZE verifiedserver" 07:36:05.460138 > "213 17[CR][LF]" 07:36:05.460242 < "RETR verifiedserver" 07:36:05.460267 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.460347 =====> Closing passive DATA connection... 07:36:05.460365 Server disconnects passive DATA connection 07:36:05.460428 Server disconnected passive DATA connection 07:36:05.460452 DATA sockfilt for passive data channel quits (pid 148669) 07:36:05.460688 DATA sockfilt for passive data channel quit (pid 148669) 07:36:05.460727 =====> Closed passive DATA connection 07:36:05.460769 > "226 File transfer complete[CR][LF]" 07:36:05.503718 < "QUIT" 07:36:05.503769 > "221 bye bye baby[CR][LF]" 07:36:05.503922 MAIN sockfilt said DISC 07:36:05.503951 ====> Client disconnected 07:36:05.504007 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.303632 ====> Client connect 07:36:05.303859 Received DATA (on stdin) 07:36:05.303871 > 160 bytes data, server => client 07:36:05.303880 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.303888 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.303895 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.303954 < 16 bytes data, client => server 07:36:05.303967 'USER anonymous\r\n' 07:36:05.304080 Received DATA (on stdin) 07:36:05.304090 > 33 bytes data, server => client 07:36:05.304098 '331 We are happy you popped in!\r\n' 07:36:05.304136 < 22 bytes data, client => server 07:36:05.304148 'PASS ftp@example.com\r\n' 07:36:05.304207 Received DATA (on stdin) 07:36:05.304216 > 30 bytes data, server => client 07:36:05.304224 '230 Welcome you silly person\r\n' 07:36:05.304260 < 5 bytes data, client => server 07:36:05.304271 'PWD\r\n' 07:36:05.304329 Received DATA (on stdin) 07:36:05.304338 > 30 bytes data, server => client 07:36:05.304346 '257 "/" is current directory\r\n' 07:36:05.304387 < 6 bytes data, client => server 07:36:05.304398 'EPSV\r\n' 07:36:05.305717 Received DATA (on stdin) 07:36:05.305728 > 38 bytes data, server => client 07:36:05.305736 '229 Entering Passive Mode (|||37867|)\n' 07:36:05.305835 < 8 bytes data, client => server 07:36:05.305846 'TYPE I\r\n' 07:36:05.305979 Received DATA (on stdin) 07:36:05.305988 > 33 bytes data, server => client 07:36:05.305996 '200 I modify TYPE as you wanted\r\n' 07:36:05.306035 < 21 bytes data, client => server 07:36:05.306043 'SIZE verifiedserver\r\n' 07:36:05.306116 Received DATA (on stdin) 07:36:05.306124 > 8 bytes data, server => client 07:36:05.306132 '213 17\r\n' 07:36:05.306164 < 21 bytes data, client => server 07:36:05.306172 'RETR verifiedserver\r\n' 07:36:05.306316 Received DATA (on stdin) 07:36:05.306328 > 29 bytes data, server => client 07:36:05.306340 '150 Binary junk (17 bytes).\r\n' 07:36:05.306768 Received DATA (on stdin) 07:36:05.306789 > 28 bytes data, server => client 07:36:05.306801 '226 File transfer complete\r\n' 07:36:05.349550 < 6 bytes data, client => server 07:36:05.349573 'QUIT\r\n' 07:36:05.349758 Received DATA (on stdin) 07:36:05.349770 > 18 bytes data, server => client 07:36:05.349780 '221 bye bye baby\r\n' 07:36:05.349858 ====> Client disconnect 07:36:05.349997 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.305469 Running IPv4 version 07:36:05.305510 Listening on port 37867 07:36:05.305539 Wrote pid 148669 to log/5/server/ftp_sockdata.pid 07:36:05.305552 Received PING (on stdin) 07:36:05.305614 Received PORT (on stdin) 07:36:05.305813 ====> Client connect 07:36:05.306253 Received DATA (on stdin) 07:36:05.306266 > 17 bytes data, server => client 07:36:05.306276 'WE ROOLZ: 79836\r\n' 07:36:05.30635CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1391 ../src/curl -q --trace-ascii log/4/trace1391 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1391 -o log/4/download1391 -i -D log/4/heads1391 > log/4/stdout1391 2> log/4/stderr1391 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1392 ../src/curl -q --trace-ascii log/15/trace1392 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1392 -o log/15/download1392 -i -D - > log/15/stdout1392 2> log/15/stderr1392 2 Received DISC (on stdin) 07:36:05.306364 ====> Client forcibly disconnected 07:36:05.306444 Received QUIT (on stdin) 07:36:05.306456 quits 07:36:05.306514 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1390 === End of file server.cmd === Start of file valgrind1390 ==148929== ==148929== Process terminating with default action of signal 4 (SIGILL) ==148929== Illegal opcode at address 0x4003082 ==148929== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148929== by 0x4003082: main (tool_main.c:234) === End of file valgrind1390 test 1391...[FTP DL, file with C-D inside, using -o fname -i -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1391 ../src/curl -q --trace-ascii log/4/trace1391 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1391 -o log/4/download1391 -i -D log/4/heads1391 > log/4/stdout1391 2> log/4/stderr1391 1391: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1391 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1391 ../src/curl -q --trace-ascii log/4/trace1391 --trace-config all --trace-time ftp://127.0.0.1:37869/path/file1391 -o log/4/download1391 -i -D log/4/heads1391 > log/4/stdout1391 2> log/4/stderr1391 === End of file commands.log === Start of file ftp_server.log 07:36:05.597421 ====> Client connect 07:36:05.597591 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.597864 < "USER anonymous" 07:36:05.597894 > "331 We are happy you popped in![CR][LF]" 07:36:05.598045 < "PASS ftp@example.com" 07:36:05.598068 > "230 Welcome you silly person[CR][LF]" 07:36:05.598207 < "PWD" 07:36:05.598233 > "257 "/" is current directory[CR][LF]" 07:36:05.598375 < "EPSV" 07:36:05.598397 ====> Passive DATA channel requested by client 07:36:05.598409 DATA sockfilt for passive data channel starting... 07:36:05.600241 DATA sockfilt for passive data channel started (pid 149139) 07:36:05.600336 DATA sockfilt for passive data channel listens on port 41909 07:36:05.600372 > "229 Entering Passive Mode (|||41909|)[LF]" 07:36:05.600389 Client has been notified that DATA conn will be accepted on port 41909 07:36:05.600591 Client connects to port 41909 07:36:05.600616 ====> Client established passive DATA connection on port 41909 07:36:05.600677 < "TYPE I" 07:36:05.600701 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.600847 < "SIZE verifiedserver" 07:36:05.600881 > "213 17[CR][LF]" 07:36:05.601025 < "RETR verifiedserver" 07:36:05.601057 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.601126 =====> Closing passive DATA connection... 07:36:05.601141 Server disconnects passive DATA connection 07:36:05.601352 Server disconnected passive DATA connection 07:36:05.601377 DATA sockfilt for passive data channel quits (pid 149139) 07:36:05.601628 DATA sockfilt for passive data channel quit (pid 149139) 07:36:05.601650 =====> Closed passive DATA connection 07:36:05.601673 > "226 File transfer complete[CR][LF]" 07:36:05.648754 < "QUIT" 07:36:05.648813 > "221 bye bye baby[CR][LF]" 07:36:05.649895 MAIN sockfilt said DISC 07:36:05.649928 ====> Client disconnected 07:36:05.650101 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.443265 ====> Client connect 07:36:05.443586 Received DATA (on stdin) 07:36:05.443601 > 160 bytes data, server => client 07:36:05.443614 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.443625 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.443636 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.443705 < 16 bytes data, client => server 07:36:05.443718 'USER anonymous\r\n' 07:36:05.443880 Received DATA (on stdin) 07:36:05.443892 > 33 bytes data, server => client 07:36:05.443903 '331 We are happy you popped in!\r\n' 07:36:05.443949 < 22 bytes data, client => server 07:36:05.443960 'PASS ftp@example.com\r\n' 07:36:05.444051 Received DATA (on stdin) 07:36:05.444062 > 30 bytes data, server => client 07:36:05.444072 '230 Welcome you silly person\r\n' 07:36:05.444114 < 5 bytes data, client => server 07:36:05.444125 'PWD\r\n' 07:36:05.444216 Received DATA (on stdin) 07:36:05.444226 > 30 bytes data, server => client 07:36:05.444237 '257 "/" is current directory\r\n' 07:36:05.444286 < 6 bytes data, client => server 07:36:05.444297 'EPSV\r\n' 07:36:05.446375 Received DATA (on stdin) 07:36:05.446388 > 38 bytes data, server => client 07:36:05.446399 '229 Entering Passive Mode (|||41909|)\n' 07:36:05.446522 < 8 bytes data, client => server 07:36:05.446534 'TYPE I\r\n' 07:36:05.446685 Received DATA (on stdin) 07:36:05.446697 > 33 bytes data, server => client 07:36:05.446708 '200 I modify TYPE as you wanted\r\n' 07:36:05.446753 < 21 bytes data, client => server 07:36:05.446765 'SIZE verifiedserver\r\n' 07:36:05.446864 Received DATA (on stdin) 07:36:05.446876 > 8 bytes data, server => client 07:36:05.446886 '213 17\r\n' 07:36:05.446931 < 21 bytes data, client => server 07:36:05.446943 'RETR verifiedserver\r\n' 07:36:05.447126 Received DATA (on stdin) 07:36:05.447138 > 29 bytes data, server => client 07:36:05.447149 '150 Binary junk (17 bytes).\r\n' 07:36:05.447657 Received DATA (on stdin) 07:36:05.447670 > 28 bytes data, server => client 07:36:05.447681 '226 File transfer complete\r\n' 07:36:05.494580 < 6 bytes data, client => server 07:36:05.494609 'QUIT\r\n' 07:36:05.494802 Received DATA (on stdin) 07:36:05.494817 > 18 bytes data, server => client 07:36:05.494828 '221 bye bye baby\r\n' 07:36:05.495825 ====> Client disconnect 07:36:05.496002 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.445921 Running IPv4 version 07:36:05.445984 Listening on port 41909 07:36:05.446049 Wrote pid 149139 to log/4/server/ftp_sockdata.pid 07:36:05.446173 Received PING (on stdin) 07:36:05.446246 Received PORT (on stdin) 07:36:05.446495 ====> Client connect 07:36:05.447173 Received DATA (on stdin) 07:36:05.447186 > 17 bytes data, server => client 07:36:05.447197 'WE ROOLZ: 79844\r\n' 07:36:05.447218 Received DISC (on stdin) 07:36:05.447229 ====> Client forcibly disconnected 07:36:05.447369 Received QUIT (on stdin) 07:36:05.447380 quits 07:36:05.447466 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1391 === End of file server.cmd === Start of file valgrind1391 ==149151== ==149151== Process terminating with default action of signal 4 (SIGILL) ==149151== Illegal opcode at address 0x4003082 ==149151== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149151== by 0x4003082: main (tool_main.c:234) === End of file valgrind1391 test 1392...[FTP DL, file with C-D inside, using -o fname -i -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1392 ../src/curl -q --trace-ascii log/15/trace1392 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1392 -o log/15/download1392 -i -D - > log/15/stdout1392 2> log/15/stderr1392 1392: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1392 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1392 ../src/curl -q --traceCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1382 ../src/curl -q --trace-ascii log/11/trace1382 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1382 -o log/11/download1382 -J -D - > log/11/stdout1382 2> log/11/stderr1382 -ascii log/15/trace1392 --trace-config all --trace-time ftp://127.0.0.1:46295/path/file1392 -o log/15/download1392 -i -D - > log/15/stdout1392 2> log/15/stderr1392 === End of file commands.log === Start of file ftp_server.log 07:36:05.601910 ====> Client connect 07:36:05.602062 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.602312 < "USER anonymous" 07:36:05.602343 > "331 We are happy you popped in![CR][LF]" 07:36:05.602486 < "PASS ftp@example.com" 07:36:05.602508 > "230 Welcome you silly person[CR][LF]" 07:36:05.602637 < "PWD" 07:36:05.602663 > "257 "/" is current directory[CR][LF]" 07:36:05.602797 < "EPSV" 07:36:05.602818 ====> Passive DATA channel requested by client 07:36:05.602830 DATA sockfilt for passive data channel starting... 07:36:05.604477 DATA sockfilt for passive data channel started (pid 149140) 07:36:05.604580 DATA sockfilt for passive data channel listens on port 38667 07:36:05.604617 > "229 Entering Passive Mode (|||38667|)[LF]" 07:36:05.604633 Client has been notified that DATA conn will be accepted on port 38667 07:36:05.604826 Client connects to port 38667 07:36:05.604850 ====> Client established passive DATA connection on port 38667 07:36:05.604908 < "TYPE I" 07:36:05.604930 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.605064 < "SIZE verifiedserver" 07:36:05.605093 > "213 17[CR][LF]" 07:36:05.605219 < "RETR verifiedserver" 07:36:05.605247 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.605313 =====> Closing passive DATA connection... 07:36:05.605328 Server disconnects passive DATA connection 07:36:05.605522 Server disconnected passive DATA connection 07:36:05.605548 DATA sockfilt for passive data channel quits (pid 149140) 07:36:05.605746 DATA sockfilt for passive data channel quit (pid 149140) 07:36:05.605771 =====> Closed passive DATA connection 07:36:05.605797 > "226 File transfer complete[CR][LF]" 07:36:05.650397 < "QUIT" 07:36:05.650449 > "221 bye bye baby[CR][LF]" 07:36:05.651431 MAIN sockfilt said DISC 07:36:05.651457 ====> Client disconnected 07:36:05.651519 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.447771 ====> Client connect 07:36:05.448054 Received DATA (on stdin) 07:36:05.448068 > 160 bytes data, server => client 07:36:05.448079 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.448090 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.448100 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.448164 < 16 bytes data, client => server 07:36:05.448175 'USER anonymous\r\n' 07:36:05.448327 Received DATA (on stdin) 07:36:05.448339 > 33 bytes data, server => client 07:36:05.448349 '331 We are happy you popped in!\r\n' 07:36:05.448393 < 22 bytes data, client => server 07:36:05.448403 'PASS ftp@example.com\r\n' 07:36:05.448490 Received DATA (on stdin) 07:36:05.448500 > 30 bytes data, server => client 07:36:05.448511 '230 Welcome you silly person\r\n' 07:36:05.448550 < 5 bytes data, client => server 07:36:05.448560 'PWD\r\n' 07:36:05.448644 Received DATA (on stdin) 07:36:05.448654 > 30 bytes data, server => client 07:36:05.448664 '257 "/" is current directory\r\n' 07:36:05.448710 < 6 bytes data, client => server 07:36:05.448720 'EPSV\r\n' 07:36:05.450618 Received DATA (on stdin) 07:36:05.450631 > 38 bytes data, server => client 07:36:05.450641 '229 Entering Passive Mode (|||38667|)\n' 07:36:05.450759 < 8 bytes data, client => server 07:36:05.450770 'TYPE I\r\n' 07:36:05.450913 Received DATA (on stdin) 07:36:05.450923 > 33 bytes data, server => client 07:36:05.450934 '200 I modify TYPE as you wanted\r\n' 07:36:05.450975 < 21 bytes data, client => server 07:36:05.450986 'SIZE verifiedserver\r\n' 07:36:05.451074 Received DATA (on stdin) 07:36:05.451084 > 8 bytes data, server => client 07:36:05.451094 '213 17\r\n' 07:36:05.451133 < 21 bytes data, client => server 07:36:05.451143 'RETR verifiedserver\r\n' 07:36:05.451310 Received DATA (on stdin) 07:36:05.451321 > 29 bytes data, server => client 07:36:05.451331 '150 Binary junk (17 bytes).\r\n' 07:36:05.451782 Received DATA (on stdin) 07:36:05.451794 > 28 bytes data, server => client 07:36:05.451805 '226 File transfer complete\r\n' 07:36:05.496203 < 6 bytes data, client => server 07:36:05.496223 'QUIT\r\n' 07:36:05.496436 Received DATA (on stdin) 07:36:05.496449 > 18 bytes data, server => client 07:36:05.496459 '221 bye bye baby\r\n' 07:36:05.497367 ====> Client disconnect 07:36:05.497502 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.450292 Running IPv4 version 07:36:05.450347 Listening on port 38667 07:36:05.450384 Wrote pid 149140 to log/15/server/ftp_sockdata.pid 07:36:05.450402 Received PING (on stdin) 07:36:05.450486 Received PORT (on stdin) 07:36:05.450735 ====> Client connect 07:36:05.451353 Received DATA (on stdin) 07:36:05.451365 > 17 bytes data, server => client 07:36:05.451376 'WE ROOLZ: 79835\r\n' 07:36:05.451395 Received DISC (on stdin) 07:36:05.451406 ====> Client forcibly disconnected 07:36:05.451537 Received QUIT (on stdin) 07:36:05.451549 quits 07:36:05.451604 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1392 === End of file server.cmd === Start of file valgrind1392 ==149152== ==149152== Process terminating with default action of signal 4 (SIGILL) ==149152== Illegal opcode at address 0x4003082 ==149152== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149152== by 0x4003082: main (tool_main.c:234) === End of file valgrind1392 test 1382...[FTP DL, file without C-D inside, using -o fname -J -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1382 ../src/curl -q --trace-ascii log/11/trace1382 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1382 -o log/11/download1382 -J -D - > log/11/stdout1382 2> log/11/stderr1382 1382: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1382 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1382 ../src/curl -q --trace-ascii log/11/trace1382 --trace-config all --trace-time ftp://127.0.0.1:43393/path/file1382 -o log/11/download1382 -J -D - > log/11/stdout1382 2> log/11/stderr1382 === End of file commands.log === Start of file ftp_server.log 07:36:05.413918 ====> Client connect 07:36:05.414071 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.414328 < "USER anonymous" 07:36:05.414362 > "331 We are happy you popped in![CR][LF]" 07:36:05.414516 < "PASS ftp@example.com" 07:36:05.414542 > "230 Welcome you silly person[CR][LF]" 07:36:05.415140 < "PWD" 07:36:05.415175 > "257 "/" is current directory[CR][LF]" 07:36:05.415334 < "EPSV" 07:36:05.415358 ====> Passive DATA channel requested by client 07:36:05.415370 DATA sockfilt for passive data channel starting... 07:36:05.417240 DATA sockfilt for passive data channel started (pid 148565) 07:36:05.417335 DATA sockfilt for passive data channel listens on port 42089 07:36:05.417373 > "229 Entering Passive Mode (|||42089|)[LF]" 07:36:05.417389 Client has been notified that DATA conn will be accepted on port 42089 07:36:05.417600 Client connects to port 42089 07:36:05.417628 ====> Client established passive DATA connection on port 42089 07:36:05.417688 < "TYPE I" 07:36:05.417712 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.417852 < "SIZE verifiedserver" 07:36:05.417886 > "213CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1386 ../src/curl -q --trace-ascii log/2/trace1386 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1386 -o log/2/download1386 > log/2/stdout1386 2> log/2/stderr1386 17[CR][LF]" 07:36:05.418017 < "RETR verifiedserver" 07:36:05.418051 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.418118 =====> Closing passive DATA connection... 07:36:05.418132 Server disconnects passive DATA connection 07:36:05.418352 Server disconnected passive DATA connection 07:36:05.418379 DATA sockfilt for passive data channel quits (pid 148565) 07:36:05.418582 DATA sockfilt for passive data channel quit (pid 148565) 07:36:05.418604 =====> Closed passive DATA connection 07:36:05.418628 > "226 File transfer complete[CR][LF]" 07:36:05.460401 < "QUIT" 07:36:05.460468 > "221 bye bye baby[CR][LF]" 07:36:05.460716 MAIN sockfilt said DISC 07:36:05.460765 ====> Client disconnected 07:36:05.460835 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.259790 ====> Client connect 07:36:05.260064 Received DATA (on stdin) 07:36:05.260079 > 160 bytes data, server => client 07:36:05.260090 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.260101 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.260110 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.260180 < 16 bytes data, client => server 07:36:05.260191 'USER anonymous\r\n' 07:36:05.260349 Received DATA (on stdin) 07:36:05.260361 > 33 bytes data, server => client 07:36:05.260371 '331 We are happy you popped in!\r\n' 07:36:05.260417 < 22 bytes data, client => server 07:36:05.260428 'PASS ftp@example.com\r\n' 07:36:05.260524 Received DATA (on stdin) 07:36:05.260535 > 30 bytes data, server => client 07:36:05.260545 '230 Welcome you silly person\r\n' 07:36:05.260654 < 5 bytes data, client => server 07:36:05.260672 'PWD\r\n' 07:36:05.261160 Received DATA (on stdin) 07:36:05.261173 > 30 bytes data, server => client 07:36:05.261184 '257 "/" is current directory\r\n' 07:36:05.261239 < 6 bytes data, client => server 07:36:05.261251 'EPSV\r\n' 07:36:05.263379 Received DATA (on stdin) 07:36:05.263391 > 38 bytes data, server => client 07:36:05.263402 '229 Entering Passive Mode (|||42089|)\n' 07:36:05.263507 < 8 bytes data, client => server 07:36:05.263522 'TYPE I\r\n' 07:36:05.263695 Received DATA (on stdin) 07:36:05.263706 > 33 bytes data, server => client 07:36:05.263717 '200 I modify TYPE as you wanted\r\n' 07:36:05.263760 < 21 bytes data, client => server 07:36:05.263772 'SIZE verifiedserver\r\n' 07:36:05.263867 Received DATA (on stdin) 07:36:05.263877 > 8 bytes data, server => client 07:36:05.263887 '213 17\r\n' 07:36:05.263926 < 21 bytes data, client => server 07:36:05.263936 'RETR verifiedserver\r\n' 07:36:05.264116 Received DATA (on stdin) 07:36:05.264127 > 29 bytes data, server => client 07:36:05.264138 '150 Binary junk (17 bytes).\r\n' 07:36:05.264613 Received DATA (on stdin) 07:36:05.264625 > 28 bytes data, server => client 07:36:05.264636 '226 File transfer complete\r\n' 07:36:05.306160 < 6 bytes data, client => server 07:36:05.306194 'QUIT\r\n' 07:36:05.306449 Received DATA (on stdin) 07:36:05.306468 > 18 bytes data, server => client 07:36:05.306478 '221 bye bye baby\r\n' 07:36:05.306641 ====> Client disconnect 07:36:05.306819 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.262945 Running IPv4 version 07:36:05.263005 Listening on port 42089 07:36:05.263049 Wrote pid 148565 to log/11/server/ftp_sockdata.pid 07:36:05.263174 Received PING (on stdin) 07:36:05.263245 Received PORT (on stdin) 07:36:05.263540 ====> Client connect 07:36:05.264187 Received DATA (on stdin) 07:36:05.264201 > 17 bytes data, server => client 07:36:05.264211 'WE ROOLZ: 85489\r\n' 07:36:05.264233 Received DISC (on stdin) 07:36:05.264243 ====> Client forcibly disconnected 07:36:05.264370 Received QUIT (on stdin) 07:36:05.264381 quits 07:36:05.264439 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1382 === End of file server.cmd === Start of file valgrind1382 ==148672== ==148672== Process terminating with default action of signal 4 (SIGILL) ==148672== Illegal opcode at address 0x4003082 ==148672== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148672== by 0x4003082: main (tool_main.c:234) === End of file valgrind1382 test 1386...[FTP DL, file with Content-Disposition inside, using -o fname] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1386 ../src/curl -q --trace-ascii log/2/trace1386 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1386 -o log/2/download1386 > log/2/stdout1386 2> log/2/stderr1386 1386: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1386 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1386 ../src/curl -q --trace-ascii log/2/trace1386 --trace-config all --trace-time ftp://127.0.0.1:42979/path/file1386 -o log/2/download1386 > log/2/stdout1386 2> log/2/stderr1386 === End of file commands.log === Start of file ftp_server.log 07:36:05.436804 ====> Client connect 07:36:05.436954 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.437221 < "USER anonymous" 07:36:05.437254 > "331 We are happy you popped in![CR][LF]" 07:36:05.437406 < "PASS ftp@example.com" 07:36:05.437430 > "230 Welcome you silly person[CR][LF]" 07:36:05.437568 < "PWD" 07:36:05.437595 > "257 "/" is current directory[CR][LF]" 07:36:05.437728 < "EPSV" 07:36:05.437751 ====> Passive DATA channel requested by client 07:36:05.437763 DATA sockfilt for passive data channel starting... 07:36:05.439642 DATA sockfilt for passive data channel started (pid 148650) 07:36:05.439775 DATA sockfilt for passive data channel listens on port 43979 07:36:05.439822 > "229 Entering Passive Mode (|||43979|)[LF]" 07:36:05.439841 Client has been notified that DATA conn will be accepted on port 43979 07:36:05.440274 Client connects to port 43979 07:36:05.440308 ====> Client established passive DATA connection on port 43979 07:36:05.440378 < "TYPE I" 07:36:05.440406 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.440527 < "SIZE verifiedserver" 07:36:05.440552 > "213 17[CR][LF]" 07:36:05.440658 < "RETR verifiedserver" 07:36:05.440681 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.440740 =====> Closing passive DATA connection... 07:36:05.440751 Server disconnects passive DATA connection 07:36:05.440838 Server disconnected passive DATA connection 07:36:05.440870 DATA sockfilt for passive data channel quits (pid 148650) 07:36:05.441061 DATA sockfilt for passive data channel quit (pid 148650) 07:36:05.441080 =====> Closed passive DATA connection 07:36:05.441108 > "226 File transfer complete[CR][LF]" 07:36:05.483577 < "QUIT" 07:36:05.483627 > "221 bye bye baby[CR][LF]" 07:36:05.484493 MAIN sockfilt said DISC 07:36:05.484519 ====> Client disconnected 07:36:05.484581 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.282695 ====> Client connect 07:36:05.282953 Received DATA (on stdin) 07:36:05.282968 > 160 bytes data, server => client 07:36:05.282981 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.282992 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.283002 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.283064 < 16 bytes data, client => server 07:36:05.283076 'USER anonymous\r\n' 07:36:05.283240 Received DATA (on stdin) 07:36:05.283252 > 33 bytes data, server => client 07:36:05.283262 '331 We are happy you popped in!\r\n' 07:36:05.283309 < 22 bytes data, client => server 07:36:05.283320 'PASS ftp@example.com\r\n' 07:36:05.283413 Received DATCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1384 ../src/curl -q --trace-ascii log/23/trace1384 --trace-config all --trace-time ftp://127.0.0.1:36145/path/file1384 -o log/23/download1384 -i -D - > log/23/stdout1384 2> log/23/stderr1384 A (on stdin) 07:36:05.283424 > 30 bytes data, server => client 07:36:05.283435 '230 Welcome you silly person\r\n' 07:36:05.283477 < 5 bytes data, client => server 07:36:05.283487 'PWD\r\n' 07:36:05.283577 Received DATA (on stdin) 07:36:05.283588 > 30 bytes data, server => client 07:36:05.283598 '257 "/" is current directory\r\n' 07:36:05.283643 < 6 bytes data, client => server 07:36:05.283654 'EPSV\r\n' 07:36:05.285834 Received DATA (on stdin) 07:36:05.285852 > 38 bytes data, server => client 07:36:05.285865 '229 Entering Passive Mode (|||43979|)\n' 07:36:05.286146 < 8 bytes data, client => server 07:36:05.286162 'TYPE I\r\n' 07:36:05.286386 Received DATA (on stdin) 07:36:05.286396 > 33 bytes data, server => client 07:36:05.286405 '200 I modify TYPE as you wanted\r\n' 07:36:05.286444 < 21 bytes data, client => server 07:36:05.286453 'SIZE verifiedserver\r\n' 07:36:05.286530 Received DATA (on stdin) 07:36:05.286539 > 8 bytes data, server => client 07:36:05.286547 '213 17\r\n' 07:36:05.286580 < 21 bytes data, client => server 07:36:05.286588 'RETR verifiedserver\r\n' 07:36:05.286735 Received DATA (on stdin) 07:36:05.286744 > 29 bytes data, server => client 07:36:05.286752 '150 Binary junk (17 bytes).\r\n' 07:36:05.287097 Received DATA (on stdin) 07:36:05.287111 > 28 bytes data, server => client 07:36:05.287121 '226 File transfer complete\r\n' 07:36:05.329412 < 6 bytes data, client => server 07:36:05.329432 'QUIT\r\n' 07:36:05.329613 Received DATA (on stdin) 07:36:05.329624 > 18 bytes data, server => client 07:36:05.329634 '221 bye bye baby\r\n' 07:36:05.330430 ====> Client disconnect 07:36:05.330563 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.285407 Running IPv4 version 07:36:05.285470 Listening on port 43979 07:36:05.285513 Wrote pid 148650 to log/2/server/ftp_sockdata.pid 07:36:05.285532 Received PING (on stdin) 07:36:05.285670 Received PORT (on stdin) 07:36:05.286200 ====> Client connect 07:36:05.286674 Received DATA (on stdin) 07:36:05.286690 > 17 bytes data, server => client 07:36:05.286699 'WE ROOLZ: 79845\r\n' 07:36:05.286738 Received DISC (on stdin) 07:36:05.286752 ====> Client forcibly disconnected 07:36:05.286863 Received QUIT (on stdin) 07:36:05.286873 quits 07:36:05.286925 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1386 === End of file server.cmd === Start of file valgrind1386 ==148731== ==148731== Process terminating with default action of signal 4 (SIGILL) ==148731== Illegal opcode at address 0x4003082 ==148731== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148731== by 0x4003082: main (tool_main.c:234) === End of file valgrind1386 test 1384...[FTP DL, file without C-D inside, using -o fname -i -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1384 ../src/curl -q --trace-ascii log/23/trace1384 --trace-config all --trace-time ftp://127.0.0.1:36145/path/file1384 -o log/23/download1384 -i -D - > log/23/stdout1384 2> log/23/stderr1384 1384: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1384 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1384 ../src/curl -q --trace-ascii log/23/trace1384 --trace-config all --trace-time ftp://127.0.0.1:36145/path/file1384 -o log/23/download1384 -i -D - > log/23/stdout1384 2> log/23/stderr1384 === End of file commands.log === Start of file ftp_server.log 07:36:05.431878 ====> Client connect 07:36:05.432032 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.432303 < "USER anonymous" 07:36:05.432339 > "331 We are happy you popped in![CR][LF]" 07:36:05.432507 < "PASS ftp@example.com" 07:36:05.432535 > "230 Welcome you silly person[CR][LF]" 07:36:05.432690 < "PWD" 07:36:05.432720 > "257 "/" is current directory[CR][LF]" 07:36:05.432947 < "EPSV" 07:36:05.432992 ====> Passive DATA channel requested by client 07:36:05.433005 DATA sockfilt for passive data channel starting... 07:36:05.434575 DATA sockfilt for passive data channel started (pid 148644) 07:36:05.434684 DATA sockfilt for passive data channel listens on port 46695 07:36:05.434725 > "229 Entering Passive Mode (|||46695|)[LF]" 07:36:05.434744 Client has been notified that DATA conn will be accepted on port 46695 07:36:05.435102 Client connects to port 46695 07:36:05.435141 ====> Client established passive DATA connection on port 46695 07:36:05.435220 < "TYPE I" 07:36:05.435252 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.435418 < "SIZE verifiedserver" 07:36:05.435454 > "213 17[CR][LF]" 07:36:05.435593 < "RETR verifiedserver" 07:36:05.435622 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.435693 =====> Closing passive DATA connection... 07:36:05.435708 Server disconnects passive DATA connection 07:36:05.436066 Server disconnected passive DATA connection 07:36:05.436099 DATA sockfilt for passive data channel quits (pid 148644) 07:36:05.436894 DATA sockfilt for passive data channel quit (pid 148644) 07:36:05.436918 =====> Closed passive DATA connection 07:36:05.436948 > "226 File transfer complete[CR][LF]" 07:36:05.477007 < "QUIT" 07:36:05.477074 > "221 bye bye baby[CR][LF]" 07:36:05.477634 MAIN sockfilt said DISC 07:36:05.477660 ====> Client disconnected 07:36:05.477730 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.277757 ====> Client connect 07:36:05.278020 Received DATA (on stdin) 07:36:05.278046 > 160 bytes data, server => client 07:36:05.278059 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.278070 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.278080 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.278147 < 16 bytes data, client => server 07:36:05.278161 'USER anonymous\r\n' 07:36:05.278328 Received DATA (on stdin) 07:36:05.278341 > 33 bytes data, server => client 07:36:05.278352 '331 We are happy you popped in!\r\n' 07:36:05.278402 < 22 bytes data, client => server 07:36:05.278414 'PASS ftp@example.com\r\n' 07:36:05.278519 Received DATA (on stdin) 07:36:05.278532 > 30 bytes data, server => client 07:36:05.278542 '230 Welcome you silly person\r\n' 07:36:05.278590 < 5 bytes data, client => server 07:36:05.278603 'PWD\r\n' 07:36:05.278706 Received DATA (on stdin) 07:36:05.278718 > 30 bytes data, server => client 07:36:05.278728 '257 "/" is current directory\r\n' 07:36:05.278783 < 6 bytes data, client => server 07:36:05.278795 'EPSV\r\n' 07:36:05.280737 Received DATA (on stdin) 07:36:05.280754 > 38 bytes data, server => client 07:36:05.280765 '229 Entering Passive Mode (|||46695|)\n' 07:36:05.280993 < 8 bytes data, client => server 07:36:05.281013 'TYPE I\r\n' 07:36:05.281237 Received DATA (on stdin) 07:36:05.281250 > 33 bytes data, server => client 07:36:05.281260 '200 I modify TYPE as you wanted\r\n' 07:36:05.281321 < 21 bytes data, client => server 07:36:05.281334 'SIZE verifiedserver\r\n' 07:36:05.281438 Received DATA (on stdin) 07:36:05.281449 > 8 bytes data, server => client 07:36:05.281458 '213 17\r\n' 07:36:05.281502 < 21 bytes data, client => server 07:36:05.281513 'RETR verifiedserver\r\n' 07:36:05.281690 Received DATA (on stdin) 07:36:05.281702 > 29 bytes data, server => client 07:36:05.281713 '150 Binary junk (17 bytes).\r\n' 07:36:05.283198 Received DATA (on stdin) 07:36:05.283294 > 28 bytes data, server => client 07:36:05.283337 '226 File transfer complete\r\n' 07:36:05.322815 < 6 bytes data, client => server 07:36:05.322847 'QUIT\r\n' 07:36:05.323045 Received DATACMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1385 ../src/curl -q --trace-ascii log/24/trace1385 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1385 -o log/24/download1385 -i > log/24/stdout1385 2> log/24/stderr1385 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1387 ../src/curl -q --trace-ascii log/16/trace1387 --trace-config all --trace-time ftp://127.0.0.1:40585/path/file1387 -o log/16/download1387 -D log/16/heads1387 > log/16/stdout1387 2> log/16/stderr1387 (on stdin) 07:36:05.323065 > 18 bytes data, server => client 07:36:05.323076 '221 bye bye baby\r\n' 07:36:05.323561 ====> Client disconnect 07:36:05.323713 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.280345 Running IPv4 version 07:36:05.280406 Listening on port 46695 07:36:05.280445 Wrote pid 148644 to log/23/server/ftp_sockdata.pid 07:36:05.280498 Received PING (on stdin) 07:36:05.280588 Received PORT (on stdin) 07:36:05.280925 ====> Client connect 07:36:05.281783 Received DATA (on stdin) 07:36:05.281808 > 17 bytes data, server => client 07:36:05.281843 'WE ROOLZ: 81897\r\n' 07:36:05.281883 Received DISC (on stdin) 07:36:05.281980 ====> Client forcibly disconnected 07:36:05.282557 Received QUIT (on stdin) 07:36:05.282574 quits 07:36:05.282641 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1384 === End of file server.cmd === Start of file valgrind1384 ==148705== ==148705== Process terminating with default action of signal 4 (SIGILL) ==148705== Illegal opcode at address 0x4003082 ==148705== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148705== by 0x4003082: main (tool_main.c:234) === End of file valgrind1384 test 1385...[FTP DL, file without C-D inside, using -o fname -i, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1385 ../src/curl -q --trace-ascii log/24/trace1385 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1385 -o log/24/download1385 -i > log/24/stdout1385 2> log/24/stderr1385 1385: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1385 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1385 ../src/curl -q --trace-ascii log/24/trace1385 --trace-config all --trace-time ftp://127.0.0.1:38657/path/file1385 -o log/24/download1385 -i > log/24/stdout1385 2> log/24/stderr1385 === End of file commands.log === Start of file ftp_server.log 07:36:05.436322 ====> Client connect 07:36:05.436476 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.436730 < "USER anonymous" 07:36:05.436770 > "331 We are happy you popped in![CR][LF]" 07:36:05.436943 < "PASS ftp@example.com" 07:36:05.436969 > "230 Welcome you silly person[CR][LF]" 07:36:05.437493 < "PWD" 07:36:05.437563 > "257 "/" is current directory[CR][LF]" 07:36:05.437729 < "EPSV" 07:36:05.437755 ====> Passive DATA channel requested by client 07:36:05.437768 DATA sockfilt for passive data channel starting... 07:36:05.439633 DATA sockfilt for passive data channel started (pid 148651) 07:36:05.439744 DATA sockfilt for passive data channel listens on port 33289 07:36:05.439787 > "229 Entering Passive Mode (|||33289|)[LF]" 07:36:05.439805 Client has been notified that DATA conn will be accepted on port 33289 07:36:05.439971 Client connects to port 33289 07:36:05.440006 ====> Client established passive DATA connection on port 33289 07:36:05.440068 < "TYPE I" 07:36:05.440097 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.440262 < "SIZE verifiedserver" 07:36:05.440296 > "213 17[CR][LF]" 07:36:05.440448 < "RETR verifiedserver" 07:36:05.440482 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.440553 =====> Closing passive DATA connection... 07:36:05.440569 Server disconnects passive DATA connection 07:36:05.440778 Server disconnected passive DATA connection 07:36:05.440807 DATA sockfilt for passive data channel quits (pid 148651) 07:36:05.441043 DATA sockfilt for passive data channel quit (pid 148651) 07:36:05.441069 =====> Closed passive DATA connection 07:36:05.441096 > "226 File transfer complete[CR][LF]" 07:36:05.486931 < "QUIT" 07:36:05.486990 > "221 bye bye baby[CR][LF]" 07:36:05.487403 MAIN sockfilt said DISC 07:36:05.487445 ====> Client disconnected 07:36:05.487504 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.282206 ====> Client connect 07:36:05.282434 Received DATA (on stdin) 07:36:05.282454 > 160 bytes data, server => client 07:36:05.282466 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.282477 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.282487 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.282551 < 16 bytes data, client => server 07:36:05.282566 'USER anonymous\r\n' 07:36:05.282758 Received DATA (on stdin) 07:36:05.282771 > 33 bytes data, server => client 07:36:05.282782 '331 We are happy you popped in!\r\n' 07:36:05.282832 < 22 bytes data, client => server 07:36:05.282845 'PASS ftp@example.com\r\n' 07:36:05.282964 Received DATA (on stdin) 07:36:05.282977 > 30 bytes data, server => client 07:36:05.283025 '230 Welcome you silly person\r\n' 07:36:05.283283 < 5 bytes data, client => server 07:36:05.283306 'PWD\r\n' 07:36:05.283549 Received DATA (on stdin) 07:36:05.283562 > 30 bytes data, server => client 07:36:05.283574 '257 "/" is current directory\r\n' 07:36:05.283686 < 6 bytes data, client => server 07:36:05.283705 'EPSV\r\n' 07:36:05.285765 Received DATA (on stdin) 07:36:05.285785 > 38 bytes data, server => client 07:36:05.285798 '229 Entering Passive Mode (|||33289|)\n' 07:36:05.285916 < 8 bytes data, client => server 07:36:05.285933 'TYPE I\r\n' 07:36:05.286085 Received DATA (on stdin) 07:36:05.286098 > 33 bytes data, server => client 07:36:05.286108 '200 I modify TYPE as you wanted\r\n' 07:36:05.286160 < 21 bytes data, client => server 07:36:05.286175 'SIZE verifiedserver\r\n' 07:36:05.286281 Received DATA (on stdin) 07:36:05.286294 > 8 bytes data, server => client 07:36:05.286303 '213 17\r\n' 07:36:05.286349 < 21 bytes data, client => server 07:36:05.286362 'RETR verifiedserver\r\n' 07:36:05.286554 Received DATA (on stdin) 07:36:05.286566 > 29 bytes data, server => client 07:36:05.286576 '150 Binary junk (17 bytes).\r\n' 07:36:05.287082 Received DATA (on stdin) 07:36:05.287095 > 28 bytes data, server => client 07:36:05.287105 '226 File transfer complete\r\n' 07:36:05.332757 < 6 bytes data, client => server 07:36:05.332778 'QUIT\r\n' 07:36:05.332980 Received DATA (on stdin) 07:36:05.332992 > 18 bytes data, server => client 07:36:05.333002 '221 bye bye baby\r\n' 07:36:05.333324 ====> Client disconnect 07:36:05.333489 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.285409 Running IPv4 version 07:36:05.285497 Listening on port 33289 07:36:05.285539 Wrote pid 148651 to log/24/server/ftp_sockdata.pid 07:36:05.285559 Received PING (on stdin) 07:36:05.285642 Received PORT (on stdin) 07:36:05.285905 ====> Client connect 07:36:05.286601 Received DATA (on stdin) 07:36:05.286613 > 17 bytes data, server => client 07:36:05.286624 'WE ROOLZ: 81588\r\n' 07:36:05.286647 Received DISC (on stdin) 07:36:05.286659 ====> Client forcibly disconnected 07:36:05.286797 Received QUIT (on stdin) 07:36:05.286808 quits 07:36:05.286865 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1385 === End of file server.cmd === Start of file valgrind1385 ==148749== ==148749== Process terminating with default action of signal 4 (SIGILL) ==148749== Illegal opcode at address 0x4003082 ==148749== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148749== by 0x4003082: main (tool_main.c:234) === End of file valgrind1385 test 1387...[FTP DL, file with C-D inside, using -o fname -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --loCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1389 ../src/curl -q --trace-ascii log/9/trace1389 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1389 -o log/9/download1389 -J -D log/9/heads1389 > log/9/stdout1389 2> log/9/stderr1389 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1383 ../src/curl -q --trace-ascii log/12/trace1383 --trace-config all --trace-time ftp://127.0.0.1:39735/path/file1383 -o log/12/download1383 -i -D log/12/heads1383 > log/12/stdout1383 2> log/12/stderr1383 g-file=log/16/valgrind1387 ../src/curl -q --trace-ascii log/16/trace1387 --trace-config all --trace-time ftp://127.0.0.1:40585/path/file1387 -o log/16/download1387 -D log/16/heads1387 > log/16/stdout1387 2> log/16/stderr1387 1387: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1387 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1387 ../src/curl -q --trace-ascii log/16/trace1387 --trace-config all --trace-time ftp://127.0.0.1:40585/path/file1387 -o log/16/download1387 -D log/16/heads1387 > log/16/stdout1387 2> log/16/stderr1387 === End of file commands.log === Start of file ftp_server.log 07:36:05.436187 ====> Client connect 07:36:05.436341 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.436596 < "USER anonymous" 07:36:05.436630 > "331 We are happy you popped in![CR][LF]" 07:36:05.436796 < "PASS ftp@example.com" 07:36:05.436821 > "230 Welcome you silly person[CR][LF]" 07:36:05.437059 < "PWD" 07:36:05.437089 > "257 "/" is current directory[CR][LF]" 07:36:05.437235 < "EPSV" 07:36:05.437259 ====> Passive DATA channel requested by client 07:36:05.437272 DATA sockfilt for passive data channel starting... 07:36:05.439027 DATA sockfilt for passive data channel started (pid 148649) 07:36:05.439123 DATA sockfilt for passive data channel listens on port 40985 07:36:05.439155 > "229 Entering Passive Mode (|||40985|)[LF]" 07:36:05.439168 Client has been notified that DATA conn will be accepted on port 40985 07:36:05.439342 Client connects to port 40985 07:36:05.439369 ====> Client established passive DATA connection on port 40985 07:36:05.439440 < "TYPE I" 07:36:05.439467 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.439616 < "SIZE verifiedserver" 07:36:05.439643 > "213 17[CR][LF]" 07:36:05.439747 < "RETR verifiedserver" 07:36:05.439780 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.439847 =====> Closing passive DATA connection... 07:36:05.439863 Server disconnects passive DATA connection 07:36:05.439986 Server disconnected passive DATA connection 07:36:05.440018 DATA sockfilt for passive data channel quits (pid 148649) 07:36:05.440268 DATA sockfilt for passive data channel quit (pid 148649) 07:36:05.440291 =====> Closed passive DATA connection 07:36:05.440317 > "226 File transfer complete[CR][LF]" 07:36:05.480392 < "QUIT" 07:36:05.480442 > "221 bye bye baby[CR][LF]" 07:36:05.481074 MAIN sockfilt said DISC 07:36:05.481116 ====> Client disconnected 07:36:05.481191 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.282004 ====> Client connect 07:36:05.282336 Received DATA (on stdin) 07:36:05.282352 > 160 bytes data, server => client 07:36:05.282364 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.282375 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.282386 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.282452 < 16 bytes data, client => server 07:36:05.282464 'USER anonymous\r\n' 07:36:05.282615 Received DATA (on stdin) 07:36:05.282638 > 33 bytes data, server => client 07:36:05.282650 '331 We are happy you popped in!\r\n' 07:36:05.282697 < 22 bytes data, client => server 07:36:05.282708 'PASS ftp@example.com\r\n' 07:36:05.282806 Received DATA (on stdin) 07:36:05.282817 > 30 bytes data, server => client 07:36:05.282827 '230 Welcome you silly person\r\n' 07:36:05.282958 < 5 bytes data, client => server 07:36:05.282970 'PWD\r\n' 07:36:05.283072 Received DATA (on stdin) 07:36:05.283083 > 30 bytes data, server => client 07:36:05.283094 '257 "/" is current directory\r\n' 07:36:05.283142 < 6 bytes data, client => server 07:36:05.283153 'EPSV\r\n' 07:36:05.285154 Received DATA (on stdin) 07:36:05.285168 > 38 bytes data, server => client 07:36:05.285176 '229 Entering Passive Mode (|||40985|)\n' 07:36:05.285345 < 8 bytes data, client => server 07:36:05.285357 'TYPE I\r\n' 07:36:05.285451 Received DATA (on stdin) 07:36:05.285462 > 33 bytes data, server => client 07:36:05.285472 '200 I modify TYPE as you wanted\r\n' 07:36:05.285525 < 21 bytes data, client => server 07:36:05.285537 'SIZE verifiedserver\r\n' 07:36:05.285621 Received DATA (on stdin) 07:36:05.285630 > 8 bytes data, server => client 07:36:05.285638 '213 17\r\n' 07:36:05.285676 < 21 bytes data, client => server 07:36:05.285688 'RETR verifiedserver\r\n' 07:36:05.285811 Received DATA (on stdin) 07:36:05.285828 > 29 bytes data, server => client 07:36:05.285840 '150 Binary junk (17 bytes).\r\n' 07:36:05.286303 Received DATA (on stdin) 07:36:05.286319 > 28 bytes data, server => client 07:36:05.286330 '226 File transfer complete\r\n' 07:36:05.326218 < 6 bytes data, client => server 07:36:05.326242 'QUIT\r\n' 07:36:05.326430 Received DATA (on stdin) 07:36:05.326441 > 18 bytes data, server => client 07:36:05.326452 '221 bye bye baby\r\n' 07:36:05.326994 ====> Client disconnect 07:36:05.327113 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.284874 Running IPv4 version 07:36:05.284919 Listening on port 40985 07:36:05.284946 Wrote pid 148649 to log/16/server/ftp_sockdata.pid 07:36:05.284960 Received PING (on stdin) 07:36:05.285032 Received PORT (on stdin) 07:36:05.285278 ====> Client connect 07:36:05.285848 Received DATA (on stdin) 07:36:05.285866 > 17 bytes data, server => client 07:36:05.285877 'WE ROOLZ: 79929\r\n' 07:36:05.285910 Received DISC (on stdin) 07:36:05.285921 ====> Client forcibly disconnected 07:36:05.286009 Received QUIT (on stdin) 07:36:05.286020 quits 07:36:05.286076 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1387 === End of file server.cmd === Start of file valgrind1387 ==148735== ==148735== Process terminating with default action of signal 4 (SIGILL) ==148735== Illegal opcode at address 0x4003082 ==148735== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148735== by 0x4003082: main (tool_main.c:234) === End of file valgrind1387 test 1389...[FTP DL, file with C-D inside, using -o fname -J -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1389 ../src/curl -q --trace-ascii log/9/trace1389 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1389 -o log/9/download1389 -J -D log/9/heads1389 > log/9/stdout1389 2> log/9/stderr1389 1389: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1389 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1389 ../src/curl -q --trace-ascii log/9/trace1389 --trace-config all --trace-time ftp://127.0.0.1:36299/path/file1389 -o log/9/download1389 -J -D log/9/heads1389 > log/9/stdout1389 2> log/9/stderr1389 === End of file commands.log === Start of file ftp_server.log 07:36:05.443756 ====> Client connect 07:36:05.443910 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.444141 < "USER anonymous" 07:36:05.444175 > "331 We are happy you popped in![CR][LF]" 07:36:05.444326 < "PASS ftp@example.com" 07:36:05.444351 > "230 Welcome you silly person[CR][LF]" 07:36:05.444480 < "PWD" 07:36:05.444512 > "257 "/" is current directory[CR][LF]" 07:36:05.444666 < "EPSV" 07:36:05.444691 ====> Passive DATA channel requested by client 07:36:05.444703 DATA sockfilt for passive data channel starting... 07:36:05.446056 DATA sockfilt for passive data channel started (pid 148655) 07:36:05.446152 DATA sockfilt for passive data channel listens on port 36647 07:36:05.446183 > "229 Entering Passive Mode (|||36647|)[LF]" 07:36:05.446200 Client has been notified that DATA conn will be accepted on port 36647 07:36:05.446382 Client connects to port 36647 07:36:05.446412 ====> Client established passive DATA connection on port 36647 07:36:05.446476 < "TYPE I" 07:36:05.446503 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.446656 < "SIZE verifiedserver" 07:36:05.446702 > "213 17[CR][LF]" 07:36:05.446847 < "RETR verifiedserver" 07:36:05.446877 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.446954 =====> Closing passive DATA connection... 07:36:05.446971 Server disconnects passive DATA connection 07:36:05.447184 Server disconnected passive DATA connection 07:36:05.447216 DATA sockfilt for passive data channel quits (pid 148655) 07:36:05.447415 DATA sockfilt for passive data channel quit (pid 148655) 07:36:05.447439 =====> Closed passive DATA connection 07:36:05.447464 > "226 File transfer complete[CR][LF]" 07:36:05.490402 < "QUIT" 07:36:05.490451 > "221 bye bye baby[CR][LF]" 07:36:05.491146 MAIN sockfilt said DISC 07:36:05.491188 ====> Client disconnected 07:36:05.491261 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.289645 ====> Client connect 07:36:05.289906 Received DATA (on stdin) 07:36:05.289921 > 160 bytes data, server => client 07:36:05.289933 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.289943 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.289953 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.290013 < 16 bytes data, client => server 07:36:05.290027 'USER anonymous\r\n' 07:36:05.290161 Received DATA (on stdin) 07:36:05.290174 > 33 bytes data, server => client 07:36:05.290185 '331 We are happy you popped in!\r\n' 07:36:05.290228 < 22 bytes data, client => server 07:36:05.290239 'PASS ftp@example.com\r\n' 07:36:05.290334 Received DATA (on stdin) 07:36:05.290345 > 30 bytes data, server => client 07:36:05.290355 '230 Welcome you silly person\r\n' 07:36:05.290401 < 5 bytes data, client => server 07:36:05.290418 'PWD\r\n' 07:36:05.290496 Received DATA (on stdin) 07:36:05.290508 > 30 bytes data, server => client 07:36:05.290519 '257 "/" is current directory\r\n' 07:36:05.290571 < 6 bytes data, client => server 07:36:05.290582 'EPSV\r\n' 07:36:05.292186 Received DATA (on stdin) 07:36:05.292199 > 38 bytes data, server => client 07:36:05.292210 '229 Entering Passive Mode (|||36647|)\n' 07:36:05.292310 < 8 bytes data, client => server 07:36:05.292323 'TYPE I\r\n' 07:36:05.292488 Received DATA (on stdin) 07:36:05.292501 > 33 bytes data, server => client 07:36:05.292512 '200 I modify TYPE as you wanted\r\n' 07:36:05.292559 < 21 bytes data, client => server 07:36:05.292571 'SIZE verifiedserver\r\n' 07:36:05.292686 Received DATA (on stdin) 07:36:05.292699 > 8 bytes data, server => client 07:36:05.292708 '213 17\r\n' 07:36:05.292753 < 21 bytes data, client => server 07:36:05.292765 'RETR verifiedserver\r\n' 07:36:05.292957 Received DATA (on stdin) 07:36:05.292969 > 29 bytes data, server => client 07:36:05.292980 '150 Binary junk (17 bytes).\r\n' 07:36:05.293448 Received DATA (on stdin) 07:36:05.293460 > 28 bytes data, server => client 07:36:05.293471 '226 File transfer complete\r\n' 07:36:05.336226 < 6 bytes data, client => server 07:36:05.336247 'QUIT\r\n' 07:36:05.336438 Received DATA (on stdin) 07:36:05.336450 > 18 bytes data, server => client 07:36:05.336460 '221 bye bye baby\r\n' 07:36:05.337063 ====> Client disconnect 07:36:05.337246 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.291875 Running IPv4 version 07:36:05.291928 Listening on port 36647 07:36:05.291968 Wrote pid 148655 to log/9/server/ftp_sockdata.pid 07:36:05.291985 Received PING (on stdin) 07:36:05.292060 Received PORT (on stdin) 07:36:05.292312 ====> Client connect 07:36:05.293005 Received DATA (on stdin) 07:36:05.293018 > 17 bytes data, server => client 07:36:05.293028 'WE ROOLZ: 80150\r\n' 07:36:05.293053 Received DISC (on stdin) 07:36:05.293065 ====> Client forcibly disconnected 07:36:05.293209 Received QUIT (on stdin) 07:36:05.293221 quits 07:36:05.293272 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1389 === End of file server.cmd === Start of file valgrind1389 ==148809== ==148809== Process terminating with default action of signal 4 (SIGILL) ==148809== Illegal opcode at address 0x4003082 ==148809== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148809== by 0x4003082: main (tool_main.c:234) === End of file valgrind1389 test 1383...[FTP DL, file without C-D inside, using -o fname -i -D file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1383 ../src/curl -q --trace-ascii log/12/trace1383 --trace-config all --trace-time ftp://127.0.0.1:39735/path/file1383 -o log/12/download1383 -i -D log/12/heads1383 > log/12/stdout1383 2> log/12/stderr1383 1383: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1383 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1383 ../src/curl -q --trace-ascii log/12/trace1383 --trace-config all --trace-time ftp://127.0.0.1:39735/path/file1383 -o log/12/download1383 -i -D log/12/heads1383 > log/12/stdout1383 2> log/12/stderr1383 === End of file commands.log === Start of file ftp_server.log 07:36:05.418761 ====> Client connect 07:36:05.418912 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.421981 < "USER anonymous" 07:36:05.422023 > "331 We are happy you popped in![CR][LF]" 07:36:05.422172 < "PASS ftp@example.com" 07:36:05.422197 > "230 Welcome you silly person[CR][LF]" 07:36:05.422330 < "PWD" 07:36:05.422359 > "257 "/" is current directory[CR][LF]" 07:36:05.422493 < "EPSV" 07:36:05.422515 ====> Passive DATA channel requested by client 07:36:05.422527 DATA sockfilt for passive data channel starting... 07:36:05.424227 DATA sockfilt for passive data channel started (pid 148603) 07:36:05.424323 DATA sockfilt for passive data channel listens on port 42051 07:36:05.424359 > "229 Entering Passive Mode (|||42051|)[LF]" 07:36:05.424374 Client has been notified that DATA conn will be accepted on port 42051 07:36:05.424593 Client connects to port 42051 07:36:05.424621 ====> Client established passive DATA connection on port 42051 07:36:05.424682 < "TYPE I" 07:36:05.424710 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.424869 < "SIZE verifiedserver" 07:36:05.424905 > "213 17[CR][LF]" 07:36:05.425047 < "RETR verifiedserver" 07:36:05.425077 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.425147 =====> Closing passive DATA connection... 07:36:05.425165 Server disconnects passive DATA connection 07:36:05.425381 Server disconnected passive DATA connection 07:36:05.425405 DATA sockfilt for passive data channel quits (pid 148603) 07:36:05.425681 DATA sockfilt for passive data channel quit (pid 148603) 07:36:05.425707 =====> Closed passive DATA connection 07:36:05.425732 > "226 File transfer complete[CR][LF]" 07:36:05.466967 < "QUIT" 07:36:05.467025 > "221 bye bye baby[CR][LF]" 07:36:05.468063 MAIN sockfilt said DISC 07:36:05.468093 ====> Client disconnected 07:36:05.468163 Awaiting input === End of file ftp_server.log === Start of file ftpCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1388 ../src/curl -q --trace-ascii log/14/trace1388 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1388 -o log/14/download1388 -D - > log/14/stdout1388 2> log/14/stderr1388 _sockctrl.log 07:36:06.264373 ====> Client connect 07:36:06.267676 Received DATA (on stdin) 07:36:06.267701 > 160 bytes data, server => client 07:36:06.267713 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:06.267724 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:06.267734 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:06.267812 < 16 bytes data, client => server 07:36:06.267824 'USER anonymous\r\n' 07:36:06.268009 Received DATA (on stdin) 07:36:06.268020 > 33 bytes data, server => client 07:36:06.268031 '331 We are happy you popped in!\r\n' 07:36:06.268077 < 22 bytes data, client => server 07:36:06.268088 'PASS ftp@example.com\r\n' 07:36:06.268179 Received DATA (on stdin) 07:36:06.268190 > 30 bytes data, server => client 07:36:06.268200 '230 Welcome you silly person\r\n' 07:36:06.268242 < 5 bytes data, client => server 07:36:06.268252 'PWD\r\n' 07:36:06.268340 Received DATA (on stdin) 07:36:06.268350 > 30 bytes data, server => client 07:36:06.268360 '257 "/" is current directory\r\n' 07:36:06.268407 < 6 bytes data, client => server 07:36:06.268417 'EPSV\r\n' 07:36:06.270360 Received DATA (on stdin) 07:36:06.270374 > 38 bytes data, server => client 07:36:06.270384 '229 Entering Passive Mode (|||42051|)\n' 07:36:06.270498 < 8 bytes data, client => server 07:36:06.270513 'TYPE I\r\n' 07:36:06.270694 Received DATA (on stdin) 07:36:06.270707 > 33 bytes data, server => client 07:36:06.270718 '200 I modify TYPE as you wanted\r\n' 07:36:06.270768 < 21 bytes data, client => server 07:36:06.270781 'SIZE verifiedserver\r\n' 07:36:06.270889 Received DATA (on stdin) 07:36:06.270900 > 8 bytes data, server => client 07:36:06.270910 '213 17\r\n' 07:36:06.270955 < 21 bytes data, client => server 07:36:06.270966 'RETR verifiedserver\r\n' 07:36:06.271152 Received DATA (on stdin) 07:36:06.271165 > 29 bytes data, server => client 07:36:06.271175 '150 Binary junk (17 bytes).\r\n' 07:36:06.271717 Received DATA (on stdin) 07:36:06.271730 > 28 bytes data, server => client 07:36:06.271741 '226 File transfer complete\r\n' 07:36:06.312766 < 6 bytes data, client => server 07:36:06.312794 'QUIT\r\n' 07:36:06.313003 Received DATA (on stdin) 07:36:06.313026 > 18 bytes data, server => client 07:36:06.313038 '221 bye bye baby\r\n' 07:36:06.313995 ====> Client disconnect 07:36:06.314145 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.269944 Running IPv4 version 07:36:05.269994 Listening on port 42051 07:36:05.270031 Wrote pid 148603 to log/12/server/ftp_sockdata.pid 07:36:05.270150 Received PING (on stdin) 07:36:05.270233 Received PORT (on stdin) 07:36:05.270533 ====> Client connect 07:36:05.271201 Received DATA (on stdin) 07:36:05.271214 > 17 bytes data, server => client 07:36:05.271225 'WE ROOLZ: 81035\r\n' 07:36:05.271245 Received DISC (on stdin) 07:36:05.271257 ====> Client forcibly disconnected 07:36:05.271449 Received QUIT (on stdin) 07:36:05.271465 quits 07:36:05.271520 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1383 === End of file server.cmd === Start of file valgrind1383 ==148684== ==148684== Process terminating with default action of signal 4 (SIGILL) ==148684== Illegal opcode at address 0x4003082 ==148684== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148684== by 0x4003082: main (tool_main.c:234) === End of file valgrind1383 test 1388...[FTP DL, file with C-D inside, using -o fname -D stdout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1388 ../src/curl -q --trace-ascii log/14/trace1388 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1388 -o log/14/download1388 -D - > log/14/stdout1388 2> log/14/stderr1388 1388: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1388 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1388 ../src/curl -q --trace-ascii log/14/trace1388 --trace-config all --trace-time ftp://127.0.0.1:41711/path/file1388 -o log/14/download1388 -D - > log/14/stdout1388 2> log/14/stderr1388 === End of file commands.log === Start of file ftp_server.log 07:36:05.439495 ====> Client connect 07:36:05.439846 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.440178 < "USER anonymous" 07:36:05.440223 > "331 We are happy you popped in![CR][LF]" 07:36:05.440386 < "PASS ftp@example.com" 07:36:05.440410 > "230 Welcome you silly person[CR][LF]" 07:36:05.440526 < "PWD" 07:36:05.440548 > "257 "/" is current directory[CR][LF]" 07:36:05.440665 < "EPSV" 07:36:05.440682 ====> Passive DATA channel requested by client 07:36:05.440692 DATA sockfilt for passive data channel starting... 07:36:05.442036 DATA sockfilt for passive data channel started (pid 148652) 07:36:05.442114 DATA sockfilt for passive data channel listens on port 46687 07:36:05.442139 > "229 Entering Passive Mode (|||46687|)[LF]" 07:36:05.442153 Client has been notified that DATA conn will be accepted on port 46687 07:36:05.442341 Client connects to port 46687 07:36:05.442366 ====> Client established passive DATA connection on port 46687 07:36:05.442418 < "TYPE I" 07:36:05.442441 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.442573 < "SIZE verifiedserver" 07:36:05.442603 > "213 17[CR][LF]" 07:36:05.442729 < "RETR verifiedserver" 07:36:05.442760 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.442821 =====> Closing passive DATA connection... 07:36:05.442834 Server disconnects passive DATA connection 07:36:05.442962 Server disconnected passive DATA connection 07:36:05.442993 DATA sockfilt for passive data channel quits (pid 148652) 07:36:05.443167 DATA sockfilt for passive data channel quit (pid 148652) 07:36:05.443183 =====> Closed passive DATA connection 07:36:05.443206 > "226 File transfer complete[CR][LF]" 07:36:05.484870 < "QUIT" 07:36:05.484917 > "221 bye bye baby[CR][LF]" 07:36:05.485250 MAIN sockfilt said DISC 07:36:05.485284 ====> Client disconnected 07:36:05.485350 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.284123 ====> Client connect 07:36:05.285848 Received DATA (on stdin) 07:36:05.285863 > 160 bytes data, server => client 07:36:05.285874 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.285892 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.285902 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.285971 < 16 bytes data, client => server 07:36:05.285987 'USER anonymous\r\n' 07:36:05.286213 Received DATA (on stdin) 07:36:05.286231 > 33 bytes data, server => client 07:36:05.286241 '331 We are happy you popped in!\r\n' 07:36:05.286306 < 22 bytes data, client => server 07:36:05.286321 'PASS ftp@example.com\r\n' 07:36:05.286390 Received DATA (on stdin) 07:36:05.286399 > 30 bytes data, server => client 07:36:05.286407 '230 Welcome you silly person\r\n' 07:36:05.286444 < 5 bytes data, client => server 07:36:05.286452 'PWD\r\n' 07:36:05.286527 Received DATA (on stdin) 07:36:05.286535 > 30 bytes data, server => client 07:36:05.286544 '257 "/" is current directory\r\n' 07:36:05.286585 < 6 bytes data, client => server 07:36:05.286593 'EPSV\r\n' 07:36:05.288134 Received DATA (on stdin) 07:36:05.288145 > 38 bytes data, server => client 07:36:05.288153 '229 Entering Passive Mode (|||46687|)\n' 07:36:05.288276 < 8 bytes data, client => server 07:36:05.288287 'TYPE I\r\n' 07:36:05.288424 Received DATA (on stdin) 07:36:05.288435 > 33 bytes data, server => client 07:36:05.288445 '200 I modify TYPCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1394 ./tunit/tunits tool1394 - > log/3/stdout1394 2> log/3/stderr1394 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1395 ./unit/units unit1395 - > log/20/stdout1395 2> log/20/stderr1395 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1393 ../src/curl -q --trace-ascii log/7/trace1393 --trace-config all --trace-time ftp://127.0.0.1:40197/path/file1393 -o log/7/download1393 -i > log/7/stdout1393 2> log/7/stderr1393 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1400 ../src/curl -q --output log/17/curl1400.out --include --trace-ascii log/17/trace1400 --trace-config all --trace-time http://127.0.0.1:39089/we/want/1400 --libcurl log/17/test1400.c > log/17/stdout1400 2> log/17/stderr1400 E as you wanted\r\n' 07:36:05.288486 < 21 bytes data, client => server 07:36:05.288496 'SIZE verifiedserver\r\n' 07:36:05.288585 Received DATA (on stdin) 07:36:05.288596 > 8 bytes data, server => client 07:36:05.288605 '213 17\r\n' 07:36:05.288644 < 21 bytes data, client => server 07:36:05.288654 'RETR verifiedserver\r\n' 07:36:05.288816 Received DATA (on stdin) 07:36:05.288827 > 29 bytes data, server => client 07:36:05.288837 '150 Binary junk (17 bytes).\r\n' 07:36:05.289189 Received DATA (on stdin) 07:36:05.289202 > 28 bytes data, server => client 07:36:05.289212 '226 File transfer complete\r\n' 07:36:05.330707 < 6 bytes data, client => server 07:36:05.330726 'QUIT\r\n' 07:36:05.330904 Received DATA (on stdin) 07:36:05.330915 > 18 bytes data, server => client 07:36:05.330925 '221 bye bye baby\r\n' 07:36:05.331084 ====> Client disconnect 07:36:05.331337 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.287866 Running IPv4 version 07:36:05.287921 Listening on port 46687 07:36:05.287956 Wrote pid 148652 to log/14/server/ftp_sockdata.pid 07:36:05.287972 Received PING (on stdin) 07:36:05.288035 Received PORT (on stdin) 07:36:05.288250 ====> Client connect 07:36:05.288858 Received DATA (on stdin) 07:36:05.288869 > 17 bytes data, server => client 07:36:05.288879 'WE ROOLZ: 79837\r\n' 07:36:05.288906 Received DISC (on stdin) 07:36:05.288916 ====> Client forcibly disconnected 07:36:05.288976 Received QUIT (on stdin) 07:36:05.288988 quits 07:36:05.289037 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1388 === End of file server.cmd === Start of file valgrind1388 ==148759== ==148759== Process terminating with default action of signal 4 (SIGILL) ==148759== Illegal opcode at address 0x4003082 ==148759== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==148759== by 0x4003082: main (tool_main.c:234) === End of file valgrind1388 * starts no server test 1394...[unit test for parse_cert_parameter()] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1394 ./tunit/tunits tool1394 - > log/3/stdout1394 2> log/3/stderr1394 -------e-v- OK (1300 out of 1707, remaining: 00:24, took 0.587s, duration: 01:17) * starts no server test 1395...[Curl_dedotdotify] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1395 ./unit/units unit1395 - > log/20/stdout1395 2> log/20/stderr1395 -------e-v- OK (1301 out of 1707, remaining: 00:24, took 0.605s, duration: 01:17) setenv SSL_CERT_FILE = test 1400...[--libcurl for simple HTTP GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1400 ../src/curl -q --output log/17/curl1400.out --include --trace-ascii log/17/trace1400 --trace-config all --trace-time http://127.0.0.1:39089/we/want/1400 --libcurl log/17/test1400.c > log/17/stdout1400 2> log/17/stderr1400 1400: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1400 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1400 ../src/curl -q --output log/17/curl1400.out --include --trace-ascii log/17/trace1400 --trace-config all --trace-time http://127.0.0.1:39089/we/want/1400 --libcurl log/17/test1400.c > log/17/stdout1400 2> log/17/stderr1400 === End of file commands.log === Start of file http_server.log 07:36:05.700412 ====> Client connect 07:36:05.700445 accept_connection 3 returned 4 07:36:05.700461 accept_connection 3 returned 0 07:36:05.700474 Read 93 bytes 07:36:05.700483 Process 93 bytes request 07:36:05.700495 Got request: GET /verifiedserver HTTP/1.1 07:36:05.700504 Are-we-friendly question received 07:36:05.700526 Wrote request (93 bytes) input to log/17/server.input 07:36:05.700542 Identifying ourselves as friends 07:36:05.700592 Response sent (56 bytes) and written to log/17/server.response 07:36:05.700601 special request received, no persistency 07:36:05.700609 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1400 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1400 ==149545== ==149545== Process terminating with default action of signal 4 (SIGILL) ==149545== Illegal opcode at address 0x4003082 ==149545== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149545== by 0x4003082: main (tool_main.c:234) === End of file valgrind1400 test 1393...[FTP DL, file with C-D inside, using -o fname -i, without -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1393 ../src/curl -q --trace-ascii log/7/trace1393 --trace-config all --trace-time ftp://127.0.0.1:40197/path/file1393 -o log/7/download1393 -i > log/7/stdout1393 2> log/7/stderr1393 1393: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1393 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1393 ../src/curl -q --trace-ascii log/7/trace1393 --trace-config all --trace-time ftp://127.0.0.1:40197/path/file1393 -o log/7/download1393 -i > log/7/stdout1393 2> log/7/stderr1393 === End of file commands.log === Start of file ftp_server.log 07:36:05.773184 ====> Client connect 07:36:05.773322 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:05.773945 < "USER anonymous" 07:36:05.773977 > "331 We are happy you popped in![CR][LF]" 07:36:05.774740 < "PASS ftp@example.com" 07:36:05.774914 > "230 Welcome you silly person[CR][LF]" 07:36:05.775049 < "PWD" 07:36:05.775194 > "257 "/" is current directory[CR][LF]" 07:36:05.776529 < "EPSV" 07:36:05.776556 ====> Passive DATA channel requested by client 07:36:05.776567 DATA sockfilt for passive data channel starting... 07:36:05.778924 DATA sockfilt for passive data channel started (pid 149268) 07:36:05.779043 DATA sockfilt for passive data channel listens on port 37661 07:36:05.779087 > "229 Entering Passive Mode (|||37661|)[LF]" 07:36:05.779107 Client has been notified that DATA conn will be accepted on port 37661 07:36:05.779376 Client connects to port 37661 07:36:05.779406 ====> Client established passive DATA connection on port 37661 07:36:05.779471 < "TYPE I" 07:36:05.779497 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:05.779627 < "SIZE verifiedserver" 07:36:05.779662 > "213 17[CR][LF]" 07:36:05.779822 < "RETR verifiedserver" 07:36:05.779856 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:05.779926 =====> Closing passive DATA connection... 07:36:05.779943 Server disconnects passivCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1397 ./unit/units unit1397 - > log/19/stdout1397 2> log/19/stderr1397 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1401 ../src/curl -q --output log/8/curl1401.out --include --trace-ascii log/8/trace1401 --trace-config all --trace-time http://127.0.0.1:45261/we/want/1401 --libcurl log/8/test1401.c --basic -u fake:user -H "X-Files: Mulder" -H "X-Men: cyclops, iceman" -A MyUA -b chocolate=chip --proto "=http,ftp,file" > log/8/stdout1401 2> log/8/stderr1401 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1403 ../src/curl -q --output log/6/curl1403.out --include --trace-ascii log/6/trace1403 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1403 --libcurl log/6/test1403.c -G -d "foo=bar" -d "baz=quux" > log/6/stdout1403 2> log/6/stderr1403 e DATA connection 07:36:05.780036 Server disconnected passive DATA connection 07:36:05.780060 DATA sockfilt for passive data channel quits (pid 149268) 07:36:05.780594 DATA sockfilt for passive data channel quit (pid 149268) 07:36:05.780623 =====> Closed passive DATA connection 07:36:05.780649 > "226 File transfer complete[CR][LF]" 07:36:05.823998 < "QUIT" 07:36:05.824051 > "221 bye bye baby[CR][LF]" 07:36:05.824608 MAIN sockfilt said DISC 07:36:05.824654 ====> Client disconnected 07:36:05.824725 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.619079 ====> Client connect 07:36:05.619327 Received DATA (on stdin) 07:36:05.619342 > 160 bytes data, server => client 07:36:05.619354 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.619364 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.619374 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.619647 < 16 bytes data, client => server 07:36:05.619666 'USER anonymous\r\n' 07:36:05.619960 Received DATA (on stdin) 07:36:05.619971 > 33 bytes data, server => client 07:36:05.619980 '331 We are happy you popped in!\r\n' 07:36:05.620030 < 22 bytes data, client => server 07:36:05.620047 'PASS ftp@example.com\r\n' 07:36:05.620897 Received DATA (on stdin) 07:36:05.620908 > 30 bytes data, server => client 07:36:05.620916 '230 Welcome you silly person\r\n' 07:36:05.620959 < 5 bytes data, client => server 07:36:05.620968 'PWD\r\n' 07:36:05.621139 Received DATA (on stdin) 07:36:05.621153 > 30 bytes data, server => client 07:36:05.621164 '257 "/" is current directory\r\n' 07:36:05.622435 < 6 bytes data, client => server 07:36:05.622456 'EPSV\r\n' 07:36:05.625097 Received DATA (on stdin) 07:36:05.625111 > 38 bytes data, server => client 07:36:05.625122 '229 Entering Passive Mode (|||37661|)\n' 07:36:05.625355 < 8 bytes data, client => server 07:36:05.625372 'TYPE I\r\n' 07:36:05.625463 Received DATA (on stdin) 07:36:05.625473 > 33 bytes data, server => client 07:36:05.625484 '200 I modify TYPE as you wanted\r\n' 07:36:05.625536 < 21 bytes data, client => server 07:36:05.625548 'SIZE verifiedserver\r\n' 07:36:05.625647 Received DATA (on stdin) 07:36:05.625660 > 8 bytes data, server => client 07:36:05.625671 '213 17\r\n' 07:36:05.625722 < 21 bytes data, client => server 07:36:05.625734 'RETR verifiedserver\r\n' 07:36:05.625824 Received DATA (on stdin) 07:36:05.625844 > 29 bytes data, server => client 07:36:05.625855 '150 Binary junk (17 bytes).\r\n' 07:36:05.626634 Received DATA (on stdin) 07:36:05.626647 > 28 bytes data, server => client 07:36:05.626658 '226 File transfer complete\r\n' 07:36:05.669824 < 6 bytes data, client => server 07:36:05.669848 'QUIT\r\n' 07:36:05.670039 Received DATA (on stdin) 07:36:05.670050 > 18 bytes data, server => client 07:36:05.670060 '221 bye bye baby\r\n' 07:36:05.670524 ====> Client disconnect 07:36:05.670708 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:05.624721 Running IPv4 version 07:36:05.624793 Listening on port 37661 07:36:05.624836 Wrote pid 149268 to log/7/server/ftp_sockdata.pid 07:36:05.624854 Received PING (on stdin) 07:36:05.624944 Received PORT (on stdin) 07:36:05.625301 ====> Client connect 07:36:05.625914 Received DATA (on stdin) 07:36:05.625929 > 17 bytes data, server => client 07:36:05.625940 'WE ROOLZ: 81417\r\n' 07:36:05.625975 Received DISC (on stdin) 07:36:05.625988 ====> Client forcibly disconnected 07:36:05.626062 Received QUIT (on stdin) 07:36:05.626075 quits 07:36:05.626379 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1393 === End of file server.cmd === Start of file valgrind1393 ==149446== ==149446== Process terminating with default action of signal 4 (SIGILL) ==149446== Illegal opcode at address 0x4003082 ==149446== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149446== by 0x4003082: main (tool_main.c:234) === End of file valgrind1393 * starts no server test 1397...[Curl_cert_hostcheck unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1397 ./unit/units unit1397 - > log/19/stdout1397 2> log/19/stderr1397 -------e-v- OK (1303 out of 1707, remaining: 00:24, took 0.633s, duration: 01:17) setenv SSL_CERT_FILE = test 1401...[--libcurl for GET with various options] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1401 ../src/curl -q --output log/8/curl1401.out --include --trace-ascii log/8/trace1401 --trace-config all --trace-time http://127.0.0.1:45261/we/want/1401 --libcurl log/8/test1401.c --basic -u fake:user -H "X-Files: Mulder" -H "X-Men: cyclops, iceman" -A MyUA -b chocolate=chip --proto "=http,ftp,file" > log/8/stdout1401 2> log/8/stderr1401 1401: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1401 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1401 ../src/curl -q --output log/8/curl1401.out --include --trace-ascii log/8/trace1401 --trace-config all --trace-time http://127.0.0.1:45261/we/want/1401 --libcurl log/8/test1401.c --basic -u fake:user -H "X-Files: Mulder" -H "X-Men: cyclops, iceman" -A MyUA -b chocolate=chip --proto "=http,ftp,file" > log/8/stdout1401 2> log/8/stderr1401 === End of file commands.log === Start of file http_server.log 07:36:05.700723 ====> Client connect 07:36:05.700783 accept_connection 3 returned 4 07:36:05.700799 accept_connection 3 returned 0 07:36:05.700811 Read 93 bytes 07:36:05.700821 Process 93 bytes request 07:36:05.700831 Got request: GET /verifiedserver HTTP/1.1 07:36:05.700840 Are-we-friendly question received 07:36:05.700867 Wrote request (93 bytes) input to log/8/server.input 07:36:05.700883 Identifying ourselves as friends 07:36:05.700941 Response sent (56 bytes) and written to log/8/server.response 07:36:05.700952 special request received, no persistency 07:36:05.700960 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1401 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1401 ==149546== ==149546== Process terminating with default action of signal 4 (SIGILL) ==149546== Illegal opcode at address 0x4003082 ==149546== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149546== by 0x4003082: main (tool_main.c:234) === End of file valgrind1401 setenv SSL_CERT_FILE = test 1403...[--libcurl for GET with query] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1403 ../src/curl -q --output log/6/curl1403.out --include --trace-ascii log/6/trace1403 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1403 --libcurl log/6/test1403.c -G -d "foo=bar" -d "baz=quux" > log/6/stdout1403 2> log/6/stderr1403 1403: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 13CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1402 ../src/curl -q --output log/22/curl1402.out --include --trace-ascii log/22/trace1402 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1402 --libcurl log/22/test1402.c -d "foo=bar" -d "baz=quux" > log/22/stdout1402 2> log/22/stderr1402 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1399 ./unit/units unit1399 - > log/18/stdout1399 2> log/18/stderr1399 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1398 ./unit/units unit1398 - > log/13/stdout1398 2> log/13/stderr1398 2 == Contents of files in the log/6/ dir after test 1403 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1403 ../src/curl -q --output log/6/curl1403.out --include --trace-ascii log/6/trace1403 --trace-config all --trace-time http://127.0.0.1:35775/we/want/1403 --libcurl log/6/test1403.c -G -d "foo=bar" -d "baz=quux" > log/6/stdout1403 2> log/6/stderr1403 === End of file commands.log === Start of file http_server.log 07:36:05.755870 ====> Client connect 07:36:05.755901 accept_connection 3 returned 4 07:36:05.755916 accept_connection 3 returned 0 07:36:05.755929 Read 93 bytes 07:36:05.755939 Process 93 bytes request 07:36:05.755949 Got request: GET /verifiedserver HTTP/1.1 07:36:05.755959 Are-we-friendly question received 07:36:05.755990 Wrote request (93 bytes) input to log/6/server.input 07:36:05.756006 Identifying ourselves as friends 07:36:05.756064 Response sent (56 bytes) and written to log/6/server.response 07:36:05.756073 special request received, no persistency 07:36:05.756082 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1403 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1403 ==149695== ==149695== Process terminating with default action of signal 4 (SIGILL) ==149695== Illegal opcode at address 0x4003082 ==149695== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149695== by 0x4003082: main (tool_main.c:234) === End of file valgrind1403 setenv SSL_CERT_FILE = test 1402...[--libcurl for simple POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1402 ../src/curl -q --output log/22/curl1402.out --include --trace-ascii log/22/trace1402 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1402 --libcurl log/22/test1402.c -d "foo=bar" -d "baz=quux" > log/22/stdout1402 2> log/22/stderr1402 1402: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1402 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1402 ../src/curl -q --output log/22/curl1402.out --include --trace-ascii log/22/trace1402 --trace-config all --trace-time http://127.0.0.1:46761/we/want/1402 --libcurl log/22/test1402.c -d "foo=bar" -d "baz=quux" > log/22/stdout1402 2> log/22/stderr1402 === End of file commands.log === Start of file http_server.log 07:36:05.754860 ====> Client connect 07:36:05.754899 accept_connection 3 returned 4 07:36:05.754917 accept_connection 3 returned 0 07:36:05.754934 Read 93 bytes 07:36:05.754943 Process 93 bytes request 07:36:05.754955 Got request: GET /verifiedserver HTTP/1.1 07:36:05.754964 Are-we-friendly question received 07:36:05.754990 Wrote request (93 bytes) input to log/22/server.input 07:36:05.755007 Identifying ourselves as friends 07:36:05.755082 Response sent (56 bytes) and written to log/22/server.response 07:36:05.755094 special request received, no persistency 07:36:05.755103 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1402 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1402 ==149692== ==149692== Process terminating with default action of signal 4 (SIGILL) ==149692== Illegal opcode at address 0x4003082 ==149692== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149692== by 0x4003082: main (tool_main.c:234) === End of file valgrind1402 * starts no server test 1399...[Curl_pgrsTime unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1399 ./unit/units unit1399 - > log/18/stdout1399 2> log/18/stderr1399 -------e-v- OK (1305 out of 1707, remaining: 00:23, took 0.662s, duration: 01:17) * starts no server test 1398...[curl_msnprintf unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1398 ./unit/units unit1398 - > log/13/stdout1398 2> log/13/stderr1398 units returned 132, when expecting 0 1398: exit FAILED == Contents of files in the log/13/ dir after test 1398 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1398 ./unit/units unit1398 - > log/13/stdout1398 2> log/13/stderr1398 === End of file commands.log === Start of file server.cmd Testnum 1398 === End of file server.cmd === Start of file stderr1398 URL: - === End of file stderr1398 === Start of file valgrind1398 ==149369== ==149369== Process terminating with default action of signal 4 (SIGILL) ==149369== Illegal opcode at address 0x400E187 ==149369== at 0x400E187: test_unit1398.lto_priv.0 (unit1398.c:87) ==149369== by 0x400A15E: main (first.c:167) ==149369== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x532FFA5: __tsearch (tsearch.c:337) ==149369== by 0x532FFA5: tsearch (tsearch.c:290) ==149369== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149369== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149369== by 0x52423F0: add_alias (gconv_conf.c:178) ==149369== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149369== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==149369== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==149369== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== ==149369== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x532FFA5: __tsearch (tsearch.c:337) ==149369== by 0x532FFA5: tsearch (tsearch.c:290) ==149369== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149369== by 0x524274A: add_alias2 (gconv_conf.c:105) ==149369== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==149369== by 0x52B2CB3: __pthread_once_sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1404 ../src/curl -q --output log/10/curl1404.out --include --trace-ascii log/10/trace1404 --trace-config all --trace-time http://127.0.0.1:34851/we/want/1404 -F name=value -F 'file=@log/10/test1404.txt,log/10/test1404.txt;type=magic/content;encoder=8bit,log/10/test1404.txt;headers=X-testheader-1: header 1;headers=X-testheader-2: header 2' --libcurl log/10/test1404.c > log/10/stdout1404 2> log/10/stderr1404 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1413 ../src/curl -q --output log/9/curl1413.out --include --trace-ascii log/9/trace1413 --trace-config all --trace-time http://127.0.0.1:34999/this/1413 -L > log/9/stdout1413 2> log/9/stderr1413 low.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== ==149369== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149369== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149369== by 0x52423F0: add_alias (gconv_conf.c:178) ==149369== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149369== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==149369== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==149369== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== ==149369== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149369== by 0x524274A: add_alias2 (gconv_conf.c:105) ==149369== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==149369== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== ==149369== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x532FFA5: __tsearch (tsearch.c:337) ==149369== by 0x532FFA5: tsearch (tsearch.c:290) ==149369== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149369== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149369== by 0x52423F0: add_alias (gconv_conf.c:178) ==149369== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149369== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==149369== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==149369== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== ==149369== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==149369== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149369== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149369== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149369== by 0x52423F0: add_alias (gconv_conf.c:178) ==149369== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149369== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==149369== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==149369== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149369== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149369== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149369== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149369== by 0x524D142: setlocale (setlocale.c:337) ==149369== by 0x400A0CB: main (first.c:123) ==149369== === End of file valgrind1398 setenv SSL_CERT_FILE = test 1404...[--libcurl plus -F with 3 files, one with explicit type & encoder] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1404 ../src/curl -q --output log/10/curl1404.out --include --trace-ascii log/10/trace1404 --trace-config all --trace-time http://127.0.0.1:34851/we/want/1404 -F name=value -F 'file=@log/10/test1404.txt,log/10/test1404.txt;type=magic/content;encoder=8bit,log/10/test1404.txt;headers=X-testheader-1: header 1;headers=X-testheader-2: header 2' --libcurl log/10/test1404.c > log/10/stdout1404 2> log/10/stderr1404 1404: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1404 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1404 ../src/curl -q --output log/10/curl1404.out --include --trace-ascii log/10/trace1404 --trace-config all --trace-time http://127.0.0.1:34851/we/want/1404 -F name=value -F 'file=@log/10/test1404.txt,log/10/test1404.txt;type=magic/content;encoder=8bit,log/10/test1404.txt;headers=X-testheader-1: header 1;headers=X-testheader-2: header 2' --libcurl log/10/test1404.c > log/10/stdout1404 2> log/10/stderr1404 === End of file commands.log === Start of file http_server.log 07:36:05.778916 ====> Client connect 07:36:05.778948 accept_connection 3 returned 4 07:36:05.778965 accept_connection 3 returned 0 07:36:05.778980 Read 93 bytes 07:36:05.778991 Process 93 bytes request 07:36:05.779003 Got request: GET /verifiedserver HTTP/1.1 07:36:05.779012 Are-we-friendly question received 07:36:05.779035 Wrote request (93 bytes) input to log/10/server.input 07:36:05.779053 Identifying ourselves as friends 07:36:05.779107 Response sent (56 bytes) and written to log/10/server.response 07:36:05.779118 special request received, no persistency 07:36:05.779127 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1404 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file test1404.txt dummy data === End of file test1404.txt === Start of file valgrind1404 ==149772== ==149772== Process terminating with default action of signal 4 (SIGILL) ==149772== Illegal opcode at address 0x4003082 ==149772== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149772== by 0x4003082: main (tool_main.c:234) === End of file valgrind1404 test 1413...[HTTP redirect with fragment in new URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1413 ../src/curl -q --output log/9/curl1413.out --include --trace-ascii log/9/trace1413 --trace-config all --trace-time http://127.0.0.1:34999/this/1413 -L > log/9/stdout1413 2> log/9/stderr1413 1413: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1413 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/vCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1407 ../src/curl -q --output log/15/curl1407.out --include --trace-ascii log/15/trace1407 --trace-config all --trace-time pop3://127.0.0.1:46261/1407 -l -u user:secret --libcurl log/15/test1407.c > log/15/stdout1407 2> log/15/stderr1407 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1415 ../src/curl -q --output log/14/curl1415.out --include --trace-ascii log/14/trace1415 --trace-config all --trace-time http://example.com/we/want/1415 -b none -c log/14/jar1415.txt -x 127.0.0.1:37963 > log/14/stdout1415 2> log/14/stderr1415 algrind1413 ../src/curl -q --output log/9/curl1413.out --include --trace-ascii log/9/trace1413 --trace-config all --trace-time http://127.0.0.1:34999/this/1413 -L > log/9/stdout1413 2> log/9/stderr1413 === End of file commands.log === Start of file http_server.log 07:36:06.024351 ====> Client connect 07:36:06.024389 accept_connection 3 returned 4 07:36:06.024407 accept_connection 3 returned 0 07:36:06.024423 Read 93 bytes 07:36:06.024434 Process 93 bytes request 07:36:06.024448 Got request: GET /verifiedserver HTTP/1.1 07:36:06.024459 Are-we-friendly question received 07:36:06.024487 Wrote request (93 bytes) input to log/9/server.input 07:36:06.024506 Identifying ourselves as friends 07:36:06.024569 Response sent (56 bytes) and written to log/9/server.response 07:36:06.024581 special request received, no persistency 07:36:06.024591 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1413 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1413 ==150188== ==150188== Process terminating with default action of signal 4 (SIGILL) ==150188== Illegal opcode at address 0x4003082 ==150188== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150188== by 0x4003082: main (tool_main.c:234) === End of file valgrind1413 setenv SSL_CERT_FILE = test 1407...[--libcurl for POP3 LIST one message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1407 ../src/curl -q --output log/15/curl1407.out --include --trace-ascii log/15/trace1407 --trace-config all --trace-time pop3://127.0.0.1:46261/1407 -l -u user:secret --libcurl log/15/test1407.c > log/15/stdout1407 2> log/15/stderr1407 1407: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1407 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1407 ../src/curl -q --output log/15/curl1407.out --include --trace-ascii log/15/trace1407 --trace-config all --trace-time pop3://127.0.0.1:46261/1407 -l -u user:secret --libcurl log/15/test1407.c > log/15/stdout1407 2> log/15/stderr1407 === End of file commands.log === Start of file pop3_server.log 07:36:06.155935 ====> Client connect 07:36:06.156073 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]+OK curl POP3 server ready to serve [CR][LF]" 07:36:06.156344 < "CAPA" 07:36:06.156379 > "-ERR Unrecognized command[CR][LF]" 07:36:06.159583 < "RETR verifiedserver" 07:36:06.159618 return proof we are we 07:36:06.159646 > "+OK Mail transfer starts[CR][LF]" 07:36:06.159664 > "WE ROOLZ: 117855[CR][LF]" 07:36:06.159679 > ".[CR][LF]" 07:36:06.200481 < "QUIT" 07:36:06.200530 > "+OK curl POP3 server signing off[CR][LF]" 07:36:06.200917 MAIN sockfilt said DISC 07:36:06.200948 ====> Client disconnected 07:36:06.201020 Awaiting input === End of file pop3_server.log === Start of file pop3_sockfilt.log 07:36:07.001797 ====> Client connect 07:36:07.002066 Received DATA (on stdin) 07:36:07.002081 > 178 bytes data, server => client 07:36:07.002092 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:07.002103 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:07.002114 ' \___|\___/|_| \_\_____|\r\n+OK curl POP3 server ready to ser' 07:36:07.002123 've \r\n' 07:36:07.002197 < 6 bytes data, client => server 07:36:07.002209 'CAPA\r\n' 07:36:07.002883 Received DATA (on stdin) 07:36:07.002904 > 27 bytes data, server => client 07:36:07.002916 '-ERR Unrecognized command\r\n' 07:36:07.002982 < 21 bytes data, client => server 07:36:07.002998 'RETR verifiedserver\r\n' 07:36:07.005662 Received DATA (on stdin) 07:36:07.005675 > 26 bytes data, server => client 07:36:07.005685 '+OK Mail transfer starts\r\n' 07:36:07.005713 Received DATA (on stdin) 07:36:07.005722 > 18 bytes data, server => client 07:36:07.005732 'WE ROOLZ: 117855\r\n' 07:36:07.005744 Received DATA (on stdin) 07:36:07.005754 > 3 bytes data, server => client 07:36:07.005763 '.\r\n' 07:36:07.046277 < 6 bytes data, client => server 07:36:07.046300 'QUIT\r\n' 07:36:07.046514 Received DATA (on stdin) 07:36:07.046525 > 34 bytes data, server => client 07:36:07.046536 '+OK curl POP3 server signing off\r\n' 07:36:07.046850 ====> Client disconnect 07:36:07.047015 Received ACKD (on stdin) === End of file pop3_sockfilt.log === Start of file server.cmd REPLY LIST +OK 1407 100\r\n. Testnum 1407 === End of file server.cmd === Start of file valgrind1407 ==150377== ==150377== Process terminating with default action of signal 4 (SIGILL) ==150377== Illegal opcode at address 0x4003082 ==150377== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150377== by 0x4003082: main (tool_main.c:234) === End of file valgrind1407 setenv TZ = GMT test 1415...[Delete expired cookies] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1415 ../src/curl -q --output log/14/curl1415.out --include --trace-ascii log/14/trace1415 --trace-config all --trace-time http://example.com/we/want/1415 -b none -c log/14/jar1415.txt -x 127.0.0.1:37963 > log/14/stdout1415 2> log/14/stderr1415 1415: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1415 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1415 ../src/curl -q --output log/14/curl1415.out --include --trace-ascii log/14/trace1415 --trace-config all --trace-time http://example.com/we/want/1415 -b none -c log/14/jar1415.txt -x 127.0.0.1:37963 > log/14/stdout1415 2> log/14/stderr1415 === End of file commands.log === Start of file http_server.log 07:36:06.030244 ====> Client connect 07:36:06.030276 accept_connection 3 returned 4 07:36:06.030293 accept_connection 3 returned 0 07:36:06.030312 Read 93 bytes 07:36:06.030322 Process 93 bytes request 07:36:06.030333 Got request: GET /verifiedserver HTTP/1.1 07:36:06.030343 Are-we-friendly question received 07:36:06.030367 Wrote request (93 bytes) input to log/14/server.input 07:36:06.030383 Identifying ourselves as friends 07:36:06.030444 Response sent (56 bytes) and written to log/14/server.response 07:36:06.030454 special request received, no persistency 07:36:06.030463 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1414 ../src/curl -q --output log/12/curl1414.out --include --trace-ascii log/12/trace1414 --trace-config all --trace-time ftp://127.0.0.1:39735/1414 -P - > log/12/stdout1414 2> log/12/stderr1414 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1405 ../src/curl -q --output log/5/curl1405.out --include --trace-ascii log/5/trace1405 --trace-config all --trace-time ftp://127.0.0.1:42261/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/5/test1405.c > log/5/stdout1405 2> log/5/stderr1405 Testnum 1415 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1415 ==150259== ==150259== Process terminating with default action of signal 4 (SIGILL) ==150259== Illegal opcode at address 0x4003082 ==150259== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150259== by 0x4003082: main (tool_main.c:234) === End of file valgrind1415 test 1414...[FTP PORT without SIZE or EPRT support] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1414 ../src/curl -q --output log/12/curl1414.out --include --trace-ascii log/12/trace1414 --trace-config all --trace-time ftp://127.0.0.1:39735/1414 -P - > log/12/stdout1414 2> log/12/stderr1414 1414: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1414 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1414 ../src/curl -q --output log/12/curl1414.out --include --trace-ascii log/12/trace1414 --trace-config all --trace-time ftp://127.0.0.1:39735/1414 -P - > log/12/stdout1414 2> log/12/stderr1414 === End of file commands.log === Start of file ftp_server.log 07:36:06.178780 ====> Client connect 07:36:06.178928 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:06.179160 < "USER anonymous" 07:36:06.179193 > "331 We are happy you popped in![CR][LF]" 07:36:06.179407 < "PASS ftp@example.com" 07:36:06.179457 > "230 Welcome you silly person[CR][LF]" 07:36:06.179642 < "PWD" 07:36:06.179677 > "257 "/" is current directory[CR][LF]" 07:36:06.179838 < "EPSV" 07:36:06.179872 ====> Passive DATA channel requested by client 07:36:06.179887 DATA sockfilt for passive data channel starting... 07:36:06.181872 DATA sockfilt for passive data channel started (pid 150133) 07:36:06.181987 DATA sockfilt for passive data channel listens on port 45007 07:36:06.182028 > "229 Entering Passive Mode (|||45007|)[LF]" 07:36:06.182045 Client has been notified that DATA conn will be accepted on port 45007 07:36:06.182265 Client connects to port 45007 07:36:06.182296 ====> Client established passive DATA connection on port 45007 07:36:06.182371 < "TYPE I" 07:36:06.182400 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:06.182571 < "SIZE verifiedserver" 07:36:06.182602 > "213 17[CR][LF]" 07:36:06.182746 < "RETR verifiedserver" 07:36:06.182776 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:06.182844 =====> Closing passive DATA connection... 07:36:06.182860 Server disconnects passive DATA connection 07:36:06.182972 Server disconnected passive DATA connection 07:36:06.182992 DATA sockfilt for passive data channel quits (pid 150133) 07:36:06.183228 DATA sockfilt for passive data channel quit (pid 150133) 07:36:06.183260 =====> Closed passive DATA connection 07:36:06.183290 > "226 File transfer complete[CR][LF]" 07:36:06.223883 < "QUIT" 07:36:06.223945 > "221 bye bye baby[CR][LF]" 07:36:06.225420 MAIN sockfilt said DISC 07:36:06.225475 ====> Client disconnected 07:36:06.225554 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:07.024665 ====> Client connect 07:36:07.024902 Received DATA (on stdin) 07:36:07.024926 > 160 bytes data, server => client 07:36:07.024939 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:07.024950 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:07.024960 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:07.025034 < 16 bytes data, client => server 07:36:07.025049 'USER anonymous\r\n' 07:36:07.025178 Received DATA (on stdin) 07:36:07.025190 > 33 bytes data, server => client 07:36:07.025201 '331 We are happy you popped in!\r\n' 07:36:07.025252 < 22 bytes data, client => server 07:36:07.025263 'PASS ftp@example.com\r\n' 07:36:07.025451 Received DATA (on stdin) 07:36:07.025470 > 30 bytes data, server => client 07:36:07.025481 '230 Welcome you silly person\r\n' 07:36:07.025547 < 5 bytes data, client => server 07:36:07.025559 'PWD\r\n' 07:36:07.025660 Received DATA (on stdin) 07:36:07.025670 > 30 bytes data, server => client 07:36:07.025681 '257 "/" is current directory\r\n' 07:36:07.025735 < 6 bytes data, client => server 07:36:07.025746 'EPSV\r\n' 07:36:07.028037 Received DATA (on stdin) 07:36:07.028051 > 38 bytes data, server => client 07:36:07.028063 '229 Entering Passive Mode (|||45007|)\n' 07:36:07.028215 < 8 bytes data, client => server 07:36:07.028236 'TYPE I\r\n' 07:36:07.028385 Received DATA (on stdin) 07:36:07.028401 > 33 bytes data, server => client 07:36:07.028413 '200 I modify TYPE as you wanted\r\n' 07:36:07.028474 < 21 bytes data, client => server 07:36:07.028487 'SIZE verifiedserver\r\n' 07:36:07.028585 Received DATA (on stdin) 07:36:07.028597 > 8 bytes data, server => client 07:36:07.028608 '213 17\r\n' 07:36:07.028654 < 21 bytes data, client => server 07:36:07.028665 'RETR verifiedserver\r\n' 07:36:07.028807 Received DATA (on stdin) 07:36:07.028829 > 29 bytes data, server => client 07:36:07.028841 '150 Binary junk (17 bytes).\r\n' 07:36:07.029277 Received DATA (on stdin) 07:36:07.029319 > 28 bytes data, server => client 07:36:07.029331 '226 File transfer complete\r\n' 07:36:07.069661 < 6 bytes data, client => server 07:36:07.069696 'QUIT\r\n' 07:36:07.069937 Received DATA (on stdin) 07:36:07.069951 > 18 bytes data, server => client 07:36:07.069962 '221 bye bye baby\r\n' 07:36:07.071330 ====> Client disconnect 07:36:07.071545 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:06.027666 Running IPv4 version 07:36:06.027726 Listening on port 45007 07:36:06.027768 Wrote pid 150133 to log/12/server/ftp_sockdata.pid 07:36:06.027791 Received PING (on stdin) 07:36:06.027888 Received PORT (on stdin) 07:36:06.028180 ====> Client connect 07:36:06.028847 Received DATA (on stdin) 07:36:06.028861 > 17 bytes data, server => client 07:36:06.028872 'WE ROOLZ: 81035\r\n' 07:36:06.028896 Received DISC (on stdin) 07:36:06.028908 ====> Client forcibly disconnected 07:36:06.028982 Received QUIT (on stdin) 07:36:06.028992 quits 07:36:06.029049 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY SIZE 502 no such command REPLY EPRT 502 no such command Testnum 1414 === End of file server.cmd === Start of file valgrind1414 ==150474== ==150474== Process terminating with default action of signal 4 (SIGILL) ==150474== Illegal opcode at address 0x4003082 ==150474== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150474== by 0x4003082: main (tool_main.c:234) === End of file valgrind1414 setenv SSL_CERT_FILE = test 1405...[--libcurl for FTP with quote ops] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1405 ../src/curl -q --output log/5/curl1405.out --include --trace-ascii log/5/trace1405 --trace-config all --trace-time ftp://127.0.0.1:42261/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/5/test1405.c > log/5/stdout1405 2> log/5/stderr1405 1405: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1405 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1405 ../src/curl -q --output log/5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1406 ../src/curl -q --output log/4/curl1406.out --include --trace-ascii log/4/trace1406 --trace-config all --trace-time smtp://127.0.0.1:41607/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/4/test1406.eml --libcurl log/4/test1406.c > log/4/stdout1406 2> log/4/stderr1406 /curl1405.out --include --trace-ascii log/5/trace1405 --trace-config all --trace-time ftp://127.0.0.1:42261/1405 -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q "+*FAIL HARD" --libcurl log/5/test1405.c > log/5/stdout1405 2> log/5/stderr1405 === End of file commands.log === Start of file ftp_server.log 07:36:06.040409 ====> Client connect 07:36:06.040644 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:06.040937 < "USER anonymous" 07:36:06.040968 > "331 We are happy you popped in![CR][LF]" 07:36:06.041209 < "PASS ftp@example.com" 07:36:06.041252 > "230 Welcome you silly person[CR][LF]" 07:36:06.041423 < "PWD" 07:36:06.041453 > "257 "/" is current directory[CR][LF]" 07:36:06.041590 < "EPSV" 07:36:06.041613 ====> Passive DATA channel requested by client 07:36:06.041625 DATA sockfilt for passive data channel starting... 07:36:06.043622 DATA sockfilt for passive data channel started (pid 149878) 07:36:06.043714 DATA sockfilt for passive data channel listens on port 40999 07:36:06.043755 > "229 Entering Passive Mode (|||40999|)[LF]" 07:36:06.043807 Client has been notified that DATA conn will be accepted on port 40999 07:36:06.044042 Client connects to port 40999 07:36:06.044072 ====> Client established passive DATA connection on port 40999 07:36:06.044230 < "TYPE I" 07:36:06.044260 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:06.044383 < "SIZE verifiedserver" 07:36:06.044414 > "213 17[CR][LF]" 07:36:06.044568 < "RETR verifiedserver" 07:36:06.044603 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:06.044671 =====> Closing passive DATA connection... 07:36:06.044689 Server disconnects passive DATA connection 07:36:06.044758 Server disconnected passive DATA connection 07:36:06.044776 DATA sockfilt for passive data channel quits (pid 149878) 07:36:06.044950 DATA sockfilt for passive data channel quit (pid 149878) 07:36:06.044967 =====> Closed passive DATA connection 07:36:06.044985 > "226 File transfer complete[CR][LF]" 07:36:06.086991 < "QUIT" 07:36:06.087043 > "221 bye bye baby[CR][LF]" 07:36:06.087152 MAIN sockfilt said DISC 07:36:06.087174 ====> Client disconnected 07:36:06.087237 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:05.886251 ====> Client connect 07:36:05.886638 Received DATA (on stdin) 07:36:05.886650 > 160 bytes data, server => client 07:36:05.886658 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.886667 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.886674 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.886741 < 16 bytes data, client => server 07:36:05.886775 'USER anonymous\r\n' 07:36:05.886950 Received DATA (on stdin) 07:36:05.886960 > 33 bytes data, server => client 07:36:05.886969 '331 We are happy you popped in!\r\n' 07:36:05.887035 < 22 bytes data, client => server 07:36:05.887150 'PASS ftp@example.com\r\n' 07:36:05.887242 Received DATA (on stdin) 07:36:05.887257 > 30 bytes data, server => client 07:36:05.887266 '230 Welcome you silly person\r\n' 07:36:05.887319 < 5 bytes data, client => server 07:36:05.887334 'PWD\r\n' 07:36:05.887435 Received DATA (on stdin) 07:36:05.887445 > 30 bytes data, server => client 07:36:05.887454 '257 "/" is current directory\r\n' 07:36:05.887504 < 6 bytes data, client => server 07:36:05.887513 'EPSV\r\n' 07:36:05.889773 Received DATA (on stdin) 07:36:05.889786 > 38 bytes data, server => client 07:36:05.889797 '229 Entering Passive Mode (|||40999|)\n' 07:36:05.890102 < 8 bytes data, client => server 07:36:05.890140 'TYPE I\r\n' 07:36:05.890244 Received DATA (on stdin) 07:36:05.890256 > 33 bytes data, server => client 07:36:05.890267 '200 I modify TYPE as you wanted\r\n' 07:36:05.890309 < 21 bytes data, client => server 07:36:05.890320 'SIZE verifiedserver\r\n' 07:36:05.890394 Received DATA (on stdin) 07:36:05.890405 > 8 bytes data, server => client 07:36:05.890415 '213 17\r\n' 07:36:05.890459 < 21 bytes data, client => server 07:36:05.890470 'RETR verifiedserver\r\n' 07:36:05.890581 Received DATA (on stdin) 07:36:05.890595 > 29 bytes data, server => client 07:36:05.890605 '150 Binary junk (17 bytes).\r\n' 07:36:05.890965 Received DATA (on stdin) 07:36:05.890975 > 28 bytes data, server => client 07:36:05.890983 '226 File transfer complete\r\n' 07:36:05.932789 < 6 bytes data, client => server 07:36:05.932819 'QUIT\r\n' 07:36:05.933028 Received DATA (on stdin) 07:36:05.933039 > 18 bytes data, server => client 07:36:05.933048 '221 bye bye baby\r\n' 07:36:05.933092 ====> Client disconnect 07:36:05.933218 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:06.889296 Running IPv4 version 07:36:06.889452 Listening on port 40999 07:36:06.889489 Wrote pid 149878 to log/5/server/ftp_sockdata.pid 07:36:06.889508 Received PING (on stdin) 07:36:06.889627 Received PORT (on stdin) 07:36:06.889951 ====> Client connect 07:36:06.890662 Received DATA (on stdin) 07:36:06.890674 > 17 bytes data, server => client 07:36:06.890683 'WE ROOLZ: 79836\r\n' 07:36:06.890705 Received DISC (on stdin) 07:36:06.890713 ====> Client forcibly disconnected 07:36:06.890770 Received QUIT (on stdin) 07:36:06.890782 quits 07:36:06.890829 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command REPLY FAIL 500 this might not be a failure Testnum 1405 === End of file server.cmd === Start of file valgrind1405 ==149884== ==149884== Process terminating with default action of signal 4 (SIGILL) ==149884== Illegal opcode at address 0x4003082 ==149884== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149884== by 0x4003082: main (tool_main.c:234) === End of file valgrind1405 setenv SSL_CERT_FILE = test 1406...[--libcurl for SMTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1406 ../src/curl -q --output log/4/curl1406.out --include --trace-ascii log/4/trace1406 --trace-config all --trace-time smtp://127.0.0.1:41607/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/4/test1406.eml --libcurl log/4/test1406.c > log/4/stdout1406 2> log/4/stderr1406 1406: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1406 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1406 ../src/curl -q --output log/4/curl1406.out --include --trace-ascii log/4/trace1406 --trace-config all --trace-time smtp://127.0.0.1:41607/1406 --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T log/4/test1406.eml --libcurl log/4/test1406.c > log/4/stdout1406 2> log/4/stderr1406 === End of file commands.log === Start of file server.cmd CAPA SIZE Testnum 1406 === End of file server.cmd === Start of file smtp_server.log 07:36:06.131607 ====> Client connect 07:36:06.131741 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:06.131950 < "EHLO verifiedserver" 07:36:06.131979 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:06.132100 < "HELP" 07:36:06.132127 > "214 WE ROOLZ: 121040[CR][LF]" 07:36:06.132140 return proof we are we 07:36:06.132337 < "QUIT" 07:36:06.132361 > "221 curl ESMTP server signing off[CR][LF]" 07:36:06.133242 MAIN sockfilt said DISC 07:36:06.133265 ====> Client disconnected 07:36:06.133323 Awaiting input === End of file smtp_server.log === Start of file smtp_socCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1396 ./unit/units unit1396 - > log/1/stdout1396 2> log/1/stderr1396 kfilt.log 07:36:05.977461 ====> Client connect 07:36:05.977729 Received DATA (on stdin) 07:36:05.977740 > 160 bytes data, server => client 07:36:05.977749 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:05.977757 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:05.977764 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:05.977820 < 21 bytes data, client => server 07:36:05.977828 'EHLO verifiedserver\r\n' 07:36:05.977959 Received DATA (on stdin) 07:36:05.977968 > 53 bytes data, server => client 07:36:05.977975 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:05.978016 < 6 bytes data, client => server 07:36:05.978027 'HELP\r\n' 07:36:05.978120 Received DATA (on stdin) 07:36:05.978131 > 22 bytes data, server => client 07:36:05.978140 '214 WE ROOLZ: 121040\r\n' 07:36:05.978243 < 6 bytes data, client => server 07:36:05.978256 'QUIT\r\n' 07:36:05.978343 Received DATA (on stdin) 07:36:05.978352 > 35 bytes data, server => client 07:36:05.978362 '221 curl ESMTP server signing off\r\n' 07:36:05.979180 ====> Client disconnect 07:36:05.979317 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file test1406.eml From: different To: another body === End of file test1406.eml === Start of file valgrind1406 ==149976== ==149976== Process terminating with default action of signal 4 (SIGILL) ==149976== Illegal opcode at address 0x4003082 ==149976== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149976== by 0x4003082: main (tool_main.c:234) === End of file valgrind1406 * starts no server test 1396...[curl_easy_escape and curl_easy_unescape] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1396 ./unit/units unit1396 - > log/1/stdout1396 2> log/1/stderr1396 units returned 132, when expecting 0 1396: exit FAILED == Contents of files in the log/1/ dir after test 1396 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1396 ./unit/units unit1396 - > log/1/stdout1396 2> log/1/stderr1396 === End of file commands.log === Start of file server.cmd Testnum 1396 === End of file server.cmd === Start of file stderr1396 URL: - === End of file stderr1396 === Start of file valgrind1396 ==149292== ==149292== Process terminating with default action of signal 4 (SIGILL) ==149292== Illegal opcode at address 0x40775D3 ==149292== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==149292== by 0x40775D3: UnknownInlinedFun (request.c:46) ==149292== by 0x40775D3: Curl_open (url.c:541) ==149292== by 0x403D525: curl_easy_init (easy.c:372) ==149292== by 0x402D7D0: test_unit1396.part.0.lto_priv.0 (unit1396.c:85) ==149292== by 0x400A15E: main (first.c:167) ==149292== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149292== by 0x532FFA5: __tsearch (tsearch.c:337) ==149292== by 0x532FFA5: tsearch (tsearch.c:290) ==149292== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149292== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149292== by 0x52423F0: add_alias (gconv_conf.c:178) ==149292== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149292== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==149292== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== ==149292== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149292== by 0x532FFA5: __tsearch (tsearch.c:337) ==149292== by 0x532FFA5: tsearch (tsearch.c:290) ==149292== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149292== by 0x524274A: add_alias2 (gconv_conf.c:105) ==149292== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== ==149292== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149292== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149292== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149292== by 0x52423F0: add_alias (gconv_conf.c:178) ==149292== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149292== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==149292== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== ==149292== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149292== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149292== by 0x524274A: add_alias2 (gconv_conf.c:105) ==149292== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== ==149292== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==149292== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==149292== by 0x4077523: Curl_open (url.c:520) ==149292== by 0x403D525: curl_easy_init (easy.c:372) ==149292== by 0x402D7D0: test_unit1396.part.0.lto_priv.0 (unit1396.c:85) ==149292== by 0x400A15E: main (first.c:167) ==149292== ==149292== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==149292== by 0x532FFA5: __tsearch (tsearch.c:337) ==149292== by 0x532FFA5: tsearch (tsearch.c:290) ==149292== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==149292== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149292== by 0x52423F0: add_alias (gconv_conf.c:178) ==149292== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149292== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==149292== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== ==149292== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==149292== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==14CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1410 ../src/curl -q --output log/23/curl1410.out --include --trace-ascii log/23/trace1410 --trace-config all --trace-time http://127.0.0.1:47/1410 --max-time -4 > log/23/stdout1410 2> log/23/stderr1410 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1409 ../src/curl -q --output log/2/curl1409.out --include --trace-ascii log/2/trace1409 --trace-config all --trace-time http://127.0.0.1:47/1409 -C wrong > log/2/stdout1409 2> log/2/stderr1409 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1411 ../src/curl -q --output log/24/curl1411.out --include --trace-ascii log/24/trace1411 --trace-config all --trace-time http://127.0.0.1:38675/1411 -T log/24/empty1411 > log/24/stdout1411 2> log/24/stderr1411 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1408 ../src/curl -q --output log/11/curl1408.out --include --trace-ascii log/11/trace1408 --trace-config all --trace-time -c log/11/jar1408 -g http://[::1]:42945/path/14080001 http://[::1]:42945/path/14080002 > log/11/stdout1408 2> log/11/stderr1408 9292== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==149292== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==149292== by 0x52423F0: add_alias (gconv_conf.c:178) ==149292== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==149292== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==149292== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==149292== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==149292== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==149292== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==149292== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==149292== by 0x524D142: setlocale (setlocale.c:337) ==149292== by 0x400A0CB: main (first.c:123) ==149292== === End of file valgrind1396 * starts no server test 1410...[Pass in negative number to --max-time] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1410 ../src/curl -q --output log/23/curl1410.out --include --trace-ascii log/23/trace1410 --trace-config all --trace-time http://127.0.0.1:47/1410 --max-time -4 > log/23/stdout1410 2> log/23/stderr1410 curl returned 132, when expecting 2 1410: exit FAILED == Contents of files in the log/23/ dir after test 1410 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1410 ../src/curl -q --output log/23/curl1410.out --include --trace-ascii log/23/trace1410 --trace-config all --trace-time http://127.0.0.1:47/1410 --max-time -4 > log/23/stdout1410 2> log/23/stderr1410 === End of file commands.log === Start of file server.cmd Testnum 1410 === End of file server.cmd === Start of file valgrind1410 ==149978== ==149978== Process terminating with default action of signal 4 (SIGILL) ==149978== Illegal opcode at address 0x4003082 ==149978== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149978== by 0x4003082: main (tool_main.c:234) === End of file valgrind1410 * starts no server test 1409...[Pass in string to -C] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1409 ../src/curl -q --output log/2/curl1409.out --include --trace-ascii log/2/trace1409 --trace-config all --trace-time http://127.0.0.1:47/1409 -C wrong > log/2/stdout1409 2> log/2/stderr1409 curl returned 132, when expecting 2 1409: exit FAILED == Contents of files in the log/2/ dir after test 1409 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1409 ../src/curl -q --output log/2/curl1409.out --include --trace-ascii log/2/trace1409 --trace-config all --trace-time http://127.0.0.1:47/1409 -C wrong > log/2/stdout1409 2> log/2/stderr1409 === End of file commands.log === Start of file server.cmd Testnum 1409 === End of file server.cmd === Start of file valgrind1409 ==149990== ==149990== Process terminating with default action of signal 4 (SIGILL) ==149990== Illegal opcode at address 0x4003082 ==149990== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==149990== by 0x4003082: main (tool_main.c:234) === End of file valgrind1409 test 1411...[HTTP with zero size file PUT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1411 ../src/curl -q --output log/24/curl1411.out --include --trace-ascii log/24/trace1411 --trace-config all --trace-time http://127.0.0.1:38675/1411 -T log/24/empty1411 > log/24/stdout1411 2> log/24/stderr1411 1411: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1411 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1411 ../src/curl -q --output log/24/curl1411.out --include --trace-ascii log/24/trace1411 --trace-config all --trace-time http://127.0.0.1:38675/1411 -T log/24/empty1411 > log/24/stdout1411 2> log/24/stderr1411 === End of file commands.log === Start of file http_server.log 07:36:06.018631 ====> Client connect 07:36:06.018663 accept_connection 3 returned 4 07:36:06.018679 accept_connection 3 returned 0 07:36:06.018692 Read 93 bytes 07:36:06.018702 Process 93 bytes request 07:36:06.018712 Got request: GET /verifiedserver HTTP/1.1 07:36:06.018722 Are-we-friendly question received 07:36:06.018750 Wrote request (93 bytes) input to log/24/server.input 07:36:06.018767 Identifying ourselves as friends 07:36:06.018824 Response sent (56 bytes) and written to log/24/server.response 07:36:06.018835 special request received, no persistency 07:36:06.018844 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1411 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1411 ==150155== ==150155== Process terminating with default action of signal 4 (SIGILL) ==150155== Illegal opcode at address 0x4003082 ==150155== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150155== by 0x4003082: main (tool_main.c:234) === End of file valgrind1411 test 1408...[HTTP receive cookies over IPV6] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1408 ../src/curl -q --output log/11/curl1408.out --include --trace-ascii log/11/trace1408 --trace-config all --trace-time -c log/11/jar1408 -g http://[::1]:42945/path/14080001 http://[::1]:42945/path/14080002 > log/11/stdout1408 2> log/11/stderr1408 1408: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1408 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1408 ../src/curl -q --output log/11/curl1408.out --include --trace-ascii log/11/trace1408 --trace-config all --trace-time -c log/11/jar1408 -g http://[::1]:42945/path/14080001 http://[::1]:42945/path/14080002 > log/11/stdout1408 2> log/11/stderr1408 === End of file commands.log === Start of file http_ipv6_server.log 07:36:06.012903 ====> Client connect 07:36:06.012939 accept_connection 3 returned 4 07:36:06.012957 accept_connection 3 returned 0 07:36:06.013077 Read 89 bytes 07:36:06.013092 Process 89 bytes request 07:36:06.013112 Got request: GET /verifiedserver HTTP/1.1 07:36:06.013123 Are-we-friendly question received 07:36:06.013153 Wrote request (89 bytes) input to log/11/server.input 07:36:06.013182 Identifying ourselves as friends 07:36:06.013252 Response sent (56 bytes) and written to log/11/server.response 07:36:06.013267 special request received, no persistency 07:36:06.013277 ====> Client disconnect 0 === ECMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1412 ../src/curl -q --output log/16/curl1412.out --include --trace-ascii log/16/trace1412 --trace-config all --trace-time http://127.0.0.1:46739/1412 -u testuser:testpass --anyauth http://127.0.0.1:46739/14120001 > log/16/stdout1412 2> log/16/stderr1412 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1420 ../src/curl -q --output log/19/curl1420.out --include --trace-ascii log/19/trace1420 --trace-config all --trace-time 'imap://127.0.0.1:39567/1420/;MAILINDEX=1' -u user:secret --libcurl log/19/test1420.c > log/19/stdout1420 2> log/19/stderr1420 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1424 ../src/curl -q --trace-ascii log/18/trace1424 --trace-config all --trace-time http://127.0.0.1:45825/1424 -z "dec 12 11:00:00 1999 GMT" -o log/18/outfile1424 > log/18/stdout1424 2> log/18/stderr1424 nd of file http_ipv6_server.log === Start of file http_ipv6_verify.log * Trying [::1]:42945... * Connected to ::1 (::1) port 42945 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: [::1]:42945 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host ::1 left intact === End of file http_ipv6_verify.log === Start of file http_ipv6_verify.out WE ROOLZ: 88527 === End of file http_ipv6_verify.out === Start of file server.cmd Testnum 1408 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 88527 === End of file server.response === Start of file valgrind1408 ==150141== ==150141== Process terminating with default action of signal 4 (SIGILL) ==150141== Illegal opcode at address 0x4003082 ==150141== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150141== by 0x4003082: main (tool_main.c:234) === End of file valgrind1408 test 1412...[HTTP GET with --anyauth with two URLs (picking Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1412 ../src/curl -q --output log/16/curl1412.out --include --trace-ascii log/16/trace1412 --trace-config all --trace-time http://127.0.0.1:46739/1412 -u testuser:testpass --anyauth http://127.0.0.1:46739/14120001 > log/16/stdout1412 2> log/16/stderr1412 1412: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1412 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1412 ../src/curl -q --output log/16/curl1412.out --include --trace-ascii log/16/trace1412 --trace-config all --trace-time http://127.0.0.1:46739/1412 -u testuser:testpass --anyauth http://127.0.0.1:46739/14120001 > log/16/stdout1412 2> log/16/stderr1412 === End of file commands.log === Start of file http_server.log 07:36:06.017170 ====> Client connect 07:36:06.017201 accept_connection 3 returned 4 07:36:06.017215 accept_connection 3 returned 0 07:36:06.017228 Read 93 bytes 07:36:06.017236 Process 93 bytes request 07:36:06.017248 Got request: GET /verifiedserver HTTP/1.1 07:36:06.017257 Are-we-friendly question received 07:36:06.017280 Wrote request (93 bytes) input to log/16/server.input 07:36:06.017295 Identifying ourselves as friends 07:36:06.017345 Response sent (56 bytes) and written to log/16/server.response 07:36:06.017354 special request received, no persistency 07:36:06.017362 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd auth_required Testnum 1412 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1412 ==150193== ==150193== Process terminating with default action of signal 4 (SIGILL) ==150193== Illegal opcode at address 0x4003082 ==150193== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150193== by 0x4003082: main (tool_main.c:234) === End of file valgrind1412 setenv SSL_CERT_FILE = test 1420...[--libcurl for IMAP FETCH message] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1420 ../src/curl -q --output log/19/curl1420.out --include --trace-ascii log/19/trace1420 --trace-config all --trace-time 'imap://127.0.0.1:39567/1420/;MAILINDEX=1' -u user:secret --libcurl log/19/test1420.c > log/19/stdout1420 2> log/19/stderr1420 1420: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1420 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1420 ../src/curl -q --output log/19/curl1420.out --include --trace-ascii log/19/trace1420 --trace-config all --trace-time 'imap://127.0.0.1:39567/1420/;MAILINDEX=1' -u user:secret --libcurl log/19/test1420.c > log/19/stdout1420 2> log/19/stderr1420 === End of file commands.log === Start of file imap_server.log 07:36:06.470374 ====> Client connect 07:36:06.470537 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:06.471484 < "A001 CAPABILITY" 07:36:06.471518 > "A001 BAD Command[CR][LF]" 07:36:06.471668 < "A002 LIST "verifiedserver" *" 07:36:06.471693 LIST_imap got "verifiedserver" * 07:36:06.471716 > "* LIST () "/" "WE ROOLZ: 115166"[CR][LF]" 07:36:06.471732 > "A002 OK LIST Completed[CR][LF]" 07:36:06.471744 return proof we are we 07:36:06.517277 < "A003 LOGOUT" 07:36:06.517343 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:06.517362 > "A003 OK LOGOUT completed[CR][LF]" 07:36:06.518235 MAIN sockfilt said DISC 07:36:06.518265 ====> Client disconnected 07:36:06.518322 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:07.316263 ====> Client connect 07:36:07.316531 Received DATA (on stdin) 07:36:07.316545 > 178 bytes data, server => client 07:36:07.316557 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:07.316568 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:07.316578 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:07.316586 'rve\r\n' 07:36:07.317322 < 17 bytes data, client => server 07:36:07.317341 'A001 CAPABILITY\r\n' 07:36:07.317502 Received DATA (on stdin) 07:36:07.317513 > 18 bytes data, server => client 07:36:07.317523 'A001 BAD Command\r\n' 07:36:07.317573 < 30 bytes data, client => server 07:36:07.317584 'A002 LIST "verifiedserver" *\r\n' 07:36:07.317719 Received DATA (on stdin) 07:36:07.317794 > 34 bytes data, server => client 07:36:07.317807 '* LIST () "/" "WE ROOLZ: 115166"\r\n' 07:36:07.317851 Received DATA (on stdin) 07:36:07.317862 > 24 bytes data, server => client 07:36:07.317872 'A002 OK LIST Completed\r\n' 07:36:07.363078 < 13 bytes data, client => server 07:36:07.363101 'A003 LOGOUT\r\n' 07:36:07.363347 Received DATA (on stdin) 07:36:07.363360 > 36 bytes data, server => client 07:36:07.363371 '* BYE curl IMAP server signing off\r\n' 07:36:07.363395 Received DATA (on stdin) 07:36:07.363405 > 26 bytes data, server => client 07:36:07.363415 'A003 OK LOGOUT completed\r\n' 07:36:07.364167 ====> Client disconnect 07:36:07.364304 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 1420 === End of file server.cmd === Start of file valgrind1420 ==151019== ==151019== Process terminating with default action of signal 4 (SIGILL) ==151019== Illegal opcode at address 0x4003082 ==151019== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151019== by 0x4003082: main (tool_main.c:234) === End of file valgrind1420 test 1424...[HTTP GET -o fname without Content-Disposition (unmet time condition)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curlCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1416 ../src/curl -q --output log/3/curl1416.out --include --trace-ascii log/3/trace1416 --trace-config all --trace-time http://127.0.0.1:42345/1416 > log/3/stdout1416 2> log/3/stderr1416 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1427 ../src/curl -q --output log/13/curl1427.out --include --trace-ascii log/13/trace1427 --trace-config all --trace-time http://127.0.0.1:47/1427 -m 184467440737095510 > log/13/stdout1427 2> log/13/stderr1427 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1421 ../src/curl -q --include --trace-ascii log/8/trace1421 --trace-config all --trace-time --proxy http://127.0.0.1:45261 http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990 > log/8/stdout1421 2> log/8/stderr1421 /tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1424 ../src/curl -q --trace-ascii log/18/trace1424 --trace-config all --trace-time http://127.0.0.1:45825/1424 -z "dec 12 11:00:00 1999 GMT" -o log/18/outfile1424 > log/18/stdout1424 2> log/18/stderr1424 1424: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1424 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1424 ../src/curl -q --trace-ascii log/18/trace1424 --trace-config all --trace-time http://127.0.0.1:45825/1424 -z "dec 12 11:00:00 1999 GMT" -o log/18/outfile1424 > log/18/stdout1424 2> log/18/stderr1424 === End of file commands.log === Start of file http_server.log 07:36:06.359357 ====> Client connect 07:36:06.359398 accept_connection 3 returned 4 07:36:06.359415 accept_connection 3 returned 0 07:36:06.359546 Read 93 bytes 07:36:06.359559 Process 93 bytes request 07:36:06.359573 Got request: GET /verifiedserver HTTP/1.1 07:36:06.359582 Are-we-friendly question received 07:36:06.359612 Wrote request (93 bytes) input to log/18/server.input 07:36:06.359628 Identifying ourselves as friends 07:36:06.359683 Response sent (56 bytes) and written to log/18/server.response 07:36:06.359693 special request received, no persistency 07:36:06.359702 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file outfile1424 original contents === End of file outfile1424 === Start of file server.cmd Testnum 1424 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1424 ==150981== ==150981== Process terminating with default action of signal 4 (SIGILL) ==150981== Illegal opcode at address 0x4003082 ==150981== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150981== by 0x4003082: main (tool_main.c:234) === End of file valgrind1424 test 1416...[HTTP GET with chunked Transfer-Encoding overflowed chunked size] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1416 ../src/curl -q --output log/3/curl1416.out --include --trace-ascii log/3/trace1416 --trace-config all --trace-time http://127.0.0.1:42345/1416 > log/3/stdout1416 2> log/3/stderr1416 1416: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1416 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1416 ../src/curl -q --output log/3/curl1416.out --include --trace-ascii log/3/trace1416 --trace-config all --trace-time http://127.0.0.1:42345/1416 > log/3/stdout1416 2> log/3/stderr1416 === End of file commands.log === Start of file http_server.log 07:36:06.222828 ====> Client connect 07:36:06.222862 accept_connection 3 returned 4 07:36:06.222878 accept_connection 3 returned 0 07:36:06.222891 Read 93 bytes 07:36:06.222901 Process 93 bytes request 07:36:06.222914 Got request: GET /verifiedserver HTTP/1.1 07:36:06.222924 Are-we-friendly question received 07:36:06.222949 Wrote request (93 bytes) input to log/3/server.input 07:36:06.222964 Identifying ourselves as friends 07:36:06.223014 Response sent (56 bytes) and written to log/3/server.response 07:36:06.223022 special request received, no persistency 07:36:06.223030 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1416 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1416 ==150594== ==150594== Process terminating with default action of signal 4 (SIGILL) ==150594== Illegal opcode at address 0x4003082 ==150594== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150594== by 0x4003082: main (tool_main.c:234) === End of file valgrind1416 * starts no server test 1427...[too large -m timeout value] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1427 ../src/curl -q --output log/13/curl1427.out --include --trace-ascii log/13/trace1427 --trace-config all --trace-time http://127.0.0.1:47/1427 -m 184467440737095510 > log/13/stdout1427 2> log/13/stderr1427 curl returned 132, when expecting 2 1427: exit FAILED == Contents of files in the log/13/ dir after test 1427 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1427 ../src/curl -q --output log/13/curl1427.out --include --trace-ascii log/13/trace1427 --trace-config all --trace-time http://127.0.0.1:47/1427 -m 184467440737095510 > log/13/stdout1427 2> log/13/stderr1427 === End of file commands.log === Start of file server.cmd Testnum 1427 === End of file server.cmd === Start of file valgrind1427 ==150806== ==150806== Process terminating with default action of signal 4 (SIGILL) ==150806== Illegal opcode at address 0x4003082 ==150806== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150806== by 0x4003082: main (tool_main.c:234) === End of file valgrind1427 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1419 ../src/curl -q --output log/7/curl1419.out --include --trace-ascii log/7/trace1419 --trace-config all --trace-time http://127.0.0.1:43423/1419 --anyauth http://127.0.0.1:43423/14190003 > log/7/stdout1419 2> log/7/stderr1419 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1417 ../src/curl -q --output log/20/curl1417.out --include --trace-ascii log/20/trace1417 --trace-config all --trace-time http://127.0.0.1:37169/1417 -D log/20/heads1417 > log/20/stdout1417 2> log/20/stderr1417 test 1421...[Re-using HTTP proxy connection for two different host names] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1421 ../src/curl -q --include --trace-ascii log/8/trace1421 --trace-config all --trace-time --proxy http://127.0.0.1:45261 http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990 > log/8/stdout1421 2> log/8/stderr1421 1421: stdout FAILED: --- log/8/check-expected 2025-07-18 07:36:07.093779714 +0000 +++ log/8/check-generated 2025-07-18 07:36:07.093779714 +0000 @@ -1,10 +0,0 @@ -HTTP/1.1 200 OK[LF] -Unknown-header: blrub[LF] -Content-Length: 6[LF] -[LF] --foo-[LF] -HTTP/1.1 200 OK[LF] -Unknown-header: blrub[LF] -Content-Length: 6[LF] -[LF] --foo-[LF] == Contents of files in the log/8/ dir after test 1421 === Start of file check-expected HTTP/1.1 200 OK[LF] Unknown-header: blrub[LF] Content-Length: 6[LF] [LF] -foo-[LF] HTTP/1.1 200 OK[LF] Unknown-header: blrub[LF] Content-Length: 6[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1421 ../src/curl -q --include --trace-ascii log/8/trace1421 --trace-config all --trace-time --proxy http://127.0.0.1:45261 http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990 > log/8/stdout1421 2> log/8/stderr1421 === End of file commands.log === Start of file http_server.log 07:36:06.323043 ====> Client connect 07:36:06.323079 accept_connection 3 returned 4 07:36:06.323095 accept_connection 3 returned 0 07:36:06.323107 Read 93 bytes 07:36:06.323117 Process 93 bytes request 07:36:06.323128 Got request: GET /verifiedserver HTTP/1.1 07:36:06.323137 Are-we-friendly question received 07:36:06.323162 Wrote request (93 bytes) input to log/8/server.input 07:36:06.323178 Identifying ourselves as friends 07:36:06.323236 Response sent (56 bytes) and written to log/8/server.response 07:36:06.323245 special request received, no persistency 07:36:06.323253 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1421 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind1421 ==150776== ==150776== Process terminating with default action of signal 4 (SIGILL) ==150776== Illegal opcode at address 0x4003082 ==150776== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150776== by 0x4003082: main (tool_main.c:234) === End of file valgrind1421 test 1419...[HTTP with --anyauth (but no auth!) and connection reuse] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1419 ../src/curl -q --output log/7/curl1419.out --include --trace-ascii log/7/trace1419 --trace-config all --trace-time http://127.0.0.1:43423/1419 --anyauth http://127.0.0.1:43423/14190003 > log/7/stdout1419 2> log/7/stderr1419 1419: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1419 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1419 ../src/curl -q --output log/7/curl1419.out --include --trace-ascii log/7/trace1419 --trace-config all --trace-time http://127.0.0.1:43423/1419 --anyauth http://127.0.0.1:43423/14190003 > log/7/stdout1419 2> log/7/stderr1419 === End of file commands.log === Start of file http_server.log 07:36:06.310981 ====> Client connect 07:36:06.311019 accept_connection 3 returned 4 07:36:06.311039 accept_connection 3 returned 0 07:36:06.311056 Read 93 bytes 07:36:06.311066 Process 93 bytes request 07:36:06.311080 Got request: GET /verifiedserver HTTP/1.1 07:36:06.311089 Are-we-friendly question received 07:36:06.311117 Wrote request (93 bytes) input to log/7/server.input 07:36:06.311134 Identifying ourselves as friends 07:36:06.311195 Response sent (57 bytes) and written to log/7/server.response 07:36:06.311205 special request received, no persistency 07:36:06.311214 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1419 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind1419 ==150759== ==150759== Process terminating with default action of signal 4 (SIGILL) ==150759== Illegal opcode at address 0x4003082 ==150759== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150759== by 0x4003082: main (tool_main.c:234) === End of file valgrind1419 test 1417...[HTTP GET with chunked encoding and chunked trailer without CRs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1417 ../src/curl -q --output log/20/curl1417.out --include --trace-ascii log/20/trace1417 --trace-config all --trace-time http://127.0.0.1:37169/1417 -D log/20/heads1417 > log/20/stdout1417 2> log/20/stderr1417 1417: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1417 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1417 ../src/curl -q --output log/20/curl1417.out --include --trace-ascii log/20/trace1417 --trace-config all --trace-time http://127.0.0.1:37169/1417 -D log/20/heads1417 > log/20/stdout1417 2> log/20/stderr1417 === End of file commands.log === Start of file http_server.log 07:36:06.270010 ====> Client connect 07:36:06.270045 accept_connection 3 returned 4 07:36:06.270063 accept_connection 3 returned 0 07:36:06.270078 Read 93 bytes 07:36:06.270088 Process 93 bytes request 07:36:06.270103 Got request: GET /verifiedserver HTTP/1.1 07:36:06.270113 Are-we-friendly question received 07:36:06.270137 Wrote request (93 bytes) input to log/20/server.input 07:36:06.270154 Identifying ourselves as friends 07:36:06.270211 Response sent (56 bytes) and written to log/20/server.response 07:36:06.270221 special request received, no persistency 07:36:06.270229 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > AcCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1418 ../src/curl -q --output log/17/curl1418.out --include --trace-ascii log/17/trace1418 --trace-config all --trace-time http://127.0.0.1:39089/1418 -u testuser:testpass --anyauth http://127.0.0.1:39089/14180003 > log/17/stdout1418 2> log/17/stderr1418 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1423 ../src/curl -q --trace-ascii log/22/trace1423 --trace-config all --trace-time http://127.0.0.1:46761/1423 -o log/22/outfile1423 file:///startdir/src/build-curl/tests/log/22/outfile1423 > log/22/stdout1423 2> log/22/stderr1423 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1422 ../src/curl -q --trace-ascii log/6/trace1422 --trace-config all --trace-time http://127.0.0.1:35775/1422 -J -O file:///startdir/src/build-curl/tests/log/6/name1422 --output-dir log/6 > log/6/stdout1422 2> log/6/stderr1422 cept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1417 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1417 ==150659== ==150659== Process terminating with default action of signal 4 (SIGILL) ==150659== Illegal opcode at address 0x4003082 ==150659== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150659== by 0x4003082: main (tool_main.c:234) === End of file valgrind1417 test 1418...[HTTP with --anyauth and connection reuse] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1418 ../src/curl -q --output log/17/curl1418.out --include --trace-ascii log/17/trace1418 --trace-config all --trace-time http://127.0.0.1:39089/1418 -u testuser:testpass --anyauth http://127.0.0.1:39089/14180003 > log/17/stdout1418 2> log/17/stderr1418 1418: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1418 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1418 ../src/curl -q --output log/17/curl1418.out --include --trace-ascii log/17/trace1418 --trace-config all --trace-time http://127.0.0.1:39089/1418 -u testuser:testpass --anyauth http://127.0.0.1:39089/14180003 > log/17/stdout1418 2> log/17/stderr1418 === End of file commands.log === Start of file http_server.log 07:36:06.319158 ====> Client connect 07:36:06.319215 accept_connection 3 returned 4 07:36:06.319232 accept_connection 3 returned 0 07:36:06.319246 Read 93 bytes 07:36:06.319255 Process 93 bytes request 07:36:06.319268 Got request: GET /verifiedserver HTTP/1.1 07:36:06.319277 Are-we-friendly question received 07:36:06.319313 Wrote request (93 bytes) input to log/17/server.input 07:36:06.319329 Identifying ourselves as friends 07:36:06.319387 Response sent (56 bytes) and written to log/17/server.response 07:36:06.319396 special request received, no persistency 07:36:06.319404 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1418 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1418 ==150822== ==150822== Process terminating with default action of signal 4 (SIGILL) ==150822== Illegal opcode at address 0x4003082 ==150822== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150822== by 0x4003082: main (tool_main.c:234) === End of file valgrind1418 test 1423...[HTTP GET -o fname without Content-Disposition (empty file)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1423 ../src/curl -q --trace-ascii log/22/trace1423 --trace-config all --trace-time http://127.0.0.1:46761/1423 -o log/22/outfile1423 file:///startdir/src/build-curl/tests/log/22/outfile1423 > log/22/stdout1423 2> log/22/stderr1423 1423: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1423 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1423 ../src/curl -q --trace-ascii log/22/trace1423 --trace-config all --trace-time http://127.0.0.1:46761/1423 -o log/22/outfile1423 file:///startdir/src/build-curl/tests/log/22/outfile1423 > log/22/stdout1423 2> log/22/stderr1423 === End of file commands.log === Start of file http_server.log 07:36:06.362049 ====> Client connect 07:36:06.362094 accept_connection 3 returned 4 07:36:06.362111 accept_connection 3 returned 0 07:36:06.362124 Read 93 bytes 07:36:06.362135 Process 93 bytes request 07:36:06.362146 Got request: GET /verifiedserver HTTP/1.1 07:36:06.362155 Are-we-friendly question received 07:36:06.362180 Wrote request (93 bytes) input to log/22/server.input 07:36:06.362197 Identifying ourselves as friends 07:36:06.362252 Response sent (56 bytes) and written to log/22/server.response 07:36:06.362261 special request received, no persistency 07:36:06.362270 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1423 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1423 ==150943== ==150943== Process terminating with default action of signal 4 (SIGILL) ==150943== Illegal opcode at address 0x4003082 ==150943== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150943== by 0x4003082: main (tool_main.c:234) === End of file valgrind1423 test 1422...[HTTP GET with -O -J and Content-Disposition (empty file)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1422 ../src/curl -q --trace-ascii log/6/trace1422 --trace-config all --trace-time http://127.0.0.1:35775/1422 -J -O file:///startdir/src/build-curl/tests/log/6/name1422 --output-dir log/6 > log/6/stdout1422 2> log/6/stderr1422 1422: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1422 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1422 ../src/curl -q --trace-ascii log/6/trace1422 --trace-config all --trace-time http://127.0.0.1:35775/1422 -J -O file:///startdir/src/build-curl/tests/log/6/name1422 --output-dir log/6 > log/6/stdout1422 2> log/6/stderr1422 === End of file commands.log === Start of file http_server.log 07:36:06.359984 ====> Client connect 07:36:06.360023 accept_connection 3 returned 4 07:36:06.360040 accept_connection 3 returned 0 07:36:06.360055 Read 93 bytes 07:36:06.360066 Process 93 bytes request 07:36:06.360080 Got request: GET /verifiedserver HTTP/1.1 07:36:06.360089 Are-we-friendly question received 07:36:06.360119 Wrote request (93 bytes) input to log/6/server.input 07:36:06.360135 Identifying ourselves as friends 07:36:06.360192 Response sent (56 bytes) and written to log/6/server.responsenv: ‘python3’: No such file or directory env: ‘python3’: No such file or directory RUN: Process with pid 132302 forced to die with SIGKILL env: ‘python3’: No such file or directory CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1439 ../src/curl -q --include --trace-ascii log/11/trace1439 --trace-config all --trace-time http://127.0.0.1:41173/1439 --write-out '%{http_version}' > log/11/stdout1439 2> log/11/stderr1439 e 07:36:06.360202 special request received, no persistency 07:36:06.360211 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1422 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1422 ==150967== ==150967== Process terminating with default action of signal 4 (SIGILL) ==150967== Illegal opcode at address 0x4003082 ==150967== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==150967== by 0x4003082: main (tool_main.c:234) === End of file valgrind1422 test 1238...[slow TFTP retrieve cancel due to -Y and -y] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1238 ../src/curl -q --output log/21/curl1238.out --include --trace-ascii log/21/trace1238 --trace-config all --trace-time tftp://127.0.0.1:38252//1238 -Y1000 -y2 > log/21/stdout1238 2> log/21/stderr1238 1238: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1238 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1238 ../src/curl -q --output log/21/curl1238.out --include --trace-ascii log/21/trace1238 --trace-config all --trace-time tftp://127.0.0.1:38252//1238 -Y1000 -y2 > log/21/stdout1238 2> log/21/stderr1238 === End of file commands.log === Start of file server.cmd writedelay: 2000 Testnum 1238 === End of file server.cmd === Start of file tftp_server.log 07:36:01.368004 trying to get file: verifiedserver mode 1 07:36:01.368033 Are-we-friendly question received 07:36:01.368047 write 07:36:01.368065 read 07:36:01.368783 read: 4 07:36:01.368846 end of one transfer exit_signal_handler: called === End of file tftp_server.log === Start of file valgrind1238 ==140056== ==140056== Process terminating with default action of signal 4 (SIGILL) ==140056== Illegal opcode at address 0x4003082 ==140056== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==140056== by 0x4003082: main (tool_main.c:234) === End of file valgrind1238 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1437 ../src/curl -q --output log/2/curl1437.out --include --trace-ascii log/2/trace1437 --trace-config all --trace-time http://127.0.0.1:45457/1437 -u testuser:testpass --digest > log/2/stdout1437 2> log/2/stderr1437 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1429 ../src/curl -q --include --trace-ascii log/9/trace1429 --trace-config all --trace-time http://127.0.0.1:34999/1429 --write-out '%{response_code}' > log/9/stdout1429 2> log/9/stderr1429 test 1439...[Check if %{http_version} returns 1.1] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1439 ../src/curl -q --include --trace-ascii log/11/trace1439 --trace-config all --trace-time http://127.0.0.1:41173/1439 --write-out '%{http_version}' > log/11/stdout1439 2> log/11/stderr1439 1439: stdout FAILED: --- log/11/check-expected 2025-07-18 07:36:07.280446386 +0000 +++ log/11/check-generated 2025-07-18 07:36:07.280446386 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -[LF] -testdata[LF] -1.1 == Contents of files in the log/11/ dir after test 1439 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Connection: close[LF] Content-Type: text/plain[LF] [LF] testdata[LF] 1.1 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1439 ../src/curl -q --include --trace-ascii log/11/trace1439 --trace-config all --trace-time http://127.0.0.1:41173/1439 --write-out '%{http_version}' > log/11/stdout1439 2> log/11/stderr1439 === End of file commands.log === Start of file http_server.log 07:36:06.677522 ====> Client connect 07:36:06.677566 accept_connection 3 returned 4 07:36:06.677583 accept_connection 3 returned 0 07:36:06.677597 Read 93 bytes 07:36:06.677607 Process 93 bytes request 07:36:06.677618 Got request: GET /verifiedserver HTTP/1.1 07:36:06.677627 Are-we-friendly question received 07:36:06.677653 Wrote request (93 bytes) input to log/11/server.input 07:36:06.677669 Identifying ourselves as friends 07:36:06.677735 Response sent (56 bytes) and written to log/11/server.response 07:36:06.677745 special request received, no persistency 07:36:06.677754 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1439 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1439 ==151630== ==151630== Process terminating with default action of signal 4 (SIGILL) ==151630== Illegal opcode at address 0x4003082 ==151630== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151630== by 0x4003082: main (tool_main.c:234) === End of file valgrind1439 test 1437...[HTTP with duplicated WWW-Authenticate parameters] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1437 ../src/curl -q --output log/2/curl1437.out --include --trace-ascii log/2/trace1437 --trace-config all --trace-time http://127.0.0.1:45457/1437 -u testuser:testpass --digest > log/2/stdout1437 2> log/2/stderr1437 1437: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1437 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1437 ../src/curl -q --output log/2/curl1437.out --include --trace-ascii log/2/trace1437 --trace-config all --trace-time http://127.0.0.1:45457/1437 -u testuser:testpass --digest > log/2/stdout1437 2> log/2/stderr1437 === End of file commands.log === Start of file http_server.log 07:36:06.669636 ====> Client connect 07:36:06.669668 accept_connection 3 returned 4 07:36:06.669684 accept_connection 3 returned 0 07:36:06.669698 Read 93 bytes 07:36:06.669708 Process 93 bytes request 07:36:06.669720 Got request: GET /verifiedserver HTTP/1.1 07:36:06.669730 Are-we-friendly question received 07:36:06.669783 Wrote request (93 bytes) input to log/2/server.input 07:36:06.669800 Identifying ourselves as friends 07:36:06.669853 Response sent (56 bytes) and written to log/2/server.response 07:36:06.669862 special request received, no persistency 07:36:06.669871 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1437 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1437 ==151608== ==151608== Process terminating with default action of signal 4 (SIGILL) ==151608== Illegal opcode at address 0x4003082 ==151608== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151608== by 0x4003082: main (tool_main.c:234) === End of file valgrind1437 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1430 ../src/curl -q --output log/15/curl1430.out --include --trace-ascii log/15/trace1430 --trace-config all --trace-time http://127.0.0.1:36993/1430 > log/15/stdout1430 2> log/15/stderr1430 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1438 ../src/curl -q --include --trace-ascii log/24/trace1438 --trace-config all --trace-time http://127.0.0.1:38675/1438 --write-out '%{scheme}' > log/24/stdout1438 2> log/24/stderr1438 test 1429...[HTTP GET with 999 response code] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1429 ../src/curl -q --include --trace-ascii log/9/trace1429 --trace-config all --trace-time http://127.0.0.1:34999/1429 --write-out '%{response_code}' > log/9/stdout1429 2> log/9/stderr1429 1429: stdout FAILED: --- log/9/check-expected 2025-07-18 07:36:07.347113054 +0000 +++ log/9/check-generated 2025-07-18 07:36:07.347113054 +0000 @@ -1,13 +0,0 @@ -HTTP/1.1 999 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -ETag: "21025-dc7-39462498"[CR][LF] -Accept-Ranges: bytes[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] --foo-[LF] -999 == Contents of files in the log/9/ dir after test 1429 === Start of file check-expected HTTP/1.1 999 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] ETag: "21025-dc7-39462498"[CR][LF] Accept-Ranges: bytes[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] -foo-[LF] 999 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1429 ../src/curl -q --include --trace-ascii log/9/trace1429 --trace-config all --trace-time http://127.0.0.1:34999/1429 --write-out '%{response_code}' > log/9/stdout1429 2> log/9/stderr1429 === End of file commands.log === Start of file http_server.log 07:36:06.586145 ====> Client connect 07:36:06.586211 accept_connection 3 returned 4 07:36:06.586229 accept_connection 3 returned 0 07:36:06.586244 Read 93 bytes 07:36:06.586255 Process 93 bytes request 07:36:06.586269 Got request: GET /verifiedserver HTTP/1.1 07:36:06.586278 Are-we-friendly question received 07:36:06.586309 Wrote request (93 bytes) input to log/9/server.input 07:36:06.586341 Identifying ourselves as friends 07:36:06.586486 Response sent (56 bytes) and written to log/9/server.response 07:36:06.586500 special request received, no persistency 07:36:06.586509 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1429 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind1429 ==151270== ==151270== Process terminating with default action of signal 4 (SIGILL) ==151270== Illegal opcode at address 0x4003082 ==151270== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151270== by 0x4003082: main (tool_main.c:234) === End of file valgrind1429 test 1430...[HTTP GET with negative response code] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1430 ../src/curl -q --output log/15/curl1430.out --include --trace-ascii log/15/trace1430 --trace-config all --trace-time http://127.0.0.1:36993/1430 > log/15/stdout1430 2> log/15/stderr1430 1430: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1430 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1430 ../src/curl -q --output log/15/curl1430.out --include --trace-ascii log/15/trace1430 --trace-config all --trace-time http://127.0.0.1:36993/1430 > log/15/stdout1430 2> log/15/stderr1430 === End of file commands.log === Start of file http_server.log 07:36:06.607767 ====> Client connect 07:36:06.607806 accept_connection 3 returned 4 07:36:06.607823 accept_connection 3 returned 0 07:36:06.607838 Read 93 bytes 07:36:06.607848 Process 93 bytes request 07:36:06.607860 Got request: GET /verifiedserver HTTP/1.1 07:36:06.607869 Are-we-friendly question received 07:36:06.607891 Wrote request (93 bytes) input to log/15/server.input 07:36:06.607906 Identifying ourselves as friends 07:36:06.607980 Response sent (56 bytes) and written to log/15/server.response 07:36:06.607992 special request received, no persistency 07:36:06.608001 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1430 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1430 ==151316== ==151316== Process terminating with default action of signal 4 (SIGILL) ==151316== Illegal opcode at address 0x4003082 ==151316== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151316== by 0x4003082: main (tool_main.c:234) === End of file valgrind1430 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1431 ../src/curl -q --output log/14/curl1431.out --include --trace-ascii log/14/trace1431 --trace-config all --trace-time http://127.0.0.1:37963/1431 > log/14/stdout1431 2> log/14/stderr1431 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1432 ../src/curl -q --output log/12/curl1432.out --include --trace-ascii log/12/trace1432 --trace-config all --trace-time http://127.0.0.1:37285/1432 > log/12/stdout1432 2> log/12/stderr1432 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1440 ../src/curl -q --include --trace-ascii log/16/trace1440 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/16/non-existent-file.txt --write-out '%{' > log/16/stdout1440 2> log/16/stderr1440 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1433 ../src/curl -q --output log/5/curl1433.out --include --trace-ascii log/5/trace1433 --trace-config all --trace-time http://127.0.0.1:46675/1433 > log/5/stdout1433 2> log/5/stderr1433 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1434 ../src/curl -q --output log/4/curl1434.out --include --trace-ascii log/4/trace1434 --trace-config all --trace-time http://127.0.0.1:33235/1434 -C 100 > log/4/stdout1434 2> log/4/stderr1434 test 1438...[Check if %{scheme} returns HTTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1438 ../src/curl -q --include --trace-ascii log/24/trace1438 --trace-config all --trace-time http://127.0.0.1:38675/1438 --write-out '%{scheme}' > log/24/stdout1438 2> log/24/stderr1438 1438: stdout FAILED: --- log/24/check-expected 2025-07-18 07:36:07.360446388 +0000 +++ log/24/check-generated 2025-07-18 07:36:07.360446388 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -[LF] -testdata[LF] -http == Contents of files in the log/24/ dir after test 1438 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Connection: close[LF] Content-Type: text/plain[LF] [LF] testdata[LF] http === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1438 ../src/curl -q --include --trace-ascii log/24/trace1438 --trace-config all --trace-time http://127.0.0.1:38675/1438 --write-out '%{scheme}' > log/24/stdout1438 2> log/24/stderr1438 === End of file commands.log === Start of file http_server.log 07:36:06.676764 ====> Client connect 07:36:06.676799 accept_connection 3 returned 4 07:36:06.676833 accept_connection 3 returned 0 07:36:06.676848 Read 93 bytes 07:36:06.676858 Process 93 bytes request 07:36:06.676871 Got request: GET /verifiedserver HTTP/1.1 07:36:06.676881 Are-we-friendly question received 07:36:06.676908 Wrote request (93 bytes) input to log/24/server.input 07:36:06.676924 Identifying ourselves as friends 07:36:06.676982 Response sent (56 bytes) and written to log/24/server.response 07:36:06.676992 special request received, no persistency 07:36:06.677001 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1438 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1438 ==151622== ==151622== Process terminating with default action of signal 4 (SIGILL) ==151622== Illegal opcode at address 0x4003082 ==151622== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151622== by 0x4003082: main (tool_main.c:234) === End of file valgrind1438 test 1433...[HTTP GET with 100-digit subversion number in response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1433 ../src/curl -q --output log/5/curl1433.out --include --trace-ascii log/5/trace1433 --trace-config all --trace-time http://127.0.0.1:46675/1433 > log/5/stdout1433 2> log/5/stderr1433 1433: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1433 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1433 ../src/curl -q --output log/5/curl1433.out --include --trace-ascii log/5/trace1433 --trace-config all --trace-time http://127.0.0.1:46675/1433 > log/5/stdout1433 2> log/5/stderr1433 === End of file commands.log === Start of file http_server.log 07:36:06.653852 ====> Client connect 07:36:06.653886 accept_connection 3 returned 4 07:36:06.653903 accept_connection 3 returned 0 07:36:06.654701 Read 93 bytes 07:36:06.654716 Process 93 bytes request 07:36:06.654730 Got request: GET /verifiedserver HTTP/1.1 07:36:06.654739 Are-we-friendly question received 07:36:06.654771 Wrote request (93 bytes) input to log/5/server.input 07:36:06.654786 Identifying ourselves as friends 07:36:06.654837 Response sent (56 bytes) and written to log/5/server.response 07:36:06.654847 special request received, no persistency 07:36:06.654856 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1433 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1433 ==151517== ==151517== Process terminating with default action of signal 4 (SIGILL) ==151517== Illegal opcode at address 0x4003082 ==151517== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151517== by 0x4003082: main (tool_main.c:234) === End of file valgrind1433 test 1432...[HTTP GET with 100-digit response code and survive] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1432 ../src/curl -q --output log/12/curl1432.out --include --trace-ascii log/12/trace1432 --trace-config all --trace-time http://127.0.0.1:37285/1432 > log/12/stdout1432 2> log/12/stderr1432 1432: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1432 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1432 ../src/curl -q --output log/12/curl1432.out --include --trace-ascii log/12/trace1432 --trace-config all --trace-time http://127.0.0.1:37285/1432 > log/12/stdout1432 2> log/12/stderr1432 === End of file commands.log === Start of file http_server.log 07:36:06.634598 ====> Client connect 07:36:06.634642 accept_connection 3 returned 4 07:36:06.634666 accept_connection 3 returned 0 07:36:06.634681 Read 93 bytes 07:36:06.634693 Process 93 bytes request 07:36:06.634706 Got request: GET /verifiedserver HTTP/1.1 07:36:06.634715 Are-we-friendly question received 07:36:06.634739 Wrote request (93 bytes) input to log/12/server.input 07:36:06.634755 Identifying ourselves as friends 07:36:06.634827 Response sent (56 bytes) and written to log/12/server.response 07:36:06.634837 special request received, no persistency 07:36:06.634846 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1432 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1432 ==151416== ==151416== Process terminating with default action of signal 4 (SIGILL) ==151416== Illegal opcode at address 0x4003082 ==151416== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151416== by 0x4003082: main (tool_main.c:234) === End of file valgrind1432 test 1431...[HTTP GET with single-digit response code] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1431 ../src/curl -q --output log/14/curl1431.out --include --trace-ascii log/14/trace1431 --trace-config all --trace-time http://127.0.0.1:37963/1431 > log/14/stdout1431 2> log/14/stderr1431 1431: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1431 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1431 ../src/curl -q --output log/14/curl1431.out --include --trace-ascii log/14/trace1431 --trace-config all --trace-time http://127.0.0.1:37963/1431 > log/14/stdout1431 2> log/14/stderr1431 === End of file commands.log === Start of file http_server.log 07:36:06.621750 ====> Client connect 07:36:06.621787 accept_connection 3 returned 4 07:36:06.621803 accept_connection 3 returned 0 07:36:06.621818 Read 93 bytes 07:36:06.621827 Process 93 bytes request 07:36:06.621840 Got request: GET /verifiedserver HTTP/1.1 07:36:06.621849 Are-we-friendly question received 07:36:06.621873 Wrote request (93 bytes) input to log/14/server.input 07:36:06.621888 Identifying ourselves as friends 07:36:06.621958 Response sent (56 bytes) and written to log/14/server.response 07:36:06.621968 special request received, no persistency 07:36:06.621977 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1431 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1431 ==151363== ==151363== Process terminating with default action of signal 4 (SIGILL) ==151363== Illegal opcode at address 0x4003082 ==151363== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151363== by 0x4003082: main (tool_main.c:234) === End of file valgrind1431 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1441 ../src/curl -q --include --trace-ascii log/19/trace1441 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/19/non-existent-file.txt --write-out '%' > log/19/stdout1441 2> log/19/stderr1441 test 1440...[Check --write-out with trailing %{] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1440 ../src/curl -q --include --trace-ascii log/16/trace1440 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/16/non-existent-file.txt --write-out '%{' > log/16/stdout1440 2> log/16/stderr1440 1440: stdout FAILED: --- log/16/check-expected 2025-07-18 07:36:07.370446387 +0000 +++ log/16/check-generated 2025-07-18 07:36:07.370446387 +0000 @@ -1 +0,0 @@ -%{ == Contents of files in the log/16/ dir after test 1440 === Start of file check-expected %{ === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1440 ../src/curl -q --include --trace-ascii log/16/trace1440 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/16/non-existent-file.txt --write-out '%{' > log/16/stdout1440 2> log/16/stderr1440 === End of file commands.log === Start of file server.cmd Testnum 1440 === End of file server.cmd === Start of file valgrind1440 ==151503== ==151503== Process terminating with default action of signal 4 (SIGILL) ==151503== Illegal opcode at address 0x4003082 ==151503== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151503== by 0x4003082: main (tool_main.c:234) === End of file valgrind1440 test 1434...[HTTP GET resume at exactly the existing file size is fine] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1434 ../src/curl -q --output log/4/curl1434.out --include --trace-ascii log/4/trace1434 --trace-config all --trace-time http://127.0.0.1:33235/1434 -C 100 > log/4/stdout1434 2> log/4/stderr1434 1434: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1434 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1434 ../src/curl -q --output log/4/curl1434.out --include --trace-ascii log/4/trace1434 --trace-config all --trace-time http://127.0.0.1:33235/1434 -C 100 > log/4/stdout1434 2> log/4/stderr1434 === End of file commands.log === Start of file curl1434.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1434.out === Start of file http_server.log 07:36:06.656027 ====> Client connect 07:36:06.656060 accept_connection 3 returned 4 07:36:06.656076 accept_connection 3 returned 0 07:36:06.656089 Read 93 bytes 07:36:06.656099 Process 93 bytes request 07:36:06.656111 Got request: GET /verifiedserver HTTP/1.1 07:36:06.656120 Are-we-friendly question received 07:36:06.656153 Wrote request (93 bytes) input to log/4/server.input 07:36:06.656169 Identifying ourselves as friends 07:36:06.656220 Response sent (56 bytes) and written to log/4/server.response 07:36:06.656230 special request received, no persistency 07:36:06.656239 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1434 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1434 ==151541== ==151541== Process terminating with default action of signal 4 (SIGILL) ==151541== Illegal opcode at address 0x4003082 ==151541== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151541== by 0x4003082: main (tool_main.c:234) === End of file valgrind1434 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1442 ../src/curl -q --include --trace-ascii log/18/trace1442 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/18/non-existent-file.txt --write-out '\' > log/18/stdout1442 2> log/18/stderr1442 test 1441...[Check --write-out with trailing %] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1441 ../src/curl -q --include --trace-ascii log/19/trace1441 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/19/non-existent-file.txt --write-out '%' > log/19/stdout1441 2> log/19/stderr1441 1441: stdout FAILED: --- log/19/check-expected 2025-07-18 07:36:07.513779725 +0000 +++ log/19/check-generated 2025-07-18 07:36:07.513779725 +0000 @@ -1 +0,0 @@ -% == Contents of files in the log/19/ dir after test 1441 === Start of file check-expected % === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1441 ../src/curl -q --include --trace-ascii log/19/trace1441 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/19/non-existent-file.txt --write-out '%' > log/19/stdout1441 2> log/19/stderr1441 === End of file commands.log === Start of file server.cmd Testnum 1441 === End of file server.cmd === Start of file valgrind1441 ==151870== ==151870== Process terminating with default action of signal 4 (SIGILL) ==151870== Illegal opcode at address 0x4003082 ==151870== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151870== by 0x4003082: main (tool_main.c:234) === End of file valgrind1441 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1443 ../src/curl -q --trace-ascii log/3/trace1443 --trace-config all --trace-time http://127.0.0.1:42345/1443 -O --remote-time --output-dir log/3 > log/3/stdout1443 2> log/3/stderr1443 CMD (256): /usr/bin/perl -e 'exit((stat("log/3/1443"))[9] != 960898200)' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1447 ../src/curl -q --output log/7/curl1447.out --include --trace-ascii log/7/trace1447 --trace-config all --trace-time --proxy "http://a:b@/x" http://127.0.0.1:47 > log/7/stdout1447 2> log/7/stderr1447 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1445 ../src/curl -q --output log/8/curl1445.out --include --trace-ascii log/8/trace1445 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/test1445.dir/plainfile.txt --remote-time > log/8/stdout1445 2> log/8/stderr1445 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1448 ../src/curl -q --include --trace-ascii log/20/trace1448 --trace-config all --trace-time http://åäö.se:37169/1448 --resolve xn--4cab6c.se:37169:127.0.0.1 -L --connect-to 127.0.0.1:37169:127.0.0.1:37169 > log/20/stdout1448 2> log/20/stderr1448 test 1442...[Check --write-out with trailing \] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1442 ../src/curl -q --include --trace-ascii log/18/trace1442 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/18/non-existent-file.txt --write-out '\' > log/18/stdout1442 2> log/18/stderr1442 1442: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:07.520446390 +0000 +++ log/18/check-generated 2025-07-18 07:36:07.520446390 +0000 @@ -1 +0,0 @@ -\ == Contents of files in the log/18/ dir after test 1442 === Start of file check-expected \ === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1442 ../src/curl -q --include --trace-ascii log/18/trace1442 --trace-config all --trace-time file://localhost//startdir/src/build-curl/tests/log/18/non-existent-file.txt --write-out '\' > log/18/stdout1442 2> log/18/stderr1442 === End of file commands.log === Start of file server.cmd Testnum 1442 === End of file server.cmd === Start of file valgrind1442 ==151876== ==151876== Process terminating with default action of signal 4 (SIGILL) ==151876== Illegal opcode at address 0x4003082 ==151876== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151876== by 0x4003082: main (tool_main.c:234) === End of file valgrind1442 test 1443...[HTTP GET with -O and --remote-time] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1443 ../src/curl -q --trace-ascii log/3/trace1443 --trace-config all --trace-time http://127.0.0.1:42345/1443 -O --remote-time --output-dir log/3 > log/3/stdout1443 2> log/3/stderr1443 postcheck /usr/bin/perl -e 'exit((stat("log/3/1443"))[9] != 960898200)' 1443: postcheck FAILED == Contents of files in the log/3/ dir after test 1443 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1443 ../src/curl -q --trace-ascii log/3/trace1443 --trace-config all --trace-time http://127.0.0.1:42345/1443 -O --remote-time --output-dir log/3 > log/3/stdout1443 2> log/3/stderr1443 === End of file commands.log === Start of file http_server.log 07:36:06.937023 ====> Client connect 07:36:06.937059 accept_connection 3 returned 4 07:36:06.937075 accept_connection 3 returned 0 07:36:06.937089 Read 93 bytes 07:36:06.937099 Process 93 bytes request 07:36:06.937112 Got request: GET /verifiedserver HTTP/1.1 07:36:06.937121 Are-we-friendly question received 07:36:06.937147 Wrote request (93 bytes) input to log/3/server.input 07:36:06.937162 Identifying ourselves as friends 07:36:06.937215 Response sent (56 bytes) and written to log/3/server.response 07:36:06.937225 special request received, no persistency 07:36:06.937233 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1443 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1443 ==151996== ==151996== Process terminating with default action of signal 4 (SIGILL) ==151996== Illegal opcode at address 0x4003082 ==151996== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==151996== by 0x4003082: main (tool_main.c:234) === End of file valgrind1443 * starts no server test 1447...[Provide illegal proxy name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1447 ../src/curl -q --output log/7/curl1447.out --include --trace-ascii log/7/trace1447 --trace-config all --trace-time --proxy "http://a:b@/x" http://127.0.0.1:47 > log/7/stdout1447 2> log/7/stderr1447 curl returned 132, when expecting 5 1447: exit FAILED == Contents of files in the log/7/ dir after test 1447 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1447 ../src/curl -q --output log/7/curl1447.out --include --trace-ascii log/7/trace1447 --trace-config all --trace-time --proxy "http://a:b@/x" http://127.0.0.1:47 > log/7/stdout1447 2> log/7/stderr1447 === End of file commands.log === Start of file server.cmd Testnum 1447 === End of file server.cmd === Start of file valgrind1447 ==152034== ==152034== Process terminating with default action of signal 4 (SIGILL) ==152034== Illegal opcode at address 0x4003082 ==152034== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152034== by 0x4003082: main (tool_main.c:234) === End of file valgrind1447 CMD (256): /usr/bin/perl /startdir/src/curl/tests/libtest/test613.pl postprocess /startdir/src/build-curl/tests/log/8/test1445.dir && \ /usr/bin/perl -e 'exit((stat("log/8/curl1445.out"))[9] != 946728000)' CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1444 ../src/curl -q --output log/13/curl1444.out --include --trace-ascii log/13/trace1444 --trace-config all --trace-time ftp://127.0.0.1:40375/1444 --remote-time > log/13/stdout1444 2> log/13/stderr1444 CMD (256): /usr/bin/perl -e 'exit((stat("log/13/curl1444.out"))[9] != 1234567890)' setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 1448...[Redirect following to UTF-8 IDN host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1448 ../src/curl -q --include --trace-ascii log/20/trace1448 --trace-config all --trace-time http://åäö.se:37169/1448 --resolve xn--4cab6c.se:37169:127.0.0.1 -L --connect-to 127.0.0.1:37169:127.0.0.1:37169 > log/20/stdout1448 2> log/20/stderr1448 1448: stdout FAILED: --- log/20/check-expected 2025-07-18 07:36:07.593779726 +0000 +++ log/20/check-generated 2025-07-18 07:36:07.593779726 +0000 @@ -1,12 +0,0 @@ -HTTP/1.1 302 OK swsbounce[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Content-Type: text/plain[LF] -Location: http://%c3%a5%c3%a4%c3%b6.se:37169/14480001[LF] -[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Content-Type: text/plain; charset=us-ascii[LF] -[LF] -OK[LF] == Contents of files in the log/20/ dir after test 1448 === Start of file check-expected HTTP/1.1 302 OK swsbounce[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Content-Type: text/plain[LF] Location: http://%c3%a5%c3%a4%c3%b6.se:37169/14480001[LF] [LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Content-Type: text/plain; charset=us-ascii[LF] [LF] OK[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1448 ../src/curl -q --include --trace-ascii log/20/trace1448 --trace-config all --trace-time http://åäö.se:37169/1448 --resolve xn--4cab6c.se:37169:127.0.0.1 -L --connect-to 127.0.0.1:37169:127.0.0.1:37169 > log/20/stdout1448 2> log/20/stderr1448 === End of file commands.log === Start of file http_server.log 07:36:06.978369 ====> Client connect 07:36:06.978405 accept_connection 3 returned 4 07:36:06.978423 accept_connection 3 returned 0 07:36:06.978439 Read 93 bytes 07:36:06.978449 Process 93 bytes request 07:36:06.978462 Got request: GET /verifiedserver HTTP/1.1 07:36:06.978472 Are-we-friendly question received 07:36:06.978497 Wrote request (93 bytes) input to log/20/server.input 07:36:06.978514 Identifying ourselves as friends 07:36:06.978657 Response sent (56 bytes) and written to log/20/server.response 07:36:06.978673 special request received, no persistency 07:36:06.978686 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1448 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1448 ==152121== ==152121== Process terminating with default action of signal 4 (SIGILL) ==152121== Illegal opcode at address 0x4003082 ==152121== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152121== by 0x4003082: main (tool_main.c:234) === End of file valgrind1448 prechecked /usr/bin/perl /startdir/src/curl/tests/libtest/test613.pl prepare /startdir/src/build-curl/tests/log/8/test1445.dir test 1445...[file:// with --remote-time] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1445 ../src/curl -q --output log/8/curl1445.out --include --trace-ascii log/8/trace1445 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/test1445.dir/plainfile.txt --remote-time > log/8/stdout1445 2> log/8/stderr1445 postcheck /usr/bin/perl /startdir/src/curl/tests/libtest/test613.pl postprocess /startdir/src/build-curl/tests/log/8/test1445.dir && \ /usr/bin/perl -e 'exit((stat("log/8/curl1445.out"))[9] != 946728000)' 1445: postcheck FAILED == Contents of files in the log/8/ dir after test 1445 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1445 ../src/curl -q --output log/8/curl1445.out --include --trace-ascii log/8/trace1445 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/test1445.dir/plainfile.txt --remote-time > log/8/stdout1445 2> log/8/stderr1445 === End of file commands.log === Start of file server.cmd Testnum 1445 === End of file server.cmd === Start of file valgrind1445 ==152111== ==152111== Process terminating with default action of signal 4 (SIGILL) ==152111== Illegal opcode at address 0x4003082 ==152111== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152111== by 0x4003082: main (tool_main.c:234) === End of file valgrind1445 test 1444...[FTP with --remote-time] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1444 ../src/curl -q --output log/13/curl1444.out --include --trace-ascii log/13/trace1444 --trace-config all --trace-time ftp://127.0.0.1:40375/1444 --remote-time > log/13/stdout1444 2> log/13/stderr1444 postcheck /usr/bin/perl -e 'exit((stat("log/13/curl1444.out"))[9] != 1234567890)' 1444: postcheck FAILED == Contents of files in the log/13/ dir after test 1444 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1444 ../src/curl -q --output log/13/curl1444.out --include --trace-ascii log/13/trace1444 --trace-config all --trace-time ftp://127.0.0.1:40375/1444 --remote-time > log/13/stdout1444 2> log/13/stderr1444 === End of file commands.log === Start of file ftp_server.log 07:36:07.110387 ====> Client connect 07:36:07.110530 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:07.110784 < "USER anonymous" 07:36:07.110821 > "331 We are happy you popped in![CR][LF]" 07:36:07.111062 < "PASS ftp@example.com" 07:36:07.111088 > "230 Welcome you silly person[CR][LF]" 07:36:07.111287 < "PWD" 07:36:07.111319 > "257 "/" is current directory[CR][LF]" 07:36:07.111832 < "EPSV" 07:36:07.111869 ====> Passive DATA channel requested by client 07:36:07.111882 DATA sockfilt for passive data channel starting... 07:36:07.113791 DATA sockfilt for passive data channel started (pid 152007) 07:36:07.113896 DATA sockfilt for passive data channel listens on port 46287 07:36:07.113934 > "229 Entering Passive Mode (|||46287|)[LF]" 07:36:07.113951 Client has been notified that DATA conn will be accepted on port 46287 07:36:07.114164 Client connects to port 46287 07:36:07.114190 ====> Client established passive DATA connection on port 46287 07:36:07.114258 < "TYPE I" 07:36:07.114288 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:07.114442 < "SIZE verifiedserver" 07:36:07.114474 > "213 17[CR][LF]" 07:36:07.114611 < "RETR verifiedserver" 07:36:07.114649 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:07.114715 =====> Closing passive DATA connection... 07:36:07.114730 Server disconnects passive DATA connection 07:36:07.114806 Server disconnected passive DATA connection 07:36:07.114826 DATA sockfilt for passive data channel quits (pid 152007) 07:36:07.115049 DATA sockfilt fCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1449 ../src/curl -q --output log/17/curl1449.out --include --trace-ascii log/17/trace1449 --trace-config all --trace-time ftp://127.0.0.1:39713/1449 -r 36893488147419103232- > log/17/stdout1449 2> log/17/stderr1449 or passive data channel quit (pid 152007) 07:36:07.115072 =====> Closed passive DATA connection 07:36:07.115097 > "226 File transfer complete[CR][LF]" 07:36:07.157660 < "QUIT" 07:36:07.157712 > "221 bye bye baby[CR][LF]" 07:36:07.158045 MAIN sockfilt said DISC 07:36:07.158069 ====> Client disconnected 07:36:07.158132 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:06.956279 ====> Client connect 07:36:06.956525 Received DATA (on stdin) 07:36:06.956539 > 160 bytes data, server => client 07:36:06.956551 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:06.956561 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:06.956572 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:06.956643 < 16 bytes data, client => server 07:36:06.956656 'USER anonymous\r\n' 07:36:06.956807 Received DATA (on stdin) 07:36:06.956820 > 33 bytes data, server => client 07:36:06.956831 '331 We are happy you popped in!\r\n' 07:36:06.956955 < 22 bytes data, client => server 07:36:06.956968 'PASS ftp@example.com\r\n' 07:36:06.957077 Received DATA (on stdin) 07:36:06.957088 > 30 bytes data, server => client 07:36:06.957114 '230 Welcome you silly person\r\n' 07:36:06.957206 < 5 bytes data, client => server 07:36:06.957231 'PWD\r\n' 07:36:06.957306 Received DATA (on stdin) 07:36:06.957335 > 30 bytes data, server => client 07:36:06.957346 '257 "/" is current directory\r\n' 07:36:06.957404 < 6 bytes data, client => server 07:36:06.957417 'EPSV\r\n' 07:36:06.959942 Received DATA (on stdin) 07:36:06.959958 > 38 bytes data, server => client 07:36:06.959970 '229 Entering Passive Mode (|||46287|)\n' 07:36:06.960101 < 8 bytes data, client => server 07:36:06.960121 'TYPE I\r\n' 07:36:06.960274 Received DATA (on stdin) 07:36:06.960289 > 33 bytes data, server => client 07:36:06.960300 '200 I modify TYPE as you wanted\r\n' 07:36:06.960347 < 21 bytes data, client => server 07:36:06.960360 'SIZE verifiedserver\r\n' 07:36:06.960458 Received DATA (on stdin) 07:36:06.960469 > 8 bytes data, server => client 07:36:06.960479 '213 17\r\n' 07:36:06.960523 < 21 bytes data, client => server 07:36:06.960535 'RETR verifiedserver\r\n' 07:36:06.960715 Received DATA (on stdin) 07:36:06.960728 > 29 bytes data, server => client 07:36:06.960739 '150 Binary junk (17 bytes).\r\n' 07:36:06.961082 Received DATA (on stdin) 07:36:06.961095 > 28 bytes data, server => client 07:36:06.961105 '226 File transfer complete\r\n' 07:36:07.002783 < 6 bytes data, client => server 07:36:07.002805 'QUIT\r\n' 07:36:07.003698 Received DATA (on stdin) 07:36:07.003711 > 18 bytes data, server => client 07:36:07.003721 '221 bye bye baby\r\n' 07:36:07.003981 ====> Client disconnect 07:36:07.004112 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:07.959576 Running IPv4 version 07:36:07.959654 Listening on port 46287 07:36:07.959697 Wrote pid 152007 to log/13/server/ftp_sockdata.pid 07:36:07.959718 Received PING (on stdin) 07:36:07.959799 Received PORT (on stdin) 07:36:07.960097 ====> Client connect 07:36:07.960641 Received DATA (on stdin) 07:36:07.960653 > 17 bytes data, server => client 07:36:07.960663 'WE ROOLZ: 87629\r\n' 07:36:07.960712 Received DISC (on stdin) 07:36:07.960724 ====> Client forcibly disconnected 07:36:07.960814 Received QUIT (on stdin) 07:36:07.960826 quits 07:36:07.960881 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1444 === End of file server.cmd === Start of file valgrind1444 ==152181== ==152181== Process terminating with default action of signal 4 (SIGILL) ==152181== Illegal opcode at address 0x4003082 ==152181== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152181== by 0x4003082: main (tool_main.c:234) === End of file valgrind1444 test 1449...[FTP download range with integer overflow] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1449 ../src/curl -q --output log/17/curl1449.out --include --trace-ascii log/17/trace1449 --trace-config all --trace-time ftp://127.0.0.1:39713/1449 -r 36893488147419103232- > log/17/stdout1449 2> log/17/stderr1449 1449: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1449 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1449 ../src/curl -q --output log/17/curl1449.out --include --trace-ascii log/17/trace1449 --trace-config all --trace-time ftp://127.0.0.1:39713/1449 -r 36893488147419103232- > log/17/stdout1449 2> log/17/stderr1449 === End of file commands.log === Start of file ftp_server.log 07:36:07.132291 ====> Client connect 07:36:07.132456 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:07.132706 < "USER anonymous" 07:36:07.132735 > "331 We are happy you popped in![CR][LF]" 07:36:07.132857 < "PASS ftp@example.com" 07:36:07.132880 > "230 Welcome you silly person[CR][LF]" 07:36:07.133016 < "PWD" 07:36:07.133040 > "257 "/" is current directory[CR][LF]" 07:36:07.133177 < "EPSV" 07:36:07.133201 ====> Passive DATA channel requested by client 07:36:07.133213 DATA sockfilt for passive data channel starting... 07:36:07.134668 DATA sockfilt for passive data channel started (pid 152086) 07:36:07.134759 DATA sockfilt for passive data channel listens on port 34399 07:36:07.134793 > "229 Entering Passive Mode (|||34399|)[LF]" 07:36:07.134808 Client has been notified that DATA conn will be accepted on port 34399 07:36:07.134994 Client connects to port 34399 07:36:07.135041 ====> Client established passive DATA connection on port 34399 07:36:07.135133 < "TYPE I" 07:36:07.135167 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:07.135364 < "SIZE verifiedserver" 07:36:07.135399 > "213 17[CR][LF]" 07:36:07.135910 < "RETR verifiedserver" 07:36:07.135946 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:07.136021 =====> Closing passive DATA connection... 07:36:07.136035 Server disconnects passive DATA connection 07:36:07.136563 Server disconnected passive DATA connection 07:36:07.136593 DATA sockfilt for passive data channel quits (pid 152086) 07:36:07.137336 DATA sockfilt for passive data channel quit (pid 152086) 07:36:07.137362 =====> Closed passive DATA connection 07:36:07.137388 > "226 File transfer complete[CR][LF]" 07:36:07.180399 < "QUIT" 07:36:07.180457 > "221 bye bye baby[CR][LF]" 07:36:07.180617 MAIN sockfilt said DISC 07:36:07.180670 ====> Client disconnected 07:36:07.180757 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:06.978176 ====> Client connect 07:36:06.978452 Received DATA (on stdin) 07:36:06.978467 > 160 bytes data, server => client 07:36:06.978479 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:06.978490 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:06.978499 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:06.978561 < 16 bytes data, client => server 07:36:06.978573 'USER anonymous\r\n' 07:36:06.978716 Received DATA (on stdin) 07:36:06.978725 > 33 bytes data, server => client 07:36:06.978734 '331 We are happy you popped in!\r\n' 07:36:06.978772 < 22 bytes data, client => server 07:36:06.978780 'PASS ftp@example.com\r\n' 07:36:06.978861 Received DATA (on stdin) 07:36:06.978872 > 30 bytes data, server => client 07:36:06.978882 '230 Welcome you silly person\r\n' 07:36:06.978924 < 5 bytes data, client => server 07:36:06.978935 'PWD\r\n' 07:36:06.979022 Received DATA (on stdin) 07:36:06.979033 > 30 bytes data, server => client 07:36:06.979043 '257 "/" is current directory\r\n' 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1453 ../src/curl -q --output log/11/curl1453.out --include --trace-ascii log/11/trace1453 --trace-config all --trace-time tftp://127.0.0.1:47/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz > log/11/stdout1453 2> log/11/stderr1453 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1455 ../src/curl -q --output log/2/curl1455.out --include --trace-ascii log/2/trace1455 --trace-config all --trace-time http://127.0.0.1:45457/1455 --haproxy-protocol -H "Testno: 1455" > log/2/stdout1455 2> log/2/stderr1455 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1464 ../src/curl -q --include --trace-ascii log/5/trace1464 --trace-config all --trace-time --help fIlE > log/5/stdout1464 2> log/5/stderr1464 7:36:06.979091 < 6 bytes data, client => server 07:36:06.979101 'EPSV\r\n' 07:36:06.980792 Received DATA (on stdin) 07:36:06.980804 > 38 bytes data, server => client 07:36:06.980814 '229 Entering Passive Mode (|||34399|)\n' 07:36:06.980914 < 8 bytes data, client => server 07:36:06.980932 'TYPE I\r\n' 07:36:06.981169 Received DATA (on stdin) 07:36:06.981186 > 33 bytes data, server => client 07:36:06.981198 '200 I modify TYPE as you wanted\r\n' 07:36:06.981270 < 21 bytes data, client => server 07:36:06.981281 'SIZE verifiedserver\r\n' 07:36:06.981731 Received DATA (on stdin) 07:36:06.981748 > 8 bytes data, server => client 07:36:06.981758 '213 17\r\n' 07:36:06.981805 < 21 bytes data, client => server 07:36:06.981816 'RETR verifiedserver\r\n' 07:36:06.982018 Received DATA (on stdin) 07:36:06.982029 > 29 bytes data, server => client 07:36:06.982039 '150 Binary junk (17 bytes).\r\n' 07:36:06.983372 Received DATA (on stdin) 07:36:06.983385 > 28 bytes data, server => client 07:36:06.983396 '226 File transfer complete\r\n' 07:36:07.026185 < 6 bytes data, client => server 07:36:07.026213 'QUIT\r\n' 07:36:07.026445 Received DATA (on stdin) 07:36:07.026457 > 18 bytes data, server => client 07:36:07.026468 '221 bye bye baby\r\n' 07:36:07.026526 ====> Client disconnect 07:36:07.026744 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:07.980498 Running IPv4 version 07:36:07.980545 Listening on port 34399 07:36:07.980585 Wrote pid 152086 to log/17/server/ftp_sockdata.pid 07:36:07.980600 Received PING (on stdin) 07:36:07.980672 Received PORT (on stdin) 07:36:07.980909 ====> Client connect 07:36:07.982063 Received DATA (on stdin) 07:36:07.982077 > 17 bytes data, server => client 07:36:07.982087 'WE ROOLZ: 79834\r\n' 07:36:07.982110 Received DISC (on stdin) 07:36:07.982121 ====> Client forcibly disconnected 07:36:07.982590 Received QUIT (on stdin) 07:36:07.982611 quits 07:36:07.982812 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1449 === End of file server.cmd === Start of file valgrind1449 ==152254== ==152254== Process terminating with default action of signal 4 (SIGILL) ==152254== Illegal opcode at address 0x4003082 ==152254== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152254== by 0x4003082: main (tool_main.c:234) === End of file valgrind1449 * starts no server test 1453...[Too long tftp filename] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1453 ../src/curl -q --output log/11/curl1453.out --include --trace-ascii log/11/trace1453 --trace-config all --trace-time tftp://127.0.0.1:47/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz > log/11/stdout1453 2> log/11/stderr1453 curl returned 132, when expecting 71 1453: exit FAILED == Contents of files in the log/11/ dir after test 1453 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1453 ../src/curl -q --output log/11/curl1453.out --include --trace-ascii log/11/trace1453 --trace-config all --trace-time tftp://127.0.0.1:47/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaz > log/11/stdout1453 2> log/11/stderr1453 === End of file commands.log === Start of file server.cmd Testnum 1453 === End of file server.cmd === Start of file valgrind1453 ==152337== ==152337== Process terminating with default action of signal 4 (SIGILL) ==152337== Illegal opcode at address 0x4003082 ==152337== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152337== by 0x4003082: main (tool_main.c:234) === End of file valgrind1453 test 1455...[HTTP GET when PROXY Protocol enabled] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1455 ../src/curl -q --output log/2/curl1455.out --include --trace-ascii log/2/trace1455 --trace-config all --trace-time http://127.0.0.1:45457/1455 --haproxy-protocol -H "Testno: 1455" > log/2/stdout1455 2> log/2/stderr1455 1455: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1455 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1455 ../src/curl -q --output log/2/curl1455.out --include --trace-ascii log/2/trace1455 --trace-config all --trace-time http://127.0.0.1:45457/1455 --haproxy-protocol -H "Testno: 1455" > log/2/stdout1455 2> log/2/stderr1455 === End of file commands.log === Start of file http_server.log 07:36:07.159587 ====> Client connect 07:36:07.159639 accept_connection 3 returned 4 07:36:07.159656 accept_connection 3 returned 0 07:36:07.159671 Read 93 bytes 07:36:07.159681 Process 93 bytes request 07:36:07.159693 Got request: GET /verifiedserver HTTP/1.1 07:36:07.159702 Are-we-friendly question received 07:36:07.159726 Wrote request (93 bytes) input to log/2/server.input 07:36:07.159767 Identifying ourselves as friends 07:36:07.159833 Response sent (56 bytes) and written to log/2/server.response 07:36:07.159843 special request received, no persistency 07:36:07.159852 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1455 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1455 ==152390== ==152390== Process terminating with default action of signal 4 (SIGILL) ==152390== Illegal opcode at address 0x4003082 ==152390== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152390== by 0x4003082: main (tool_main.c:234) === End of file valgrind1455 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1463 ../src/curl -q --include --trace-ascii log/12/trace1463 --trace-config all --trace-time --help file > log/12/stdout1463 2> log/12/stderr1463 * starts no server test 1464...[curl file category --help with lower/upper mix] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1464 ../src/curl -q --include --trace-ascii log/5/trace1464 --trace-config all --trace-time --help fIlE > log/5/stdout1464 2> log/5/stderr1464 1464: stdout FAILED: --- log/5/check-expected 2025-07-18 07:36:07.817113065 +0000 +++ log/5/check-generated 2025-07-18 07:36:07.817113065 +0000 @@ -1,5 +0,0 @@ -file: FILE protocol[CR][LF] - --create-file-mode File mode for created files[CR][LF] - -I, --head Show document info only[CR][LF] - -l, --list-only List only mode[CR][LF] - -r, --range Retrieve only the bytes within RANGE[CR][LF] == Contents of files in the log/5/ dir after test 1464 === Start of file check-expected file: FILE protocol[CR][LF] --create-file-mode File mode for created files[CR][LF] -I, --head Show document info only[CR][LF] -l, --list-only List only mode[CR][LF] -r, --range Retrieve only the bytes within RANGE[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1464 ../src/curl -q --include --trace-ascii log/5/trace1464 --trace-config all --trace-time --help fIlE > log/5/stdout1464 2> log/5/stderr1464 === End of file commands.log === Start of file server.cmd Testnum 1464 === End of file server.cmd === Start of file valgrind1464 ==152500== ==152500== Process terminating with default action of signal 4 (SIGILL) ==152500== Illegal opcode at address 0x4003082 ==152500== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152500== by 0x4003082: main (tool_main.c:234) === End of file valgrind1464 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1477.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/5/stdout1477 2> log/5/stderr1477 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1457 ../src/curl -q --include --trace-ascii log/15/trace1457 --trace-config all --trace-time http://127.0.0.1:36993/1457 --silent --write-out 'line1%{stderr}line2%{stdout}line3' > log/15/stdout1457 2> log/15/stderr1457 * starts no server test 1463...[curl file category --help] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1463 ../src/curl -q --include --trace-ascii log/12/trace1463 --trace-config all --trace-time --help file > log/12/stdout1463 2> log/12/stderr1463 1463: stdout FAILED: --- log/12/check-expected 2025-07-18 07:36:07.837113065 +0000 +++ log/12/check-generated 2025-07-18 07:36:07.837113065 +0000 @@ -1,5 +0,0 @@ -file: FILE protocol[CR][LF] - --create-file-mode File mode for created files[CR][LF] - -I, --head Show document info only[CR][LF] - -l, --list-only List only mode[CR][LF] - -r, --range Retrieve only the bytes within RANGE[CR][LF] == Contents of files in the log/12/ dir after test 1463 === Start of file check-expected file: FILE protocol[CR][LF] --create-file-mode File mode for created files[CR][LF] -I, --head Show document info only[CR][LF] -l, --list-only List only mode[CR][LF] -r, --range Retrieve only the bytes within RANGE[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1463 ../src/curl -q --include --trace-ascii log/12/trace1463 --trace-config all --trace-time --help file > log/12/stdout1463 2> log/12/stderr1463 === End of file commands.log === Start of file server.cmd Testnum 1463 === End of file server.cmd === Start of file valgrind1463 ==152503== ==152503== Process terminating with default action of signal 4 (SIGILL) ==152503== Illegal opcode at address 0x4003082 ==152503== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152503== by 0x4003082: main (tool_main.c:234) === End of file valgrind1463 * starts no server test 1477...[Verify that error codes in headers and libcurl-errors.3 are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1477.pl /startdir/src/curl/tests/.. /startdir/src/build-curl/tests/.. > log/5/stdout1477 2> log/5/stderr1477 valgrind SKIPPED s------e--- OK (1379 out of 1707, remaining: 00:18, took 0.020s, duration: 01:18) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1462 ../src/curl -q --include --trace-ascii log/14/trace1462 --trace-config all --trace-time --help sdfafdsfadsfsd > log/14/stdout1462 2> log/14/stderr1462 test 1457...[Check if %{stderr} and %{stdout} switch between stdout and stderr.] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1457 ../src/curl -q --include --trace-ascii log/15/trace1457 --trace-config all --trace-time http://127.0.0.1:36993/1457 --silent --write-out 'line1%{stderr}line2%{stdout}line3' > log/15/stdout1457 2> log/15/stderr1457 1457: stdout FAILED: --- log/15/check-expected 2025-07-18 07:36:07.847113065 +0000 +++ log/15/check-generated 2025-07-18 07:36:07.847113065 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -[LF] -testdata[LF] -line1line3 == Contents of files in the log/15/ dir after test 1457 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Connection: close[LF] Content-Type: text/plain[LF] [LF] testdata[LF] line1line3 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1457 ../src/curl -q --include --trace-ascii log/15/trace1457 --trace-config all --trace-time http://127.0.0.1:36993/1457 --silent --write-out 'line1%{stderr}line2%{stdout}line3' > log/15/stdout1457 2> log/15/stderr1457 === End of file commands.log === Start of file http_server.log 07:36:07.231319 ====> Client connect 07:36:07.231349 accept_connection 3 returned 4 07:36:07.231364 accept_connection 3 returned 0 07:36:07.231377 Read 93 bytes 07:36:07.231387 Process 93 bytes request 07:36:07.231400 Got request: GET /verifiedserver HTTP/1.1 07:36:07.231409 Are-we-friendly question received 07:36:07.231430 Wrote request (93 bytes) input to log/15/server.input 07:36:07.231445 Identifying ourselves as friends 07:36:07.231493 Response sent (56 bytes) and written to log/15/server.response 07:36:07.231502 special request received, no persistency 07:36:07.231510 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1457 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1457 ==152512== ==152512== Process terminating with default action of signal 4 (SIGILL) ==152512== Illegal opcode at address 0x4003082 ==152512== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152512== by 0x4003082: main (tool_main.c:234) === End of file valgrind1457 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -d /startdir/src/curl/tests/../docs/cmdline-opts -I /startdir/src/curl/tests/../include listhelp /startdir/src/curl/tests/../docs/cmdline-opts/*.md > log/12/stdout1478 2> log/12/stderr1478 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1465 ../src/curl -q --output log/16/curl1465.out --include --trace-ascii log/16/trace1465 --trace-config all --trace-time http://127.0.0.1:46739/we/want/1465 --libcurl log/16/test1465.c --data-binary @log/16/1465-upload > log/16/stdout1465 2> log/16/stderr1465 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1458 ../src/curl -q --output log/24/curl1458.out --include --trace-ascii log/24/trace1458 --trace-config all --trace-time --resolve *:38675:127.0.0.1 http://example.com:38675/1458 > log/24/stdout1458 2> log/24/stderr1458 * starts no server test 1462...[curl invalid category --help] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1462 ../src/curl -q --include --trace-ascii log/14/trace1462 --trace-config all --trace-time --help sdfafdsfadsfsd > log/14/stdout1462 2> log/14/stderr1462 1462: stdout FAILED: --- log/14/check-expected 2025-07-18 07:36:07.853779733 +0000 +++ log/14/check-generated 2025-07-18 07:36:07.853779733 +0000 @@ -1,27 +0,0 @@ -Unknown category provided, here is a list of all categories:[CR][LF] -[CR][LF] - auth Authentication methods[CR][LF] - connection Manage connections[CR][LF] - curl The command line tool itself[CR][LF] - deprecated Legacy[CR][LF] - dns Names and resolving[CR][LF] - file FILE protocol[CR][LF] - ftp FTP protocol[CR][LF] - global Global options[CR][LF] - http HTTP and HTTPS protocol[CR][LF] - imap IMAP protocol[CR][LF] - ldap LDAP protocol[CR][LF] - output Filesystem output[CR][LF] - pop3 POP3 protocol[CR][LF] - post HTTP POST specific[CR][LF] - proxy Options for proxies[CR][LF] - scp SCP protocol[CR][LF] - sftp SFTP protocol[CR][LF] - smtp SMTP protocol[CR][LF] - ssh SSH protocol[CR][LF] - telnet TELNET protocol[CR][LF] - tftp TFTP protocol[CR][LF] - timeout Timeouts and delays[CR][LF] - tls TLS/SSL related[CR][LF] - upload Upload, sending data[CR][LF] - verbose Tracing, logging etc[CR][LF] == Contents of files in the log/14/ dir after test 1462 === Start of file check-expected Unknown category provided, here is a list of all categories:[CR][LF] [CR][LF] auth Authentication methods[CR][LF] connection Manage connections[CR][LF] curl The command line tool itself[CR][LF] deprecated Legacy[CR][LF] dns Names and resolving[CR][LF] file FILE protocol[CR][LF] ftp FTP protocol[CR][LF] global Global options[CR][LF] http HTTP and HTTPS protocol[CR][LF] imap IMAP protocol[CR][LF] ldap LDAP protocol[CR][LF] output Filesystem output[CR][LF] pop3 POP3 protocol[CR][LF] post HTTP POST specific[CR][LF] proxy Options for proxies[CR][LF] scp SCP protocol[CR][LF] sftp SFTP protocol[CR][LF] smtp SMTP protocol[CR][LF] ssh SSH protocol[CR][LF] telnet TELNET protocol[CR][LF] tftp TFTP protocol[CR][LF] timeout Timeouts and delays[CR][LF] tls TLS/SSL related[CR][LF] upload Upload, sending data[CR][LF] verbose Tracing, logging etc[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1462 ../src/curl -q --include --trace-ascii log/14/trace1462 --trace-config all --trace-time --help sdfafdsfadsfsd > log/14/stdout1462 2> log/14/stderr1462 === End of file commands.log === Start of file server.cmd Testnum 1462 === End of file server.cmd === Start of file valgrind1462 ==152507== ==152507== Process terminating with default action of signal 4 (SIGILL) ==152507== Illegal opcode at address 0x4003082 ==152507== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152507== by 0x4003082: main (tool_main.c:234) === End of file valgrind1462 * starts no server test 1478...[src/tool_listhelp.c is in sync with docs/cmdline-opts] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -d /startdir/src/curl/tests/../docs/cmdline-opts -I /startdir/src/curl/tests/../include listhelp /startdir/src/curl/tests/../docs/cmdline-opts/*.md > log/12/stdout1478 2> log/12/stderr1478 valgrind SKIPPED s------e--- OK (1380 out of 1707, remaining: 00:18, took 0.055s, duration: 01:19) setenv SSL_CERT_FILE = test 1465...[--libcurl for POST with binary content] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1465 ../src/curl -q --output log/16/curl1465.out --include --trace-ascii log/16/trace1465 --trace-config all --trace-time http://127.0.0.1:46739/we/want/1465 --libcurl log/16/test1465.c --data-binary @log/16/1465-upload > log/16/stdout1465 2> log/16/stderr1465 1465: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1465 === Start of file 1465-upload abcde\"? fghi jklm === End of file 1465-upload === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1465 ../src/curl -q --output log/16/curl1465.out --include --trace-ascii log/16/trace1465 --trace-config all --trace-time http://127.0.0.1:46739/we/want/1465 --libcurl log/16/test1465.c --data-binary @log/16/1465-upload > log/16/stdout1465 2> log/16/stderr1465 === End of file commands.log === Start of file http_server.log 07:36:07.253626 ====> Client connect 07:36:07.253663 accept_connection 3 returned 4 07:36:07.253677 accept_connection 3 returned 0 07:36:07.253688 Read 93 bytes 07:36:07.253695 Process 93 bytes request 07:36:07.253703 Got request: GET /verifiedserver HTTP/1.1 07:36:07.253711 Are-we-friendly question received 07:36:07.253730 Wrote request (93 bytes) input to log/16/server.input 07:36:07.253742 Identifying ourselves as friends 07:36:07.253786 Response sent (56 bytes) and written to log/16/server.response 07:36:07.253793 special request received, no persistency 07:36:07.253801 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1465 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1465 ==152711== ==152711== Process terminating with default action of signal 4 (SIGILL) ==152711== Illegal opcode at address 0x4003082 ==152711== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152711== by 0x4003082: main (tool_main.c:234) === End of file valgrind1465 test 1458...[HTTP with wildcard --resolve] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1458 ../src/curl -q --output log/24/curl1458.out --include --trace-ascii log/24/trace1458 --trace-config all --trace-time --resolve *:38675:127.0.0.1 http://example.com:38675/1458 > log/24/stdout1458 2> log/24/stderr1458 1458: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1458 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1458 ../src/curl -q --output log/24/curl1458.out --include --trace-ascii log/24/trace1458 --trace-config all --trace-time --resolve *:38675:127.0.0.1 http://example.com:38675/1458 > log/24/stdout1458 2> log/24/stderr1458 === End of file commands.log === Start of file http_server.log 07:36:07.243141 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1460 ../src/curl -q --trace-ascii log/4/trace1460 --trace-config all --trace-time http://127.0.0.1:33235/1460 -Ji -O --output-dir log/4 > log/4/stdout1460 2> log/4/stderr1460 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1466 ../src/curl -q --output log/19/curl1466.out --include --trace-ascii log/19/trace1466 --trace-config all --trace-time http://127.0.0.1:33487/1466 > log/19/stdout1466 2> log/19/stderr1466 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1471 ../src/curl -q --output log/20/curl1471.out --include --trace-ascii log/20/trace1471 --trace-config all --trace-time red.onion > log/20/stdout1471 2> log/20/stderr1471 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1428 ../src/curl -q --output log/10/curl1428.out --include --trace-ascii log/10/trace1428 --trace-config all --trace-time http://test.1428:34851/we/want/that/page/1428 -p -x 127.0.0.1:36841 --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy" > log/10/stdout1428 2> log/10/stderr1428 ====> Client connect 07:36:07.243410 accept_connection 3 returned 4 07:36:07.243428 accept_connection 3 returned 0 07:36:07.243442 Read 93 bytes 07:36:07.243451 Process 93 bytes request 07:36:07.243464 Got request: GET /verifiedserver HTTP/1.1 07:36:07.243473 Are-we-friendly question received 07:36:07.243498 Wrote request (93 bytes) input to log/24/server.input 07:36:07.243515 Identifying ourselves as friends 07:36:07.243569 Response sent (56 bytes) and written to log/24/server.response 07:36:07.243578 special request received, no persistency 07:36:07.243586 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1458 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1458 ==152595== ==152595== Process terminating with default action of signal 4 (SIGILL) ==152595== Illegal opcode at address 0x4003082 ==152595== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152595== by 0x4003082: main (tool_main.c:234) === End of file valgrind1458 test 1460...[HTTP GET with -Ji and Content-Disposition with existing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1460 ../src/curl -q --trace-ascii log/4/trace1460 --trace-config all --trace-time http://127.0.0.1:33235/1460 -Ji -O --output-dir log/4 > log/4/stdout1460 2> log/4/stderr1460 curl returned 132, when expecting 23 1460: exit FAILED == Contents of files in the log/4/ dir after test 1460 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1460 ../src/curl -q --trace-ascii log/4/trace1460 --trace-config all --trace-time http://127.0.0.1:33235/1460 -Ji -O --output-dir log/4 > log/4/stdout1460 2> log/4/stderr1460 === End of file commands.log === Start of file http_server.log 07:36:07.252683 ====> Client connect 07:36:07.252718 accept_connection 3 returned 4 07:36:07.252735 accept_connection 3 returned 0 07:36:07.252749 Read 93 bytes 07:36:07.252758 Process 93 bytes request 07:36:07.252771 Got request: GET /verifiedserver HTTP/1.1 07:36:07.252779 Are-we-friendly question received 07:36:07.252803 Wrote request (93 bytes) input to log/4/server.input 07:36:07.252819 Identifying ourselves as friends 07:36:07.252870 Response sent (56 bytes) and written to log/4/server.response 07:36:07.252880 special request received, no persistency 07:36:07.252888 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file name1460 initial content === End of file name1460 === Start of file server.cmd Testnum 1460 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1460 ==152632== ==152632== Process terminating with default action of signal 4 (SIGILL) ==152632== Illegal opcode at address 0x4003082 ==152632== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152632== by 0x4003082: main (tool_main.c:234) === End of file valgrind1460 test 1466...[HTTP GET with 3-digit response and only digits in reason] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1466 ../src/curl -q --output log/19/curl1466.out --include --trace-ascii log/19/trace1466 --trace-config all --trace-time http://127.0.0.1:33487/1466 > log/19/stdout1466 2> log/19/stderr1466 1466: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1466 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1466 ../src/curl -q --output log/19/curl1466.out --include --trace-ascii log/19/trace1466 --trace-config all --trace-time http://127.0.0.1:33487/1466 > log/19/stdout1466 2> log/19/stderr1466 === End of file commands.log === Start of file http_server.log 07:36:07.394470 ====> Client connect 07:36:07.394500 accept_connection 3 returned 4 07:36:07.394515 accept_connection 3 returned 0 07:36:07.394527 Read 93 bytes 07:36:07.394536 Process 93 bytes request 07:36:07.394548 Got request: GET /verifiedserver HTTP/1.1 07:36:07.394556 Are-we-friendly question received 07:36:07.394578 Wrote request (93 bytes) input to log/19/server.input 07:36:07.394592 Identifying ourselves as friends 07:36:07.394643 Response sent (56 bytes) and written to log/19/server.response 07:36:07.394653 special request received, no persistency 07:36:07.394662 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1466 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1466 ==152893== ==152893== Process terminating with default action of signal 4 (SIGILL) ==152893== Illegal opcode at address 0x4003082 ==152893== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152893== by 0x4003082: main (tool_main.c:234) === End of file valgrind1466 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1469 ../src/curl -q --output log/7/curl1469.out --include --trace-ascii log/7/trace1469 --trace-config all --trace-time "ftp://127.0.0.1:47/1469%/with space/" -T log/7/irrelevant-file > log/7/stdout1469 2> log/7/stderr1469 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1472 ../src/curl -q --output log/8/curl1472.out --include --trace-ascii log/8/trace1472 --trace-config all --trace-time tasty.onion. > log/8/stdout1472 2> log/8/stderr1472 * starts no server test 1471...[Fail to resolve .onion TLD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1471 ../src/curl -q --output log/20/curl1471.out --include --trace-ascii log/20/trace1471 --trace-config all --trace-time red.onion > log/20/stdout1471 2> log/20/stderr1471 1471: stderr FAILED: --- log/20/check-expected 2025-07-18 07:36:08.083779738 +0000 +++ log/20/check-generated 2025-07-18 07:36:08.083779738 +0000 @@ -1 +0,0 @@ -curl: (6) Not resolving .onion address (RFC 7686)[CR][LF] == Contents of files in the log/20/ dir after test 1471 === Start of file check-expected curl: (6) Not resolving .onion address (RFC 7686)[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1471 ../src/curl -q --output log/20/curl1471.out --include --trace-ascii log/20/trace1471 --trace-config all --trace-time red.onion > log/20/stdout1471 2> log/20/stderr1471 === End of file commands.log === Start of file server.cmd Testnum 1471 === End of file server.cmd === Start of file valgrind1471 ==153037== ==153037== Process terminating with default action of signal 4 (SIGILL) ==153037== Illegal opcode at address 0x4003082 ==153037== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153037== by 0x4003082: main (tool_main.c:234) === End of file valgrind1471 * starts no server test 1469...[Space in FTP upload URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1469 ../src/curl -q --output log/7/curl1469.out --include --trace-ascii log/7/trace1469 --trace-config all --trace-time "ftp://127.0.0.1:47/1469%/with space/" -T log/7/irrelevant-file > log/7/stdout1469 2> log/7/stderr1469 curl returned 132, when expecting 3 1469: exit FAILED == Contents of files in the log/7/ dir after test 1469 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1469 ../src/curl -q --output log/7/curl1469.out --include --trace-ascii log/7/trace1469 --trace-config all --trace-time "ftp://127.0.0.1:47/1469%/with space/" -T log/7/irrelevant-file > log/7/stdout1469 2> log/7/stderr1469 === End of file commands.log === Start of file server.cmd Testnum 1469 === End of file server.cmd === Start of file valgrind1469 ==152994== ==152994== Process terminating with default action of signal 4 (SIGILL) ==152994== Illegal opcode at address 0x4003082 ==152994== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152994== by 0x4003082: main (tool_main.c:234) === End of file valgrind1469 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/10/server/http2_server.pid" --logfile "log/10/http2_server.log" --logdir "log/10" --portfile log/10/server/http2_server.port --config log/10/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 151107 port 36841 * pid http-proxy => 151107 151107 test 1428...[HTTP over proxy-tunnel with --proxy-header and --header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1428 ../src/curl -q --output log/10/curl1428.out --include --trace-ascii log/10/trace1428 --trace-config all --trace-time http://test.1428:34851/we/want/that/page/1428 -p -x 127.0.0.1:36841 --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy" > log/10/stdout1428 2> log/10/stderr1428 1428: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1428 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1428 ../src/curl -q --output log/10/curl1428.out --include --trace-ascii log/10/trace1428 --trace-config all --trace-time http://test.1428:34851/we/want/that/page/1428 -p -x 127.0.0.1:36841 --user 'iam:my:;self' --header "header-type: server" --proxy-header "header-type: proxy" > log/10/stdout1428 2> log/10/stderr1428 === End of file commands.log === Start of file http2_server.log 07:36:06.428689 Run as proxy, CONNECT to host 127.0.0.1 07:36:06.428821 Running HTTP IPv4 version on port 36841 07:36:06.428862 Wrote pid 151107 to log/10/server/http2_server.pid 07:36:06.428891 Wrote port 36841 to log/10/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:06.401539 ====> Client connect 07:36:06.401575 accept_connection 3 returned 4 07:36:06.401591 accept_connection 3 returned 0 07:36:06.401606 Read 93 bytes 07:36:06.401616 Process 93 bytes request 07:36:06.401634 Got request: GET /verifiedserver HTTP/1.1 07:36:06.401643 Are-we-friendly question received 07:36:06.401668 Wrote request (93 bytes) input to log/10/server.input 07:36:06.401685 Identifying ourselves as friends 07:36:06.401738 Response sent (56 bytes) and written to log/10/server.response 07:36:06.401748 special request received, no persistency 07:36:06.401757 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1428 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1428 ==152913== ==152913== Process terminating with default action of signal 4 (SIGILL) ==152913== Illegal opcode at address 0x4003082 ==152913== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==152913== by 0x4003082: main (tool_main.c:234) === End of file valgrind1428 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1486.pl /startdir/src/curl/tests > log/19/stdout1486 2> log/19/stderr1486 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1473 ../src/curl -q --output log/13/curl1473.out --include --trace-ascii log/13/trace1473 --trace-config all --trace-time http://127.0.0.1:33627/1473 > log/13/stdout1473 2> log/13/stderr1473 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1488.pl /startdir/src/curl/tests/.. ../include/curl /startdir/src/curl/tests/../docs/VERSIONS.md > log/10/stdout1488 2> log/10/stderr1488 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1474 ../src/curl -q --output log/17/curl1474.out --include --trace-ascii log/17/trace1474 --trace-config all --trace-time --proto -all http://127.0.0.1:47/1474 > log/17/stdout1474 2> log/17/stderr1474 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1436 ../src/curl -q --include --trace-ascii log/23/trace1436 --trace-config all --trace-time --unix-socket /tmp/curl-http-ZrQuZmLm http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003 > log/23/stdout1436 2> log/23/stderr1436 * starts no server test 1472...[Fail to resolve .onion. TLD] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1472 ../src/curl -q --output log/8/curl1472.out --include --trace-ascii log/8/trace1472 --trace-config all --trace-time tasty.onion. > log/8/stdout1472 2> log/8/stderr1472 1472: stderr FAILED: --- log/8/check-expected 2025-07-18 07:36:08.100446404 +0000 +++ log/8/check-generated 2025-07-18 07:36:08.100446404 +0000 @@ -1 +0,0 @@ -curl: (6) Not resolving .onion address (RFC 7686)[CR][LF] == Contents of files in the log/8/ dir after test 1472 === Start of file check-expected curl: (6) Not resolving .onion address (RFC 7686)[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1472 ../src/curl -q --output log/8/curl1472.out --include --trace-ascii log/8/trace1472 --trace-config all --trace-time tasty.onion. > log/8/stdout1472 2> log/8/stderr1472 === End of file commands.log === Start of file server.cmd Testnum 1472 === End of file server.cmd === Start of file valgrind1472 ==153041== ==153041== Process terminating with default action of signal 4 (SIGILL) ==153041== Illegal opcode at address 0x4003082 ==153041== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153041== by 0x4003082: main (tool_main.c:234) === End of file valgrind1472 test 1473...[first HTTP header starts with white space] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1473 ../src/curl -q --output log/13/curl1473.out --include --trace-ascii log/13/trace1473 --trace-config all --trace-time http://127.0.0.1:33627/1473 > log/13/stdout1473 2> log/13/stderr1473 1473: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1473 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1473 ../src/curl -q --output log/13/curl1473.out --include --trace-ascii log/13/trace1473 --trace-config all --trace-time http://127.0.0.1:33627/1473 > log/13/stdout1473 2> log/13/stderr1473 === End of file commands.log === Start of file http_server.log 07:36:07.485374 ====> Client connect 07:36:07.485409 accept_connection 3 returned 4 07:36:07.485424 accept_connection 3 returned 0 07:36:07.485439 Read 93 bytes 07:36:07.485449 Process 93 bytes request 07:36:07.485462 Got request: GET /verifiedserver HTTP/1.1 07:36:07.485471 Are-we-friendly question received 07:36:07.485496 Wrote request (93 bytes) input to log/13/server.input 07:36:07.485512 Identifying ourselves as friends 07:36:07.485565 Response sent (56 bytes) and written to log/13/server.response 07:36:07.485574 special request received, no persistency 07:36:07.485581 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1473 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1473 ==153167== ==153167== Process terminating with default action of signal 4 (SIGILL) ==153167== Illegal opcode at address 0x4003082 ==153167== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153167== by 0x4003082: main (tool_main.c:234) === End of file valgrind1473 * starts no server test 1486...[Verify that write-out.md and tool_writeout.c are in sync] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1486.pl /startdir/src/curl/tests > log/19/stdout1486 2> log/19/stderr1486 valgrind SKIPPED s------e--- OK (1388 out of 1707, remaining: 00:18, took 0.031s, duration: 01:19) * starts no server test 1488...[symbols-in-versions and manpages agree on added-in versions] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1488.pl /startdir/src/curl/tests/.. ../include/curl /startdir/src/curl/tests/../docs/VERSIONS.md > log/10/stdout1488 2> log/10/stderr1488 valgrind SKIPPED s------e--- OK (1390 out of 1707, remaining: 00:18, took 0.021s, duration: 01:19) * starts no server test 1474...[--proto -all disables all protocols] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1474 ../src/curl -q --output log/17/curl1474.out --include --trace-ascii log/17/trace1474 --trace-config all --trace-time --proto -all http://127.0.0.1:47/1474 > log/17/stdout1474 2> log/17/stderr1474 curl returned 132, when expecting 1 1474: exit FAILED == Contents of files in the log/17/ dir after test 1474 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1474 ../src/curl -q --output log/17/curl1474.out --include --trace-ascii log/17/trace1474 --trace-config all --trace-time --proto -all http://127.0.0.1:47/1474 > log/17/stdout1474 2> log/17/stderr1474 === End of file commands.log === Start of file server.cmd Testnum 1474 === End of file server.cmd === Start of file valgrind1474 ==153222== ==153222== Process terminating with default action of signal 4 (SIGILL) ==153222== Illegal opcode at address 0x4003082 ==153222== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153222== by 0x4003082: main (tool_main.c:234) === End of file valgrind1474 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1475 ../src/curl -q --output log/11/curl1475.out --include --trace-ascii log/11/trace1475 --trace-config all --trace-time http://127.0.0.1:41173/1475 -C - -f > log/11/stdout1475 2> log/11/stderr1475 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1435 ../src/curl -q --output log/1/curl1435.out --include --trace-ascii log/1/trace1435 --trace-config all --trace-time --unix-socket /tmp/curl-http-aXukdIZW http://server-interpreted.example.com/1435 > log/1/stdout1435 2> log/1/stderr1435 RUN: Process with pid 73853 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1476 ../src/curl -q --output log/2/curl1476.out --include --trace-ascii log/2/trace1476 --trace-config all --trace-time -x http://127.0.0.1:45457/1476 http://curl.co.UK -c log/2/cookies1476.txt > log/2/stdout1476 2> log/2/stderr1476 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1479 ../src/curl -q --output log/5/curl1479.out --include --trace-ascii log/5/trace1479 --trace-config all --trace-time http://127.0.0.1:46675/1479 http://127.0.0.1:46675/14790002 > log/5/stdout1479 2> log/5/stderr1479 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/23/server/http_unix_server.pid" --logfile "log/23/http_unix_server.log" --logdir "log/23" --portfile log/23/server/http_unix_server.port --config log/23/server.cmd --unix-socket '/tmp/curl-http-ZrQuZmLm' --srcdir "/startdir/src/curl/tests" RUN: HTTP-unix server is on PID 151367 port 8999 * pid http-unix => 151367 151367 test 1436...[HTTP requests with multiple connections over Unix socket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1436 ../src/curl -q --include --trace-ascii log/23/trace1436 --trace-config all --trace-time --unix-socket /tmp/curl-http-ZrQuZmLm http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003 > log/23/stdout1436 2> log/23/stderr1436 1436: stdout FAILED: --- log/23/check-expected 2025-07-18 07:36:08.290446410 +0000 +++ log/23/check-generated 2025-07-18 07:36:08.290446410 +0000 @@ -1,15 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Mon, 17 Nov 2014 13:42:47 GMT[LF] -Content-Length: 6[LF] -[LF] -First[LF] -HTTP/1.1 200 OK[LF] -Date: Mon, 17 Nov 2014 13:42:48 GMT[LF] -Content-Length: 7[LF] -[LF] -Second[LF] -HTTP/1.1 200 OK[LF] -Date: Mon, 17 Nov 2014 13:42:49 GMT[LF] -Content-Length: 6[LF] -[LF] -Third[LF] == Contents of files in the log/23/ dir after test 1436 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Mon, 17 Nov 2014 13:42:47 GMT[LF] Content-Length: 6[LF] [LF] First[LF] HTTP/1.1 200 OK[LF] Date: Mon, 17 Nov 2014 13:42:48 GMT[LF] Content-Length: 7[LF] [LF] Second[LF] HTTP/1.1 200 OK[LF] Date: Mon, 17 Nov 2014 13:42:49 GMT[LF] Content-Length: 6[LF] [LF] Third[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1436 ../src/curl -q --include --trace-ascii log/23/trace1436 --trace-config all --trace-time --unix-socket /tmp/curl-http-ZrQuZmLm http://one.example.com/14360001 http://two.example.com/14360002 http://one.example.com/14360003 > log/23/stdout1436 2> log/23/stderr1436 === End of file commands.log === Start of file http_unix_server.log 07:36:06.659965 Running HTTP unix version on /tmp/curl-http-ZrQuZmLm 07:36:06.660137 Wrote pid 151367 to log/23/server/http_unix_server.pid 07:36:06.660170 Wrote port 8999 to log/23/server/http_unix_server.port === End of file http_unix_server.log === Start of file server.cmd Testnum 1436 === End of file server.cmd === Start of file valgrind1436 ==153287== ==153287== Process terminating with default action of signal 4 (SIGILL) ==153287== Illegal opcode at address 0x4003082 ==153287== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153287== by 0x4003082: main (tool_main.c:234) === End of file valgrind1436 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/1/server/http_unix_server.pid" --logfile "log/1/http_unix_server.log" --logdir "log/1" --portfile log/1/server/http_unix_server.port --config log/1/server.cmd --unix-socket '/tmp/curl-http-aXukdIZW' --srcdir "/startdir/src/curl/tests" RUN: HTTP-unix server is on PID 151358 port 8999 * pid http-unix => 151358 151358 test 1435...[simple HTTP GET over Unix socket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1435 ../src/curl -q --output log/1/curl1435.out --include --trace-ascii log/1/trace1435 --trace-config all --trace-time --unix-socket /tmp/curl-http-aXukdIZW http://server-interpreted.example.com/1435 > log/1/stdout1435 2> log/1/stderr1435 1435: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1435 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1435 ../src/curl -q --output log/1/curl1435.out --include --trace-ascii log/1/trace1435 --trace-config all --trace-time --unix-socket /tmp/curl-http-aXukdIZW http://server-interpreted.example.com/1435 > log/1/stdout1435 2> log/1/stderr1435 === End of file commands.log === Start of file http_unix_server.log 07:36:06.661299 Running HTTP unix version on /tmp/curl-http-aXukdIZW 07:36:06.661580 Wrote pid 151358 to log/1/server/http_unix_server.pid 07:36:06.661610 Wrote port 8999 to log/1/server/http_unix_server.port === End of file http_unix_server.log === Start of file server.cmd Testnum 1435 === End of file server.cmd === Start of file valgrind1435 ==153281== ==153281== Process terminating with default action of signal 4 (SIGILL) ==153281== Illegal opcode at address 0x4003082 ==153281== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153281== by 0x4003082: main (tool_main.c:234) === End of file valgrind1435 test 1476...[PSL violating cookie with mixed case domain and cookie domain property] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1476 ../src/curl -q --output log/2/curl1476.out --include --trace-ascii log/2/trace1476 --trace-config all --trace-time -x http://127.0.0.1:45457/1476 http://curl.co.UK -c log/2/cookies1476.txt > log/2/stdout1476 2> log/2/stderr1476 1476: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1476 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1476 ../src/curl -q --output log/2/curl1476.out --include --trace-ascii log/2/trace1476 --trace-config all --trace-time -x http://127.0.0.1:45457/1476 http://curl.co.UK -c log/2/cookies1476.txt > log/2/stdout1476 2> log/2/stderr1476 === End of file commands.log === Start of file http_server.log 07:36:07.674315 ====> Client connect 07:36:07.674346 accept_connection 3 returned 4 07:36:07.674360 accept_connection 3 returned 0 07:36:07.674374 Read 93 bytes 07:36:07.674383 Process 93 bytes request 07:36:07.674396 Got request: GET /verifiedserver HTTP/1.1 07:36:07.674404 Are-we-friendly question received 07:36:07.674426 Wrote request (93 bytes) input to log/2/server.input 07:36:07.674440 Identifying ourselves as friends 07:36:07.674490 Response sent (56 bytes) and written to log/2/server.response 07:36:07.674499 special request received, no persistency 07:36:07.674507 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1476 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1476 ==153419== ==153419== Process terminating with default action of signal 4 (SIGILL) ==153419== Illegal opcode at address 0x4003082 ==153419== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153419== by 0x4003082: main (tool_main.c:234) === End of file valgrind1476 test 1479...[HTTP/1.1 resCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1481 ../src/curl -q --output log/14/curl1481.out --include --trace-ascii log/14/trace1481 --trace-config all --trace-time http://moo/ --libcurl log/14/test1481.c --tls-max 1.3 --proxy-tlsv1 -x http://127.0.0.1:37963 > log/14/stdout1481 2> log/14/stderr1481 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1480 ../src/curl -q --output log/15/curl1480.out --include --trace-ascii log/15/trace1480 --trace-config all --trace-time http://127.0.0.1:36993/1480 > log/15/stdout1480 2> log/15/stderr1480 ponse followed by an HTTP/0.9 response over the same connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1479 ../src/curl -q --output log/5/curl1479.out --include --trace-ascii log/5/trace1479 --trace-config all --trace-time http://127.0.0.1:46675/1479 http://127.0.0.1:46675/14790002 > log/5/stdout1479 2> log/5/stderr1479 1479: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1479 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1479 ../src/curl -q --output log/5/curl1479.out --include --trace-ascii log/5/trace1479 --trace-config all --trace-time http://127.0.0.1:46675/1479 http://127.0.0.1:46675/14790002 > log/5/stdout1479 2> log/5/stderr1479 === End of file commands.log === Start of file http_server.log 07:36:07.713750 ====> Client connect 07:36:07.713779 accept_connection 3 returned 4 07:36:07.713794 accept_connection 3 returned 0 07:36:07.713808 Read 93 bytes 07:36:07.713816 Process 93 bytes request 07:36:07.713829 Got request: GET /verifiedserver HTTP/1.1 07:36:07.713837 Are-we-friendly question received 07:36:07.713858 Wrote request (93 bytes) input to log/5/server.input 07:36:07.713872 Identifying ourselves as friends 07:36:07.713924 Response sent (56 bytes) and written to log/5/server.response 07:36:07.713934 special request received, no persistency 07:36:07.713943 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1479 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1479 ==153558== ==153558== Process terminating with default action of signal 4 (SIGILL) ==153558== Illegal opcode at address 0x4003082 ==153558== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153558== by 0x4003082: main (tool_main.c:234) === End of file valgrind1479 setenv SSL_CERT_FILE = test 1481...[--libcurl with TLS version options] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1481 ../src/curl -q --output log/14/curl1481.out --include --trace-ascii log/14/trace1481 --trace-config all --trace-time http://moo/ --libcurl log/14/test1481.c --tls-max 1.3 --proxy-tlsv1 -x http://127.0.0.1:37963 > log/14/stdout1481 2> log/14/stderr1481 1481: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1481 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1481 ../src/curl -q --output log/14/curl1481.out --include --trace-ascii log/14/trace1481 --trace-config all --trace-time http://moo/ --libcurl log/14/test1481.c --tls-max 1.3 --proxy-tlsv1 -x http://127.0.0.1:37963 > log/14/stdout1481 2> log/14/stderr1481 === End of file commands.log === Start of file http_server.log 07:36:07.733753 ====> Client connect 07:36:07.733784 accept_connection 3 returned 4 07:36:07.733797 accept_connection 3 returned 0 07:36:07.734508 Read 93 bytes 07:36:07.734529 Process 93 bytes request 07:36:07.734541 Got request: GET /verifiedserver HTTP/1.1 07:36:07.734549 Are-we-friendly question received 07:36:07.734581 Wrote request (93 bytes) input to log/14/server.input 07:36:07.734596 Identifying ourselves as friends 07:36:07.734644 Response sent (56 bytes) and written to log/14/server.response 07:36:07.734652 special request received, no persistency 07:36:07.734660 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1481 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1481 ==153626== ==153626== Process terminating with default action of signal 4 (SIGILL) ==153626== Illegal opcode at address 0x4003082 ==153626== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153626== by 0x4003082: main (tool_main.c:234) === End of file valgrind1481 test 1480...[HTTP Continue response without final response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1480 ../src/curl -q --output log/15/curl1480.out --include --trace-ascii log/15/trace1480 --trace-config all --trace-time http://127.0.0.1:36993/1480 > log/15/stdout1480 2> log/15/stderr1480 1480: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1480 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1480 ../src/curl -q --output log/15/curl1480.out --include --trace-ascii log/15/trace1480 --trace-config all --trace-time http://127.0.0.1:36993/1480 > log/15/stdout1480 2> log/15/stderr1480 === End of file commands.log === Start of file http_server.log 07:36:07.723890 ====> Client connect 07:36:07.723925 accept_connection 3 returned 4 07:36:07.723941 accept_connection 3 returned 0 07:36:07.723955 Read 93 bytes 07:36:07.723966 Process 93 bytes request 07:36:07.723980 Got request: GET /verifiedserver HTTP/1.1 07:36:07.723987 Are-we-friendly question received 07:36:07.724010 Wrote request (93 bytes) input to log/15/server.input 07:36:07.724023 Identifying ourselves as friends 07:36:07.724070 Response sent (56 bytes) and written to log/15/server.response 07:36:07.724078 special request received, no persistency 07:36:07.724085 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1480 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file valgrind1480 ==153572== ==153572== Process termiRUN: Process with pid 73853 gracefully died CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1482 ../src/curl -q --output log/12/curl1482.out --include --trace-ascii log/12/trace1482 --trace-config all --trace-time http://127.0.0.1:37285/1482 -D log/12/heads1482 > log/12/stdout1482 2> log/12/stderr1482 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1483 ../src/curl -q --output log/16/curl1483.out --include --trace-ascii log/16/trace1483 --trace-config all --trace-time http://127.0.0.1:46739/1483 -D log/16/heads1483 > log/16/stdout1483 2> log/16/stderr1483 nating with default action of signal 4 (SIGILL) ==153572== Illegal opcode at address 0x4003082 ==153572== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153572== by 0x4003082: main (tool_main.c:234) === End of file valgrind1480 test 1475...[-f and 416 with Content-Range: */size] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1475 ../src/curl -q --output log/11/curl1475.out --include --trace-ascii log/11/trace1475 --trace-config all --trace-time http://127.0.0.1:41173/1475 -C - -f > log/11/stdout1475 2> log/11/stderr1475 1475: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1475 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1475 ../src/curl -q --output log/11/curl1475.out --include --trace-ascii log/11/trace1475 --trace-config all --trace-time http://127.0.0.1:41173/1475 -C - -f > log/11/stdout1475 2> log/11/stderr1475 === End of file commands.log === Start of file curl1475.out 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 012345678 === End of file curl1475.out === Start of file http_server.log 07:36:07.664283 ====> Client connect 07:36:07.664317 accept_connection 3 returned 4 07:36:07.664332 accept_connection 3 returned 0 07:36:07.664346 Read 93 bytes 07:36:07.664356 Process 93 bytes request 07:36:07.664368 Got request: GET /verifiedserver HTTP/1.1 07:36:07.664376 Are-we-friendly question received 07:36:07.664398 Wrote request (93 bytes) input to log/11/server.input 07:36:07.664413 Identifying ourselves as friends 07:36:07.664465 Response sent (56 bytes) and written to log/11/server.response 07:36:07.664474 special request received, no persistency 07:36:07.664482 ====> Client disconnect 0 exit_signal_handler: called 07:36:08.149431 signalled to die 07:36:08.149533 ========> IPv4 sws (port 41173 pid: 73853) exits with signal (15) 07:36:08.149546 ========> sws quits === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41173... * Connected to 127.0.0.1 (127.0.0.1) port 41173 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41173 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73853 === End of file http_verify.out === Start of file server.cmd Testnum 1475 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73853 === End of file server.response === Start of file valgrind1475 ==153385== ==153385== Process terminating with default action of signal 4 (SIGILL) ==153385== Illegal opcode at address 0x4003082 ==153385== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153385== by 0x4003082: main (tool_main.c:234) === End of file valgrind1475 test 1482...[HTTP GET with double chunked in TE header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1482 ../src/curl -q --output log/12/curl1482.out --include --trace-ascii log/12/trace1482 --trace-config all --trace-time http://127.0.0.1:37285/1482 -D log/12/heads1482 > log/12/stdout1482 2> log/12/stderr1482 1482: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1482 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1482 ../src/curl -q --output log/12/curl1482.out --include --trace-ascii log/12/trace1482 --trace-config all --trace-time http://127.0.0.1:37285/1482 -D log/12/heads1482 > log/12/stdout1482 2> log/12/stderr1482 === End of file commands.log === Start of file http_server.log 07:36:07.769283 ====> Client connect 07:36:07.769356 accept_connection 3 returned 4 07:36:07.769372 accept_connection 3 returned 0 07:36:07.769385 Read 93 bytes 07:36:07.769395 Process 93 bytes request 07:36:07.769408 Got request: GET /verifiedserver HTTP/1.1 07:36:07.769417 Are-we-friendly question received 07:36:07.769439 Wrote request (93 bytes) input to log/12/server.input 07:36:07.769454 Identifying ourselves as friends 07:36:07.769506 Response sent (56 bytes) and written to log/12/server.response 07:36:07.769516 special request received, no persistency 07:36:07.769525 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1482 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1482 ==153742== ==153742== Process terminating with default action of signal 4 (SIGILL) ==153742== Illegal opcode at address 0x4003082 ==153742== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153742== by 0x4003082: main (tool_main.c:234) === End of file valgrind1482 test 1483...[HTTP GET with double chunked in TE header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1483 ../src/curl -q --output log/16/curl1483.out --include --trace-ascii log/16/trace1483 --trace-config all --trace-time http://127.0.0.1:46739/1483 -D log/16/heads1483 > log/16/stdout1483 2> log/16/stderr1483 1483: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1483 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1483 ../src/curl -q --output log/16/curl1483.out --include --trace-ascii log/16/trace1483 --trace-config all --trace-time http://127.0.0.1:46739/1483 -D log/16/heads1483 > log/16/stdout1483 2> log/16/stderr1483 === End of file commands.log === Start of file http_server.log 07:36:07.789840 ====> Client connect 07:36:07.789874 accept_connection 3 returned 4 07:36:07.789890 accept_connection 3 returned 0 07:36:07.789904 Read 93 bytes 07:36:07.789913 Process 93 bytes request 07:36:07.789926 Got request: GET /verifiedserver HTTP/1.1 07:36:07.789934 Are-we-friendly question received 07:36:07.789960 Wrote request (93 bytes) input to log/16/server.input 07:36:07.789976 Identifying ourselves as friends 07:36:07.790033 Response sent (56 bytes) and written to log/16/server.response 07:36:07.790044 special request received, no persistency 07:36:07.790052 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1484 ../src/curl -q --output log/24/curl1484.out --include --trace-ascii log/24/trace1484 --trace-config all --trace-time -I http://127.0.0.1:38675/1484 --http1.1 > log/24/stdout1484 2> log/24/stderr1484 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1485 ./libtest/libtests lib1485 http://127.0.0.1:33235/1485 > log/4/stdout1485 2> log/4/stderr1485 ely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1483 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind1483 ==153801== ==153801== Process terminating with default action of signal 4 (SIGILL) ==153801== Illegal opcode at address 0x4003082 ==153801== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153801== by 0x4003082: main (tool_main.c:234) === End of file valgrind1483 test 1484...[HTTP HEAD with response body to ignore] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1484 ../src/curl -q --output log/24/curl1484.out --include --trace-ascii log/24/trace1484 --trace-config all --trace-time -I http://127.0.0.1:38675/1484 --http1.1 > log/24/stdout1484 2> log/24/stderr1484 1484: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1484 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1484 ../src/curl -q --output log/24/curl1484.out --include --trace-ascii log/24/trace1484 --trace-config all --trace-time -I http://127.0.0.1:38675/1484 --http1.1 > log/24/stdout1484 2> log/24/stderr1484 === End of file commands.log === Start of file http_server.log 07:36:07.800355 ====> Client connect 07:36:07.800391 accept_connection 3 returned 4 07:36:07.800404 accept_connection 3 returned 0 07:36:07.800415 Read 93 bytes 07:36:07.800423 Process 93 bytes request 07:36:07.800433 Got request: GET /verifiedserver HTTP/1.1 07:36:07.800440 Are-we-friendly question received 07:36:07.800459 Wrote request (93 bytes) input to log/24/server.input 07:36:07.800472 Identifying ourselves as friends 07:36:07.800514 Response sent (56 bytes) and written to log/24/server.response 07:36:07.800522 special request received, no persistency 07:36:07.800528 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1484 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind1484 ==153809== ==153809== Process terminating with default action of signal 4 (SIGILL) ==153809== Illegal opcode at address 0x4003082 ==153809== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==153809== by 0x4003082: main (tool_main.c:234) === End of file valgrind1484 test 1485...[get curlinfo on last header in callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1485 ./libtest/libtests lib1485 http://127.0.0.1:33235/1485 > log/4/stdout1485 2> log/4/stderr1485 1485: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1485 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1485 ./libtest/libtests lib1485 http://127.0.0.1:33235/1485 > log/4/stdout1485 2> log/4/stderr1485 === End of file commands.log === Start of file http_server.log 07:36:07.803640 ====> Client connect 07:36:07.803672 accept_connection 3 returned 4 07:36:07.803688 accept_connection 3 returned 0 07:36:07.803705 Read 93 bytes 07:36:07.803714 Process 93 bytes request 07:36:07.803725 Got request: GET /verifiedserver HTTP/1.1 07:36:07.803734 Are-we-friendly question received 07:36:07.803757 Wrote request (93 bytes) input to log/4/server.input 07:36:07.803772 Identifying ourselves as friends 07:36:07.803822 Response sent (56 bytes) and written to log/4/server.response 07:36:07.803831 special request received, no persistency 07:36:07.803840 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1485 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1485 URL: http://127.0.0.1:33235/1485 === End of file stderr1485 === Start of file valgrind1485 ==153832== ==153832== Process terminating with default action of signal 4 (SIGILL) ==153832== Illegal opcode at address 0x40237AD ==153832== at 0x40237AD: UnknownInlinedFun (string_fortified.h:59) ==153832== by 0x40237AD: test_lib1485.lto_priv.0 (lib1485.c:96) ==153832== by 0x4003443: main (first.c:167) ==153832== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==153832== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x533CFA5: __tsearch (tsearch.c:337) ==153832== by 0x533CFA5: tsearch (tsearch.c:290) ==153832== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==153832== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==153832== by 0x524F3F0: add_alias (gconv_conf.c:178) ==153832== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==153832== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==153832== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== ==153832== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==153832== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x533CFA5: __tsearch (tsearch.c:337) ==153832== by 0x533CFA5: tsearch (tsearch.c:290) ==153832== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==153832== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==153832== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== ==153832== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==153832== at 0x50CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1489 ../src/curl -q --output log/7/curl1489.out --trace-ascii log/7/trace1489 --trace-config all --trace-time http://127.0.0.1:43423/1489 -D % -s > log/7/stdout1489 2> log/7/stderr1489 F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==153832== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==153832== by 0x524F3F0: add_alias (gconv_conf.c:178) ==153832== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==153832== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==153832== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== ==153832== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==153832== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==153832== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==153832== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== ==153832== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==153832== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x533CFA5: __tsearch (tsearch.c:337) ==153832== by 0x533CFA5: tsearch (tsearch.c:290) ==153832== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==153832== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==153832== by 0x524F3F0: add_alias (gconv_conf.c:178) ==153832== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==153832== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==153832== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== ==153832== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==153832== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==153832== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==153832== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==153832== by 0x524F3F0: add_alias (gconv_conf.c:178) ==153832== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==153832== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==153832== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==153832== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==153832== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==153832== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==153832== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==153832== by 0x525A142: setlocale (setlocale.c:337) ==153832== by 0x400336E: main (first.c:123) ==153832== === End of file valgrind1485 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1490 ../src/curl -q --output log/8/curl1490.out --trace-ascii log/8/trace1490 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/result1490.txt -T log/8/upload1490.txt > log/8/stdout1490 2> log/8/stderr1490 test 1489...[-D sent to stderr] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1489 ../src/curl -q --output log/7/curl1489.out --trace-ascii log/7/trace1489 --trace-config all --trace-time http://127.0.0.1:43423/1489 -D % -s > log/7/stdout1489 2> log/7/stderr1489 1489: stderr FAILED: --- log/7/check-expected 2025-07-18 07:36:08.663779751 +0000 +++ log/7/check-generated 2025-07-18 07:36:08.663779751 +0000 @@ -1,11 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -ETag: "21025-dc7-39462498"[CR][LF] -Accept-Ranges: bytes[CR][LF] -Content-Length: 6[CR][LF] -Connection: close[CR][LF] -Content-Type: text/html[CR][LF] -Funny-head: yesyes[CR][LF] -[CR][LF] == Contents of files in the log/7/ dir after test 1489 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] ETag: "21025-dc7-39462498"[CR][LF] Accept-Ranges: bytes[CR][LF] Content-Length: 6[CR][LF] Connection: close[CR][LF] Content-Type: text/html[CR][LF] Funny-head: yesyes[CR][LF] [CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1489 ../src/curl -q --output log/7/curl1489.out --trace-ascii log/7/trace1489 --trace-config all --trace-time http://127.0.0.1:43423/1489 -D % -s > log/7/stdout1489 2> log/7/stderr1489 === End of file commands.log === Start of file http_server.log 07:36:07.964004 ====> Client connect 07:36:07.964036 accept_connection 3 returned 4 07:36:07.964051 accept_connection 3 returned 0 07:36:07.964157 Read 93 bytes 07:36:07.964167 Process 93 bytes request 07:36:07.964177 Got request: GET /verifiedserver HTTP/1.1 07:36:07.964185 Are-we-friendly question received 07:36:07.964207 Wrote request (93 bytes) input to log/7/server.input 07:36:07.964221 Identifying ourselves as friends 07:36:07.964266 Response sent (57 bytes) and written to log/7/server.response 07:36:07.964275 special request received, no persistency 07:36:07.964284 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1489 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind1489 ==154049== ==154049== Process terminating with default action of signal 4 (SIGILL) ==154049== Illegal opcode at address 0x4003082 ==154049== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154049== by 0x4003082: main (tool_main.c:234) === End of file valgrind1489 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1494 ../src/curl -q --output log/17/curl1494.out --include --trace-ascii log/17/trace1494 --trace-config all --trace-time http://127.0.0.1:39089/1494 -D log/17/heads1494 > log/17/stdout1494 2> log/17/stderr1494 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1491 ../src/curl -q --include --trace-ascii log/19/trace1491 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test1491.txt -o log/19/test1491.txt --skip-existing > log/19/stdout1491 2> log/19/stderr1491 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1487 ../src/curl -q --trace-ascii log/20/trace1487 --trace-config all --trace-time http://127.0.0.1:37169/1487 -J -O --output-dir log/20 > log/20/stdout1487 2> log/20/stderr1487 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1493 ../src/curl -q --output log/10/curl1493.out --include --trace-ascii log/10/trace1493 --trace-config all --trace-time http://127.0.0.1:34851/1493 -D log/10/heads1493 > log/10/stdout1493 2> log/10/stderr1493 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1492 ../src/curl -q --trace-ascii log/13/trace1492 --trace-config all --trace-time http://127.0.0.1:33627/junk1492 -J -O --show-headers --output-dir log/13 > log/13/stdout1492 2> log/13/stderr1492 test 1490...["upload" with file:// overwriting existing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1490 ../src/curl -q --output log/8/curl1490.out --trace-ascii log/8/trace1490 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/result1490.txt -T log/8/upload1490.txt > log/8/stdout1490 2> log/8/stderr1490 1490: output (log/8/result1490.txt) FAILED: --- log/8/check-expected 2025-07-18 07:36:08.673779752 +0000 +++ log/8/check-generated 2025-07-18 07:36:08.673779752 +0000 @@ -1,5 +1 @@ -data[LF] -in[LF] -file[LF] -to[LF] -write[LF] +already existing[LF] == Contents of files in the log/8/ dir after test 1490 === Start of file check-expected data[LF] in[LF] file[LF] to[LF] write[LF] === End of file check-expected === Start of file check-generated already existing[LF] === End of file check-generated === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1490 ../src/curl -q --output log/8/curl1490.out --trace-ascii log/8/trace1490 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/8/result1490.txt -T log/8/upload1490.txt > log/8/stdout1490 2> log/8/stderr1490 === End of file commands.log === Start of file result1490.txt already existing === End of file result1490.txt === Start of file server.cmd Testnum 1490 === End of file server.cmd === Start of file upload1490.txt data in file to write === End of file upload1490.txt === Start of file valgrind1490 ==154023== ==154023== Process terminating with default action of signal 4 (SIGILL) ==154023== Illegal opcode at address 0x4003082 ==154023== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154023== by 0x4003082: main (tool_main.c:234) === End of file valgrind1490 test 1493...[HTTP GET with identity + chunked in TE header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1493 ../src/curl -q --output log/10/curl1493.out --include --trace-ascii log/10/trace1493 --trace-config all --trace-time http://127.0.0.1:34851/1493 -D log/10/heads1493 > log/10/stdout1493 2> log/10/stderr1493 1493: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1493 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1493 ../src/curl -q --output log/10/curl1493.out --include --trace-ascii log/10/trace1493 --trace-config all --trace-time http://127.0.0.1:34851/1493 -D log/10/heads1493 > log/10/stdout1493 2> log/10/stderr1493 === End of file commands.log === Start of file http_server.log 07:36:07.985352 ====> Client connect 07:36:07.985402 accept_connection 3 returned 4 07:36:07.985420 accept_connection 3 returned 0 07:36:07.985436 Read 93 bytes 07:36:07.985444 Process 93 bytes request 07:36:07.985455 Got request: GET /verifiedserver HTTP/1.1 07:36:07.985463 Are-we-friendly question received 07:36:07.985502 Wrote request (93 bytes) input to log/10/server.input 07:36:07.985516 Identifying ourselves as friends 07:36:07.985571 Response sent (56 bytes) and written to log/10/server.response 07:36:07.985581 special request received, no persistency 07:36:07.985590 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1493 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind1493 ==154187== ==154187== Process terminating with default action of signal 4 (SIGILL) ==154187== Illegal opcode at address 0x4003082 ==154187== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154187== by 0x4003082: main (tool_main.c:234) === End of file valgrind1493 test 1494...[HTTP GET with identity twice in TE header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1494 ../src/curl -q --output log/17/curl1494.out --include --trace-ascii log/17/trace1494 --trace-config all --trace-time http://127.0.0.1:39089/1494 -D log/17/heads1494 > log/17/stdout1494 2> log/17/stderr1494 1494: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1494 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1494 ../src/curl -q --output log/17/curl1494.out --include --trace-ascii log/17/trace1494 --trace-config all --trace-time http://127.0.0.1:39089/1494 -D log/17/heads1494 > log/17/stdout1494 2> log/17/stderr1494 === End of file commands.log === Start of file http_server.log 07:36:08.000407 ====> Client connect 07:36:08.000525 accept_connection 3 returned 4 07:36:08.000547 accept_connection 3 returned 0 07:36:08.000564 Read 93 bytes 07:36:08.000573 Process 93 bytes request 07:36:08.000587 Got request: GET /verifiedserver HTTP/1.1 07:36:08.000596 Are-we-friendly question received 07:36:08.000621 Wrote request (93 bytes) input to log/17/server.input 07:36:08.000637 Identifying ourselves as friends 07:36:08.000709 Response sent (56 bytes) and written to log/17/server.response 07:36:08.000720 special request received, no persistency 07:36:08.000729 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1494 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1494 ==154291== ==154291== Process terminating with default action of signal 4 (SIGILL) ==154291== Illegal opcode at address 0x4003082 ==154291== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154291== by 0x4003082: main (tool_main.c:234) === End of file valgrind1494 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1456 ../src/curl -q --output log/9/curl1456.out --include --trace-ascii log/9/trace1456 --trace-config all --trace-time -g "http://[::1]:35575/1456" --haproxy-protocol > log/9/stdout1456 2> log/9/stderr1456 test 1491...[file:// don't overwrite self with --skip-existing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1491 ../src/curl -q --include --trace-ascii log/19/trace1491 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test1491.txt -o log/19/test1491.txt --skip-existing > log/19/stdout1491 2> log/19/stderr1491 1491: stderr FAILED: --- log/19/check-expected 2025-07-18 07:36:08.683779752 +0000 +++ log/19/check-generated 2025-07-18 07:36:08.683779752 +0000 @@ -1 +0,0 @@ -Note: skips transfer, "log/19/test1491.txt" exists locally[CR][LF] == Contents of files in the log/19/ dir after test 1491 === Start of file check-expected Note: skips transfer, "log/19/test1491.txt" exists locally[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1491 ../src/curl -q --include --trace-ascii log/19/trace1491 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/19/test1491.txt -o log/19/test1491.txt --skip-existing > log/19/stdout1491 2> log/19/stderr1491 === End of file commands.log === Start of file server.cmd Testnum 1491 === End of file server.cmd === Start of file test1491.txt foo bar bar foo moo === End of file test1491.txt === Start of file valgrind1491 ==154033== ==154033== Process terminating with default action of signal 4 (SIGILL) ==154033== Illegal opcode at address 0x4003082 ==154033== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154033== by 0x4003082: main (tool_main.c:234) === End of file valgrind1491 test 1487...[HTTP GET with -J and Content-Disposition on 301] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1487 ../src/curl -q --trace-ascii log/20/trace1487 --trace-config all --trace-time http://127.0.0.1:37169/1487 -J -O --output-dir log/20 > log/20/stdout1487 2> log/20/stderr1487 1487: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1487 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1487 ../src/curl -q --trace-ascii log/20/trace1487 --trace-config all --trace-time http://127.0.0.1:37169/1487 -J -O --output-dir log/20 > log/20/stdout1487 2> log/20/stderr1487 === End of file commands.log === Start of file http_server.log 07:36:07.964044 ====> Client connect 07:36:07.964070 accept_connection 3 returned 4 07:36:07.964083 accept_connection 3 returned 0 07:36:07.964096 Read 93 bytes 07:36:07.964106 Process 93 bytes request 07:36:07.964119 Got request: GET /verifiedserver HTTP/1.1 07:36:07.964127 Are-we-friendly question received 07:36:07.964149 Wrote request (93 bytes) input to log/20/server.input 07:36:07.964165 Identifying ourselves as friends 07:36:07.964217 Response sent (56 bytes) and written to log/20/server.response 07:36:07.964226 special request received, no persistency 07:36:07.964234 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1487 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1487 ==154046== ==154046== Process terminating with default action of signal 4 (SIGILL) ==154046== Illegal opcode at address 0x4003082 ==154046== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154046== by 0x4003082: main (tool_main.c:234) === End of file valgrind1487 test 1492...[HTTP GET with -J + --show-headers but no Content-Disposition:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1492 ../src/curl -q --trace-ascii log/13/trace1492 --trace-config all --trace-time http://127.0.0.1:33627/junk1492 -J -O --show-headers --output-dir log/13 > log/13/stdout1492 2> log/13/stderr1492 1492: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1492 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1492 ../src/curl -q --trace-ascii log/13/trace1492 --trace-config all --trace-time http://127.0.0.1:33627/junk1492 -J -O --show-headers --output-dir log/13 > log/13/stdout1492 2> log/13/stderr1492 === End of file commands.log === Start of file http_server.log 07:36:07.985349 ====> Client connect 07:36:07.985411 accept_connection 3 returned 4 07:36:07.985428 accept_connection 3 returned 0 07:36:07.985443 Read 93 bytes 07:36:07.985453 Process 93 bytes request 07:36:07.985466 Got request: GET /verifiedserver HTTP/1.1 07:36:07.985475 Are-we-friendly question received 07:36:07.985510 Wrote request (93 bytes) input to log/13/server.input 07:36:07.985527 Identifying ourselves as friends 07:36:07.985588 Response sent (56 bytes) and written to log/13/server.response 07:36:07.985599 special request received, no persistency 07:36:07.985608 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1492 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1492 ==154181== ==154181== Process terminating with default action of signal 4 (SIGILL) ==154181== Illegal opcode at address 0x4003082 ==154181== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154181== by 0x4003082: main (tool_main.c:234) === End of file valgrind1492 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/9/server/http_ipv6_server.pid" --logfile "log/9/http_ipv6_server.log" --logdir "log/9" --portfile log/9/server/http_ipv6_server.port --config log/9/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 152448 port 35575 * pid http-ipv6 => 152448 152448 test 1456...[HTTP-IPv6 GET with PROXY protocol] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1456 ../src/curl -q --output log/9/curl1456.out --include --trace-ascii log/9/trace1456 --trace-config all --trace-time -g "http://[::1]:35575/1456" --haproxy-protocol > log/9/stdout1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1496 ../src/curl -q --output log/1/curl1496.out --include --trace-ascii log/1/trace1496 --trace-config all --trace-time http://127.0.0.1:38941/1496 -D log/1/heads1496 > log/1/stdout1496 2> log/1/stderr1496 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1495 ../src/curl -q --output log/23/curl1495.out --include --trace-ascii log/23/trace1495 --trace-config all --trace-time http://127.0.0.1:45701/1495 -D log/23/heads1495 > log/23/stdout1495 2> log/23/stderr1495 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1498 ../src/curl -q --output log/5/curl1498.out --include --trace-ascii log/5/trace1498 --trace-config all --trace-time http://127.0.0.1:46675/bzz/1498 -T . log/5/stdout1498 2> log/5/stderr1498 456 2> log/9/stderr1456 1456: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1456 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1456 ../src/curl -q --output log/9/curl1456.out --include --trace-ascii log/9/trace1456 --trace-config all --trace-time -g "http://[::1]:35575/1456" --haproxy-protocol > log/9/stdout1456 2> log/9/stderr1456 === End of file commands.log === Start of file http_ipv6_server.log 07:36:07.226624 Running HTTP IPv6 version on port 35575 07:36:07.226707 Wrote pid 152448 to log/9/server/http_ipv6_server.pid 07:36:07.226762 Wrote port 35575 to log/9/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 1456 === End of file server.cmd === Start of file valgrind1456 ==154560== ==154560== Process terminating with default action of signal 4 (SIGILL) ==154560== Illegal opcode at address 0x4003082 ==154560== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154560== by 0x4003082: main (tool_main.c:234) === End of file valgrind1456 test 1496...[HTTP GET with gzip + chunked transfer-encoding without being asked] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1496 ../src/curl -q --output log/1/curl1496.out --include --trace-ascii log/1/trace1496 --trace-config all --trace-time http://127.0.0.1:38941/1496 -D log/1/heads1496 > log/1/stdout1496 2> log/1/stderr1496 1496: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1496 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1496 ../src/curl -q --output log/1/curl1496.out --include --trace-ascii log/1/trace1496 --trace-config all --trace-time http://127.0.0.1:38941/1496 -D log/1/heads1496 > log/1/stdout1496 2> log/1/stderr1496 === End of file commands.log === Start of file http_server.log 07:36:08.171114 ====> Client connect 07:36:08.171145 accept_connection 3 returned 4 07:36:08.171161 accept_connection 3 returned 0 07:36:08.171173 Read 93 bytes 07:36:08.171182 Process 93 bytes request 07:36:08.171193 Got request: GET /verifiedserver HTTP/1.1 07:36:08.171202 Are-we-friendly question received 07:36:08.171226 Wrote request (93 bytes) input to log/1/server.input 07:36:08.171241 Identifying ourselves as friends 07:36:08.171290 Response sent (56 bytes) and written to log/1/server.response 07:36:08.171300 special request received, no persistency 07:36:08.171308 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1496 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1496 ==154450== ==154450== Process terminating with default action of signal 4 (SIGILL) ==154450== Illegal opcode at address 0x4003082 ==154450== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154450== by 0x4003082: main (tool_main.c:234) === End of file valgrind1496 test 1495...[HTTP GET with chunked + identity in TE header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1495 ../src/curl -q --output log/23/curl1495.out --include --trace-ascii log/23/trace1495 --trace-config all --trace-time http://127.0.0.1:45701/1495 -D log/23/heads1495 > log/23/stdout1495 2> log/23/stderr1495 1495: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1495 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1495 ../src/curl -q --output log/23/curl1495.out --include --trace-ascii log/23/trace1495 --trace-config all --trace-time http://127.0.0.1:45701/1495 -D log/23/heads1495 > log/23/stdout1495 2> log/23/stderr1495 === End of file commands.log === Start of file http_server.log 07:36:08.167965 ====> Client connect 07:36:08.168002 accept_connection 3 returned 4 07:36:08.168017 accept_connection 3 returned 0 07:36:08.168031 Read 93 bytes 07:36:08.168041 Process 93 bytes request 07:36:08.168054 Got request: GET /verifiedserver HTTP/1.1 07:36:08.168062 Are-we-friendly question received 07:36:08.168084 Wrote request (93 bytes) input to log/23/server.input 07:36:08.168100 Identifying ourselves as friends 07:36:08.168295 Response sent (56 bytes) and written to log/23/server.response 07:36:08.168307 special request received, no persistency 07:36:08.168315 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1495 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind1495 ==154446== ==154446== Process terminating with default action of signal 4 (SIGILL) ==154446== Illegal opcode at address 0x4003082 ==154446== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154446== by 0x4003082: main (tool_main.c:234) === End of file valgrind1495 test 1498...[HTTP PUT from stdin using period] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1498 ../src/curl -q --output log/5/curl1498.out --include --trace-ascii log/5/trace1498 --trace-config all --trace-time http://127.0.0.1:46675/bzz/1498 -T . log/5/stdout1498 2> log/5/stderr1498 1498: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1498 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1498 ../src/curl -q --output log/5/curl1498.out --include --trace-ascii log/5/trace1498 --trace-config all --trace-time http://127.0.0.1:46675/bzz/1498 -T . log/5/stdout1498 2> log/5/stderr1498 === End of file commands.log === Start of file http_server.log 07:36:08.216821 ====> Client connect 07:36:08.216855 accept_connection 3 returned 4 07:36:08.216871 accept_connection 3 returned 0 07:36:08.216885 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1499 ../src/curl -q --output log/14/curl1499.out --include --trace-ascii log/14/trace1499 --trace-config all --trace-time http://127.0.0.1:37963/1499 http://127.0.0.1:37963/1499 -D log/14/heads1499 > log/14/stdout1499 2> log/14/stderr1499 Read 93 bytes 07:36:08.216895 Process 93 bytes request 07:36:08.216909 Got request: GET /verifiedserver HTTP/1.1 07:36:08.216918 Are-we-friendly question received 07:36:08.216942 Wrote request (93 bytes) input to log/5/server.input 07:36:08.216958 Identifying ourselves as friends 07:36:08.217013 Response sent (56 bytes) and written to log/5/server.response 07:36:08.217024 special request received, no persistency 07:36:08.217034 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1498 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stdin-for-1498 hejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhejhej === End of file stdin-for-1498 === Start of file valgrind1498 ==154611== ==154611== Process terminating with default action of signal 4 (SIGILL) ==154611== Illegal opcode at address 0x4003082 ==154611== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154611== by 0x4003082: main (tool_main.c:234) === End of file valgrind1498 test 1499...[HTTP chunked encoding and chunked trailer, twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1499 ../src/curl -q --output log/14/curl1499.out --include --trace-ascii log/14/trace1499 --trace-config all --trace-time http://127.0.0.1:37963/1499 http://127.0.0.1:37963/1499 -D log/14/heads1499 > log/14/stdout1499 2> log/14/stderr1499 1499: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == ConCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1497 ../src/curl -q --output log/2/curl1497.out --include --trace-ascii log/2/trace1497 --trace-config all --trace-time http://127.0.0.1:45457/1497 --retry 3 -o /dev/null > log/2/stdout1497 2> log/2/stderr1497 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1467 ../src/curl -q --output log/18/curl1467.out --include --trace-ascii log/18/trace1467 --trace-config all --trace-time --socks5 localhost/tmp/curl-socksd-GYUuiBJl http://127.0.0.1:45825/1467 > log/18/stdout1467 2> log/18/stderr1467 tents of files in the log/14/ dir after test 1499 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1499 ../src/curl -q --output log/14/curl1499.out --include --trace-ascii log/14/trace1499 --trace-config all --trace-time http://127.0.0.1:37963/1499 http://127.0.0.1:37963/1499 -D log/14/heads1499 > log/14/stdout1499 2> log/14/stderr1499 === End of file commands.log === Start of file http_server.log 07:36:08.240881 ====> Client connect 07:36:08.240917 accept_connection 3 returned 4 07:36:08.240933 accept_connection 3 returned 0 07:36:08.240946 Read 93 bytes 07:36:08.240955 Process 93 bytes request 07:36:08.240969 Got request: GET /verifiedserver HTTP/1.1 07:36:08.240978 Are-we-friendly question received 07:36:08.241002 Wrote request (93 bytes) input to log/14/server.input 07:36:08.241017 Identifying ourselves as friends 07:36:08.241069 Response sent (56 bytes) and written to log/14/server.response 07:36:08.241078 special request received, no persistency 07:36:08.241087 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1499 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1499 ==154720== ==154720== Process terminating with default action of signal 4 (SIGILL) ==154720== Illegal opcode at address 0x4003082 ==154720== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154720== by 0x4003082: main (tool_main.c:234) === End of file valgrind1499 test 1497...[HTTP GET --retry on 503 error with output to /dev/null] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1497 ../src/curl -q --output log/2/curl1497.out --include --trace-ascii log/2/trace1497 --trace-config all --trace-time http://127.0.0.1:45457/1497 --retry 3 -o /dev/null > log/2/stdout1497 2> log/2/stderr1497 1497: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1497 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1497 ../src/curl -q --output log/2/curl1497.out --include --trace-ascii log/2/trace1497 --trace-config all --trace-time http://127.0.0.1:45457/1497 --retry 3 -o /dev/null > log/2/stdout1497 2> log/2/stderr1497 === End of file commands.log === Start of file http_server.log 07:36:08.205592 ====> Client connect 07:36:08.205625 accept_connection 3 returned 4 07:36:08.205641 accept_connection 3 returned 0 07:36:08.205656 Read 93 bytes 07:36:08.205665 Process 93 bytes request 07:36:08.205678 Got request: GET /verifiedserver HTTP/1.1 07:36:08.205687 Are-we-friendly question received 07:36:08.205712 Wrote request (93 bytes) input to log/2/server.input 07:36:08.205727 Identifying ourselves as friends 07:36:08.205786 Response sent (56 bytes) and written to log/2/server.response 07:36:08.205796 special request received, no persistency 07:36:08.205804 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1497 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind1497 ==154564== ==154564== Process terminating with default action of signal 4 (SIGILL) ==154564== Illegal opcode at address 0x4003082 ==154564== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==154564== by 0x4003082: main (tool_main.c:234) === End of file valgrind1497 prechecked ./libtest/lib1517 check test 1517 SKIPPED: precheck command error startnew: ./server/servers socksd --pidfile log/18/server/socks2_server.pid --reqfile log/18/socksd-request.log --logfile log/18/socks2_server.log --unix-socket /tmp/curl-socksd-GYUuiBJl --backend 127.0.0.1 --config log/18/server.cmd RUN: SOCKS2 server is now running PID 152892 * pid socks5unix => 152892 152892 test 1467...[HTTP GET via SOCKS5 proxy via Unix sockets] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1467 ../src/curl -q --output log/18/curl1467.out --include --trace-ascii log/18/trace1467 --trace-config all --trace-time --socks5 localhost/tmp/curl-socksd-GYUuiBJl http://127.0.0.1:45825/1467 > log/18/stdout1467 2> log/18/stderr1467 1467: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1467 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1467 ../src/curl -q --output log/18/curl1467.out --include --trace-ascii log/18/trace1467 --trace-config all --trace-time --socks5 localhost/tmp/curl-socksd-GYUuiBJl http://127.0.0.1:45825/1467 > log/18/stdout1467 2> log/18/stderr1467 === End of file commands.log === Start of file http_server.log 07:36:07.399602 ====> Client connect 07:36:07.399640 accept_connection 3 returned 4 07:36:07.399656 accept_connection 3 returned 0 07:36:07.399669 Read 93 bytes 07:36:07.399677 Process 93 bytes request 07:36:07.399689 Got request: GET /verifiedserver HTTP/1.1 07:36:07.399697 Are-we-friendly question received 07:36:07.399723 Wrote request (93 bytes) input to log/18/server.input 07:36:07.399737 Identifying ourselves as friends 07:36:07.399797 Response sent (56 bytes) and written to log/18/server.response 07:36:07.399807 special request received, no persistency 07:36:07.399815 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1467 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file socks2_server.log 07:36:07.405623 Running unix version 07:36:07.405688 Listening on Unix socket /tmp/curl-socksd-GYUuiBJl 07:36:07.405723 Wrote pid 152892 to log/18/server/socks2_server.pid === End of file socks2_server.log === Start of file valCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1468 ../src/curl -q --output log/3/curl1468.out --include --trace-ascii log/3/trace1468 --trace-config all --trace-time http://this.is.a.host.name:42345/1468 --proxy socks5h://localhost/tmp/curl-socksd-4lTrhs0R > log/3/stdout1468 2> log/3/stderr1468 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1500 ./libtest/libtests lib1500 http://127.0.0.1:36993/1500 > log/15/stdout1500 2> log/15/stderr1500 grind1467 ==155105== ==155105== Process terminating with default action of signal 4 (SIGILL) ==155105== Illegal opcode at address 0x4003082 ==155105== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==155105== by 0x4003082: main (tool_main.c:234) === End of file valgrind1467 startnew: ./server/servers socksd --pidfile log/3/server/socks2_server.pid --reqfile log/3/socksd-request.log --logfile log/3/socks2_server.log --unix-socket /tmp/curl-socksd-4lTrhs0R --backend 127.0.0.1 --config log/3/server.cmd RUN: SOCKS2 server is now running PID 153010 * pid socks5unix => 153010 153010 test 1468...[HTTP GET with host name using SOCKS5h via Unix sockets] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1468 ../src/curl -q --output log/3/curl1468.out --include --trace-ascii log/3/trace1468 --trace-config all --trace-time http://this.is.a.host.name:42345/1468 --proxy socks5h://localhost/tmp/curl-socksd-4lTrhs0R > log/3/stdout1468 2> log/3/stderr1468 1468: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1468 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1468 ../src/curl -q --output log/3/curl1468.out --include --trace-ascii log/3/trace1468 --trace-config all --trace-time http://this.is.a.host.name:42345/1468 --proxy socks5h://localhost/tmp/curl-socksd-4lTrhs0R > log/3/stdout1468 2> log/3/stderr1468 === End of file commands.log === Start of file http_server.log 07:36:07.448751 ====> Client connect 07:36:07.448785 accept_connection 3 returned 4 07:36:07.448802 accept_connection 3 returned 0 07:36:07.448816 Read 93 bytes 07:36:07.448827 Process 93 bytes request 07:36:07.448840 Got request: GET /verifiedserver HTTP/1.1 07:36:07.448849 Are-we-friendly question received 07:36:07.448874 Wrote request (93 bytes) input to log/3/server.input 07:36:07.448889 Identifying ourselves as friends 07:36:07.448965 Response sent (56 bytes) and written to log/3/server.response 07:36:07.448976 special request received, no persistency 07:36:07.448984 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1468 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file socks2_server.log 07:36:07.454705 Running unix version 07:36:07.454777 Listening on Unix socket /tmp/curl-socksd-4lTrhs0R 07:36:07.454834 Wrote pid 153010 to log/3/server/socks2_server.pid === End of file socks2_server.log === Start of file valgrind1468 ==155154== ==155154== Process terminating with default action of signal 4 (SIGILL) ==155154== Illegal opcode at address 0x4003082 ==155154== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==155154== by 0x4003082: main (tool_main.c:234) === End of file valgrind1468 test 1500...[curl_multi_wait] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1500 ./libtest/libtests lib1500 http://127.0.0.1:36993/1500 > log/15/stdout1500 2> log/15/stderr1500 1500: data FAILED: --- log/15/check-expected 2025-07-18 07:36:09.353779767 +0000 +++ log/15/check-generated 2025-07-18 07:36:09.353779767 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 all good![CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Content-Type: text/html[CR][LF] -Content-Length: 12[CR][LF] -Connection: close[CR][LF] -[CR][LF] -Hello World[LF] == Contents of files in the log/15/ dir after test 1500 === Start of file check-expected HTTP/1.1 200 all good![CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Content-Type: text/html[CR][LF] Content-Length: 12[CR][LF] Connection: close[CR][LF] [CR][LF] Hello World[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1500 ./libtest/libtests lib1500 http://127.0.0.1:36993/1500 > log/15/stdout1500 2> log/15/stderr1500 === End of file commands.log === Start of file http_server.log 07:36:08.263259 ====> Client connect 07:36:08.263316 accept_connection 3 returned 4 07:36:08.263330 accept_connection 3 returned 0 07:36:08.263343 Read 93 bytes 07:36:08.263350 Process 93 bytes request 07:36:08.263362 Got request: GET /verifiedserver HTTP/1.1 07:36:08.263369 Are-we-friendly question received 07:36:08.263387 Wrote request (93 bytes) input to log/15/server.input 07:36:08.263400 Identifying ourselves as friends 07:36:08.263442 Response sent (56 bytes) and written to log/15/server.response 07:36:08.263449 special request received, no persistency 07:36:08.263456 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd Testnum 1500 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file stderr1500 URL: http://127.0.0.1:36993/1500 === End of file stderr1500 === Start of file valgrind1500 ==154792== ==154792== Process terminating with default action of signal 4 (SIGILL) ==154792== Illegal opcode at address 0x518AA97 ==154792== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==154792== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==154792== by 0x518AA97: Curl_multi_handle (multi.c:236) ==154792== by 0x4023F00: UnknownInlinedFun (lib1500.c:41) ==154792== by 0x4023F00: test_lib1500.lto_priv.0 (lib1500.c:28) ==154792== by 0x4003443: main (first.c:167) ==154792== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x533CFA5: __tsearch (tsearch.c:337) ==154792== by 0x533CFA5: tsearch (tsearch.c:290) ==154792== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154792== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154792== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154792== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154792== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154792== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== ==154792== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x533CFA5: __tsearch (tsearch.c:337) ==154792== by 0x533CFA5: tsearch (tsearch.c:290) ==154792== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154792== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154792== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== ==154792== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==154792== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==154792== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==154792== by 0x4023F00: UnknownInlinedFun (lib1500.c:41) ==154792== by 0x4023F00: test_lib1500.lto_priv.0 (lib1500.c:28) ==154792== by 0x4003443: main (first.c:167) ==154792== ==154792== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154792== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154792== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154792== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154792== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154792== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== ==154792== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154792== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154792== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== ==154792== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x533CFA5: __tsearch (tsearch.c:337) ==154792== by 0x533CFA5: tsearch (tsearch.c:290) ==154792== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154792== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154792== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154792== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154792== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154792== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1503 ./libtest/libtests lib1502 http://google.com:46739/1503 46739 127.0.0.1 > log/16/stdout1503 2> log/16/stderr1503 : __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== ==154792== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==154792== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154792== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154792== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154792== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154792== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154792== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154792== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154792== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154792== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154792== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154792== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154792== by 0x525A142: setlocale (setlocale.c:337) ==154792== by 0x400336E: main (first.c:123) ==154792== === End of file valgrind1500 test 1503...[HTTP multi with CURLOPT_RESOLVE, cleanup sequence PA] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1503 ./libtest/libtests lib1502 http://google.com:46739/1503 46739 127.0.0.1 > log/16/stdout1503 2> log/16/stderr1503 1503: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1503 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1503 ./libtest/libtests lib1502 http://google.com:46739/1503 46739 127.0.0.1 > log/16/stdout1503 2> log/16/stderr1503 === End of file commands.log === Start of file http_server.log 07:36:08.328001 ====> Client connect 07:36:08.328037 accept_connection 3 returned 4 07:36:08.328053 accept_connection 3 returned 0 07:36:08.328066 Read 93 bytes 07:36:08.328076 Process 93 bytes request 07:36:08.328090 Got request: GET /verifiedserver HTTP/1.1 07:36:08.328099 Are-we-friendly question received 07:36:08.328125 Wrote request (93 bytes) input to log/16/server.input 07:36:08.328140 Identifying ourselves as friends 07:36:08.328188 Response sent (56 bytes) and written to log/16/server.response 07:36:08.328197 special request received, no persistency 07:36:08.328205 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1503 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr1503 URL: http://google.com:46739/1503 === End of file stderr1503 === Start of file valgrind1503 ==154914== ==154914== Process terminating with default action of signal 4 (SIGILL) ==154914== Illegal opcode at address 0x51C2DB3 ==154914== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==154914== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==154914== by 0x51C2DB3: Curl_open (url.c:541) ==154914== by 0x513D46F: curl_easy_init (easy.c:372) ==154914== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154914== by 0x4003443: main (first.c:167) ==154914== 43 (16 direct, 27 indirect) bytes in 1 blocks are definitely lost in loss record 528 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x51AACA9: UnknownInlinedFun (slist.c:68) ==154914== by 0x51AACA9: curl_slist_append (slist.c:99) ==154914== by 0x40543CF: test_lib1502.part.0.lto_priv.0 (lib1502.c:58) ==154914== by 0x4003443: main (first.c:167) ==154914== ==154914== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x533CFA5: __tsearch (tsearch.c:337) ==154914== by 0x533CFA5: tsearch (tsearch.c:290) ==154914== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154914== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154914== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154914== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154914== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154914== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== ==154914== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x533CFA5: __tsearch (tsearch.c:337) ==154914== by 0x533CFA5: tsearch (tsearch.c:290) ==154914== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154914== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154914== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== ==154914== 681 bytes in 17 blocks are possibly lost in loss record 616 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154914== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154914== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154914== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154914== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154914== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== ==154914== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154914== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154914== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== ==154914== 5,480 bytes in 1 blocks are definitely lost in loss record 650 of 657 =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1504 ./libtest/libtests lib1502 http://google.com:38675/1504 38675 127.0.0.1 > log/24/stdout1504 2> log/24/stderr1504 =154914== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==154914== by 0x51C2D03: Curl_open (url.c:520) ==154914== by 0x513D46F: curl_easy_init (easy.c:372) ==154914== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154914== by 0x4003443: main (first.c:167) ==154914== ==154914== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x533CFA5: __tsearch (tsearch.c:337) ==154914== by 0x533CFA5: tsearch (tsearch.c:290) ==154914== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154914== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154914== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154914== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154914== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154914== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== ==154914== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==154914== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154914== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154914== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154914== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154914== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154914== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154914== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154914== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154914== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154914== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154914== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154914== by 0x525A142: setlocale (setlocale.c:337) ==154914== by 0x400336E: main (first.c:123) ==154914== === End of file valgrind1503 test 1504...[HTTP multi with CURLOPT_RESOLVE, cleanup sequence UB] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1504 ./libtest/libtests lib1502 http://google.com:38675/1504 38675 127.0.0.1 > log/24/stdout1504 2> log/24/stderr1504 1504: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1504 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1504 ./libtest/libtests lib1502 http://google.com:38675/1504 38675 127.0.0.1 > log/24/stdout1504 2> log/24/stderr1504 === End of file commands.log === Start of file http_server.log 07:36:08.332841 ====> Client connect 07:36:08.332878 accept_connection 3 returned 4 07:36:08.332895 accept_connection 3 returned 0 07:36:08.332907 Read 93 bytes 07:36:08.332917 Process 93 bytes request 07:36:08.332927 Got request: GET /verifiedserver HTTP/1.1 07:36:08.332936 Are-we-friendly question received 07:36:08.332963 Wrote request (93 bytes) input to log/24/server.input 07:36:08.332979 Identifying ourselves as friends 07:36:08.333035 Response sent (56 bytes) and written to log/24/server.response 07:36:08.333046 special request received, no persistency 07:36:08.333055 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1504 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr1504 URL: http://google.com:38675/1504 === End of file stderr1504 === Start of file valgrind1504 ==154931== ==154931== Process terminating with default action of signal 4 (SIGILL) ==154931== Illegal opcode at address 0x51C2DB3 ==154931== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==154931== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==154931== by 0x51C2DB3: Curl_open (url.c:541) ==154931== by 0x513D46F: curl_easy_init (easy.c:372) ==154931== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154931== by 0x4003443: main (first.c:167) ==154931== 43 (16 direct, 27 indirect) bytes in 1 blocks are definitely lost in loss record 528 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x51AACA9: UnknownInlinedFun (slist.c:68) ==154931== by 0x51AACA9: curl_slist_append (slist.c:99) ==154931== by 0x40543CF: test_lib1502.part.0.lto_priv.0 (lib1502.c:58) ==154931== by 0x4003443: main (first.c:167) ==154931== ==154931== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x533CFA5: __tsearch (tsearch.c:337) ==154931== by 0x533CFA5: tsearch (tsearch.c:290) ==154931== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154931== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154931== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154931== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154931== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154931== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== ==154931== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x533CFA5: __tsearch (tsearch.c:337) ==154931== by 0x533CFA5: tsearch (tsearch.c:290) ==154931== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154931== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154931== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== ==154931== 681 bytes in 17 blocks are possibly lost in loss record 616 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154931== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154931== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154931== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154931== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154931== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1501 ./libtest/libtests lib1501 ftp://127.0.0.1:43393/1501/ > log/11/stdout1501 2> log/11/stderr1501 * kill pid for ftp-ctrl => 85555 RUN: Process with pid 85489 signalled to die CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1502 ./libtest/libtests lib1502 http://google.com:37285/1502 37285 127.0.0.1 > log/12/stdout1502 2> log/12/stderr1502 931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== ==154931== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154931== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154931== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== ==154931== 5,480 bytes in 1 blocks are definitely lost in loss record 650 of 657 ==154931== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==154931== by 0x51C2D03: Curl_open (url.c:520) ==154931== by 0x513D46F: curl_easy_init (easy.c:372) ==154931== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154931== by 0x4003443: main (first.c:167) ==154931== ==154931== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x533CFA5: __tsearch (tsearch.c:337) ==154931== by 0x533CFA5: tsearch (tsearch.c:290) ==154931== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154931== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154931== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154931== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154931== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154931== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== ==154931== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==154931== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154931== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154931== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154931== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154931== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154931== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154931== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154931== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154931== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154931== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154931== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154931== by 0x525A142: setlocale (setlocale.c:337) ==154931== by 0x400336E: main (first.c:123) ==154931== === End of file valgrind1504 test 1502...[HTTP multi with CURLOPT_RESOLVE, cleanup sequence UA] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1502 ./libtest/libtests lib1502 http://google.com:37285/1502 37285 127.0.0.1 > log/12/stdout1502 2> log/12/stderr1502 1502: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1502 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1502 ./libtest/libtests lib1502 http://google.com:37285/1502 37285 127.0.0.1 > log/12/stdout1502 2> log/12/stderr1502 === End of file commands.log === Start of file http_server.log 07:36:08.329115 ====> Client connect 07:36:08.329147 accept_connection 3 returned 4 07:36:08.329163 accept_connection 3 returned 0 07:36:08.329176 Read 93 bytes 07:36:08.329186 Process 93 bytes request 07:36:08.329198 Got request: GET /verifiedserver HTTP/1.1 07:36:08.329207 Are-we-friendly question received 07:36:08.329233 Wrote request (93 bytes) input to log/12/server.input 07:36:08.329249 Identifying ourselves as friends 07:36:08.329535 Response sent (56 bytes) and written to log/12/server.response 07:36:08.329547 special request received, no persistency 07:36:08.329556 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1502 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr1502 URL: http://google.com:37285/1502 === End of file stderr1502 === Start of file valgrind1502 ==154915== ==154915== Process terminating with default action of signal 4 (SIGILL) ==154915== Illegal opcode at address 0x51C2DB3 ==154915== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==154915== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==154915== by 0x51C2DB3: Curl_open (url.c:541) ==154915== by 0x513D46F: curl_easy_init (easy.c:372) ==154915== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154915== by 0x4003443: main (first.c:167) ==154915== 43 (16 direct, 27 indirect) bytes in 1 blocks are definitely lost in loss record 528 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x51AACA9: UnknownInlinedFun (slist.c:68) ==154915== by 0x51AACA9: curl_slist_append (slist.c:99) ==154915== by 0x40543CF: test_lib1502.part.0.lto_priv.0 (lib1502.c:58) ==154915== by 0x4003443: main (first.c:167) ==154915== ==154915== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x533CFA5: __tsearch (tsearch.c:337) ==154915== by 0x533CFA5: tsearch (tsearch.c:290) ==154915== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154915== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154915== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154915== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154915== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154915== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== ==154915== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x533CFA5: __tsearch (tsearch.c:337) ==154915== by 0x533CFA5: tsearch (tsearch.c:290) ==154915== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154915== RUN: Process with pid 85489 gracefully died by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154915== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== ==154915== 681 bytes in 17 blocks are possibly lost in loss record 616 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154915== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154915== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154915== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154915== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154915== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== ==154915== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154915== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154915== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== ==154915== 5,480 bytes in 1 blocks are definitely lost in loss record 650 of 657 ==154915== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==154915== by 0x51C2D03: Curl_open (url.c:520) ==154915== by 0x513D46F: curl_easy_init (easy.c:372) ==154915== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==154915== by 0x4003443: main (first.c:167) ==154915== ==154915== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x533CFA5: __tsearch (tsearch.c:337) ==154915== by 0x533CFA5: tsearch (tsearch.c:290) ==154915== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154915== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154915== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154915== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154915== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154915== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== ==154915== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==154915== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154915== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154915== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154915== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154915== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154915== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154915== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154915== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154915== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154915== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154915== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154915== by 0x525A142: setlocale (setlocale.c:337) ==154915== by 0x400336E: main (first.c:123) ==154915== === End of file valgrind1502 test 1501...[FTP with multi interface and slow LIST response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1501 ./libtest/libtests lib1501 ftp://127.0.0.1:43393/1501/ > log/11/stdout1501 2> log/11/stderr1501 1501: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1501 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1501 ./libtest/libtests lib1501 ftp://127.0.0.1:43393/1501/ > log/11/stdout1501 2> log/11/stderr1501 === End of file commands.log === Start of file ftp_server.log 07:36:08.428990 ====> Client connect 07:36:08.429152 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:08.429436 < "USER anonymous" 07:36:08.429485 > "331 We are happy you popped in![CR][LF]" 07:36:08.429719 < "PASS ftp@example.com" 07:36:08.429757 > "230 Welcome you silly person[CR][LF]" 07:36:08.429930 < "PWD" 07:36:08.429966 > "257 "/" is current directory[CR][LF]" 07:36:08.430293 < "EPSV" 07:36:08.430318 ====> Passive DATA channel requested by client 07:36:08.430330 DATA sockfilt for passive data channel starting... 07:36:08.432110 DATA sockfilt for passive data channel started (pid 154798) 07:36:08.432206 DATA sockfilt for passive data channel listens on port 45563 07:36:08.432246 > "229 Entering Passive Mode (|||45563|)[LF]" 07:36:08.432264 Client has been notified that DATA conn will be accepted on port 45563 07:36:08.432504 Client connects to port 45563 07:36:08.432532 ====> Client established passive DATA connection on port 45563 07:36:08.432594 < "TYPE I" 07:36:08.432620 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:08.432854 < "SIZE verifiedserver" 07:36:08.432906 > "213 17[CR][LF]" 07:36:08.433057 < "RETR verifiedserver" 07:36:08.433098 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:08.433174 =====> Closing passive DATA connection... 07:36:08.433192 Server disconnects passive DATA connection 07:36:08.433312 Server disconnected passive DATA connection 07:36:08.433342 DATA sockfilt for passive data channel quits (pid 154798) 07:36:08.433566 DATA sockfilt for passive data channel quit (pid 154798) 07:36:08.433594 =====> Closed passive DATA connection 07:36:08.433659 > "226 File transfer complete[CR][LF]" 07:36:08.478752 < "QUIT" 07:36:08.478802 > "221 bye bye baby[CR][LF]" 07:36:08.478919 MAIN sockfilt said DISC 07:36:08.478938 ====> Client disconnected 07:36:08.479007 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:08.274855 ====> Client connect 07:36:08.275147 Received DATA (on stdin) 07:36:08.275159 > 160 bytes data, server => client 07:36:08.275170 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:08.275180 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:08.275189 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:08.275266 < 16 bytes data, client => server 07:36:08.275278 'USER anonymous\r\n' 07:36:08.275477 Received DATA (on stdin) 07:36:08.275496 > 33 bytes data, server => client 07:36:08.275508 '331 We are happy you popped in!\r\n' 07:36:08.275597 < 22 bytes data, client => server 07:36:08.275608 'PASS ftp@example.com\r\n' 07:36:08.275744 Received DATA (on stdin) 07:36:08.275758 > 30 bytes data, server => client 07:36:08.275768 '230 Welcome you silly person\r\n' 07:36:08.275819 < 5 bytes data, client => server 07:36:08.275833 'PWD\r\n' 07:36:08.275954 Received DATA (on stdin) 07:36:08.276130 > 30 bytes data, server => client 07:36:08.276140 '257 "/" is current directory\r\n' 07:36:08.276197 < 6 bytes data, client => server 07:36:08.276206 'EPSV\r\n' 07:36:08.278253 Received DATA (on stdin) 07:36:08.278266 > 38 bytes data, server => client 07:36:08.278277 '229 Entering Passive Mode (|||45563|)\n' 07:36:08.278436 < 8 bytes data, client => server 07:36:08.278447 'TYPE I\r\n' 07:36:08.278609 Received DATA (on stdin) 07:36:08.278621 > 33 bytes data, server => client 07:36:08.278631 '200 I modify TYPE as you wanted\r\n' 07:36:08.278677 < 21 bytes data, client => server 07:36:08.278690 'SIZE verifiedserver\r\n' 07:36:08.278872 Received DATA (on stdin) 07:36:08.278887 > 8 bytes data, server => client 07:36:08.278897 '213 17\r\n' 07:36:08.278945 < 21 bytes data, client => server 07:36:08.278956 'RETR verifiedserver\r\n' 07:36:08.279130 Received DATA (on stdin) 07:36:08.279155 > 29 bytes data, server => client 07:36:08.279167 '150 Binary junk (17 bytes).\r\n' 07:36:08.279606 Received DATA (on stdin) 07:36:08.279653 > 28 bytes data, server => client 07:36:08.279664 '226 File transfer complete\r\n' 07:36:08.324548 < 6 bytes data, client => server 07:36:08.324576 'QUIT\r\n' 07:36:08.324787 Received DATA (on stdin) 07:36:08.324798 > 18 bytes data, server => client 07:36:08.324808 '221 bye bye baby\r\n' 07:36:08.324863 ====> Client disconnect 07:36:08.324973 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:08.277913 Running IPv4 version 07:36:08.277981 Listening on port 45563 07:36:08.278022 Wrote pid 154798 to log/11/server/ftp_sockdata.pid 07:36:08.278041 Received PING (on stdin) 07:36:08.278116 Received PORT (on stdin) 07:36:08.278409 ====> Client connect 07:36:08.279181 Received DATA (on stdin) 07:36:08.279199 > 17 bytes data, server => client 07:36:08.279209 'WE ROOLZ: 85489\r\n' 07:36:08.279235 Received DISC (on stdin) 07:36:08.279246 ====> Client forcibly disconnected 07:36:08.279334 Received QUIT (on stdin) 07:36:08.279344 quits 07:36:08.279408 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd DELAY LIST 2 DELAY TYPE 2 Testnum 1501 === End of file server.cmd === Start of file stderr1501 URL: ftp://127.0.0.1:43393/1501/ === End of file stderr1501 === Start of file valgrind1501 ==154912== ==154912== Process terminating with default action of signal 4 (SIGILL) ==154912== Illegal opcode at address 0x51C2DB3 ==154912== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==154912== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==154912== by 0x51C2DB3: Curl_open (url.c:541) ==154912== by 0x513D46F: curl_easy_init (easy.c:372) ==154912== by 0x4024FF9: test_lib1501.lto_priv.0 (lib1501.c:44) ==154912== by 0x4003443: main (first.c:167) ==154912== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x533CFA5: __tsearch (tsearch.c:337) ==154912== by 0x533CFA5: tsearch (tsearch.c:290) ==154912== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154912== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154912== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154912== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154912== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154912== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocale.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== ==154912== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x533CFA5: __tsearch (tsearch.c:337) ==154912== by 0x533CFA5: tsearch (tsearch.c:290) ==154912== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154912== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154912== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocale.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== ==154912== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154912== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154912== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154912== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154912== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==154912== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocale.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== ==154912== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154912== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==154912== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocale.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== ==154912== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==154912== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==154912== by 0x51C2D03: Curl_open (url.c:520) ==154912== by 0x513D46F: curl_easy_init (easy.c:372) ==154912== by 0x4024FF9: test_lib1501.lto_priv.0 (lib1501.c:44) ==154912== by 0x4003443: main (first.c:167) ==154912== ==154912== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x533CFA5: __tsearch (tsearch.c:337) ==154912== by 0x533CFA5: tsearch (tsearch.c:290) ==154912== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==154912== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154912== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154912== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154912== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154912== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocalCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1505 ./libtest/libtests lib1502 http://google.com:33235/1505 33235 127.0.0.1 > log/4/stdout1505 2> log/4/stderr1505 e.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== ==154912== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==154912== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==154912== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==154912== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==154912== by 0x524F3F0: add_alias (gconv_conf.c:178) ==154912== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==154912== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==154912== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==154912== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==154912== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==154912== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==154912== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==154912== by 0x525A142: setlocale (setlocale.c:337) ==154912== by 0x400336E: main (first.c:123) ==154912== === End of file valgrind1501 test 1505...[HTTP multi with CURLOPT_RESOLVE, cleanup sequence PB] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1505 ./libtest/libtests lib1502 http://google.com:33235/1505 33235 127.0.0.1 > log/4/stdout1505 2> log/4/stderr1505 1505: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1505 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1505 ./libtest/libtests lib1502 http://google.com:33235/1505 33235 127.0.0.1 > log/4/stdout1505 2> log/4/stderr1505 === End of file commands.log === Start of file http_server.log 07:36:08.537953 ====> Client connect 07:36:08.537988 accept_connection 3 returned 4 07:36:08.538004 accept_connection 3 returned 0 07:36:08.538019 Read 93 bytes 07:36:08.538029 Process 93 bytes request 07:36:08.538045 Got request: GET /verifiedserver HTTP/1.1 07:36:08.538054 Are-we-friendly question received 07:36:08.538079 Wrote request (93 bytes) input to log/4/server.input 07:36:08.538100 Identifying ourselves as friends 07:36:08.538157 Response sent (56 bytes) and written to log/4/server.response 07:36:08.538167 special request received, no persistency 07:36:08.538176 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1505 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1505 URL: http://google.com:33235/1505 === End of file stderr1505 === Start of file valgrind1505 ==155268== ==155268== Process terminating with default action of signal 4 (SIGILL) ==155268== Illegal opcode at address 0x51C2DB3 ==155268== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155268== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155268== by 0x51C2DB3: Curl_open (url.c:541) ==155268== by 0x513D46F: curl_easy_init (easy.c:372) ==155268== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==155268== by 0x4003443: main (first.c:167) ==155268== 43 (16 direct, 27 indirect) bytes in 1 blocks are definitely lost in loss record 528 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x51AACA9: UnknownInlinedFun (slist.c:68) ==155268== by 0x51AACA9: curl_slist_append (slist.c:99) ==155268== by 0x40543CF: test_lib1502.part.0.lto_priv.0 (lib1502.c:58) ==155268== by 0x4003443: main (first.c:167) ==155268== ==155268== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x533CFA5: __tsearch (tsearch.c:337) ==155268== by 0x533CFA5: tsearch (tsearch.c:290) ==155268== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155268== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155268== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155268== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155268== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155268== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== ==155268== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x533CFA5: __tsearch (tsearch.c:337) ==155268== by 0x533CFA5: tsearch (tsearch.c:290) ==155268== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155268== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155268== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== ==155268== 681 bytes in 17 blocks are possibly lost in loss record 616 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155268== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155268== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155268== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155268== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155268== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== ==155268== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155268== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155268== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== ==155268== 5,480 bytes in 1 blocks are definitely lost in loss record 650 of 657 ==155268== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155268== by 0x51C2D03: Curl_open (url.c:520) ==155268== by 0x513D46F: curl_easy_init (easy.cCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1506 ./libtest/libtests lib1506 http://127.0.0.1:43423/path/1506 127.0.0.1 43423 > log/7/stdout1506 2> log/7/stderr1506 :372) ==155268== by 0x40543E1: test_lib1502.part.0.lto_priv.0 (lib1502.c:65) ==155268== by 0x4003443: main (first.c:167) ==155268== ==155268== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x533CFA5: __tsearch (tsearch.c:337) ==155268== by 0x533CFA5: tsearch (tsearch.c:290) ==155268== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155268== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155268== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155268== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155268== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155268== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== ==155268== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==155268== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155268== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155268== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155268== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155268== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155268== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155268== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155268== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155268== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155268== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155268== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155268== by 0x525A142: setlocale (setlocale.c:337) ==155268== by 0x400336E: main (first.c:123) ==155268== === End of file valgrind1505 test 1506...[HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1506 ./libtest/libtests lib1506 http://127.0.0.1:43423/path/1506 127.0.0.1 43423 > log/7/stdout1506 2> log/7/stderr1506 1506: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1506 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1506 ./libtest/libtests lib1506 http://127.0.0.1:43423/path/1506 127.0.0.1 43423 > log/7/stdout1506 2> log/7/stderr1506 === End of file commands.log === Start of file http_server.log 07:36:08.546237 ====> Client connect 07:36:08.546276 accept_connection 3 returned 4 07:36:08.546293 accept_connection 3 returned 0 07:36:08.546307 Read 93 bytes 07:36:08.546317 Process 93 bytes request 07:36:08.546330 Got request: GET /verifiedserver HTTP/1.1 07:36:08.546339 Are-we-friendly question received 07:36:08.546363 Wrote request (93 bytes) input to log/7/server.input 07:36:08.546379 Identifying ourselves as friends 07:36:08.546437 Response sent (57 bytes) and written to log/7/server.response 07:36:08.546446 special request received, no persistency 07:36:08.546454 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1506 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr1506 URL: http://127.0.0.1:43423/path/1506 === End of file stderr1506 === Start of file valgrind1506 ==155350== ==155350== Process terminating with default action of signal 4 (SIGILL) ==155350== Illegal opcode at address 0x518AA97 ==155350== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==155350== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==155350== by 0x518AA97: Curl_multi_handle (multi.c:236) ==155350== by 0x402779E: test_lib1506.lto_priv.0 (lib1506.c:60) ==155350== by 0x4003443: main (first.c:167) ==155350== 408 bytes in 17 blocks are possibly lost in loss record 606 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x533CFA5: __tsearch (tsearch.c:337) ==155350== by 0x533CFA5: tsearch (tsearch.c:290) ==155350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155350== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155350== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.c:123) ==155350== ==155350== 552 bytes in 23 blocks are possibly lost in loss record 610 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x533CFA5: __tsearch (tsearch.c:337) ==155350== by 0x533CFA5: tsearch (tsearch.c:290) ==155350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155350== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155350== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.c:123) ==155350== ==155350== 648 bytes in 1 blocks are possibly lost in loss record 616 of 658 ==155350== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155350== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==155350== by 0x402779E: test_lib1506.lto_priv.0 (lib1506.c:60) ==155350== by 0x4003443: main (first.c:167) ==155350== ==155350== 681 bytes in 17 blocks are possibly lost in loss record 617 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155350== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155350== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1508 ./libtest/libtests lib1508 http://127.0.0.1:47/path/1508 > log/20/stdout1508 2> log/20/stderr1508 c:123) ==155350== ==155350== 1,018 bytes in 23 blocks are possibly lost in loss record 632 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155350== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155350== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.c:123) ==155350== ==155350== 11,664 bytes in 486 blocks are possibly lost in loss record 654 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x533CFA5: __tsearch (tsearch.c:337) ==155350== by 0x533CFA5: tsearch (tsearch.c:290) ==155350== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155350== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155350== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.c:123) ==155350== ==155350== 18,800 bytes in 486 blocks are possibly lost in loss record 656 of 658 ==155350== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155350== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155350== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155350== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155350== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155350== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155350== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155350== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155350== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155350== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155350== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155350== by 0x525A142: setlocale (setlocale.c:337) ==155350== by 0x400336E: main (first.c:123) ==155350== === End of file valgrind1506 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1510 ./libtest/libtests lib1510 http://127.0.0.1:33487/path/1510 127.0.0.1 33487 > log/19/stdout1510 2> log/19/stderr1510 * starts no server test 1508...[Close a multi handle without using it] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1508 ./libtest/libtests lib1508 http://127.0.0.1:47/path/1508 > log/20/stdout1508 2> log/20/stderr1508 1508: output (log/20/stdout1508) FAILED: --- log/20/check-expected 2025-07-18 07:36:09.647113106 +0000 +++ log/20/check-generated 2025-07-18 07:36:09.647113106 +0000 @@ -1 +0,0 @@ -We are done[LF] == Contents of files in the log/20/ dir after test 1508 === Start of file check-expected We are done[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1508 ./libtest/libtests lib1508 http://127.0.0.1:47/path/1508 > log/20/stdout1508 2> log/20/stderr1508 === End of file commands.log === Start of file server.cmd Testnum 1508 === End of file server.cmd === Start of file stderr1508 URL: http://127.0.0.1:47/path/1508 === End of file stderr1508 === Start of file valgrind1508 ==155273== ==155273== Process terminating with default action of signal 4 (SIGILL) ==155273== Illegal opcode at address 0x518AA97 ==155273== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==155273== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==155273== by 0x518AA97: Curl_multi_handle (multi.c:236) ==155273== by 0x40246A3: UnknownInlinedFun (lib1508.c:37) ==155273== by 0x40246A3: test_lib1508.lto_priv.0 (lib1508.c:28) ==155273== by 0x4003443: main (first.c:167) ==155273== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x533CFA5: __tsearch (tsearch.c:337) ==155273== by 0x533CFA5: tsearch (tsearch.c:290) ==155273== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155273== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155273== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155273== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155273== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155273== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== ==155273== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x533CFA5: __tsearch (tsearch.c:337) ==155273== by 0x533CFA5: tsearch (tsearch.c:290) ==155273== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155273== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155273== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== ==155273== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==155273== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155273== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==155273== by 0x40246A3: UnknownInlinedFun (lib1508.c:37) ==155273== by 0x40246A3: test_lib1508.lto_priv.0 (lib1508.c:28) ==155273== by 0x4003443: main (first.c:167) ==155273== ==155273== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155273== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155273== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155273== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155273== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155273== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== ==155273== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155273== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155273== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== ==155273== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x533CFA5: __tsearch (tsearch.c:337) ==155273== by 0x533CFA5: tsearch (tsearch.c:290) ==155273== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155273== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155273== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155273== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155273== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155273== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== ==155273== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155273== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155273== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155273== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155273== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155273== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155273== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155273== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155273== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155273== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155273== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155273== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155273== by 0x525A142: setlocale (setlocale.c:337) ==155273== by 0x400336E: main (first.c:123) ==155273== === End of file valgrind1508 test 1510...[HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1510 ./libtest/libtests lib1510 http://127.0.0.1:33487/path/1510 127.0.0.1 33487 > log/19/stdout1510 2> log/19/stderr1510 1510: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1510 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1510 ./libtest/libtests lib1510 http://127.0.0.1:33487/path/1510 127.0.0.1 33487 > log/19/stdout1510 2> log/19/stderr1510 === End of file commands.log === Start of file http_server.log 07:36:08.567196 ====> Client connect 07:36:08.567234 accept_connection 3 returned 4 07:36:08.567253 accept_connection 3 returned 0 07:36:08.567269 Read 93 bytes 07:36:08.567279 Process 93 bytes request 07:36:08.567292 Got request: GET /verifiedserver HTTP/1.1 07:36:08.567302 Are-we-friendly question received 07:36:08.567333 Wrote request (93 bytes) input to log/19/server.input 07:36:08.567351 Identifying ourselves as friends 07:36:08.567421 Response sent (56 bytes) and written to log/19/server.response 07:36:08.567433 special request received, no persistency 07:36:08.567443 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1510 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr1510 URL: http://127.0.0.1:33487/path/1510 === End of file stderr1510 === Start of file valgrind1510 ==155460== ==155460== Process terminating with default action of signal 4 (SIGILL) ==155460== Illegal opcode at address 0x51C2DB3 ==155460== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155460== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155460== by 0x51C2DB3: Curl_open (url.c:541) ==155460== by 0x513D46F: curl_easy_init (easy.c:372) ==155460== by 0x40261BE: test_lib1510.lto_priv.0 (lib1510.c:61) ==155460== by 0x4003443: main (first.c:167) ==155460== 408 bytes in 17 blocks are possibly lost in loss record 606 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x533CFA5: __tsearch (tsearch.c:337) ==155460== by 0x533CFA5: tsearch (tsearch.c:290) ==155460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== ==155460== 552 bytes in 23 blocks are possibly lost in loss record 610 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x533CFA5: __tsearch (tsearch.c:337) ==155460== by 0x533CFA5: tsearch (tsearch.c:290) ==155460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== ==155460== 681 bytes in 17 blocks are possibly lost in loss record 616 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155460== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155460== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== ==155460== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155460== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155460== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== ==155460== 5,480 bytes in 1 blocks are definitely lost in loss record 651 of 658 ==155460== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155460== by 0x51C2D03: Curl_open (url.c:520) ==155460== by 0x513D46F: curl_easy_init (easy.c:372) ==155460== by 0x40261BE: test_lib1510.lto_priv.0 (lib1510.c:61) ==155460== by 0x4003443: main (first.c:167) ==155460== ==155460== 11,664 bytes in 486 blocks are possibly lost in loss record 654 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x533CFA5: __tsearch (tsearch.c:337) ==155460== by 0x533CFA5: tsearch (tsearch.c:290) ==155460== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155460== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== ==155460== 18,800 bytes in 486 blocks are possibly lost in loss record 656 of 658 ==155460== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155460== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155460== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155460== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155460== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155460== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155460== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155460== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155460== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155460=CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1511 ./libtest/libtests lib1511 http://127.0.0.1:39089/1511 > log/17/stdout1511 2> log/17/stderr1511 = by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155460== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155460== by 0x525A142: setlocale (setlocale.c:337) ==155460== by 0x400336E: main (first.c:123) ==155460== === End of file valgrind1510 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1507 ./libtest/libtests lib1507 smtp://127.0.0.1:41381/1507 log/8/stdout1507 2> log/8/stderr1507 test 1511...[HTTP GET time conditions in repeated requests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1511 ./libtest/libtests lib1511 http://127.0.0.1:39089/1511 > log/17/stdout1511 2> log/17/stderr1511 1511: data FAILED: --- log/17/check-expected 2025-07-18 07:36:09.663779774 +0000 +++ log/17/check-generated 2025-07-18 07:36:09.663779774 +0000 @@ -1,17 +0,0 @@ -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fakem[CR][LF] -Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT[CR][LF] -Content-Type: text/html[CR][LF] -Content-Length: 12[CR][LF] -Connection: close[CR][LF] -[CR][LF] -HTTP/1.1 200 OK[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fakem[CR][LF] -Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT[CR][LF] -Content-Type: text/html[CR][LF] -Content-Length: 12[CR][LF] -Connection: close[CR][LF] -[CR][LF] -Hello World[LF] == Contents of files in the log/17/ dir after test 1511 === Start of file check-expected HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fakem[CR][LF] Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT[CR][LF] Content-Type: text/html[CR][LF] Content-Length: 12[CR][LF] Connection: close[CR][LF] [CR][LF] HTTP/1.1 200 OK[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fakem[CR][LF] Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT[CR][LF] Content-Type: text/html[CR][LF] Content-Length: 12[CR][LF] Connection: close[CR][LF] [CR][LF] Hello World[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1511 ./libtest/libtests lib1511 http://127.0.0.1:39089/1511 > log/17/stdout1511 2> log/17/stderr1511 === End of file commands.log === Start of file http_server.log 07:36:08.568832 ====> Client connect 07:36:08.568862 accept_connection 3 returned 4 07:36:08.568877 accept_connection 3 returned 0 07:36:08.568889 Read 93 bytes 07:36:08.568897 Process 93 bytes request 07:36:08.568907 Got request: GET /verifiedserver HTTP/1.1 07:36:08.568916 Are-we-friendly question received 07:36:08.568937 Wrote request (93 bytes) input to log/17/server.input 07:36:08.568952 Identifying ourselves as friends 07:36:08.569001 Response sent (56 bytes) and written to log/17/server.response 07:36:08.569010 special request received, no persistency 07:36:08.569018 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1511 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr1511 URL: http://127.0.0.1:39089/1511 === End of file stderr1511 === Start of file valgrind1511 ==155446== ==155446== Process terminating with default action of signal 4 (SIGILL) ==155446== Illegal opcode at address 0x51C2DB3 ==155446== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155446== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155446== by 0x51C2DB3: Curl_open (url.c:541) ==155446== by 0x513D46F: curl_easy_init (easy.c:372) ==155446== by 0x4022679: UnknownInlinedFun (lib1511.c:36) ==155446== by 0x4022679: test_lib1511.lto_priv.0 (lib1511.c:28) ==155446== by 0x4003443: main (first.c:167) ==155446== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155446== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x533CFA5: __tsearch (tsearch.c:337) ==155446== by 0x533CFA5: tsearch (tsearch.c:290) ==155446== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155446== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155446== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155446== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155446== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155446== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== ==155446== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155446== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x533CFA5: __tsearch (tsearch.c:337) ==155446== by 0x533CFA5: tsearch (tsearch.c:290) ==155446== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155446== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155446== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== ==155446== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155446== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155446== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155446== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155446== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155446== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155446== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== ==155446== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155446== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155446== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155446== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== ==155446== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155446== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155446== by 0x51C2D03: Curl_open (url.c:520) ==155446== by 0x513D46F: curl_easy_init (easy.c:372) ==155446== by 0x4022679: UnknownInlinedFun (lib1511.c:36) ==155446== by 0x4022679: test_lib1511.lto_priv.0 (lib1511.c:28) ==155446== by 0x4003443: main (first.c:167) ==155446== ==155446== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155446== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1513 ./libtest/libtests lib1513 http://127.0.0.1:34851/1513 > log/10/stdout1513 2> log/10/stderr1513 at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x533CFA5: __tsearch (tsearch.c:337) ==155446== by 0x533CFA5: tsearch (tsearch.c:290) ==155446== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155446== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155446== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155446== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155446== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155446== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== ==155446== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155446== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155446== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155446== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155446== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155446== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155446== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155446== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155446== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155446== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155446== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155446== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155446== by 0x525A142: setlocale (setlocale.c:337) ==155446== by 0x400336E: main (first.c:123) ==155446== === End of file valgrind1511 test 1507...[SMTP with multi interface and CURLE_ABORTED_BY_CALLBACK] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1507 ./libtest/libtests lib1507 smtp://127.0.0.1:41381/1507 log/8/stdout1507 2> log/8/stderr1507 1507: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1507 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1507 ./libtest/libtests lib1507 smtp://127.0.0.1:41381/1507 log/8/stdout1507 2> log/8/stderr1507 === End of file commands.log === Start of file server.cmd Testnum 1507 === End of file server.cmd === Start of file smtp_server.log 07:36:08.709558 ====> Client connect 07:36:08.709763 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:08.710139 < "EHLO verifiedserver" 07:36:08.710190 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:08.712022 < "HELP" 07:36:08.712068 > "214 WE ROOLZ: 120960[CR][LF]" 07:36:08.712085 return proof we are we 07:36:08.712431 < "QUIT" 07:36:08.712460 > "221 curl ESMTP server signing off[CR][LF]" 07:36:08.712692 MAIN sockfilt said DISC 07:36:08.712717 ====> Client disconnected 07:36:08.712775 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:08.555106 ====> Client connect 07:36:08.555768 Received DATA (on stdin) 07:36:08.555799 > 160 bytes data, server => client 07:36:08.555813 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:08.555824 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:08.555835 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:08.555942 < 21 bytes data, client => server 07:36:08.555954 'EHLO verifiedserver\r\n' 07:36:08.556176 Received DATA (on stdin) 07:36:08.556187 > 53 bytes data, server => client 07:36:08.556198 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:08.557865 < 6 bytes data, client => server 07:36:08.557887 'HELP\r\n' 07:36:08.558219 Received DATA (on stdin) 07:36:08.558237 > 22 bytes data, server => client 07:36:08.558248 '214 WE ROOLZ: 120960\r\n' 07:36:08.558341 < 6 bytes data, client => server 07:36:08.558357 'QUIT\r\n' 07:36:08.558445 Received DATA (on stdin) 07:36:08.558458 > 35 bytes data, server => client 07:36:08.558469 '221 curl ESMTP server signing off\r\n' 07:36:08.558631 ====> Client disconnect 07:36:08.558755 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stderr1507 URL: smtp://127.0.0.1:41381/1507 === End of file stderr1507 === Start of file stdin-for-1507 From: different To: another body === End of file stdin-for-1507 === Start of file valgrind1507 ==155375== ==155375== Process terminating with default action of signal 4 (SIGILL) ==155375== Illegal opcode at address 0x51C2DB3 ==155375== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155375== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155375== by 0x51C2DB3: Curl_open (url.c:541) ==155375== by 0x513D46F: curl_easy_init (easy.c:372) ==155375== by 0x40283CB: test_lib1507.lto_priv.0 (lib1507.c:58) ==155375== by 0x4003443: main (first.c:167) ==155375== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x533CFA5: __tsearch (tsearch.c:337) ==155375== by 0x533CFA5: tsearch (tsearch.c:290) ==155375== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155375== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155375== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155375== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155375== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155375== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== ==155375== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x533CFA5: __tsearch (tsearch.c:337) ==155375== by 0x533CFA5: tsearch (tsearch.c:290) ==155375== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155375== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155375== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== ==155375== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155375== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155375== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155375== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155375== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155375== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== ==155375== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155375== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155375== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== ==155375== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155375== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155375== by 0x51C2D03: Curl_open (url.c:520) ==155375== by 0x513D46F: curl_easy_init (easy.c:372) ==155375== by 0x40283CB: test_lib1507.lto_priv.0 (lib1507.c:58) ==155375== by 0x4003443: main (first.c:167) ==155375== ==155375== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x533CFA5: __tsearch (tsearch.c:337) ==155375== by 0x533CFA5: tsearch (tsearch.c:290) ==155375== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155375== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155375== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155375== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155375== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155375== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== ==155375== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155375== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155375== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155375== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155375== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155375== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155375== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155375== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155375== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155375== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155375== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155375== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155375== by 0x525A142: setlocale (setlocale.c:337) ==155375== by 0x400336E: main (first.c:123) ==155375== === End of file valgrind1507 test 1513...[return failure immediately from progress callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1513 ./libtest/libtests lib1513 http://127.0.0.1:34851/1513 > log/10/stdout1513 2> log/10/stderr1513 1513: stdout FAILED: --- log/10/check-expected 2025-07-18 07:36:09.673779774 +0000 +++ log/10/check-generated 2025-07-18 07:36:09.673779774 +0000 @@ -1 +0,0 @@ -PROGRESSFUNCTION called[LF] == Contents of files in the log/10/ dir after test 1513 === Start of file check-expected PROGRESSFUNCTION called[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1513 ./libtest/libtests lib1513 http://127.0.0.1:34851/1513 > log/10/stdout1513 2> log/10/stderr1513 === End of file commands.log === Start of file http_server.log 07:36:08.567089 ====> Client connect 07:36:08.567123 accept_connection 3 returned 4 07:36:08.567139 accept_connection 3 returned 0 07:36:08.567153 Read 93 bytes 07:36:08.567162 Process 93 bytes request 07:36:08.567175 Got request: GET /verifiedserver HTTP/1.1 07:36:08.567183 Are-we-friendly question received 07:36:08.567203 Wrote request (93 bytes) input to log/10/server.input 07:36:08.567217 Identifying ourselves as friends 07:36:08.567265 Response sent (56 bytes) and written to log/10/server.response 07:36:08.567274 special request received, no persistency 07:36:08.567282 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1513 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr1513 URL: http://127.0.0.1:34851/1513 === End of file stderr1513 === Start of file valgrind1513 ==155411== ==155411== Process terminating with default action of signal 4 (SIGILL) ==155411== Illegal opcode at address 0x51C2DB3 ==155411== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155411== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155411== by 0x51C2DB3: Curl_open (url.c:541) ==155411== by 0x513D46F: curl_easy_init (easy.c:372) ==155411== by 0x402290C: UnknownInlinedFun (lib1513.c:57) ==155411== by 0x402290C: test_lib1513.lto_priv.0 (lib1513.c:50) ==155411== by 0x4003443: main (first.c:167) ==155411== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x533CFA5: __tsearch (tsearch.c:337) ==155411== by 0x533CFA5: tsearch (tsearch.c:290) ==155411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155411== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155411== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== ==155411== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x533CFA5: __tsearch (tsearch.c:337) ==155411== by 0x533CFA5: tsearch (tsearch.c:290) ==155411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155411== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155411== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== ==155411== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155411== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155411== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== ==155411== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155411== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155411== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== ==155411== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155411== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155411== by 0x51C2D03: Curl_open (url.c:520) ==155411== by 0x513D46F: curl_easy_init (easy.c:372) ==155411== by 0x402290C: UnknownInlinedFun (lib1513.c:57) ==155411== by 0x402290C: test_lib1513.lto_priv.0 (lib1513.c:50) ==155411== by 0x4003443: main (first.c:167) ==155411== ==155411== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x533CFA5: __tsearch (tsearch.c:337) ==155411== by 0x533CFA5: tsearch (tsearch.c:290) ==155411== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155411== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155411== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== ==155411== 18,800 bytes in 486 blocks areCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1516 ./libtest/libtests lib1515 path/1516 127.0.0.1 45701 > log/23/stdout1516 2> log/23/stderr1516 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1519 ./libtest/libtests lib1518 http://127.0.0.1:45457/1519 > log/2/stdout1519 2> log/2/stderr1519 possibly lost in loss record 653 of 655 ==155411== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155411== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155411== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155411== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155411== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155411== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155411== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155411== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155411== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155411== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155411== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155411== by 0x525A142: setlocale (setlocale.c:337) ==155411== by 0x400336E: main (first.c:123) ==155411== === End of file valgrind1513 test 1519...[Extract Location: with broken absolute URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1519 ./libtest/libtests lib1518 http://127.0.0.1:45457/1519 > log/2/stdout1519 2> log/2/stderr1519 1519: stdout FAILED: --- log/2/check-expected 2025-07-18 07:36:09.860446445 +0000 +++ log/2/check-generated 2025-07-18 07:36:09.860446445 +0000 @@ -1,5 +0,0 @@ -res 0[LF] -status 302[LF] -redirects 0[LF] -effectiveurl http://127.0.0.1:45457/1519[LF] -redirecturl http://127.0.0.1:45457/h%20ttp://1.2.4.5/test[LF] == Contents of files in the log/2/ dir after test 1519 === Start of file check-expected res 0[LF] status 302[LF] redirects 0[LF] effectiveurl http://127.0.0.1:45457/1519[LF] redirecturl http://127.0.0.1:45457/h%20ttp://1.2.4.5/test[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1519 ./libtest/libtests lib1518 http://127.0.0.1:45457/1519 > log/2/stdout1519 2> log/2/stderr1519 === End of file commands.log === Start of file http_server.log 07:36:08.794089 ====> Client connect 07:36:08.794121 accept_connection 3 returned 4 07:36:08.794137 accept_connection 3 returned 0 07:36:08.794150 Read 93 bytes 07:36:08.794160 Process 93 bytes request 07:36:08.794171 Got request: GET /verifiedserver HTTP/1.1 07:36:08.794180 Are-we-friendly question received 07:36:08.794205 Wrote request (93 bytes) input to log/2/server.input 07:36:08.794221 Identifying ourselves as friends 07:36:08.794273 Response sent (56 bytes) and written to log/2/server.response 07:36:08.794283 special request received, no persistency 07:36:08.794291 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1519 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr1519 URL: http://127.0.0.1:45457/1519 === End of file stderr1519 === Start of file valgrind1519 ==155859== ==155859== Process terminating with default action of signal 4 (SIGILL) ==155859== Illegal opcode at address 0x51C2DB3 ==155859== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155859== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155859== by 0x51C2DB3: Curl_open (url.c:541) ==155859== by 0x513D46F: curl_easy_init (easy.c:372) ==155859== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==155859== by 0x4003443: main (first.c:167) ==155859== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x533CFA5: __tsearch (tsearch.c:337) ==155859== by 0x533CFA5: tsearch (tsearch.c:290) ==155859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155859== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155859== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== ==155859== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x533CFA5: __tsearch (tsearch.c:337) ==155859== by 0x533CFA5: tsearch (tsearch.c:290) ==155859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155859== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155859== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== ==155859== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155859== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155859== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== ==155859== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155859== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155859== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== ==155859== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155859== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155859== by 0x51C2D03: Curl_open (url.c:520) ==155859== by 0x513D46F: curl_easy_init (easy.c:372) ==155859== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==155859== by 0x4003443: main (first.c:167) ==155859== ==155859== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x533CFA5: __tsearch (tsearch.c:337) ==155859== by 0x533CFA5: tsearch (tsearch.c:290) ==155859== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155859== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155859== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== ==155859== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155859== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155859== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155859== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155859== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155859== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155859== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155859== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155859== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155859== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155859== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155859== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155859== by 0x525A142: setlocale (setlocale.c:337) ==155859== by 0x400336E: main (first.c:123) ==155859== === End of file valgrind1519 test 1516...[caching of manual libcurl DNS entries after dead connection] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1516 ./libtest/libtests lib1515 path/1516 127.0.0.1 45701 > log/23/stdout1516 2> log/23/stderr1516 libtests returned 132, when expecting 0 1516: exit FAILED == Contents of files in the log/23/ dir after test 1516 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1516 ./libtest/libtests lib1515 path/1516 127.0.0.1 45701 > log/23/stdout1516 2> log/23/stderr1516 === End of file commands.log === Start of file http_server.log 07:36:08.781326 ====> Client connect 07:36:08.781371 accept_connection 3 returned 4 07:36:08.781389 accept_connection 3 returned 0 07:36:08.781405 Read 93 bytes 07:36:08.781415 Process 93 bytes request 07:36:08.781427 Got request: GET /verifiedserver HTTP/1.1 07:36:08.781436 Are-we-friendly question received 07:36:08.781460 Wrote request (93 bytes) input to log/23/server.input 07:36:08.781477 Identifying ourselves as friends 07:36:08.781550 Response sent (56 bytes) and written to log/23/server.response 07:36:08.781560 special request received, no persistency 07:36:08.781568 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1516 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file stderr1516 URL: path/1516 === End of file stderr1516 === Start of file valgrind1516 ==155793== ==155793== Process terminating with default action of signal 4 (SIGILL) ==155793== Illegal opcode at address 0x518AA97 ==155793== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==155793== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==155793== by 0x518AA97: Curl_multi_handle (multi.c:236) ==155793== by 0x4028A61: test_lib1515.lto_priv.0 (lib1515.c:121) ==155793== by 0x4003443: main (first.c:167) ==155793== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x533CFA5: __tsearch (tsearch.c:337) ==155793== by 0x533CFA5: tsearch (tsearch.c:290) ==155793== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155793== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155793== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155793== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155793== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155793== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== ==155793== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x533CFA5: __tsearch (tsearch.c:337) ==155793== by 0x533CFA5: tsearch (tsearch.c:290) ==155793== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155793== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155793== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== ==155793== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==155793== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155793== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==155793== by 0x4028A61: test_lib1515.lto_priv.0 (lib1515.c:121) ==155793== by 0x4003443: main (first.c:167) ==155793== ==155793== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155793== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155793== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155793== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155793== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155793== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== ==155793== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155793== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155793== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== ==155793== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x533CFA5: __tsearch (tsearch.c:337) ==155793== by 0x533CFA5: tsearch (tsearch.c:290) ==155793== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155793== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155793== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155793== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.hCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1520 ./libtest/libtests lib1520 smtp://127.0.0.1:43997/1520 log/5/stdout1520 2> log/5/stderr1520 :101) ==155793== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155793== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== ==155793== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155793== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155793== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155793== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155793== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155793== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155793== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155793== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155793== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155793== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155793== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155793== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155793== by 0x525A142: setlocale (setlocale.c:337) ==155793== by 0x400336E: main (first.c:123) ==155793== === End of file valgrind1516 test 1520...[SMTP with CRLF-dot-CRLF in data] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1520 ./libtest/libtests lib1520 smtp://127.0.0.1:43997/1520 log/5/stdout1520 2> log/5/stderr1520 1520: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1520 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1520 ./libtest/libtests lib1520 smtp://127.0.0.1:43997/1520 log/5/stdout1520 2> log/5/stderr1520 === End of file commands.log === Start of file server.cmd Testnum 1520 === End of file server.cmd === Start of file smtp_server.log 07:36:08.969600 ====> Client connect 07:36:08.969742 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:08.970158 < "EHLO verifiedserver" 07:36:08.970204 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:08.970392 < "HELP" 07:36:08.970463 > "214 WE ROOLZ: 108210[CR][LF]" 07:36:08.970491 return proof we are we 07:36:08.970691 < "QUIT" 07:36:08.970717 > "221 curl ESMTP server signing off[CR][LF]" 07:36:08.971458 MAIN sockfilt said DISC 07:36:08.971483 ====> Client disconnected 07:36:08.971544 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:08.815472 ====> Client connect 07:36:08.815733 Received DATA (on stdin) 07:36:08.815746 > 160 bytes data, server => client 07:36:08.815757 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:08.815767 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:08.815776 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:08.815874 < 21 bytes data, client => server 07:36:08.815889 'EHLO verifiedserver\r\n' 07:36:08.816197 Received DATA (on stdin) 07:36:08.816210 > 53 bytes data, server => client 07:36:08.816222 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:08.816278 < 6 bytes data, client => server 07:36:08.816291 'HELP\r\n' 07:36:08.816393 Received DATA (on stdin) 07:36:08.816406 > 22 bytes data, server => client 07:36:08.816482 '214 WE ROOLZ: 108210\r\n' 07:36:08.816591 < 6 bytes data, client => server 07:36:08.816605 'QUIT\r\n' 07:36:08.816698 Received DATA (on stdin) 07:36:08.816708 > 35 bytes data, server => client 07:36:08.816718 '221 curl ESMTP server signing off\r\n' 07:36:08.817396 ====> Client disconnect 07:36:08.817525 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stderr1520 URL: smtp://127.0.0.1:43997/1520 === End of file stderr1520 === Start of file stdin-for-1520 From: different To: another . . . body === End of file stdin-for-1520 === Start of file valgrind1520 ==155978== ==155978== Process terminating with default action of signal 4 (SIGILL) ==155978== Illegal opcode at address 0x51C2DB3 ==155978== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155978== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155978== by 0x51C2DB3: Curl_open (url.c:541) ==155978== by 0x513D46F: curl_easy_init (easy.c:372) ==155978== by 0x4026960: test_lib1520.lto_priv.0 (lib1520.c:86) ==155978== by 0x4003443: main (first.c:167) ==155978== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978== by 0x533CFA5: __tsearch (tsearch.c:337) ==155978== by 0x533CFA5: tsearch (tsearch.c:290) ==155978== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155978== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155978== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155978== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155978== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155978== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== ==155978== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978== by 0x533CFA5: __tsearch (tsearch.c:337) ==155978== by 0x533CFA5: tsearch (tsearch.c:290) ==155978== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155978== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155978== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== ==155978== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155978== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155978== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155978== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155978== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155978== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== ==155978== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1515 ./libtest/libtests lib1515 path/1515 127.0.0.1 38941 > log/1/stdout1515 2> log/1/stderr1515 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1518 ./libtest/libtests lib1518 http://127.0.0.1:37963/1518 > log/14/stdout1518 2> log/14/stderr1518 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1514 ./libtest/libtests lib1514 http://127.0.0.1:34999/1514 > log/9/stdout1514 2> log/9/stderr1514 == by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155978== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155978== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== ==155978== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155978== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155978== by 0x51C2D03: Curl_open (url.c:520) ==155978== by 0x513D46F: curl_easy_init (easy.c:372) ==155978== by 0x4026960: test_lib1520.lto_priv.0 (lib1520.c:86) ==155978== by 0x4003443: main (first.c:167) ==155978== ==155978== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978== by 0x533CFA5: __tsearch (tsearch.c:337) ==155978== by 0x533CFA5: tsearch (tsearch.c:290) ==155978== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155978== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155978== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155978== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155978== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155978== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== ==155978== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155978== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155978== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155978== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155978== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155978== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155978== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155978== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155978== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155978== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155978== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155978== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155978== by 0x525A142: setlocale (setlocale.c:337) ==155978== by 0x400336E: main (first.c:123) ==155978== === End of file valgrind1520 test 1515...[caching of manual libcurl DNS entries after DNS cache timeout] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1515 ./libtest/libtests lib1515 path/1515 127.0.0.1 38941 > log/1/stdout1515 2> log/1/stderr1515 1515: data FAILED: --- log/1/check-expected 2025-07-18 07:36:09.877113113 +0000 +++ log/1/check-generated 2025-07-18 07:36:09.877113113 +0000 @@ -1,2 +0,0 @@ -hello[LF] -hello[LF] == Contents of files in the log/1/ dir after test 1515 === Start of file check-expected hello[LF] hello[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1515 ./libtest/libtests lib1515 path/1515 127.0.0.1 38941 > log/1/stdout1515 2> log/1/stderr1515 === End of file commands.log === Start of file http_server.log 07:36:08.769876 ====> Client connect 07:36:08.769916 accept_connection 3 returned 4 07:36:08.769933 accept_connection 3 returned 0 07:36:08.769948 Read 93 bytes 07:36:08.769961 Process 93 bytes request 07:36:08.769980 Got request: GET /verifiedserver HTTP/1.1 07:36:08.769989 Are-we-friendly question received 07:36:08.770019 Wrote request (93 bytes) input to log/1/server.input 07:36:08.770037 Identifying ourselves as friends 07:36:08.770102 Response sent (56 bytes) and written to log/1/server.response 07:36:08.770112 special request received, no persistency 07:36:08.770121 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1515 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr1515 URL: path/1515 === End of file stderr1515 === Start of file valgrind1515 ==155749== ==155749== Process terminating with default action of signal 4 (SIGILL) ==155749== Illegal opcode at address 0x518AA97 ==155749== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==155749== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==155749== by 0x518AA97: Curl_multi_handle (multi.c:236) ==155749== by 0x4028A61: test_lib1515.lto_priv.0 (lib1515.c:121) ==155749== by 0x4003443: main (first.c:167) ==155749== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x533CFA5: __tsearch (tsearch.c:337) ==155749== by 0x533CFA5: tsearch (tsearch.c:290) ==155749== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155749== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155749== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155749== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155749== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155749== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== ==155749== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x533CFA5: __tsearch (tsearch.c:337) ==155749== by 0x533CFA5: tsearch (tsearch.c:290) ==155749== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155749== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155749== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== ==155749== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==155749== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155749== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==155749== by 0x4028A61: test_lib1515.lto_priv.0 (lib1515.c:121) ==155749== by 0x4003443: main (first.c:167) ==155749== ==155749== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155749== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155749== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155749== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155749== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155749== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== ==155749== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155749== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155749== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== ==155749== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x533CFA5: __tsearch (tsearch.c:337) ==155749== by 0x533CFA5: tsearch (tsearch.c:290) ==155749== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155749== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155749== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155749== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155749== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155749== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== ==155749== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155749== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155749== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155749== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155749== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155749== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155749== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155749== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155749== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155749== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155749== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155749== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155749== by 0x525A142: setlocale (setlocale.c:337) ==155749== by 0x400336E: main (first.c:123) ==155749== === End of file valgrind1515 test 1518...[Extract Location: with broken URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1518 ./libtest/libtests lib1518 http://127.0.0.1:37963/1518 > log/14/stdout1518 2> log/14/stderr1518 1518: stdout FAILED: --- log/14/check-expected 2025-07-18 07:36:09.883779780 +0000 +++ log/14/check-generated 2025-07-18 07:36:09.883779780 +0000 @@ -1,5 +0,0 @@ -res 0[LF] -status 302[LF] -redirects 0[LF] -effectiveurl http://127.0.0.1:37963/1518[LF] -redirecturl http://1.2 .4.5/test[LF] == Contents of files in the log/14/ dir after test 1518 === Start of file check-expected res 0[LF] status 302[LF] redirects 0[LF] effectiveurl http://127.0.0.1:37963/1518[LF] redirecturl http://1.2 .4.5/test[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1518 ./libtest/libtests lib1518 http://127.0.0.1:37963/1518 > log/14/stdout1518 2> log/14/stderr1518 === End of file commands.log === Start of file http_server.log 07:36:08.792785 ====> Client connect 07:36:08.792829 accept_connection 3 returned 4 07:36:08.792845 accept_connection 3 returned 0 07:36:08.792860 Read 93 bytes 07:36:08.792870 Process 93 bytes request 07:36:08.792881 Got request: GET /verifiedserver HTTP/1.1 07:36:08.792891 Are-we-friendly question received 07:36:08.792915 Wrote request (93 bytes) input to log/14/server.input 07:36:08.792931 Identifying ourselves as friends 07:36:08.792974 Response sent (56 bytes) and written to log/14/server.response 07:36:08.792983 special request received, no persistency 07:36:08.792993 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1518 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr1518 URL: http://127.0.0.1:37963/1518 === End of file stderr1518 === Start of file valgrind1518 ==155845== ==155845== Process terminating with default action of signal 4 (SIGILL) ==155845== Illegal opcode at address 0x51C2DB3 ==155845== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155845== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155845== by 0x51C2DB3: Curl_open (url.c:541) ==155845== by 0x513D46F: curl_easy_init (easy.c:372) ==155845== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==155845== by 0x4003443: main (first.c:167) ==155845== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x533CFA5: __tsearch (tsearch.c:337) ==155845== by 0x533CFA5: tsearch (tsearch.c:290) ==155845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155845== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155845== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== ==155845== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x533CFA5: __tsearch (tsearch.c:337) ==155845== by 0x533CFA5: tsearch (tsearch.c:290) ==155845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155845== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155845== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== ==155845== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155845== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155845== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== ==155845== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155845== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155845== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== ==155845== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155845== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155845== by 0x51C2D03: Curl_open (url.c:520) ==155845== by 0x513D46F: curl_easy_init (easy.c:372) ==155845== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==155845== by 0x4003443: main (first.c:167) ==155845== ==155845== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x533CFA5: __tsearch (tsearch.c:337) ==155845== by 0x533CFA5: tsearch (tsearch.c:290) ==155845== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155845== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155845== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== ==155845== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155845== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155845== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155845== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155845== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155845== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155845== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155845== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155845== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155845== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155845== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155845== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155845== by 0x525A142: setlocale (setlocale.c:337) ==155845== by 0x400336E: main (first.c:123) ==155845== === End of file valgrind1518 test 1514...[HTTP POST with read callback and unknown data size] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1514 ./libtest/libtests lib1514 http://127.0.0.1:34999/1514 > log/9/stdout1514 2> log/9/stderr1514 1514: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 1514 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1514 ./libtest/libtests lib1514 http://127.0.0.1:34999/1514 > log/9/stdout1514 2> log/9/stderr1514 === End of file commands.log === Start of file http_server.log 07:36:08.760271 ====> Client connect 07:36:08.760306 accept_connection 3 returned 4 07:36:08.760322 accept_connection 3 returned 0 07:36:08.760336 Read 93 bytes 07:36:08.760346 Process 93 bytes request 07:36:08.760360 Got request: GET /verifiedserver HTTP/1.1 07:36:08.760369 Are-we-friendly question received 07:36:08.760393 Wrote request (93 bytes) input to log/9/server.input 07:36:08.760410 Identifying ourselves as friends 07:36:08.760461 Response sent (56 bytes) and written to log/9/server.response 07:36:08.760470 special request received, no persistency 07:36:08.760479 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1514 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr1514 URL: http://127.0.0.1:34999/1514 === End of file stderr1514 === Start of file valgrind1514 ==155721== ==155721== Process terminating with default action of signal 4 (SIGILL) ==155721== Illegal opcode at address 0x51C2DB3 ==155721== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==155721== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==155721== by 0x51C2DB3: Curl_open (url.c:541) ==155721== by 0x513D46F: curl_easy_init (easy.c:372) ==155721== by 0x4022B8E: test_lib1514.lto_priv.0 (lib1514.c:67) ==155721== by 0x4003443: main (first.c:167) ==155721== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x533CFA5: __tsearch (tsearch.c:337) ==155721== by 0x533CFA5: tsearch (tsearch.c:290) ==155721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155721== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155721== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== ==155721== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x533CFA5: __tsearch (tsearch.c:337) ==155721== by 0x533CFA5: tsearch (tsearch.c:290) ==155721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155721== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155721== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== ==155721== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155721== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==155721== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== ==155721== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155721== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==155721== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== ==155721== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==155721== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==155721== by 0x51C2D03: Curl_open (url.c:520) ==155721== by 0x513D46F: curl_easy_init (easy.c:372) ==155721== by 0x4022B8E: test_lib1514.lto_priv.0 (lib1514.c:67) ==155721== by 0x4003443: main (first.c:167) ==155721== ==155721== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x533CFA5: __tsearch (tsearch.c:337) ==155721== by 0x533CFA5: tsearch (tsearch.c:290) ==155721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==155721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155721== by 0x524F3F0: add_aliCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1524 ../src/curl -q --output log/16/curl1524.out --include --trace-ascii log/16/trace1524 --trace-config all --trace-time http://127.0.0.1:46739/blah/1524 -L -T log/16/upload1524.txt > log/16/stdout1524 2> log/16/stderr1524 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1521 ./libtest/libtests lib1521 unused > log/18/stdout1521 2> log/18/stderr1521 as (gconv_conf.c:178) ==155721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155721== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155721== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== ==155721== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==155721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==155721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==155721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==155721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==155721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==155721== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==155721== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==155721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==155721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==155721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==155721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==155721== by 0x525A142: setlocale (setlocale.c:337) ==155721== by 0x400336E: main (first.c:123) ==155721== === End of file valgrind1514 test 1524...[HTTP PUT with 303 redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1524 ../src/curl -q --output log/16/curl1524.out --include --trace-ascii log/16/trace1524 --trace-config all --trace-time http://127.0.0.1:46739/blah/1524 -L -T log/16/upload1524.txt > log/16/stdout1524 2> log/16/stderr1524 1524: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1524 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1524 ../src/curl -q --output log/16/curl1524.out --include --trace-ascii log/16/trace1524 --trace-config all --trace-time http://127.0.0.1:46739/blah/1524 -L -T log/16/upload1524.txt > log/16/stdout1524 2> log/16/stderr1524 === End of file commands.log === Start of file http_server.log 07:36:09.269162 ====> Client connect 07:36:09.269204 accept_connection 3 returned 4 07:36:09.269222 accept_connection 3 returned 0 07:36:09.269237 Read 93 bytes 07:36:09.269246 Process 93 bytes request 07:36:09.269260 Got request: GET /verifiedserver HTTP/1.1 07:36:09.269270 Are-we-friendly question received 07:36:09.269297 Wrote request (93 bytes) input to log/16/server.input 07:36:09.269342 Identifying ourselves as friends 07:36:09.269413 Response sent (56 bytes) and written to log/16/server.response 07:36:09.269526 special request received, no persistency 07:36:09.269539 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1524 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file upload1524.txt moo === End of file upload1524.txt === Start of file valgrind1524 ==156293== ==156293== Process terminating with default action of signal 4 (SIGILL) ==156293== Illegal opcode at address 0x4003082 ==156293== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==156293== by 0x4003082: main (tool_main.c:234) === End of file valgrind1524 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1522 ./libtest/libtests lib1522 http://127.0.0.1:42345/1522 > log/3/stdout1522 2> log/3/stderr1522 * starts no server test 1521...[Test all curl_easy_setopt and curl_easy_getinfo options] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1521 ./libtest/libtests lib1521 unused > log/18/stdout1521 2> log/18/stderr1521 1521: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:09.947113115 +0000 +++ log/18/check-generated 2025-07-18 07:36:09.947113115 +0000 @@ -1 +0,0 @@ -ok[LF] == Contents of files in the log/18/ dir after test 1521 === Start of file check-expected ok[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1521 ./libtest/libtests lib1521 unused > log/18/stdout1521 2> log/18/stderr1521 === End of file commands.log === Start of file server.cmd Testnum 1521 === End of file server.cmd === Start of file stderr1521 URL: unused === End of file stderr1521 === Start of file valgrind1521 ==156059== ==156059== Process terminating with default action of signal 4 (SIGILL) ==156059== Illegal opcode at address 0x51C2DB3 ==156059== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156059== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156059== by 0x51C2DB3: Curl_open (url.c:541) ==156059== by 0x513D46F: curl_easy_init (easy.c:372) ==156059== by 0x403FD1A: test_lib1521.lto_priv.0 (lib1521.c:217) ==156059== by 0x4003443: main (first.c:167) ==156059== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x533CFA5: __tsearch (tsearch.c:337) ==156059== by 0x533CFA5: tsearch (tsearch.c:290) ==156059== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156059== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156059== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156059== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156059== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156059== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== ==156059== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x533CFA5: __tsearch (tsearch.c:337) ==156059== by 0x533CFA5: tsearch (tsearch.c:290) ==156059== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156059== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156059== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== ==156059== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156059== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156059== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156059== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156059== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156059== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== ==156059== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156059== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156059== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== ==156059== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156059== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156059== by 0x51C2D03: Curl_open (url.c:520) ==156059== by 0x513D46F: curl_easy_init (easy.c:372) ==156059== by 0x403FD1A: test_lib1521.lto_priv.0 (lib1521.c:217) ==156059== by 0x4003443: main (first.c:167) ==156059== ==156059== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x533CFA5: __tsearch (tsearch.c:337) ==156059== by 0x533CFA5: tsearch (tsearch.c:290) ==156059== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156059== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156059== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156059== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156059== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156059== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== ==156059== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156059== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156059== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156059== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156059== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156059== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156059== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156059== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156059== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156059== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156059== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156059== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156059== by 0x525A142: setlocale (setlocale.c:337) ==156059== by 0x400336E: main (first.c:123) ==156059== === End of file valgrind1521 test 1522...[CURLINFO_SIZE_UPLOAD with small SO_SNDBUF] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1522 ./libtest/libtests lib1522 http://127.0.0.1:42345/1522 > log/3/stdout1522 2> log/3/stderr1522 1522: stdout FAILED: --- log/3/check-expected 2025-07-18 07:36:10.060446451 +0000 +++ log/3/check-generated 2025-07-18 07:36:10.060446451 +0000 @@ -1,3 +0,0 @@ --foo-[LF] -uploadSize = 40960[LF] -!!!!!!!!!! PASS[LF] == Contents of files in the log/3/ dir after test 1522 === Start of file check-expected -foo-[LF] uploadSize = 40960[LF] !!!!!!!!!! PASS[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1522 ./libtest/libtests lib1522 http://127.0.0.1:42345/1522 > log/3/stdout1522 2> log/3/stderr1522 === End of file commands.log === Start of file http_server.log 07:36:08.990447 ====> Client connect 07:36:08.990482 accept_connection 3 returned 4 07:36:08.990498 accept_connection 3 returned 0 07:36:08.990511 Read 93 bytes 07:36:08.990521 Process 93 bytes request 07:36:08.990533 Got request: GET /verifiedserver HTTP/1.1 07:36:08.990543 Are-we-friendly question received 07:36:08.990567 Wrote request (93 bytes) input to log/3/server.input 07:36:08.990583 Identifying ourselves as friends 07:36:08.990636 Response sent (56 bytes) and written to log/3/server.response 07:36:08.990645 special request received, no persistency 07:36:08.990653 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1522 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr1522 URL: http://127.0.0.1:42345/1522 === End of file stderr1522 === Start of file valgrind1522 ==156123== ==156123== Process terminating with default action of signal 4 (SIGILL) ==156123== Illegal opcode at address 0x51C2DB3 ==156123== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156123== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156123== by 0x51C2DB3: Curl_open (url.c:541) ==156123== by 0x513D46F: curl_easy_init (easy.c:372) ==156123== by 0x4026B06: test_lib1522.lto_priv.0 (lib1522.c:55) ==156123== by 0x4003443: main (first.c:167) ==156123== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156123== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156123== by 0x533CFA5: __tsearch (tsearch.c:337) ==156123== by 0x533CFA5: tsearch (tsearch.c:290) ==156123== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156123== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156123== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156123== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156123== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156123== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== ==156123== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156123== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156123== by 0x533CFA5: __tsearch (tsearch.c:337) ==156123== by 0x533CFA5: tsearch (tsearch.c:290) ==156123== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156123== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156123== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== ==156123== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156123== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156123== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156123== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156123== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156123== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156123== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156123== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== ==156123== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156123== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156123== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156123== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156123== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== ==156123== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156123== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156123== by 0x51C2D03: Curl_open (url.c:520) ==156123== by 0x513D46F: curl_easy_init (easy.c:372) ==156123== by 0x4026B06: test_lib1522.lto_priv.0 (lib1522.c:55) ==156123== by 0x4003443: main (first.c:167) ==156123== ==156123== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156123== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156123== by 0x533CFA5: __tsearch (tsearch.c:337) ==156123== by 0x533CFA5: tsearch (tsearch.c:290) ==156123== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156123== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156123== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156123== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156123== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156123== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== ==156123== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156123== at 0x50F17A8: malloc (vg_replacCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1523 ./libtest/libtests lib1523 http://127.0.0.1:36993/1523 > log/15/stdout1523 2> log/15/stderr1523 RUN: Process with pid 73843 signalled to die RUN: Process with pid 73843 gracefully died e_malloc.c:446) ==156123== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156123== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156123== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156123== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156123== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156123== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156123== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156123== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156123== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156123== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156123== by 0x525A142: setlocale (setlocale.c:337) ==156123== by 0x400336E: main (first.c:123) ==156123== === End of file valgrind1522 test 1523...[CURLINFO_LOW_SPEED_LIMIT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1523 ./libtest/libtests lib1523 http://127.0.0.1:36993/1523 > log/15/stdout1523 2> log/15/stderr1523 libtests returned 132, when expecting 0 1523: exit FAILED == Contents of files in the log/15/ dir after test 1523 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1523 ./libtest/libtests lib1523 http://127.0.0.1:36993/1523 > log/15/stdout1523 2> log/15/stderr1523 === End of file commands.log === Start of file http_server.log 07:36:09.235377 ====> Client connect 07:36:09.235409 accept_connection 3 returned 4 07:36:09.235426 accept_connection 3 returned 0 07:36:09.235439 Read 93 bytes 07:36:09.235449 Process 93 bytes request 07:36:09.235463 Got request: GET /verifiedserver HTTP/1.1 07:36:09.235472 Are-we-friendly question received 07:36:09.235500 Wrote request (93 bytes) input to log/15/server.input 07:36:09.235516 Identifying ourselves as friends 07:36:09.235567 Response sent (56 bytes) and written to log/15/server.response 07:36:09.235577 special request received, no persistency 07:36:09.235586 ====> Client disconnect 0 exit_signal_handler: called 07:36:10.156550 signalled to die 07:36:10.156646 ========> IPv4 sws (port 36993 pid: 73843) exits with signal (15) 07:36:10.156659 ========> sws quits === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:36993... * Connected to 127.0.0.1 (127.0.0.1) port 36993 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:36993 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73843 === End of file http_verify.out === Start of file server.cmd writedelay: 1000 Testnum 1523 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73843 === End of file server.response === Start of file stderr1523 URL: http://127.0.0.1:36993/1523 === End of file stderr1523 === Start of file valgrind1523 ==156212== ==156212== Process terminating with default action of signal 4 (SIGILL) ==156212== Illegal opcode at address 0x51C2DB3 ==156212== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156212== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156212== by 0x51C2DB3: Curl_open (url.c:541) ==156212== by 0x513D46F: curl_easy_init (easy.c:372) ==156212== by 0x4020F14: test_lib1523.lto_priv.0 (lib1523.c:62) ==156212== by 0x4003443: main (first.c:167) ==156212== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x533CFA5: __tsearch (tsearch.c:337) ==156212== by 0x533CFA5: tsearch (tsearch.c:290) ==156212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156212== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156212== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== ==156212== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x533CFA5: __tsearch (tsearch.c:337) ==156212== by 0x533CFA5: tsearch (tsearch.c:290) ==156212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156212== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156212== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== ==156212== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156212== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156212== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== ==156212== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156212== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156212== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== ==156212== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156212== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156212== by 0x51C2D03: Curl_open (url.c:520) ==156212== by 0x513D46F: curl_easy_init (easy.c:372) ==156212== by 0x4020F14: test_lib1523.lto_priv.0 (lib1523.c:62) ==156212== by 0x4003443: main (first.c:167) ==156212== ==156212== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x533CFA5: __tsearch (tsearch.c:337) ==156212== by 0x533CFA5: tsearch (tsearch.c:290) ==156212== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156212== by 0x524F3F0: add_alias (gconCMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1544.pl /startdir/src/curl/tests/.. > log/15/stdout1544 2> log/15/stderr1544 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1528 ./libtest/libtests lib1528 http://the.old.moo:33235/1528 127.0.0.1:40761 > log/4/stdout1528 2> log/4/stderr1528 v_conf.c:178) ==156212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156212== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156212== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== ==156212== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156212== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156212== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156212== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156212== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156212== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156212== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156212== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156212== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156212== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156212== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156212== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156212== by 0x525A142: setlocale (setlocale.c:337) ==156212== by 0x400336E: main (first.c:123) ==156212== === End of file valgrind1523 * starts no server test 1544...[Verify all string options are translated by OS/400 wrapper] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/test1544.pl /startdir/src/curl/tests/.. > log/15/stdout1544 2> log/15/stderr1544 valgrind SKIPPED -------e--- OK (1445 out of 1707, remaining: 00:14, took 0.049s, duration: 01:21) CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1538 ./libtest/libtests lib1538 nothing > log/14/stdout1538 2> log/14/stderr1538 test 1528...[Separately specified proxy/server headers sent in a proxy GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1528 ./libtest/libtests lib1528 http://the.old.moo:33235/1528 127.0.0.1:40761 > log/4/stdout1528 2> log/4/stderr1528 1528: data FAILED: --- log/4/check-expected 2025-07-18 07:36:10.543779795 +0000 +++ log/4/check-generated 2025-07-18 07:36:10.543779795 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK swsclose[CR][LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] -Server: test-server/fake[CR][LF] -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] -ETag: "21025-dc7-39462498"[CR][LF] -Content-Length: 5[CR][LF] -[CR][LF] -stop[LF] == Contents of files in the log/4/ dir after test 1528 === Start of file check-expected HTTP/1.1 200 OK swsclose[CR][LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] Server: test-server/fake[CR][LF] Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT[CR][LF] ETag: "21025-dc7-39462498"[CR][LF] Content-Length: 5[CR][LF] [CR][LF] stop[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1528 ./libtest/libtests lib1528 http://the.old.moo:33235/1528 127.0.0.1:40761 > log/4/stdout1528 2> log/4/stderr1528 === End of file commands.log === Start of file http2_server.log 07:36:09.529617 ====> Client connect 07:36:09.529652 accept_connection 3 returned 4 07:36:09.529670 accept_connection 3 returned 0 07:36:09.529686 Read 93 bytes 07:36:09.529697 Process 93 bytes request 07:36:09.529711 Got request: GET /verifiedserver HTTP/1.1 07:36:09.529721 Are-we-friendly question received 07:36:09.529751 Wrote request (93 bytes) input to log/4/proxy.input 07:36:09.529769 Identifying ourselves as friends 07:36:09.529830 Response sent (56 bytes) and written to log/4/proxy.response 07:36:09.529840 special request received, no persistency 07:36:09.529848 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:40761... * Connected to 127.0.0.1 (127.0.0.1) port 40761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78735 === End of file http2_verify.out === Start of file http_server.log 07:36:09.506655 ====> Client connect 07:36:09.506687 accept_connection 3 returned 4 07:36:09.506703 accept_connection 3 returned 0 07:36:09.506717 Read 93 bytes 07:36:09.506727 Process 93 bytes request 07:36:09.506740 Got request: GET /verifiedserver HTTP/1.1 07:36:09.506750 Are-we-friendly question received 07:36:09.506775 Wrote request (93 bytes) input to log/4/server.input 07:36:09.506790 Identifying ourselves as friends 07:36:09.506847 Response sent (56 bytes) and written to log/4/server.response 07:36:09.506858 special request received, no persistency 07:36:09.506867 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78735 === End of file proxy.response === Start of file server.cmd Testnum 1528 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1528 URL: http://the.old.moo:33235/1528 === End of file stderr1528 === Start of file valgrind1528 ==156504== ==156504== Process terminating with default action of signal 4 (SIGILL) ==156504== Illegal opcode at address 0x51C2DB3 ==156504== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156504== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156504== by 0x51C2DB3: Curl_open (url.c:541) ==156504== by 0x513D46F: curl_easy_init (easy.c:372) ==156504== by 0x40274AE: test_lib1528.lto_priv.0 (lib1528.c:41) ==156504== by 0x4003443: main (first.c:167) ==156504== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x533CFA5: __tsearch (tsearch.c:337) ==156504== by 0x533CFA5: tsearch (tsearch.c:290) ==156504== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156504== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156504== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156504== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156504== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156504== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156504== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== ==156504== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x533CFA5: __tsearch (tsearch.c:337) ==156504== by 0x533CFA5: tsearch (tsearch.c:290) ==156504== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156504== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156504== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156504== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== ==156504== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156504== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156504== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156504== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156504== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156504== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156504== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== ==156504== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156504== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156504== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==1565CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1530 ./libtest/libtests lib1530 - > log/20/stdout1530 2> log/20/stderr1530 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1531 ./libtest/libtests lib1531 127.0.0.1:33487/1531 > log/19/stdout1531 2> log/19/stderr1531 04== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== ==156504== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156504== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156504== by 0x51C2D03: Curl_open (url.c:520) ==156504== by 0x513D46F: curl_easy_init (easy.c:372) ==156504== by 0x40274AE: test_lib1528.lto_priv.0 (lib1528.c:41) ==156504== by 0x4003443: main (first.c:167) ==156504== ==156504== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x533CFA5: __tsearch (tsearch.c:337) ==156504== by 0x533CFA5: tsearch (tsearch.c:290) ==156504== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156504== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156504== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156504== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156504== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156504== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156504== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== ==156504== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156504== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156504== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156504== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156504== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156504== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156504== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156504== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156504== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156504== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156504== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156504== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156504== by 0x525A142: setlocale (setlocale.c:337) ==156504== by 0x400336E: main (first.c:123) ==156504== === End of file valgrind1528 * starts no server test 1538...[libcurl strerror API call tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1538 ./libtest/libtests lib1538 nothing > log/14/stdout1538 2> log/14/stderr1538 s------e-v- OK (1439 out of 1707, remaining: 00:15, took 0.680s, duration: 01:21) * starts no server test 1530...[CURLOPT_OPENSOCKETFUNCTION returns bad socket] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1530 ./libtest/libtests lib1530 - > log/20/stdout1530 2> log/20/stderr1530 libtests returned 132, when expecting 7 1530: exit FAILED == Contents of files in the log/20/ dir after test 1530 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1530 ./libtest/libtests lib1530 - > log/20/stdout1530 2> log/20/stderr1530 === End of file commands.log === Start of file server.cmd Testnum 1530 === End of file server.cmd === Start of file stderr1530 URL: - === End of file stderr1530 === Start of file valgrind1530 ==156421== ==156421== Process terminating with default action of signal 4 (SIGILL) ==156421== Illegal opcode at address 0x51C2DB3 ==156421== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156421== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156421== by 0x51C2DB3: Curl_open (url.c:541) ==156421== by 0x513D46F: curl_easy_init (easy.c:372) ==156421== by 0x40210C5: test_lib1530.lto_priv.0 (lib1530.c:50) ==156421== by 0x4003443: main (first.c:167) ==156421== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x533CFA5: __tsearch (tsearch.c:337) ==156421== by 0x533CFA5: tsearch (tsearch.c:290) ==156421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156421== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156421== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== ==156421== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x533CFA5: __tsearch (tsearch.c:337) ==156421== by 0x533CFA5: tsearch (tsearch.c:290) ==156421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156421== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156421== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== ==156421== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156421== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156421== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== ==156421== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156421== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156421== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== ==156421== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156421== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156421== by 0x51C2D03: Curl_open (url.c:520) ==156421== by 0x513D46F: curl_easy_init (easy.c:372) ==156421== by 0x40210C5: test_lib1530.lto_priv.0 (lib1530.c:50) ==156421== by 0x4003443: main (first.c:167) ==156421== ==156421== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x533CFA5: __tsearch (tsearch.c:337) ==156421== by 0x533CFA5: tsearch (tsearch.c:290) ==156421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156421== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156421== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== ==156421== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156421== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156421== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156421== by 0x525A142: setlocale (setlocale.c:337) ==156421== by 0x400336E: main (first.c:123) ==156421== === End of file valgrind1530 test 1531...[CURLOPT_POSTFIELDS with binary data set after multi_add_handle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1531 ./libtest/libtests lib1531 127.0.0.1:33487/1531 > log/19/stdout1531 2> log/19/stderr1531 1531: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1531 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1531 ./libtest/libtests lib1531 127.0.0.1:33487/1531 > log/19/stdout1531 2> log/19/stderr1531 === End of file commands.log === Start of file http_server.log 07:36:09.529387 ====> Client connect 07:36:09.529422 accept_connection 3 returned 4 07:36:09.529448 accept_connection 3 returned 0 07:36:09.529464 Read 93 bytes 07:36:09.529475 Process 93 bytes request 07:36:09.529488 Got request: GET /verifiedserver HTTP/1.1 07:36:09.529495 Are-we-friendly question received 07:36:09.529517 Wrote request (93 bytes) input to log/19/server.input 07:36:09.529529 Identifying ourselves as friends 07:36:09.529601 Response sent (56 bytes) and written to log/19/server.response 07:36:09.529610 special request received, no persistency 07:36:09.529618 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1531 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr1531 URL: 127.0.0.1:33487/1531 === End of file stderr1531 === Start of file valgrind1531 ==156516== ==156516== Process terminating with default action of signal 4 (SIGILL) ==156516== Illegal opcode at address 0x51C2DB3 ==156516== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156516== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156516== by 0x51C2DB3: Curl_open (url.c:541) ==156516== by 0x513D46F: curl_easy_init (easy.c:372) ==156516== by 0x4053CD5: test_lib1531.part.0.lto_priv.0 (lib1531.c:45) ==156516== by 0x4003443: main (first.c:167) ==156516== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x533CFA5: __tsearch (tsearch.c:337) ==156516== by 0x533CFA5: tsearch (tsearch.c:290) ==156516== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156516== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156516== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156516== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156516== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156516== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== ==156516== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x533CFA5: __tsearch (tsearch.c:337) ==156516== by 0x533CFA5: tsearch (tsearch.c:290) ==156516== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156516== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156516== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== ==156516== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156516== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156516== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156516== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156516== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156516== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== ==156516== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156516== by 0x524F74A: add_alias2 (gconv_conCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1534 ./libtest/libtests lib1534 http://127.0.0.1:45261/1534 > log/8/stdout1534 2> log/8/stderr1534 f.c:105) ==156516== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== ==156516== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156516== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156516== by 0x51C2D03: Curl_open (url.c:520) ==156516== by 0x513D46F: curl_easy_init (easy.c:372) ==156516== by 0x4053CD5: test_lib1531.part.0.lto_priv.0 (lib1531.c:45) ==156516== by 0x4003443: main (first.c:167) ==156516== ==156516== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x533CFA5: __tsearch (tsearch.c:337) ==156516== by 0x533CFA5: tsearch (tsearch.c:290) ==156516== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156516== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156516== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156516== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156516== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156516== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== ==156516== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156516== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156516== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156516== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156516== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156516== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156516== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156516== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156516== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156516== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156516== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156516== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156516== by 0x525A142: setlocale (setlocale.c:337) ==156516== by 0x400336E: main (first.c:123) ==156516== === End of file valgrind1531 test 1534...[CURLINFO_FILETIME init and reset] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1534 ./libtest/libtests lib1534 http://127.0.0.1:45261/1534 > log/8/stdout1534 2> log/8/stderr1534 1534: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1534 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1534 ./libtest/libtests lib1534 http://127.0.0.1:45261/1534 > log/8/stdout1534 2> log/8/stderr1534 === End of file commands.log === Start of file http_server.log 07:36:09.553072 ====> Client connect 07:36:09.553105 accept_connection 3 returned 4 07:36:09.553120 accept_connection 3 returned 0 07:36:09.553134 Read 93 bytes 07:36:09.553143 Process 93 bytes request 07:36:09.553155 Got request: GET /verifiedserver HTTP/1.1 07:36:09.553164 Are-we-friendly question received 07:36:09.553190 Wrote request (93 bytes) input to log/8/server.input 07:36:09.553207 Identifying ourselves as friends 07:36:09.553268 Response sent (56 bytes) and written to log/8/server.response 07:36:09.553279 special request received, no persistency 07:36:09.553288 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1534 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file stderr1534 URL: http://127.0.0.1:45261/1534 === End of file stderr1534 === Start of file valgrind1534 ==156611== ==156611== Process terminating with default action of signal 4 (SIGILL) ==156611== Illegal opcode at address 0x51C2DB3 ==156611== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156611== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156611== by 0x51C2DB3: Curl_open (url.c:541) ==156611== by 0x513D46F: curl_easy_init (easy.c:372) ==156611== by 0x402A13B: UnknownInlinedFun (lib1534.c:38) ==156611== by 0x402A13B: test_lib1534.lto_priv.0 (lib1534.c:30) ==156611== by 0x4003443: main (first.c:167) ==156611== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x533CFA5: __tsearch (tsearch.c:337) ==156611== by 0x533CFA5: tsearch (tsearch.c:290) ==156611== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156611== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156611== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156611== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156611== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156611== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== ==156611== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x533CFA5: __tsearch (tsearch.c:337) ==156611== by 0x533CFA5: tsearch (tsearch.c:290) ==156611== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156611== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156611== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== ==156611== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156611== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156611== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156611== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156611== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156611== by 0xCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1532 ./libtest/libtests lib1532 http://127.0.0.1:39089/1532 > log/17/stdout1532 2> log/17/stderr1532 524F555: __gconv_read_conf (gconv_conf.c:480) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== ==156611== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156611== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156611== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== ==156611== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156611== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156611== by 0x51C2D03: Curl_open (url.c:520) ==156611== by 0x513D46F: curl_easy_init (easy.c:372) ==156611== by 0x402A13B: UnknownInlinedFun (lib1534.c:38) ==156611== by 0x402A13B: test_lib1534.lto_priv.0 (lib1534.c:30) ==156611== by 0x4003443: main (first.c:167) ==156611== ==156611== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x533CFA5: __tsearch (tsearch.c:337) ==156611== by 0x533CFA5: tsearch (tsearch.c:290) ==156611== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156611== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156611== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156611== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156611== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156611== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== ==156611== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156611== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156611== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156611== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156611== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156611== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156611== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156611== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156611== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156611== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156611== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156611== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156611== by 0x525A142: setlocale (setlocale.c:337) ==156611== by 0x400336E: main (first.c:123) ==156611== === End of file valgrind1534 test 1532...[Test CURLINFO_RESPONSE_CODE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1532 ./libtest/libtests lib1532 http://127.0.0.1:39089/1532 > log/17/stdout1532 2> log/17/stderr1532 1532: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1532 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1532 ./libtest/libtests lib1532 http://127.0.0.1:39089/1532 > log/17/stdout1532 2> log/17/stderr1532 === End of file commands.log === Start of file http_server.log 07:36:09.545543 ====> Client connect 07:36:09.545580 accept_connection 3 returned 4 07:36:09.545597 accept_connection 3 returned 0 07:36:09.545612 Read 93 bytes 07:36:09.545621 Process 93 bytes request 07:36:09.545632 Got request: GET /verifiedserver HTTP/1.1 07:36:09.545640 Are-we-friendly question received 07:36:09.545662 Wrote request (93 bytes) input to log/17/server.input 07:36:09.545677 Identifying ourselves as friends 07:36:09.545742 Response sent (56 bytes) and written to log/17/server.response 07:36:09.545751 special request received, no persistency 07:36:09.545760 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1532 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr1532 URL: http://127.0.0.1:39089/1532 === End of file stderr1532 === Start of file valgrind1532 ==156576== ==156576== Process terminating with default action of signal 4 (SIGILL) ==156576== Illegal opcode at address 0x51C2DB3 ==156576== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156576== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156576== by 0x51C2DB3: Curl_open (url.c:541) ==156576== by 0x513D46F: curl_easy_init (easy.c:372) ==156576== by 0x4029D79: UnknownInlinedFun (lib1532.c:38) ==156576== by 0x4029D79: test_lib1532.lto_priv.0 (lib1532.c:30) ==156576== by 0x4003443: main (first.c:167) ==156576== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x533CFA5: __tsearch (tsearch.c:337) ==156576== by 0x533CFA5: tsearch (tsearch.c:290) ==156576== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156576== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156576== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156576== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156576== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156576== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== ==156576== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x533CFA5: __tsearch (tsearch.c:337) ==156576== by 0x533CFA5: tsearch (tsearch.c:290) ==156576== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156576== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156576== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1533 ./libtest/libtests lib1533 http://127.0.0.1:34851/1533 > log/10/stdout1533 2> log/10/stderr1533 pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== ==156576== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156576== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156576== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156576== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156576== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156576== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== ==156576== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156576== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156576== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== ==156576== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156576== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156576== by 0x51C2D03: Curl_open (url.c:520) ==156576== by 0x513D46F: curl_easy_init (easy.c:372) ==156576== by 0x4029D79: UnknownInlinedFun (lib1532.c:38) ==156576== by 0x4029D79: test_lib1532.lto_priv.0 (lib1532.c:30) ==156576== by 0x4003443: main (first.c:167) ==156576== ==156576== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x533CFA5: __tsearch (tsearch.c:337) ==156576== by 0x533CFA5: tsearch (tsearch.c:290) ==156576== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156576== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156576== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156576== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156576== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156576== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== ==156576== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156576== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156576== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156576== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156576== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156576== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156576== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156576== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156576== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156576== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156576== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156576== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156576== by 0x525A142: setlocale (setlocale.c:337) ==156576== by 0x400336E: main (first.c:123) ==156576== === End of file valgrind1532 test 1533...[HTTP with CURLOPT_KEEP_SENDING_ON_ERROR and an early error response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1533 ./libtest/libtests lib1533 http://127.0.0.1:34851/1533 > log/10/stdout1533 2> log/10/stderr1533 1533: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1533 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1533 ./libtest/libtests lib1533 http://127.0.0.1:34851/1533 > log/10/stdout1533 2> log/10/stderr1533 === End of file commands.log === Start of file http_server.log 07:36:09.555337 ====> Client connect 07:36:09.555364 accept_connection 3 returned 4 07:36:09.555379 accept_connection 3 returned 0 07:36:09.555393 Read 93 bytes 07:36:09.555402 Process 93 bytes request 07:36:09.555414 Got request: GET /verifiedserver HTTP/1.1 07:36:09.555423 Are-we-friendly question received 07:36:09.555442 Wrote request (93 bytes) input to log/10/server.input 07:36:09.555454 Identifying ourselves as friends 07:36:09.555494 Response sent (56 bytes) and written to log/10/server.response 07:36:09.555501 special request received, no persistency 07:36:09.555507 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd auth_required Testnum 1533 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr1533 URL: http://127.0.0.1:34851/1533 === End of file stderr1533 === Start of file valgrind1533 ==156619== ==156619== Process terminating with default action of signal 4 (SIGILL) ==156619== Illegal opcode at address 0x51C2DB3 ==156619== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156619== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156619== by 0x51C2DB3: Curl_open (url.c:541) ==156619== by 0x513D46F: curl_easy_init (easy.c:372) ==156619== by 0x4022017: test_lib1533.lto_priv.0 (lib1533.c:138) ==156619== by 0x4003443: main (first.c:167) ==156619== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x533CFA5: __tsearch (tsearch.c:337) ==156619== by 0x533CFA5: tsearch (tsearch.c:290) ==156619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156619== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156619== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1509 ./libtest/libtests lib1509 http://the.old.moo.1509:33627/1509 127.0.0.1:43815 > log/13/stdout1509 2> log/13/stderr1509 c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== ==156619== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x533CFA5: __tsearch (tsearch.c:337) ==156619== by 0x533CFA5: tsearch (tsearch.c:290) ==156619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156619== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156619== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== ==156619== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156619== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156619== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== ==156619== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156619== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156619== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== ==156619== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156619== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156619== by 0x51C2D03: Curl_open (url.c:520) ==156619== by 0x513D46F: curl_easy_init (easy.c:372) ==156619== by 0x4022017: test_lib1533.lto_priv.0 (lib1533.c:138) ==156619== by 0x4003443: main (first.c:167) ==156619== ==156619== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x533CFA5: __tsearch (tsearch.c:337) ==156619== by 0x533CFA5: tsearch (tsearch.c:290) ==156619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156619== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156619== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== ==156619== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156619== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156619== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156619== by 0x525A142: setlocale (setlocale.c:337) ==156619== by 0x400336E: main (first.c:123) ==156619== === End of file valgrind1533 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/13/server/http2_server.pid" --logfile "log/13/http2_server.log" --logdir "log/13" --portfile log/13/server/http2_server.port --config log/13/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 155377 port 43815 * pid http-proxy => 155377 155377 test 1509...[simple multi http:// through proxytunnel with authentication info] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1509 ./libtest/libtests lib1509 http://the.old.moo.1509:33627/1509 127.0.0.1:43815 > log/13/stdout1509 2> log/13/stderr1509 1509: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1509 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1509 ./libtest/libtests lib1509 http://the.old.moo.1509:33627/1509 127.0.0.1:43815 > log/13/stdout1509 2> log/13/stderr1509 === End of file commands.log === Start of file http2_server.log 07:36:08.590999 Run as proxy, CONNECT to host 127.0.0.1 07:36:08.591114 Running HTTP IPv4 version on port 43815 07:36:08.591153 Wrote pid 155377 to log/13/server/http2_server.pid 07:36:08.591181 Wrote port 43815 to log/13/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:08.567189 ====> Client connect 07:36:08.567226 accept_connection 3 returned 4 07:36:08.567243 accept_connection 3 returned 0 07:36:08.567255 Read 93 bytes 07:36:08.567266 Process 93 bytes request 07:36:08.567279 Got request: GET /verifiedserver HTTP/1.1 07:36:08.567289 Are-we-friendly question received 07:36:08.567319 Wrote request (93 bytes) input to log/13/server.input 07:36:08.567336 Identifying ourselves as friends 07:36:08.567394 Response sent (56 bytes) and written to log/13/server.response 07:36:08.567403 special request received, no persistency 07:36:08.567411 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd connection-monitor Testnum 1509 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === EnCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1536 ./libtest/libtests lib1536 http://127.0.0.1:45457/1536 > log/2/stdout1536 2> log/2/stderr1536 d of file server.response === Start of file stderr1509 URL: http://the.old.moo.1509:33627/1509 === End of file stderr1509 === Start of file test1509.txt foo bar bar foo moo === End of file test1509.txt === Start of file valgrind1509 ==156723== ==156723== Process terminating with default action of signal 4 (SIGILL) ==156723== Illegal opcode at address 0x51C2DB3 ==156723== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156723== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156723== by 0x51C2DB3: Curl_open (url.c:541) ==156723== by 0x513D46F: curl_easy_init (easy.c:372) ==156723== by 0x4022319: UnknownInlinedFun (lib1509.c:42) ==156723== by 0x4022319: test_lib1509.lto_priv.0 (lib1509.c:33) ==156723== by 0x4003443: main (first.c:167) ==156723== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x533CFA5: __tsearch (tsearch.c:337) ==156723== by 0x533CFA5: tsearch (tsearch.c:290) ==156723== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156723== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156723== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156723== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156723== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156723== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== ==156723== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x533CFA5: __tsearch (tsearch.c:337) ==156723== by 0x533CFA5: tsearch (tsearch.c:290) ==156723== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156723== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156723== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== ==156723== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156723== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156723== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156723== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156723== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156723== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== ==156723== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156723== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156723== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== ==156723== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156723== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156723== by 0x51C2D03: Curl_open (url.c:520) ==156723== by 0x513D46F: curl_easy_init (easy.c:372) ==156723== by 0x4022319: UnknownInlinedFun (lib1509.c:42) ==156723== by 0x4022319: test_lib1509.lto_priv.0 (lib1509.c:33) ==156723== by 0x4003443: main (first.c:167) ==156723== ==156723== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x533CFA5: __tsearch (tsearch.c:337) ==156723== by 0x533CFA5: tsearch (tsearch.c:290) ==156723== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156723== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156723== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156723== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156723== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156723== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== ==156723== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156723== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156723== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156723== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156723== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156723== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156723== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156723== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156723== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156723== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156723== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156723== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156723== by 0x525A142: setlocale (setlocale.c:337) ==156723== by 0x400336E: main (first.c:123) ==156723== === End of file valgrind1509 test 1536...[Test CURLINFO_RESPONSE_CODE CURLINFO_SCHEME] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1536 ./libtest/libtests lib1536 http://127.0.0.1:45457/1536 > log/2/stdout1536 2> log/2/stderr1536 1536: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1536 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1536 ./libtest/libtests lib1536 http://127.0.0.1:45457/1536 > log/2/stdout1536 2> log/2/stderr1536 === End of file commands.log === Start of file http_server.log 07:36:09.741714 ====> Client connect 07:36:09.741746 accept_connection 3 returned 4 07:36:09.741761 accept_connection 3 returned 0 07:36:09.741775 Read 93 bytes 07:36:09.741784 Process 93 bytes request 07:36:09.741795 Got request: GET /verifiedserver HTTP/1.1 07:36:09.741804 Are-we-friendly question received 07:36:09.741829 Wrote request (93 bytes) input to log/2/server.input 07:36:09.741845 Identifying ourselves as frienCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1535 ./libtest/libtests lib1535 http://127.0.0.1:45701/1535 > log/23/stdout1535 2> log/23/stderr1535 ds 07:36:09.741909 Response sent (56 bytes) and written to log/2/server.response 07:36:09.741921 special request received, no persistency 07:36:09.741931 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1536 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr1536 URL: http://127.0.0.1:45457/1536 === End of file stderr1536 === Start of file valgrind1536 ==156889== ==156889== Process terminating with default action of signal 4 (SIGILL) ==156889== Illegal opcode at address 0x51C2DB3 ==156889== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156889== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156889== by 0x51C2DB3: Curl_open (url.c:541) ==156889== by 0x513D46F: curl_easy_init (easy.c:372) ==156889== by 0x402A91D: UnknownInlinedFun (lib1536.c:38) ==156889== by 0x402A91D: test_lib1536.lto_priv.0 (lib1536.c:30) ==156889== by 0x4003443: main (first.c:167) ==156889== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x533CFA5: __tsearch (tsearch.c:337) ==156889== by 0x533CFA5: tsearch (tsearch.c:290) ==156889== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156889== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156889== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156889== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156889== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156889== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== ==156889== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x533CFA5: __tsearch (tsearch.c:337) ==156889== by 0x533CFA5: tsearch (tsearch.c:290) ==156889== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156889== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156889== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== ==156889== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156889== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156889== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156889== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156889== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156889== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== ==156889== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156889== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156889== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== ==156889== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156889== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156889== by 0x51C2D03: Curl_open (url.c:520) ==156889== by 0x513D46F: curl_easy_init (easy.c:372) ==156889== by 0x402A91D: UnknownInlinedFun (lib1536.c:38) ==156889== by 0x402A91D: test_lib1536.lto_priv.0 (lib1536.c:30) ==156889== by 0x4003443: main (first.c:167) ==156889== ==156889== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x533CFA5: __tsearch (tsearch.c:337) ==156889== by 0x533CFA5: tsearch (tsearch.c:290) ==156889== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156889== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156889== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156889== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156889== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156889== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== ==156889== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156889== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156889== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156889== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156889== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156889== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156889== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156889== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156889== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156889== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156889== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156889== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156889== by 0x525A142: setlocale (setlocale.c:337) ==156889== by 0x400336E: main (first.c:123) ==156889== === End of file valgrind1536 test 1535...[Test CURLINFO_RESPONSE_CODE CURLINFO_PROTOCOL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1535 ./libtest/libtests lib1535 http://127.0.0.1:45701/1535 > log/23/stdout1535 2> log/23/stderr1535 1535: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1535 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1535 ./libtest/libtests lib1535 http://127.0.0.1:45701/1535 > log/23/stdout1535 2> log/23/stderr1535 === End of file commands.log === Start of file http_server.log 07:36:09.740985 ====> Client connect 07:36:09.741011 accept_connection 3 returned 4 07:36:09.741023 accept_connection 3 returned 0 07:36:09.741034 Read 93 bytes 07:36:09.741042 Process 93 bytes request 07:36:09.741052 Got request: GET /verifiedserver HTTP/1.1 07:36:09.741059 Are-we-friendly question received 07:36:09.741077 Wrote request (93 bytes) input to log/23/server.input 07:36:09.741089 Identifying ourselves as friends 07:36:09.741128 Response sent (56 bytes) and written to log/23/server.response 07:36:09.741135 special request received, no persistency 07:36:09.741142 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1535 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file stderr1535 URL: http://127.0.0.1:45701/1535 === End of file stderr1535 === Start of file valgrind1535 ==156888== ==156888== Process terminating with default action of signal 4 (SIGILL) ==156888== Illegal opcode at address 0x51C2DB3 ==156888== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==156888== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==156888== by 0x51C2DB3: Curl_open (url.c:541) ==156888== by 0x513D46F: curl_easy_init (easy.c:372) ==156888== by 0x402A55B: UnknownInlinedFun (lib1535.c:38) ==156888== by 0x402A55B: test_lib1535.lto_priv.0 (lib1535.c:30) ==156888== by 0x4003443: main (first.c:167) ==156888== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x533CFA5: __tsearch (tsearch.c:337) ==156888== by 0x533CFA5: tsearch (tsearch.c:290) ==156888== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156888== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156888== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156888== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156888== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156888== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== ==156888== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x533CFA5: __tsearch (tsearch.c:337) ==156888== by 0x533CFA5: tsearch (tsearch.c:290) ==156888== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156888== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156888== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== ==156888== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156888== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156888== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156888== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156888== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==156888== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== ==156888== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156888== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==156888== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== ==156888== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==156888== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==156888== by 0x51C2D03: Curl_open (url.c:520) ==156888== by 0x513D46F: curl_easy_init (easy.c:372) ==156888== by 0x402A55B: UnknownInlinedFun (lib1535.c:38) ==156888== by 0x402A55B: test_lib1535.lto_priv.0 (lib1535.c:30) ==156888== by 0x4003443: main (first.c:167) ==156888== ==156888== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x533CFA5: __tsearch (tsearch.c:337) ==156888== by 0x533CFA5: tsearch (tsearch.c:290) ==156888== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==156888== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156888== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156888== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156888== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156888== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== ==156888== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==156888== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==156888== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==156888== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==156888== by 0x524F3F0: add_alias (gconv_conf.c:178) ==156888== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==156888== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==156888== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==156888== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==156888== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==156888== by 0x524E246: __gconv_compare_alias (gconv_dCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1542 ./libtest/libtests lib1542 http://127.0.0.1:45825/1542 > log/18/stdout1542 2> log/18/stderr1542 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1541 ./libtest/libtests lib1541 http://127.0.0.1:46739/1541 > log/16/stdout1541 2> log/16/stderr1541 b.c:692) ==156888== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==156888== by 0x525A142: setlocale (setlocale.c:337) ==156888== by 0x400336E: main (first.c:123) ==156888== === End of file valgrind1535 test 1542...[connection reuse with CURLOPT_MAXLIFETIME_CONN] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1542 ./libtest/libtests lib1542 http://127.0.0.1:45825/1542 > log/18/stdout1542 2> log/18/stderr1542 1542: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1542 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1542 ./libtest/libtests lib1542 http://127.0.0.1:45825/1542 > log/18/stdout1542 2> log/18/stderr1542 === End of file commands.log === Start of file http_server.log 07:36:09.823606 ====> Client connect 07:36:09.823641 accept_connection 3 returned 4 07:36:09.823654 accept_connection 3 returned 0 07:36:09.823666 Read 93 bytes 07:36:09.823674 Process 93 bytes request 07:36:09.823684 Got request: GET /verifiedserver HTTP/1.1 07:36:09.823691 Are-we-friendly question received 07:36:09.823712 Wrote request (93 bytes) input to log/18/server.input 07:36:09.823726 Identifying ourselves as friends 07:36:09.823771 Response sent (56 bytes) and written to log/18/server.response 07:36:09.823779 special request received, no persistency 07:36:09.823786 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1542 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr1542 URL: http://127.0.0.1:45825/1542 === End of file stderr1542 === Start of file valgrind1542 ==157248== ==157248== Process terminating with default action of signal 4 (SIGILL) ==157248== Illegal opcode at address 0x51C2DB3 ==157248== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157248== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157248== by 0x51C2DB3: Curl_open (url.c:541) ==157248== by 0x513D46F: curl_easy_init (easy.c:372) ==157248== by 0x40280DB: UnknownInlinedFun (lib1542.c:45) ==157248== by 0x40280DB: test_lib1542.lto_priv.0 (lib1542.c:38) ==157248== by 0x4003443: main (first.c:167) ==157248== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x533CFA5: __tsearch (tsearch.c:337) ==157248== by 0x533CFA5: tsearch (tsearch.c:290) ==157248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157248== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157248== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== ==157248== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x533CFA5: __tsearch (tsearch.c:337) ==157248== by 0x533CFA5: tsearch (tsearch.c:290) ==157248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157248== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157248== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== ==157248== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157248== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157248== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== ==157248== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157248== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157248== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== ==157248== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157248== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157248== by 0x51C2D03: Curl_open (url.c:520) ==157248== by 0x513D46F: curl_easy_init (easy.c:372) ==157248== by 0x40280DB: UnknownInlinedFun (lib1542.c:45) ==157248== by 0x40280DB: test_lib1542.lto_priv.0 (lib1542.c:38) ==157248== by 0x4003443: main (first.c:167) ==157248== ==157248== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x533CFA5: __tsearch (tsearch.c:337) ==157248== by 0x533CFA5: tsearch (tsearch.c:290) ==157248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157248== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157248== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== ==157248== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157248== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157248== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157248== by 0x525A142: setlocale (setlocale.c:337) ==157248== by 0x400336E: main (first.c:123) ==157248== === End of file valgrind1542 test 1541...[chunked with trailers and pausing the receive] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1541 ./libtest/libtests lib1541 http://127.0.0.1:46739/1541 > log/16/stdout1541 2> log/16/stderr1541 1541: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1541 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1541 ./libtest/libtests lib1541 http://127.0.0.1:46739/1541 > log/16/stdout1541 2> log/16/stderr1541 === End of file commands.log === Start of file http_server.log 07:36:09.769611 ====> Client connect 07:36:09.769644 accept_connection 3 returned 4 07:36:09.769660 accept_connection 3 returned 0 07:36:09.769673 Read 93 bytes 07:36:09.769683 Process 93 bytes request 07:36:09.769694 Got request: GET /verifiedserver HTTP/1.1 07:36:09.769704 Are-we-friendly question received 07:36:09.769734 Wrote request (93 bytes) input to log/16/server.input 07:36:09.769751 Identifying ourselves as friends 07:36:09.769809 Response sent (56 bytes) and written to log/16/server.response 07:36:09.769820 special request received, no persistency 07:36:09.769829 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1541 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr1541 URL: http://127.0.0.1:46739/1541 === End of file stderr1541 === Start of file valgrind1541 ==157078== ==157078== Process terminating with default action of signal 4 (SIGILL) ==157078== Illegal opcode at address 0x51C2DB3 ==157078== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157078== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157078== by 0x51C2DB3: Curl_open (url.c:541) ==157078== by 0x513D46F: curl_easy_init (easy.c:372) ==157078== by 0x402B754: test_lib1541.lto_priv.0 (lib1541.c:123) ==157078== by 0x4003443: main (first.c:167) ==157078== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x533CFA5: __tsearch (tsearch.c:337) ==157078== by 0x533CFA5: tsearch (tsearch.c:290) ==157078== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157078== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157078== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157078== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157078== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157078== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== ==157078== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x533CFA5: __tsearch (tsearch.c:337) ==157078== by 0x533CFA5: tsearch (tsearch.c:290) ==157078== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157078== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157078== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== ==157078== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157078== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157078== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157078== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157078== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157078== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== ==157078== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157078== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157078== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== ==157078== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157078== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157078== by 0x51C2D03: Curl_open (url.c:520) ==157078== by 0x513D46F: curl_easy_init (easy.c:372) ==157078== by 0x402B754: test_lib1541.lto_priv.0 (lib1541.c:123) ==157078== by 0x4003443: main (first.c:167) ==157078== ==157078== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x533CFA5: __tsearch (tsearch.c:337) ==157078== by 0x533CFA5: tsearch (tsearch.c:290) ==157078== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157078== by 0x524F3F0: adCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1540 ./libtest/libtests lib1540 http://127.0.0.1:38941/1540 > log/1/stdout1540 2> log/1/stderr1540 d_alias2 (gconv_conf.c:176) ==157078== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157078== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157078== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157078== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== ==157078== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157078== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157078== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157078== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157078== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157078== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157078== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157078== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157078== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157078== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157078== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157078== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157078== by 0x525A142: setlocale (setlocale.c:337) ==157078== by 0x400336E: main (first.c:123) ==157078== === End of file valgrind1541 test 1540...[chunked with trailers and pausing the receive] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1540 ./libtest/libtests lib1540 http://127.0.0.1:38941/1540 > log/1/stdout1540 2> log/1/stderr1540 1540: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1540 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1540 ./libtest/libtests lib1540 http://127.0.0.1:38941/1540 > log/1/stdout1540 2> log/1/stderr1540 === End of file commands.log === Start of file http_server.log 07:36:09.764578 ====> Client connect 07:36:09.764603 accept_connection 3 returned 4 07:36:09.764617 accept_connection 3 returned 0 07:36:09.764628 Read 93 bytes 07:36:09.764636 Process 93 bytes request 07:36:09.764646 Got request: GET /verifiedserver HTTP/1.1 07:36:09.764653 Are-we-friendly question received 07:36:09.764672 Wrote request (93 bytes) input to log/1/server.input 07:36:09.764684 Identifying ourselves as friends 07:36:09.764726 Response sent (56 bytes) and written to log/1/server.response 07:36:09.764734 special request received, no persistency 07:36:09.764741 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd writedelay: 10 Testnum 1540 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr1540 URL: http://127.0.0.1:38941/1540 === End of file stderr1540 === Start of file valgrind1540 ==157036== ==157036== Process terminating with default action of signal 4 (SIGILL) ==157036== Illegal opcode at address 0x51C2DB3 ==157036== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157036== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157036== by 0x51C2DB3: Curl_open (url.c:541) ==157036== by 0x513D46F: curl_easy_init (easy.c:372) ==157036== by 0x4023AF1: test_lib1540.lto_priv.0 (lib1540.c:96) ==157036== by 0x4003443: main (first.c:167) ==157036== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x533CFA5: __tsearch (tsearch.c:337) ==157036== by 0x533CFA5: tsearch (tsearch.c:290) ==157036== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157036== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157036== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157036== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157036== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157036== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== ==157036== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x533CFA5: __tsearch (tsearch.c:337) ==157036== by 0x533CFA5: tsearch (tsearch.c:290) ==157036== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157036== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157036== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== ==157036== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157036== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157036== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157036== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157036== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157036== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== ==157036== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157036== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157036== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== ==157036== 5,480 bytes in 1 blocks are definitely lost in loss rCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1539 ./libtest/libtests lib1514 http://127.0.0.1:34999/1539 > log/9/stdout1539 2> log/9/stderr1539 ecord 648 of 655 ==157036== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157036== by 0x51C2D03: Curl_open (url.c:520) ==157036== by 0x513D46F: curl_easy_init (easy.c:372) ==157036== by 0x4023AF1: test_lib1540.lto_priv.0 (lib1540.c:96) ==157036== by 0x4003443: main (first.c:167) ==157036== ==157036== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x533CFA5: __tsearch (tsearch.c:337) ==157036== by 0x533CFA5: tsearch (tsearch.c:290) ==157036== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157036== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157036== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157036== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157036== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157036== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== ==157036== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157036== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157036== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157036== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157036== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157036== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157036== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157036== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157036== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157036== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157036== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157036== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157036== by 0x525A142: setlocale (setlocale.c:337) ==157036== by 0x400336E: main (first.c:123) ==157036== === End of file valgrind1540 test 1539...[HTTP 1.0 POST with read callback and unknown data size] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1539 ./libtest/libtests lib1514 http://127.0.0.1:34999/1539 > log/9/stdout1539 2> log/9/stderr1539 libtests returned 132, when expecting 25 1539: exit FAILED == Contents of files in the log/9/ dir after test 1539 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1539 ./libtest/libtests lib1514 http://127.0.0.1:34999/1539 > log/9/stdout1539 2> log/9/stderr1539 === End of file commands.log === Start of file http_server.log 07:36:09.764589 ====> Client connect 07:36:09.764622 accept_connection 3 returned 4 07:36:09.764637 accept_connection 3 returned 0 07:36:09.764649 Read 93 bytes 07:36:09.764659 Process 93 bytes request 07:36:09.764669 Got request: GET /verifiedserver HTTP/1.1 07:36:09.764678 Are-we-friendly question received 07:36:09.764702 Wrote request (93 bytes) input to log/9/server.input 07:36:09.764717 Identifying ourselves as friends 07:36:09.764767 Response sent (56 bytes) and written to log/9/server.response 07:36:09.764777 special request received, no persistency 07:36:09.764785 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1539 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr1539 URL: http://127.0.0.1:34999/1539 === End of file stderr1539 === Start of file valgrind1539 ==157014== ==157014== Process terminating with default action of signal 4 (SIGILL) ==157014== Illegal opcode at address 0x51C2DB3 ==157014== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157014== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157014== by 0x51C2DB3: Curl_open (url.c:541) ==157014== by 0x513D46F: curl_easy_init (easy.c:372) ==157014== by 0x4022B8E: test_lib1514.lto_priv.0 (lib1514.c:67) ==157014== by 0x4003443: main (first.c:167) ==157014== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x533CFA5: __tsearch (tsearch.c:337) ==157014== by 0x533CFA5: tsearch (tsearch.c:290) ==157014== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157014== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157014== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157014== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157014== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157014== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== ==157014== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x533CFA5: __tsearch (tsearch.c:337) ==157014== by 0x533CFA5: tsearch (tsearch.c:290) ==157014== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157014== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157014== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== ==157014== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157014== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157014== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157014== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157014== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157014== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== ==157014== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==1570CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1537 ./libtest/libtests lib1537 nothing > log/5/stdout1537 2> log/5/stderr1537 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1543 ./libtest/libtests lib1518 "http://127.0.0.1:42345/ /with/ space/ /file" > log/3/stdout1543 2> log/3/stderr1543 14== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157014== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== ==157014== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157014== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157014== by 0x51C2D03: Curl_open (url.c:520) ==157014== by 0x513D46F: curl_easy_init (easy.c:372) ==157014== by 0x4022B8E: test_lib1514.lto_priv.0 (lib1514.c:67) ==157014== by 0x4003443: main (first.c:167) ==157014== ==157014== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x533CFA5: __tsearch (tsearch.c:337) ==157014== by 0x533CFA5: tsearch (tsearch.c:290) ==157014== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157014== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157014== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157014== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157014== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157014== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== ==157014== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157014== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157014== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157014== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157014== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157014== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157014== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157014== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157014== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157014== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157014== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157014== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157014== by 0x525A142: setlocale (setlocale.c:337) ==157014== by 0x400336E: main (first.c:123) ==157014== === End of file valgrind1539 * starts no server test 1537...[libcurl URL escape/unescape tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1537 ./libtest/libtests lib1537 nothing > log/5/stdout1537 2> log/5/stderr1537 s------e-v- OK (1438 out of 1707, remaining: 00:15, took 1.191s, duration: 01:22) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1547 ../src/curl -q --output log/14/curl1547.out --include --trace-ascii log/14/trace1547 --trace-config all --trace-time ftp://127.0.0.1:41711/test-1547/ -P 127.0.0.1 --ftp-pasv > log/14/stdout1547 2> log/14/stderr1547 test 1543...[CURLOPT_CURLU, URL with space and CURLINFO_EFFECTIVE_URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1543 ./libtest/libtests lib1518 "http://127.0.0.1:42345/ /with/ space/ /file" > log/3/stdout1543 2> log/3/stderr1543 1543: stdout FAILED: --- log/3/check-expected 2025-07-18 07:36:11.560446486 +0000 +++ log/3/check-generated 2025-07-18 07:36:11.560446486 +0000 @@ -1,5 +0,0 @@ -res 0[LF] -status 200[LF] -redirects 1[LF] -effectiveurl http://127.0.0.1:42345/%20/with/%20space/15430002[LF] -redirecturl blank[LF] == Contents of files in the log/3/ dir after test 1543 === Start of file check-expected res 0[LF] status 200[LF] redirects 1[LF] effectiveurl http://127.0.0.1:42345/%20/with/%20space/15430002[LF] redirecturl blank[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1543 ./libtest/libtests lib1518 "http://127.0.0.1:42345/ /with/ space/ /file" > log/3/stdout1543 2> log/3/stderr1543 === End of file commands.log === Start of file http_server.log 07:36:09.934581 ====> Client connect 07:36:09.934611 accept_connection 3 returned 4 07:36:09.934624 accept_connection 3 returned 0 07:36:09.934635 Read 93 bytes 07:36:09.934643 Process 93 bytes request 07:36:09.934654 Got request: GET /verifiedserver HTTP/1.1 07:36:09.934662 Are-we-friendly question received 07:36:09.934683 Wrote request (93 bytes) input to log/3/server.input 07:36:09.934695 Identifying ourselves as friends 07:36:09.934737 Response sent (56 bytes) and written to log/3/server.response 07:36:09.934744 special request received, no persistency 07:36:09.934751 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1543 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr1543 URL: http://127.0.0.1:42345/ /with/ space/ /file === End of file stderr1543 === Start of file valgrind1543 ==157322== ==157322== Process terminating with default action of signal 4 (SIGILL) ==157322== Illegal opcode at address 0x51C2DB3 ==157322== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157322== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157322== by 0x51C2DB3: Curl_open (url.c:541) ==157322== by 0x513D46F: curl_easy_init (easy.c:372) ==157322== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==157322== by 0x4003443: main (first.c:167) ==157322== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x533CFA5: __tsearch (tsearch.c:337) ==157322== by 0x533CFA5: tsearch (tsearch.c:290) ==157322== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157322== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157322== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157322== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157322== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157322== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x525A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== ==157322== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x533CFA5: __tsearch (tsearch.c:337) ==157322== by 0x533CFA5: tsearch (tsearch.c:290) ==157322== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157322== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157322== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x525A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== ==157322== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157322== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157322== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157322== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157322== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157322== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x525A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== ==157322== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157322== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157322== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x525A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== ==157322== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157322== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157322== by 0x51C2D03: Curl_open (url.c:520) ==157322== by 0x513D46F: curl_easy_init (easy.c:372) ==157322== by 0x4029918: test_lib1518.lto_priv.0 (lib1518.c:49) ==157322== by 0x4003443: main (first.c:167) ==157322== ==157322== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x533CFA5: __tsearch (tsearch.c:337) ==157322== by 0x533CFA5: tsearch (tsearch.c:290) ==157322== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157322== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157322== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157322== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157322== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157322== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x52CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1546 ../src/curl -q --output log/4/curl1546.out --include --trace-ascii log/4/trace1546 --trace-config all --trace-time http://127.0.0.1:33235/1546 --tr-encoding > log/4/stdout1546 2> log/4/stderr1546 5A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== ==157322== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157322== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157322== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157322== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157322== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157322== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157322== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157322== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157322== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157322== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157322== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157322== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157322== by 0x525A142: setlocale (setlocale.c:337) ==157322== by 0x400336E: main (first.c:123) ==157322== === End of file valgrind1543 test 1547...[FTP dir list PASV overriding PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1547 ../src/curl -q --output log/14/curl1547.out --include --trace-ascii log/14/trace1547 --trace-config all --trace-time ftp://127.0.0.1:41711/test-1547/ -P 127.0.0.1 --ftp-pasv > log/14/stdout1547 2> log/14/stderr1547 1547: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1547 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1547 ../src/curl -q --output log/14/curl1547.out --include --trace-ascii log/14/trace1547 --trace-config all --trace-time ftp://127.0.0.1:41711/test-1547/ -P 127.0.0.1 --ftp-pasv > log/14/stdout1547 2> log/14/stderr1547 === End of file commands.log === Start of file ftp_server.log 07:36:10.657649 ====> Client connect 07:36:10.657808 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:10.658083 < "USER anonymous" 07:36:10.658117 > "331 We are happy you popped in![CR][LF]" 07:36:10.658255 < "PASS ftp@example.com" 07:36:10.658275 > "230 Welcome you silly person[CR][LF]" 07:36:10.658401 < "PWD" 07:36:10.658425 > "257 "/" is current directory[CR][LF]" 07:36:10.658555 < "EPSV" 07:36:10.658576 ====> Passive DATA channel requested by client 07:36:10.658588 DATA sockfilt for passive data channel starting... 07:36:10.673625 DATA sockfilt for passive data channel started (pid 157580) 07:36:10.673830 DATA sockfilt for passive data channel listens on port 40653 07:36:10.673905 > "229 Entering Passive Mode (|||40653|)[LF]" 07:36:10.673924 Client has been notified that DATA conn will be accepted on port 40653 07:36:10.674291 Client connects to port 40653 07:36:10.674318 ====> Client established passive DATA connection on port 40653 07:36:10.674398 < "TYPE I" 07:36:10.674429 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:10.674574 < "SIZE verifiedserver" 07:36:10.674608 > "213 17[CR][LF]" 07:36:10.674738 < "RETR verifiedserver" 07:36:10.674769 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:10.674853 =====> Closing passive DATA connection... 07:36:10.674868 Server disconnects passive DATA connection 07:36:10.675021 Server disconnected passive DATA connection 07:36:10.675042 DATA sockfilt for passive data channel quits (pid 157580) 07:36:10.675421 DATA sockfilt for passive data channel quit (pid 157580) 07:36:10.675443 =====> Closed passive DATA connection 07:36:10.675466 > "226 File transfer complete[CR][LF]" 07:36:10.720368 < "QUIT" 07:36:10.720425 > "221 bye bye baby[CR][LF]" 07:36:10.721399 MAIN sockfilt said DISC 07:36:10.721430 ====> Client disconnected 07:36:10.721525 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:10.503008 ====> Client connect 07:36:10.503801 Received DATA (on stdin) 07:36:10.503815 > 160 bytes data, server => client 07:36:10.503827 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:10.503837 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:10.503846 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:10.503923 < 16 bytes data, client => server 07:36:10.503933 'USER anonymous\r\n' 07:36:10.504102 Received DATA (on stdin) 07:36:10.504112 > 33 bytes data, server => client 07:36:10.504122 '331 We are happy you popped in!\r\n' 07:36:10.504164 < 22 bytes data, client => server 07:36:10.504174 'PASS ftp@example.com\r\n' 07:36:10.504257 Received DATA (on stdin) 07:36:10.504267 > 30 bytes data, server => client 07:36:10.504277 '230 Welcome you silly person\r\n' 07:36:10.504315 < 5 bytes data, client => server 07:36:10.504324 'PWD\r\n' 07:36:10.504405 Received DATA (on stdin) 07:36:10.504414 > 30 bytes data, server => client 07:36:10.504424 '257 "/" is current directory\r\n' 07:36:10.504471 < 6 bytes data, client => server 07:36:10.504481 'EPSV\r\n' 07:36:10.519929 Received DATA (on stdin) 07:36:10.519954 > 38 bytes data, server => client 07:36:10.519965 '229 Entering Passive Mode (|||40653|)\n' 07:36:10.520193 < 8 bytes data, client => server 07:36:10.520209 'TYPE I\r\n' 07:36:10.520413 Received DATA (on stdin) 07:36:10.520425 > 33 bytes data, server => client 07:36:10.520435 '200 I modify TYPE as you wanted\r\n' 07:36:10.520482 < 21 bytes data, client => server 07:36:10.520493 'SIZE verifiedserver\r\n' 07:36:10.520590 Received DATA (on stdin) 07:36:10.520600 > 8 bytes data, server => client 07:36:10.520609 '213 17\r\n' 07:36:10.520650 < 21 bytes data, client => server 07:36:10.520659 'RETR verifiedserver\r\n' 07:36:10.520853 Received DATA (on stdin) 07:36:10.520864 > 29 bytes data, server => client 07:36:10.520874 '150 Binary junk (17 bytes).\r\n' 07:36:10.521449 Received DATA (on stdin) 07:36:10.521461 > 28 bytes data, server => client 07:36:10.521471 '226 File transfer complete\r\n' 07:36:10.566165 < 6 bytes data, client => server 07:36:10.566199 'QUIT\r\n' 07:36:10.566413 Received DATA (on stdin) 07:36:10.566427 > 18 bytes data, server => client 07:36:10.566438 '221 bye bye baby\r\n' 07:36:10.567329 ====> Client disconnect 07:36:10.567514 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:10.517856 Running IPv4 version 07:36:10.517930 Listening on port 40653 07:36:10.517974 Wrote pid 157580 to log/14/server/ftp_sockdata.pid 07:36:10.519517 Received PING (on stdin) 07:36:10.519659 Received PORT (on stdin) 07:36:10.520229 ====> Client connect 07:36:10.520901 Received DATA (on stdin) 07:36:10.520912 > 17 bytes data, server => client 07:36:10.520922 'WE ROOLZ: 79837\r\n' 07:36:10.520945 Received DISC (on stdin) 07:36:10.520957 ====> Client forcibly disconnected 07:36:10.521100 Received QUIT (on stdin) 07:36:10.521114 quits 07:36:10.521191 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 1547 === End of file server.cmd === Start of file valgrind1547 ==157712== ==157712== Process terminating with default action of signal 4 (SIGILL) ==157712== Illegal opcode at address 0x4003082 ==157712== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==157712== by 0x4003082: main (tool_main.c:234) === End of file valgrind1547 test 1546...[HTTP transfer-encoding wrong order] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1546 ../src/curl -q --output log/4/curl1546.out --include --trace-ascii log/4/trace1546 --trace-config all --trace-time http://127.0.0.1:33235/1546 --tr-encoding CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1525 ./libtest/libtests lib1525 http://the.old.moo.1525:38675/1525 127.0.0.1:45069 > log/24/stdout1525 2> log/24/stderr1525 > log/4/stdout1546 2> log/4/stderr1546 1546: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1546 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1546 ../src/curl -q --output log/4/curl1546.out --include --trace-ascii log/4/trace1546 --trace-config all --trace-time http://127.0.0.1:33235/1546 --tr-encoding > log/4/stdout1546 2> log/4/stderr1546 === End of file commands.log === Start of file http_server.log 07:36:10.472717 ====> Client connect 07:36:10.472779 accept_connection 3 returned 4 07:36:10.472800 accept_connection 3 returned 0 07:36:10.472822 Read 93 bytes 07:36:10.472832 Process 93 bytes request 07:36:10.472848 Got request: GET /verifiedserver HTTP/1.1 07:36:10.472856 Are-we-friendly question received 07:36:10.472882 Wrote request (93 bytes) input to log/4/server.input 07:36:10.472898 Identifying ourselves as friends 07:36:10.472972 Response sent (56 bytes) and written to log/4/server.response 07:36:10.472982 special request received, no persistency 07:36:10.472992 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1546 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind1546 ==157581== ==157581== Process terminating with default action of signal 4 (SIGILL) ==157581== Illegal opcode at address 0x4003082 ==157581== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==157581== by 0x4003082: main (tool_main.c:234) === End of file valgrind1546 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/24/server/http2_server.pid" --logfile "log/24/http2_server.log" --logdir "log/24" --portfile log/24/server/http2_server.port --config log/24/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 156284 port 45069 * pid http-proxy => 156284 156284 test 1525...[CURLOPT_PROXYHEADER is ignored CURLHEADER_UNIFIED] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1525 ./libtest/libtests lib1525 http://the.old.moo.1525:38675/1525 127.0.0.1:45069 > log/24/stdout1525 2> log/24/stderr1525 1525: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1525 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1525 ./libtest/libtests lib1525 http://the.old.moo.1525:38675/1525 127.0.0.1:45069 > log/24/stdout1525 2> log/24/stderr1525 === End of file commands.log === Start of file http2_server.log 07:36:09.300884 Run as proxy, CONNECT to host 127.0.0.1 07:36:09.301005 Running HTTP IPv4 version on port 45069 07:36:09.301049 Wrote pid 156284 to log/24/server/http2_server.pid 07:36:09.301076 Wrote port 45069 to log/24/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:09.277701 ====> Client connect 07:36:09.277738 accept_connection 3 returned 4 07:36:09.277755 accept_connection 3 returned 0 07:36:09.277769 Read 93 bytes 07:36:09.277778 Process 93 bytes request 07:36:09.277792 Got request: GET /verifiedserver HTTP/1.1 07:36:09.277801 Are-we-friendly question received 07:36:09.277828 Wrote request (93 bytes) input to log/24/server.input 07:36:09.277844 Identifying ourselves as friends 07:36:09.277903 Response sent (56 bytes) and written to log/24/server.response 07:36:09.277914 special request received, no persistency 07:36:09.277923 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1525 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr1525 URL: http://the.old.moo.1525:38675/1525 === End of file stderr1525 === Start of file valgrind1525 ==157402== ==157402== Process terminating with default action of signal 4 (SIGILL) ==157402== Illegal opcode at address 0x51C2DB3 ==157402== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157402== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157402== by 0x51C2DB3: Curl_open (url.c:541) ==157402== by 0x513D46F: curl_easy_init (easy.c:372) ==157402== by 0x4026D0C: test_lib1525.lto_priv.0 (lib1525.c:60) ==157402== by 0x4003443: main (first.c:167) ==157402== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x533CFA5: __tsearch (tsearch.c:337) ==157402== by 0x533CFA5: tsearch (tsearch.c:290) ==157402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157402== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157402== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== ==157402== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x533CFA5: __tsearch (tsearch.c:337) ==157402== by 0x533CFA5: tsearch (tsearch.c:290) ==157402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157402== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157402== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== ==157402== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1526 ./libtest/libtests lib1526 http://the.old.moo.1526:37285/1526 127.0.0.1:42009 > log/12/stdout1526 2> log/12/stderr1526 ==157402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157402== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157402== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== ==157402== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157402== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157402== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== ==157402== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157402== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157402== by 0x51C2D03: Curl_open (url.c:520) ==157402== by 0x513D46F: curl_easy_init (easy.c:372) ==157402== by 0x4026D0C: test_lib1525.lto_priv.0 (lib1525.c:60) ==157402== by 0x4003443: main (first.c:167) ==157402== ==157402== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x533CFA5: __tsearch (tsearch.c:337) ==157402== by 0x533CFA5: tsearch (tsearch.c:290) ==157402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157402== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157402== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== ==157402== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157402== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157402== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157402== by 0x525A142: setlocale (setlocale.c:337) ==157402== by 0x400336E: main (first.c:123) ==157402== === End of file valgrind1525 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/12/server/http2_server.pid" --logfile "log/12/http2_server.log" --logdir "log/12" --portfile log/12/server/http2_server.port --config log/12/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 156336 port 42009 * pid http-proxy => 156336 156336 test 1526...[CURLOPT_PROXYHEADER: separate host/proxy headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1526 ./libtest/libtests lib1526 http://the.old.moo.1526:37285/1526 127.0.0.1:42009 > log/12/stdout1526 2> log/12/stderr1526 1526: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1526 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1526 ./libtest/libtests lib1526 http://the.old.moo.1526:37285/1526 127.0.0.1:42009 > log/12/stdout1526 2> log/12/stderr1526 === End of file commands.log === Start of file http2_server.log 07:36:09.329637 Run as proxy, CONNECT to host 127.0.0.1 07:36:09.329747 Running HTTP IPv4 version on port 42009 07:36:09.329797 Wrote pid 156336 to log/12/server/http2_server.pid 07:36:09.329831 Wrote port 42009 to log/12/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:09.305264 ====> Client connect 07:36:09.305296 accept_connection 3 returned 4 07:36:09.305312 accept_connection 3 returned 0 07:36:09.305326 Read 93 bytes 07:36:09.305335 Process 93 bytes request 07:36:09.305347 Got request: GET /verifiedserver HTTP/1.1 07:36:09.305357 Are-we-friendly question received 07:36:09.305379 Wrote request (93 bytes) input to log/12/server.input 07:36:09.305396 Identifying ourselves as friends 07:36:09.305448 Response sent (56 bytes) and written to log/12/server.response 07:36:09.305459 special request received, no persistency 07:36:09.305467 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1526 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr1526 URL: http://the.old.moo.1526:37285/1526 === End of file stderr1526 === Start of file valgrind1526 ==157421== ==157421== Process terminating with default action of signal 4 (SIGILL) ==157421== Illegal opcode at address 0x51C2DB3 ==157421== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157421== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157421== by 0x51C2DB3: Curl_open (url.c:541) ==157421== by 0x513D46F: curl_easy_init (easy.c:372) ==157421== by 0x4026F6E: test_lib1526.lto_priv.0 (lib1526.c:59) ==157421== by 0x4003443: main (first.c:167) ==157421== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x533CFA5: __tsearch (tsearch.c:337) ==157421== by 0x533CFA5: tsearch (tsearch.c:290) ==157421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157421== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157421== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157421== by 0x52BFCB3: __pthreCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1550 ./libtest/libtests lib1550 http://127.0.0.1:47/1550 > log/20/stdout1550 2> log/20/stderr1550 ad_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== ==157421== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x533CFA5: __tsearch (tsearch.c:337) ==157421== by 0x533CFA5: tsearch (tsearch.c:290) ==157421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157421== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157421== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== ==157421== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157421== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157421== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== ==157421== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157421== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157421== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== ==157421== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157421== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157421== by 0x51C2D03: Curl_open (url.c:520) ==157421== by 0x513D46F: curl_easy_init (easy.c:372) ==157421== by 0x4026F6E: test_lib1526.lto_priv.0 (lib1526.c:59) ==157421== by 0x4003443: main (first.c:167) ==157421== ==157421== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x533CFA5: __tsearch (tsearch.c:337) ==157421== by 0x533CFA5: tsearch (tsearch.c:290) ==157421== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157421== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157421== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== ==157421== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157421== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157421== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157421== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157421== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157421== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157421== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157421== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157421== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157421== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157421== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157421== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157421== by 0x525A142: setlocale (setlocale.c:337) ==157421== by 0x400336E: main (first.c:123) ==157421== === End of file valgrind1526 startnew: /startdir/src/curl/tests/smbserver.py --port 34859 --pidfile "log/6/server/smb_server.pid" --logfile "log/6/smb_server.log" --srcdir "/startdir/src/curl/tests" --host 127.0.0.1 startnew: child process has died, server might start up RUN: failed to start the SMB server test 1451 SKIPPED: failed starting SMB server startnew: /startdir/src/curl/tests/dictserver.py --port 38791 --pidfile "log/22/server/dict_server.pid" --logfile "log/22/dict_server.log" --srcdir "/startdir/src/curl/tests" --host 127.0.0.1 startnew: child process has died, server might start up RUN: failed to start the DICT server test 1450 SKIPPED: failed starting DICT server * starts no server test 1550...[verify setting pipelining blocklisting options] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1550 ./libtest/libtests lib1550 http://127.0.0.1:47/1550 > log/20/stdout1550 2> log/20/stderr1550 libtests returned 132, when expecting 0 1550: exit FAILED == Contents of files in the log/20/ dir after test 1550 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1550 ./libtest/libtests lib1550 http://127.0.0.1:47/1550 > log/20/stdout1550 2> log/20/stderr1550 === End of file commands.log === Start of file server.cmd Testnum 1550 === End of file server.cmd === Start of file stderr1550 URL: http://127.0.0.1:47/1550 === End of file stderr1550 === Start of file valgrind1550 ==157515== ==157515== Process terminating with default action of signal 4 (SIGILL) ==157515== Illegal opcode at address 0x518AA97 ==157515== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==157515== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==157515== by 0x518AA97: Curl_multi_handle (multi.c:236) ==157515== by 0x4025B81: UnknownInlinedFun (lib1550.c:40) ==157515== by 0x4025B81: test_lib1550.lto_priv.0 (lib1550.c:30) ==157515== by 0x4003443: main (first.c:167) ==157515== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x533CFA5: __tsearch (tsearch.c:337) ==157515== by 0x533CFA5: tsearch (tsearch.c:290) ==157515== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157515== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157515== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157515== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157515== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157515== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthreaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1551 ./libtest/libtests lib1551 http://127.0.0.1:33487/1551 > log/19/stdout1551 2> log/19/stderr1551 d_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== ==157515== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x533CFA5: __tsearch (tsearch.c:337) ==157515== by 0x533CFA5: tsearch (tsearch.c:290) ==157515== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157515== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157515== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== ==157515== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==157515== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157515== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==157515== by 0x4025B81: UnknownInlinedFun (lib1550.c:40) ==157515== by 0x4025B81: test_lib1550.lto_priv.0 (lib1550.c:30) ==157515== by 0x4003443: main (first.c:167) ==157515== ==157515== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157515== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157515== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157515== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157515== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157515== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== ==157515== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157515== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157515== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== ==157515== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x533CFA5: __tsearch (tsearch.c:337) ==157515== by 0x533CFA5: tsearch (tsearch.c:290) ==157515== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157515== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157515== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157515== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157515== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157515== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== ==157515== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157515== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157515== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157515== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157515== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157515== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157515== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157515== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157515== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157515== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157515== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157515== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157515== by 0x525A142: setlocale (setlocale.c:337) ==157515== by 0x400336E: main (first.c:123) ==157515== === End of file valgrind1550 startnew: /startdir/src/curl/tests/negtelnetserver.py --port 34117 --pidfile "log/21/server/telnet_server.pid" --logfile "log/21/telnet_server.log" --srcdir "/startdir/src/curl/tests" startnew: child process has died, server might start up RUN: failed to start the TELNET server test 1452 SKIPPED: failed starting neg TELNET server test 1551...[re-run redirected transfer without setting URL again] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1551 ./libtest/libtests lib1551 http://127.0.0.1:33487/1551 > log/19/stdout1551 2> log/19/stderr1551 1551: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1551 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1551 ./libtest/libtests lib1551 http://127.0.0.1:33487/1551 > log/19/stdout1551 2> log/19/stderr1551 === End of file commands.log === Start of file http_server.log 07:36:10.512763 ====> Client connect 07:36:10.512804 accept_connection 3 returned 4 07:36:10.512822 accept_connection 3 returned 0 07:36:10.512836 Read 93 bytes 07:36:10.512847 Process 93 bytes request 07:36:10.512861 Got request: GET /verifiedserver HTTP/1.1 07:36:10.512871 Are-we-friendly question received 07:36:10.512900 Wrote request (93 bytes) input to log/19/server.input 07:36:10.512918 Identifying ourselves as friends 07:36:10.512983 Response sent (56 bytes) and written to log/19/server.response 07:36:10.512993 special request received, no persistency 07:36:10.513002 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1551 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr1551 URL: http://127.0.0.1:33487/1551 === End of file stderr1551 === Start of file valgrind1551 ==157633== ==157633== Process terminating with default action of signal 4 (SIGILL) ==157633== Illegal opcode at address 0x51C2DB3 ==157633== at 0x51C2DB3: UnknownInlinedFun (string_fortiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1563 ../src/curl -q --output log/5/curl1563.out --include --trace-ascii log/5/trace1563 --trace-config all --trace-time http://127.0.0.1:46675/15630001 -L -H "Host: www.example.com" > log/5/stdout1563 2> log/5/stderr1563 fied.h:59) ==157633== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157633== by 0x51C2DB3: Curl_open (url.c:541) ==157633== by 0x513D46F: curl_easy_init (easy.c:372) ==157633== by 0x4022F8A: UnknownInlinedFun (lib1551.c:36) ==157633== by 0x4022F8A: test_lib1551.lto_priv.0 (lib1551.c:30) ==157633== by 0x4003443: main (first.c:167) ==157633== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x533CFA5: __tsearch (tsearch.c:337) ==157633== by 0x533CFA5: tsearch (tsearch.c:290) ==157633== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157633== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157633== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157633== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157633== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157633== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== ==157633== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x533CFA5: __tsearch (tsearch.c:337) ==157633== by 0x533CFA5: tsearch (tsearch.c:290) ==157633== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157633== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157633== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== ==157633== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157633== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157633== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157633== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157633== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157633== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== ==157633== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157633== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157633== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== ==157633== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157633== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157633== by 0x51C2D03: Curl_open (url.c:520) ==157633== by 0x513D46F: curl_easy_init (easy.c:372) ==157633== by 0x4022F8A: UnknownInlinedFun (lib1551.c:36) ==157633== by 0x4022F8A: test_lib1551.lto_priv.0 (lib1551.c:30) ==157633== by 0x4003443: main (first.c:167) ==157633== ==157633== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x533CFA5: __tsearch (tsearch.c:337) ==157633== by 0x533CFA5: tsearch (tsearch.c:290) ==157633== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157633== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157633== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157633== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157633== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157633== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== ==157633== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157633== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157633== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157633== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157633== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157633== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157633== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157633== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157633== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157633== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157633== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157633== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157633== by 0x525A142: setlocale (setlocale.c:337) ==157633== by 0x400336E: main (first.c:123) ==157633== === End of file valgrind1551 test 1563...[Make sure redirects to CURLPROTO_GOPHER are forbidden by default] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1563 ../src/curl -q --output log/5/curl1563.out --include --trace-ascii log/5/trace1563 --trace-config all --trace-time http://127.0.0.1:46675/15630001 -L -H "Host: www.example.com" > log/5/stdout1563 2> log/5/stderr1563 1563: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1563 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1563 ../src/curl -q --output log/5/curl1563.out --include --trace-ascii log/5/trace1563 --trace-config all --trace-time http://127.0.0.1:46675/15630001 -L -H "Host: www.example.com" > log/5/stdout1563 2> log/5/stderr1563 === End of file commands.log === Start of file http_server.log 07:36:10.989319 ====> Client connect 07:36:10.989415 accept_connection 3 returned 4 07:36:10.989437 accept_connection 3 returned 0 07:36:10.989454 Read 93 bytes 07:36:10.989464 Process 93 bytes request 07:36:10.989479 Got request: GET /verifiedserver HTTP/1.1 07:36:10.989488 Are-we-friendly question received 07:36:10.989513 Wrote request (93 bytes) input to log/5/server.input 07:36:10.989529 Identifying ourselves as friends 07:36:10.989601 Response sent (56 bytes) and written to log/5/server.response 07:36:10.989612 special request received, no persistency 07:36:10.989620 ====> Client disCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1555 ./libtest/libtests lib1555 http://127.0.0.1:33627/1555 > log/13/stdout1555 2> log/13/stderr1555 connect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1563 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind1563 ==158229== ==158229== Process terminating with default action of signal 4 (SIGILL) ==158229== Illegal opcode at address 0x4003082 ==158229== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==158229== by 0x4003082: main (tool_main.c:234) === End of file valgrind1563 test 1555...[verify api is protected against calls from callbacks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1555 ./libtest/libtests lib1555 http://127.0.0.1:33627/1555 > log/13/stdout1555 2> log/13/stderr1555 1555: stdout FAILED: --- log/13/check-expected 2025-07-18 07:36:12.287113169 +0000 +++ log/13/check-generated 2025-07-18 07:36:12.287113169 +0000 @@ -1,2 +0,0 @@ -curl_easy_recv returned 93[LF] -curl_easy_send returned 93[LF] == Contents of files in the log/13/ dir after test 1555 === Start of file check-expected curl_easy_recv returned 93[LF] curl_easy_send returned 93[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1555 ./libtest/libtests lib1555 http://127.0.0.1:33627/1555 > log/13/stdout1555 2> log/13/stderr1555 === End of file commands.log === Start of file http_server.log 07:36:10.583973 ====> Client connect 07:36:10.584007 accept_connection 3 returned 4 07:36:10.584024 accept_connection 3 returned 0 07:36:10.584039 Read 93 bytes 07:36:10.584049 Process 93 bytes request 07:36:10.584063 Got request: GET /verifiedserver HTTP/1.1 07:36:10.584073 Are-we-friendly question received 07:36:10.584098 Wrote request (93 bytes) input to log/13/server.input 07:36:10.584114 Identifying ourselves as friends 07:36:10.584168 Response sent (56 bytes) and written to log/13/server.response 07:36:10.584178 special request received, no persistency 07:36:10.584187 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1555 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr1555 URL: http://127.0.0.1:33627/1555 === End of file stderr1555 === Start of file valgrind1555 ==157711== ==157711== Process terminating with default action of signal 4 (SIGILL) ==157711== Illegal opcode at address 0x51C2DB3 ==157711== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157711== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157711== by 0x51C2DB3: Curl_open (url.c:541) ==157711== by 0x513D46F: curl_easy_init (easy.c:372) ==157711== by 0x40230A6: UnknownInlinedFun (lib1555.c:62) ==157711== by 0x40230A6: test_lib1555.lto_priv.0 (lib1555.c:56) ==157711== by 0x4003443: main (first.c:167) ==157711== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x533CFA5: __tsearch (tsearch.c:337) ==157711== by 0x533CFA5: tsearch (tsearch.c:290) ==157711== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157711== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157711== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157711== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157711== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157711== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E: main (first.c:123) ==157711== ==157711== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x533CFA5: __tsearch (tsearch.c:337) ==157711== by 0x533CFA5: tsearch (tsearch.c:290) ==157711== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157711== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157711== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E: main (first.c:123) ==157711== ==157711== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157711== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157711== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157711== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157711== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157711== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E: main (first.c:123) ==157711== ==157711== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157711== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157711== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E: main (first.c:123) ==157711== ==157711== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157711== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157711== by 0x51C2D03: Curl_open (url.c:520) ==157711== by 0x513D46F: curl_easy_init (easy.c:372) ==157711== by 0x40230A6: UnknownInlinedFun (lib1555.c:62) ==157711== by 0x40230A6: test_lib1555.lto_priv.0 (lib1555.c:56) ==157711== by 0x4003443: main (first.c:167) ==157711== ==157711== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x533CFA5: __tsearch (tsearch.c:337) ==157711== by 0x533CFA5: tsearch (tsearch.c:290) ==157711== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157711== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157711== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157711== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157711== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157711== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1552 ./libtest/libtests lib1552 'imap://127.0.0.1:38013/1552/;MAILINDEX=1' > log/8/stdout1552 2> log/8/stderr1552 main (first.c:123) ==157711== ==157711== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157711== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157711== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157711== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157711== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157711== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157711== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157711== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157711== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157711== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157711== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157711== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157711== by 0x525A142: setlocale (setlocale.c:337) ==157711== by 0x400336E: main (first.c:123) ==157711== === End of file valgrind1555 test 1552...[IMAP multi transfer error without curl_multi_remove_handle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1552 ./libtest/libtests lib1552 'imap://127.0.0.1:38013/1552/;MAILINDEX=1' > log/8/stdout1552 2> log/8/stderr1552 libtests returned 132, when expecting 0 1552: exit FAILED == Contents of files in the log/8/ dir after test 1552 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1552 ./libtest/libtests lib1552 'imap://127.0.0.1:38013/1552/;MAILINDEX=1' > log/8/stdout1552 2> log/8/stderr1552 === End of file commands.log === Start of file imap_server.log 07:36:10.719354 ====> Client connect 07:36:10.719507 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:10.719795 < "A001 CAPABILITY" 07:36:10.719827 > "A001 BAD Command[CR][LF]" 07:36:10.719984 < "A002 LIST "verifiedserver" *" 07:36:10.720033 LIST_imap got "verifiedserver" * 07:36:10.720058 > "* LIST () "/" "WE ROOLZ: 108619"[CR][LF]" 07:36:10.720074 > "A002 OK LIST Completed[CR][LF]" 07:36:10.720086 return proof we are we 07:36:10.767029 < "A003 LOGOUT" 07:36:10.767094 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:10.767113 > "A003 OK LOGOUT completed[CR][LF]" 07:36:10.768306 MAIN sockfilt said DISC 07:36:10.768338 ====> Client disconnected 07:36:10.768419 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:10.565221 ====> Client connect 07:36:10.565501 Received DATA (on stdin) 07:36:10.565515 > 178 bytes data, server => client 07:36:10.565527 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:10.565538 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:10.565549 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:10.565558 'rve\r\n' 07:36:10.565635 < 17 bytes data, client => server 07:36:10.565647 'A001 CAPABILITY\r\n' 07:36:10.565812 Received DATA (on stdin) 07:36:10.565824 > 18 bytes data, server => client 07:36:10.565834 'A001 BAD Command\r\n' 07:36:10.565886 < 30 bytes data, client => server 07:36:10.565897 'A002 LIST "verifiedserver" *\r\n' 07:36:10.566068 Received DATA (on stdin) 07:36:10.566083 > 34 bytes data, server => client 07:36:10.566094 '* LIST () "/" "WE ROOLZ: 108619"\r\n' 07:36:10.566114 Received DATA (on stdin) 07:36:10.566123 > 24 bytes data, server => client 07:36:10.566134 'A002 OK LIST Completed\r\n' 07:36:10.612787 < 13 bytes data, client => server 07:36:10.612824 'A003 LOGOUT\r\n' 07:36:10.613096 Received DATA (on stdin) 07:36:10.613109 > 36 bytes data, server => client 07:36:10.613120 '* BYE curl IMAP server signing off\r\n' 07:36:10.613143 Received DATA (on stdin) 07:36:10.613153 > 26 bytes data, server => client 07:36:10.613163 'A003 OK LOGOUT completed\r\n' 07:36:10.614237 ====> Client disconnect 07:36:10.614404 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 1552 === End of file server.cmd === Start of file stderr1552 URL: imap://127.0.0.1:38013/1552/;MAILINDEX=1 === End of file stderr1552 === Start of file valgrind1552 ==157794== ==157794== Process terminating with default action of signal 4 (SIGILL) ==157794== Illegal opcode at address 0x518AA97 ==157794== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==157794== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==157794== by 0x518AA97: Curl_multi_handle (multi.c:236) ==157794== by 0x40247E3: UnknownInlinedFun (lib1552.c:42) ==157794== by 0x40247E3: test_lib1552.lto_priv.0 (lib1552.c:28) ==157794== by 0x4003443: main (first.c:167) ==157794== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x533CFA5: __tsearch (tsearch.c:337) ==157794== by 0x533CFA5: tsearch (tsearch.c:290) ==157794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157794== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157794== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x525A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== ==157794== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x533CFA5: __tsearch (tsearch.c:337) ==157794== by 0x533CFA5: tsearch (tsearch.c:290) ==157794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157794== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157794== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x525A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== ==157794== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==157794== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157794== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==157794== by 0x40247E3: UnknownInlinedFun (lib1552.c:42) ==157794== by 0x40247E3: test_lib1552.lto_priv.0 (lib1552.c:28) ==157794== by 0x4003443: main (first.c:167) ==157794== ==157794== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157794== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157794== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x52CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1554 ./libtest/libtests lib1554 http://127.0.0.1:34851/1554 > log/10/stdout1554 2> log/10/stderr1554 5A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== ==157794== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157794== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157794== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x525A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== ==157794== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x533CFA5: __tsearch (tsearch.c:337) ==157794== by 0x533CFA5: tsearch (tsearch.c:290) ==157794== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157794== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157794== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x525A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== ==157794== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157794== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157794== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157794== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157794== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157794== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157794== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157794== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157794== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157794== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157794== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157794== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157794== by 0x525A142: setlocale (setlocale.c:337) ==157794== by 0x400336E: main (first.c:123) ==157794== === End of file valgrind1552 test 1554...[HTTP with shared connection cache] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1554 ./libtest/libtests lib1554 http://127.0.0.1:34851/1554 > log/10/stdout1554 2> log/10/stderr1554 1554: data FAILED: --- log/10/check-expected 2025-07-18 07:36:12.490446506 +0000 +++ log/10/check-generated 2025-07-18 07:36:12.490446506 +0000 @@ -1,49 +0,0 @@ --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] -run 1: foobar and so on fun![LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] -run 1: foobar and so on fun![LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] -run 1: foobar and so on fun![LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock CONNECT[LF] -<- Mutex unlock CONNECT[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] --> Mutex lock SHARE[LF] -<- Mutex unlock SHARE[LF] == Contents of files in the log/10/ dir after test 1554 === Start of file check-expected -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] run 1: foobar and so on fun![LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] run 1: foobar and so on fun![LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] run 1: foobar and so on fun![LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock CONNECT[LF] <- Mutex unlock CONNECT[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] -> Mutex lock SHARE[LF] <- Mutex unlock SHARE[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1554 ./libtest/libtests lib1554 http://127.0.0.1:34851/1554 > log/10/stdout1554 2> log/10/stderr1554 === End of file commands.log === Start of file http_server.log 07:36:10.569916 ====> Client connect 07:36:10.569949 accept_connection 3 returned 4 07:36:10.569967 accept_connection 3 returned 0 07:36:10.569981 Read 93 bytes 07:36:10.569991 Process 93 bytes request 07:36:10.570007 Got request: GET /verifiedserver HTTP/1.1 07:36:10.570016 Are-we-friendly question received 07:36:10.570081 Wrote request (93 bytes) input to log/10/server.input 07:36:10.570100 Identifying ourselves as friends 07:36:10.570155 Response sent (56 bytes) and written to log/10/server.response 07:36:10.570166 special request received, no persistency 07:36:10.570175 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1554 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr1554 URL: http://127.0.0.1:34851/1554 === End of file stderr1554 === Start of file valgrind1554 ==157699== ==157699== Process terminating with default action of signal 4 (SIGILL) ==157699== Illegal opcode at address 0x51C2DB3 ==157699== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157699== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157699== by 0x51C2DB3: Curl_open (url.c:541) ==157699== by 0x513D46F: curl_easy_init (easy.c:372) ==157699== by 0x51B0981: curl_share_init (share.c:50) ==157699== by 0x402C573: UnknownInlinedFun (lib1554.c:67) ==157699== by 0x402C573: test_lib1554.lto_priv.0 (lib1554.c:59) ==157699== by 0x4003443: main (first.c:167) ==157699== 408 bytes in 17 blocks are possibly lost in loss record 605 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x533CFA5: __tsearch (tsearch.c:337) ==157699== by 0x533CFA5: tsearch (tsearch.c:290) ==157699== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157699== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157699== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157699== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157699== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157699== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== ==157699== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x533CFA5: __tsearch (tsearch.c:337) ==157699== by 0x533CFA5: tsearch (tsearch.c:290) ==157699== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157699== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157699== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== ==157699== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157699== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157699== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157699== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157699== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157699== by 0x524F555: __gconv_rCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1529 ./libtest/libtests lib1529 "http://the.old.moo:43423/1529" 127.0.0.1:39985 > log/7/stdout1529 2> log/7/stderr1529 ead_conf (gconv_conf.c:480) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== ==157699== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157699== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157699== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== ==157699== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==157699== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157699== by 0x51C2D03: Curl_open (url.c:520) ==157699== by 0x513D46F: curl_easy_init (easy.c:372) ==157699== by 0x51B0981: curl_share_init (share.c:50) ==157699== by 0x402C573: UnknownInlinedFun (lib1554.c:67) ==157699== by 0x402C573: test_lib1554.lto_priv.0 (lib1554.c:59) ==157699== by 0x4003443: main (first.c:167) ==157699== ==157699== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x533CFA5: __tsearch (tsearch.c:337) ==157699== by 0x533CFA5: tsearch (tsearch.c:290) ==157699== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157699== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157699== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157699== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157699== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157699== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== ==157699== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==157699== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157699== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157699== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157699== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157699== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157699== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157699== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157699== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157699== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157699== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157699== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157699== by 0x525A142: setlocale (setlocale.c:337) ==157699== by 0x400336E: main (first.c:123) ==157699== === End of file valgrind1554 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/7/server/http2_server.pid" --logfile "log/7/http2_server.log" --logdir "log/7" --portfile log/7/server/http2_server.port --config log/7/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 156442 port 39985 * pid http-proxy => 156442 156442 test 1529...[HTTP request-injection in URL sent over proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1529 ./libtest/libtests lib1529 "http://the.old.moo:43423/1529" 127.0.0.1:39985 > log/7/stdout1529 2> log/7/stderr1529 libtests returned 132, when expecting 3 1529: exit FAILED == Contents of files in the log/7/ dir after test 1529 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1529 ./libtest/libtests lib1529 "http://the.old.moo:43423/1529" 127.0.0.1:39985 > log/7/stdout1529 2> log/7/stderr1529 === End of file commands.log === Start of file http2_server.log 07:36:09.539346 Run as proxy, CONNECT to host 127.0.0.1 07:36:09.539435 Running HTTP IPv4 version on port 39985 07:36:09.539479 Wrote pid 156442 to log/7/server/http2_server.pid 07:36:09.539509 Wrote port 39985 to log/7/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:09.518177 ====> Client connect 07:36:09.518208 accept_connection 3 returned 4 07:36:09.518223 accept_connection 3 returned 0 07:36:09.518236 Read 93 bytes 07:36:09.518245 Process 93 bytes request 07:36:09.518258 Got request: GET /verifiedserver HTTP/1.1 07:36:09.518267 Are-we-friendly question received 07:36:09.518289 Wrote request (93 bytes) input to log/7/server.input 07:36:09.518305 Identifying ourselves as friends 07:36:09.518361 Response sent (57 bytes) and written to log/7/server.response 07:36:09.518372 special request received, no persistency 07:36:09.518380 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1529 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr1529 URL: http://the.old.moo:43423/1529 === End of file stderr1529 === Start of file valgrind1529 ==157619== ==157619== Process terminating with default action of signal 4 (SIGILL) ==157619== Illegal opcode at address 0x51C2DB3 ==157619== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==157619== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==157619== by 0x51C2DB3: Curl_open (url.c:541) ==157619== by 0x513D46F: curl_easy_init (easy.c:372) ==157619== by 0x4021535: test_lib1529.lto_priv.0 (lib1529.c:41) ==157619== by 0x4003443: main (first.c:167) ==157619== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x533CFA5: __tsearch (tsearch.c:337) ==157619== by 0x533CFA5: tsearch (tsearch.c:290) ==157619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157619== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157619== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1556 ./libtest/libtests lib1556 http://127.0.0.1:45457/1556 > log/2/stdout1556 2> log/2/stderr1556 locale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== ==157619== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x533CFA5: __tsearch (tsearch.c:337) ==157619== by 0x533CFA5: tsearch (tsearch.c:290) ==157619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157619== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157619== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== ==157619== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157619== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157619== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== ==157619== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157619== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157619== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== ==157619== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==157619== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157619== by 0x51C2D03: Curl_open (url.c:520) ==157619== by 0x513D46F: curl_easy_init (easy.c:372) ==157619== by 0x4021535: test_lib1529.lto_priv.0 (lib1529.c:41) ==157619== by 0x4003443: main (first.c:167) ==157619== ==157619== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x533CFA5: __tsearch (tsearch.c:337) ==157619== by 0x533CFA5: tsearch (tsearch.c:290) ==157619== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157619== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157619== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== ==157619== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157619== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157619== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157619== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157619== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157619== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157619== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157619== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157619== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157619== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157619== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157619== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157619== by 0x525A142: setlocale (setlocale.c:337) ==157619== by 0x400336E: main (first.c:123) ==157619== === End of file valgrind1529 test 1556...[send long HTTP headers to header callback] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1556 ./libtest/libtests lib1556 http://127.0.0.1:45457/1556 > log/2/stdout1556 2> log/2/stderr1556 1556: stdout FAILED: --- log/2/check-expected 2025-07-18 07:36:12.857113182 +0000 +++ log/2/check-generated 2025-07-18 07:36:12.857113182 +0000 @@ -1,2 +0,0 @@ --foo-[LF] -Max = 100009[LF] == Contents of files in the log/2/ dir after test 1556 === Start of file check-expected -foo-[LF] Max = 100009[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1556 ./libtest/libtests lib1556 http://127.0.0.1:45457/1556 > log/2/stdout1556 2> log/2/stderr1556 === End of file commands.log === Start of file http_server.log 07:36:10.862707 ====> Client connect 07:36:10.862755 accept_connection 3 returned 4 07:36:10.862777 accept_connection 3 returned 0 07:36:10.862954 Read 93 bytes 07:36:10.862975 Process 93 bytes request 07:36:10.862992 Got request: GET /verifiedserver HTTP/1.1 07:36:10.863002 Are-we-friendly question received 07:36:10.863034 Wrote request (93 bytes) input to log/2/server.input 07:36:10.863053 Identifying ourselves as friends 07:36:10.863119 Response sent (56 bytes) and written to log/2/server.response 07:36:10.863132 special request received, no persistency 07:36:10.863142 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1556 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr1556 URL: http://127.0.0.1:45457/1556 === End of file stderr1556 === Start of file valgrind1556 ==158060== ==158060== Process terminating with default action of signal 4 (SIGILL) ==158060== Illegal opcode at address 0x51C2DB3 ==158060== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158060== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158060== by 0x51C2DB3: Curl_open (url.c:541) ==158060== by 0x513D46F: curl_easy_init (easy.c:372) ==158060== by 0x4023321: test_lib1556.lto_priv.0 (lib1556.c:54) ==158060== by 0x4003443: main (first.c:167) ==158060== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x533CFA5: __tsearch (tsearch.c:337) ==158060== by 0x533CFA5: tsearch (tsearch.c:290) ==158060== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158060== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158060== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158060== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158060== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158060== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== ==158060== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x533CFA5: __tsearch (tsearch.c:337) ==158060== by 0x533CFA5: tsearch (tsearch.c:290) ==158060== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158060== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158060== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== ==158060== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158060== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158060== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158060== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158060== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158060== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== ==158060== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158060== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158060== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== ==158060== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158060== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158060== by 0x51C2D03: Curl_open (url.c:520) ==158060== by 0x513D46F: curl_easy_init (easy.c:372) ==158060== by 0x4023321: test_lib1556.lto_priv.0 (lib1556.c:54) ==158060== by 0x4003443: main (first.c:167) ==158060== ==158060== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x533CFA5: __tsearch (tsearch.c:337) ==158060== by 0x533CFA5: tsearch (tsearch.c:290) ==158060== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158060== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158060== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158060== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158060== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158060== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== ==158060== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158060== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158060== by 0x524F0A9: add_aliasCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1566 ../src/curl -q --trace-ascii log/3/trace1566 --trace-config all --trace-time http://127.0.0.1:42345/1566 -o log/3/output1566 --etag-compare log/3/etag1566 > log/3/stdout1566 2> log/3/stderr1566 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1557 ./libtest/libtests lib1557 nothing > log/23/stdout1557 2> log/23/stderr1557 2.part.0 (gconv_conf.c:132) ==158060== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158060== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158060== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158060== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158060== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158060== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158060== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158060== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158060== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158060== by 0x525A142: setlocale (setlocale.c:337) ==158060== by 0x400336E: main (first.c:123) ==158060== === End of file valgrind1556 test 1566...[--etag-compare that gets a 304 back shouldn't overwrite the file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1566 ../src/curl -q --trace-ascii log/3/trace1566 --trace-config all --trace-time http://127.0.0.1:42345/1566 -o log/3/output1566 --etag-compare log/3/etag1566 > log/3/stdout1566 2> log/3/stderr1566 1566: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1566 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1566 ../src/curl -q --trace-ascii log/3/trace1566 --trace-config all --trace-time http://127.0.0.1:42345/1566 -o log/3/output1566 --etag-compare log/3/etag1566 > log/3/stdout1566 2> log/3/stderr1566 === End of file commands.log === Start of file etag1566 "123456" === End of file etag1566 === Start of file http_server.log 07:36:11.525336 ====> Client connect 07:36:11.525375 accept_connection 3 returned 4 07:36:11.525394 accept_connection 3 returned 0 07:36:11.525409 Read 93 bytes 07:36:11.525420 Process 93 bytes request 07:36:11.525435 Got request: GET /verifiedserver HTTP/1.1 07:36:11.525445 Are-we-friendly question received 07:36:11.525475 Wrote request (93 bytes) input to log/3/server.input 07:36:11.525493 Identifying ourselves as friends 07:36:11.525558 Response sent (56 bytes) and written to log/3/server.response 07:36:11.525570 special request received, no persistency 07:36:11.525581 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file output1566 downloaded already === End of file output1566 === Start of file server.cmd Testnum 1566 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind1566 ==158537== ==158537== Process terminating with default action of signal 4 (SIGILL) ==158537== Illegal opcode at address 0x4003082 ==158537== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==158537== by 0x4003082: main (tool_main.c:234) === End of file valgrind1566 * starts no server test 1557...[Remove easy handle in pending connections doesn't leave dangling entry] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1557 ./libtest/libtests lib1557 nothing > log/23/stdout1557 2> log/23/stderr1557 libtests returned 132, when expecting 0 1557: exit FAILED == Contents of files in the log/23/ dir after test 1557 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1557 ./libtest/libtests lib1557 nothing > log/23/stdout1557 2> log/23/stderr1557 === End of file commands.log === Start of file server.cmd Testnum 1557 === End of file server.cmd === Start of file stderr1557 URL: nothing === End of file stderr1557 === Start of file valgrind1557 ==157987== ==157987== Process terminating with default action of signal 4 (SIGILL) ==157987== Illegal opcode at address 0x518AA97 ==157987== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==157987== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==157987== by 0x518AA97: Curl_multi_handle (multi.c:236) ==157987== by 0x4025C64: test_lib1557.lto_priv.0 (lib1557.c:38) ==157987== by 0x4003443: main (first.c:167) ==157987== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x533CFA5: __tsearch (tsearch.c:337) ==157987== by 0x533CFA5: tsearch (tsearch.c:290) ==157987== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157987== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157987== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157987== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157987== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157987== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== ==157987== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x533CFA5: __tsearch (tsearch.c:337) ==157987== by 0x533CFA5: tsearch (tsearch.c:290) ==157987== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157987== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157987== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== ==157987== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==157987== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==157987== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==157987== by 0x4025C64: test_lib1557.lto_priv.0 (lib1557.c:38) ==157987== by 0x4003443: main (first.c:167) ==157987== ==157987== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157987== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157987== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157987== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157987== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==157987== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1558 ./libtest/libtests lib1558 file:///startdir/src/build-curl/tests/log/18/data1558 > log/18/stdout1558 2> log/18/stderr1558 987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== ==157987== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157987== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==157987== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== ==157987== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x533CFA5: __tsearch (tsearch.c:337) ==157987== by 0x533CFA5: tsearch (tsearch.c:290) ==157987== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==157987== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157987== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157987== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157987== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157987== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== ==157987== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==157987== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==157987== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==157987== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==157987== by 0x524F3F0: add_alias (gconv_conf.c:178) ==157987== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==157987== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==157987== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==157987== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==157987== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==157987== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==157987== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==157987== by 0x525A142: setlocale (setlocale.c:337) ==157987== by 0x400336E: main (first.c:123) ==157987== === End of file valgrind1557 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1527 ./libtest/libtests lib1527 http://the.old.moo.1527:40341/1527 127.0.0.1:44509 > log/11/stdout1527 2> log/11/stderr1527 * starts no server test 1558...[CURLINFO_PROTOCOL for file:// transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1558 ./libtest/libtests lib1558 file:///startdir/src/build-curl/tests/log/18/data1558 > log/18/stdout1558 2> log/18/stderr1558 1558: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:13.110446521 +0000 +++ log/18/check-generated 2025-07-18 07:36:13.110446521 +0000 @@ -1,2 +0,0 @@ -hello[LF] -Protocol: 400[LF] == Contents of files in the log/18/ dir after test 1558 === Start of file check-expected hello[LF] Protocol: 400[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1558 ./libtest/libtests lib1558 file:///startdir/src/build-curl/tests/log/18/data1558 > log/18/stdout1558 2> log/18/stderr1558 === End of file commands.log === Start of file data1558 hello === End of file data1558 === Start of file server.cmd Testnum 1558 === End of file server.cmd === Start of file stderr1558 URL: file:///startdir/src/build-curl/tests/log/18/data1558 === End of file stderr1558 === Start of file valgrind1558 ==158067== ==158067== Process terminating with default action of signal 4 (SIGILL) ==158067== Illegal opcode at address 0x51C2DB3 ==158067== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158067== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158067== by 0x51C2DB3: Curl_open (url.c:541) ==158067== by 0x513D46F: curl_easy_init (easy.c:372) ==158067== by 0x4023581: test_lib1558.lto_priv.0 (lib1558.c:35) ==158067== by 0x4003443: main (first.c:167) ==158067== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x533CFA5: __tsearch (tsearch.c:337) ==158067== by 0x533CFA5: tsearch (tsearch.c:290) ==158067== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158067== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158067== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158067== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158067== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158067== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== ==158067== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x533CFA5: __tsearch (tsearch.c:337) ==158067== by 0x533CFA5: tsearch (tsearch.c:290) ==158067== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158067== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158067== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== ==158067== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158067== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158067== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158067== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158067== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158067== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== ==158067== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158067== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158067== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== ==158067== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158067== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158067== by 0x51C2D03: Curl_open (url.c:520) ==158067== by 0x513D46F: curl_easy_init (easy.c:372) ==158067== by 0x4023581: test_lib1558.lto_priv.0 (lib1558.c:35) ==158067== by 0x4003443: main (first.c:167) ==158067== ==158067== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x533CFA5: __tsearch (tsearch.c:337) ==158067== by 0x533CFA5: tsearch (tsearch.c:290) ==158067== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158067== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158067== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158067== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158067== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158067== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== ==158067== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158067== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158067== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158067== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158067== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158067== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158067== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158067== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158067== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158067== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158067== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158067== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158067== by 0x525A142: setlocale (setlocale.c:337) ==158067== by 0x400336E: main (first.c:123) ==158067== === End of file valgrind1558 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/11/server/http_server.pid" --logfile "log/11/http_server.log" --logdir "log/11" --portfile log/11/server/http_server.port --config log/11/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 156367 port 40341 * pid http => 156367 156367 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --connect 127.0.0.1 --keepalive 30 --pidfile "log/11/server/http2_server.pid" --logfile "log/11/http2_server.log" --logdir "log/11" --portfile log/11/server/http2_server.port --config log/11/server.cmd --id 2 --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP2 server is on PID 157446 port 44509 * pid http-proxy => 157446 157446 test 1527...[Same headers with CURLOPT_HEADEROPT == CURLHEADER_UNIFIED] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1527 ./libtest/libtests lib1527 http://the.old.moo.1527:40341/1527 127.0.0.1:44509 > log/11/stdout1527 2> log/11/stderr1527 1527: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1527 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1527 ./libtest/libtests lib1527 http://the.old.moo.1527:40341/1527 127.0.0.1:44509 > log/11/stdout1527 2> log/11/stderr1527 === End of file commands.log === Start of file http2_server.log 07:36:10.418106 Run as proxy, CONNECT to host 127.0.0.1 07:36:10.418247 Running HTTP IPv4 version on port 44509 07:36:10.418305 Wrote pid 157446 to log/11/server/http2_server.pid 07:36:10.418385 Wrote port 44509 to log/11/server/http2_server.port === End of file http2_server.log === Start of file http_server.log 07:36:09.394407 Running HTTP IPv4 version on port 40341 07:36:09.394499 Wrote pid 156367 to log/11/server/http_server.pid 07:36:09.394533 Wrote port 40341 to log/11/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 1527 === End of file server.cmd === Start of file stderr1527 URL: http://the.old.moo.1527:40341/1527 === End of file stderr1527 === Start of file valgrind1527 ==158418== ==158418== Process terminating with default action of signal 4 (SIGILL) ==158418== Illegal opcode at address 0x51C2DB3 ==158418== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158418== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158418== by 0x51C2DB3: Curl_open (url.c:541) ==158418== by 0x513D46F: curl_easy_init (easy.c:372) ==158418== by 0x4027210: test_lib1527.lto_priv.0 (lib1527.c:59) ==158418== by 0x4003443: main (first.c:167) ==158418== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x533CFA5: __tsearch (tsearch.c:337) ==158418== by 0x533CFA5: tsearch (tsearch.c:290) ==158418== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158418== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158418== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158418== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158418== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158418== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== ==158418== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x533CFA5: __tsearch (tsearch.c:337) ==158418== by 0x533CFA5: tsearch (tsearch.c:290) ==158418== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158418== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158418== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== ==158418== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158418== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158418== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158418== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158418== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158418== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== ==158418== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158418== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158418== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== ==158418== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158418== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158418== by 0x51C2D03: Curl_open (url.c:520) ==158418== by 0x513D46F: curl_easy_init (easy.c:372) ==158418== by 0x4027210: test_lib1527.lto_priv.0 (lib1527.c:59) ==158418== by 0x4003443: main (first.c:167) ==158418== ==158418== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x533CFA5: __tsearch (tsearch.c:337) ==158418== by 0x533CFA5: tsearch (tsearch.c:290) ==158418== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158418== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158418== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158418== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158418== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158418== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== ==158418== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158418== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158418== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158418== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158418== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158418== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158418== by 0x524F775: gconv_parseconfdir (gconv_parseconfdCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1559 ./libtest/libtests lib1559 - > log/16/stdout1559 2> log/16/stderr1559 ir.h:170) ==158418== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158418== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158418== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158418== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158418== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158418== by 0x525A142: setlocale (setlocale.c:337) ==158418== by 0x400336E: main (first.c:123) ==158418== === End of file valgrind1527 * starts no server test 1559...[Set excessive URL lengths] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1559 ./libtest/libtests lib1559 - > log/16/stdout1559 2> log/16/stderr1559 1559: stdout FAILED: --- log/16/check-expected 2025-07-18 07:36:13.343779860 +0000 +++ log/16/check-generated 2025-07-18 07:36:13.343779860 +0000 @@ -1,5 +0,0 @@ -CURLOPT_URL 10000000 bytes URL == 43[LF] -CURLOPT_POSTFIELDS 10000000 bytes data == 0[LF] -CURLUPART_URL 10000000 bytes URL == 3 (Malformed input to a URL function)[LF] -CURLUPART_SCHEME 10000000 bytes scheme == 3 (Malformed input to a URL function)[LF] -CURLUPART_USER 10000000 bytes user == 3 (Malformed input to a URL function)[LF] == Contents of files in the log/16/ dir after test 1559 === Start of file check-expected CURLOPT_URL 10000000 bytes URL == 43[LF] CURLOPT_POSTFIELDS 10000000 bytes data == 0[LF] CURLUPART_URL 10000000 bytes URL == 3 (Malformed input to a URL function)[LF] CURLUPART_SCHEME 10000000 bytes scheme == 3 (Malformed input to a URL function)[LF] CURLUPART_USER 10000000 bytes user == 3 (Malformed input to a URL function)[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1559 ./libtest/libtests lib1559 - > log/16/stdout1559 2> log/16/stderr1559 === End of file commands.log === Start of file server.cmd Testnum 1559 === End of file server.cmd === Start of file stderr1559 URL: - === End of file stderr1559 === Start of file valgrind1559 ==158050== ==158050== Process terminating with default action of signal 4 (SIGILL) ==158050== Illegal opcode at address 0x51C2DB3 ==158050== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158050== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158050== by 0x51C2DB3: Curl_open (url.c:541) ==158050== by 0x513D46F: curl_easy_init (easy.c:372) ==158050== by 0x402AF6B: UnknownInlinedFun (lib1559.c:39) ==158050== by 0x402AF6B: test_lib1559.lto_priv.0 (lib1559.c:28) ==158050== by 0x4003443: main (first.c:167) ==158050== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x533CFA5: __tsearch (tsearch.c:337) ==158050== by 0x533CFA5: tsearch (tsearch.c:290) ==158050== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158050== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158050== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158050== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158050== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158050== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== ==158050== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x533CFA5: __tsearch (tsearch.c:337) ==158050== by 0x533CFA5: tsearch (tsearch.c:290) ==158050== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158050== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158050== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== ==158050== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158050== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158050== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158050== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158050== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158050== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== ==158050== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158050== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158050== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== ==158050== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158050== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158050== by 0x51C2D03: Curl_open (url.c:520) ==158050== by 0x513D46F: curl_easy_init (easy.c:372) ==158050== by 0x402AF6B: UnknownInlinedFun (lib1559.c:39) ==158050== by 0x402AF6B: test_lib1559.lto_priv.0 (lib1559.c:28) ==158050== by 0x4003443: main (first.c:167) ==158050== ==158050== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x533CFA5: __tsearch (tsearch.c:337) ==158050== by 0x533CFA5: tsearch (tsearch.c:290) ==158050== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158050== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158050== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158050== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158050== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158050== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== ==158050== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158050== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158050== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158050== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158050== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158050== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158050== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158050== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158050== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158050== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158050== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158050== by 0x5257A3D: _nl_find_lCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1564 ./libtest/libtests lib1564 - > log/9/stdout1564 2> log/9/stderr1564 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1567 ./libtest/libtests lib1567 http://127.0.0.1:37963/1567 > log/14/stdout1567 2> log/14/stderr1567 ocale (findlocale.c:298) ==158050== by 0x525A142: setlocale (setlocale.c:337) ==158050== by 0x400336E: main (first.c:123) ==158050== === End of file valgrind1559 * starts no server test 1564...[wakeup before poll with no easy handles] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1564 ./libtest/libtests lib1564 - > log/9/stdout1564 2> log/9/stderr1564 libtests returned 132, when expecting 0 1564: exit FAILED == Contents of files in the log/9/ dir after test 1564 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1564 ./libtest/libtests lib1564 - > log/9/stdout1564 2> log/9/stderr1564 === End of file commands.log === Start of file server.cmd Testnum 1564 === End of file server.cmd === Start of file stderr1564 URL: - === End of file stderr1564 === Start of file valgrind1564 ==158155== ==158155== Process terminating with default action of signal 4 (SIGILL) ==158155== Illegal opcode at address 0x518AA97 ==158155== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==158155== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==158155== by 0x518AA97: Curl_multi_handle (multi.c:236) ==158155== by 0x402E802: UnknownInlinedFun (lib1564.c:44) ==158155== by 0x402E802: test_lib1564.lto_priv.0 (lib1564.c:30) ==158155== by 0x4003443: main (first.c:167) ==158155== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x533CFA5: __tsearch (tsearch.c:337) ==158155== by 0x533CFA5: tsearch (tsearch.c:290) ==158155== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158155== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158155== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158155== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158155== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158155== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== ==158155== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x533CFA5: __tsearch (tsearch.c:337) ==158155== by 0x533CFA5: tsearch (tsearch.c:290) ==158155== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158155== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158155== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== ==158155== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==158155== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158155== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==158155== by 0x402E802: UnknownInlinedFun (lib1564.c:44) ==158155== by 0x402E802: test_lib1564.lto_priv.0 (lib1564.c:30) ==158155== by 0x4003443: main (first.c:167) ==158155== ==158155== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158155== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158155== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158155== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158155== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158155== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== ==158155== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158155== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158155== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== ==158155== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x533CFA5: __tsearch (tsearch.c:337) ==158155== by 0x533CFA5: tsearch (tsearch.c:290) ==158155== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158155== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158155== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158155== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158155== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158155== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== ==158155== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158155== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158155== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158155== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158155== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158155== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158155== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158155== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158155== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158155== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158155== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158155== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158155== by 0x525A142: setlocale (setlocale.c:337) ==158155== by 0x400336E: main (first.c:123) ==158155== === End of file valgrind1564 test 1567...[re-run redirected transfer without setting CURLU URL again] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1567 ./libtest/libtests lib1567 http://127.0.0.1:37963/1567 > log/14/stdout1567 2> log/14/stderr1567 1567: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1567 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1567 ./libtest/libtests lib1567 http://127.0.0.1:37963/1567 > log/14/stdout1567 2> log/14/stderr1567 === End of file commands.log === Start of file http_server.log 07:36:11.532744 ====> Client connect 07:36:11.532791 accept_connection 3 returned 4 07:36:11.532808 accept_connection 3 returned 0 07:36:11.532822 Read 93 bytes 07:36:11.532835 Process 93 bytes request 07:36:11.532854 Got request: GET /verifiedserver HTTP/1.1 07:36:11.532864 Are-we-friendly question received 07:36:11.532894 Wrote request (93 bytes) input to log/14/server.input 07:36:11.532919 Identifying ourselves as friends 07:36:11.532995 Response sent (56 bytes) and written to log/14/server.response 07:36:11.533006 special request received, no persistency 07:36:11.533015 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1567 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr1567 URL: http://127.0.0.1:37963/1567 === End of file stderr1567 === Start of file valgrind1567 ==158539== ==158539== Process terminating with default action of signal 4 (SIGILL) ==158539== Illegal opcode at address 0x51C2DB3 ==158539== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158539== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158539== by 0x51C2DB3: Curl_open (url.c:541) ==158539== by 0x513D46F: curl_easy_init (easy.c:372) ==158539== by 0x403134C: UnknownInlinedFun (lib1567.c:37) ==158539== by 0x403134C: test_lib1567.lto_priv.0 (lib1567.c:30) ==158539== by 0x4003443: main (first.c:167) ==158539== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x533CFA5: __tsearch (tsearch.c:337) ==158539== by 0x533CFA5: tsearch (tsearch.c:290) ==158539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158539== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158539== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== ==158539== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x533CFA5: __tsearch (tsearch.c:337) ==158539== by 0x533CFA5: tsearch (tsearch.c:290) ==158539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158539== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158539== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== ==158539== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158539== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158539== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== ==158539== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158539== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158539== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== ==158539== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158539== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158539== by 0x51C2D03: Curl_open (url.c:520) ==158539== by 0x513D46F: curl_easy_init (easy.c:372) ==158539== by 0x403134C: UnknownInlinedFun (lib1567.c:37) ==158539== by 0x403134C: test_lib1567.lto_priv.0 (lib1567.c:30) ==158539== by 0x4003443: main (first.c:167) ==158539== ==158539== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x533CFA5: __tsearch (tsearch.c:337) ==158539== by 0x533CFA5: tsearch (tsearch.c:290) ==158539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158539== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158539== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== ==158539== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158539== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158539== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158539== by 0x524E246: __gconv_compare_alias (gconv_db.c:69CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1565 ./libtest/libtests lib1565 http://127.0.0.1:38941/1 > log/1/stdout1565 2> log/1/stderr1565 2) ==158539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158539== by 0x525A142: setlocale (setlocale.c:337) ==158539== by 0x400336E: main (first.c:123) ==158539== === End of file valgrind1567 test 1565...[wakeup from another thread] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1565 ./libtest/libtests lib1565 http://127.0.0.1:38941/1 > log/1/stdout1565 2> log/1/stderr1565 libtests returned 132, when expecting 0 1565: exit FAILED == Contents of files in the log/1/ dir after test 1565 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1565 ./libtest/libtests lib1565 http://127.0.0.1:38941/1 > log/1/stdout1565 2> log/1/stderr1565 === End of file commands.log === Start of file http_server.log 07:36:11.042931 ====> Client connect 07:36:11.042965 accept_connection 3 returned 4 07:36:11.042981 accept_connection 3 returned 0 07:36:11.042995 Read 93 bytes 07:36:11.043005 Process 93 bytes request 07:36:11.043018 Got request: GET /verifiedserver HTTP/1.1 07:36:11.043027 Are-we-friendly question received 07:36:11.043052 Wrote request (93 bytes) input to log/1/server.input 07:36:11.043068 Identifying ourselves as friends 07:36:11.043123 Response sent (56 bytes) and written to log/1/server.response 07:36:11.043133 special request received, no persistency 07:36:11.043142 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1565 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr1565 URL: http://127.0.0.1:38941/1 === End of file stderr1565 === Start of file valgrind1565 ==158289== ==158289== Process terminating with default action of signal 4 (SIGILL) ==158289== Illegal opcode at address 0x518AA97 ==158289== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==158289== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==158289== by 0x518AA97: Curl_multi_handle (multi.c:236) ==158289== by 0x402FE06: UnknownInlinedFun (lib1565.c:106) ==158289== by 0x402FE06: test_lib1565.lto_priv.0 (lib1565.c:88) ==158289== by 0x4003443: main (first.c:167) ==158289== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x533CFA5: __tsearch (tsearch.c:337) ==158289== by 0x533CFA5: tsearch (tsearch.c:290) ==158289== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158289== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158289== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158289== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158289== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158289== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== ==158289== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x533CFA5: __tsearch (tsearch.c:337) ==158289== by 0x533CFA5: tsearch (tsearch.c:290) ==158289== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158289== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158289== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== ==158289== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==158289== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158289== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==158289== by 0x402FE06: UnknownInlinedFun (lib1565.c:106) ==158289== by 0x402FE06: test_lib1565.lto_priv.0 (lib1565.c:88) ==158289== by 0x4003443: main (first.c:167) ==158289== ==158289== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158289== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158289== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158289== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158289== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158289== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== ==158289== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158289== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158289== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== ==158289== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x533CFA5: __tsearch (tsearch.c:337) ==158289== by 0x533CFA5: tsearch (tsearch.c:290) ==158289== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158289== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158289== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158289== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158289== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158289== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== ==158289== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158289== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158289== by 0x524F0A9: add_alias2.pCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1545 ./libtest/libtests lib1545 http://127.0.0.1:34881/1545 > log/15/stdout1545 2> log/15/stderr1545 art.0 (gconv_conf.c:132) ==158289== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158289== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158289== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158289== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158289== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158289== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158289== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158289== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158289== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158289== by 0x525A142: setlocale (setlocale.c:337) ==158289== by 0x400336E: main (first.c:123) ==158289== === End of file valgrind1565 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/15/server/http_server.pid" --logfile "log/15/http_server.log" --logdir "log/15" --portfile log/15/server/http_server.port --config log/15/server.cmd --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP server is on PID 157411 port 34881 * pid http => 157411 157411 test 1545...[use curl_formadd() data twice with unreadable file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1545 ./libtest/libtests lib1545 http://127.0.0.1:34881/1545 > log/15/stdout1545 2> log/15/stderr1545 libtests returned 132, when expecting 0 1545: exit FAILED == Contents of files in the log/15/ dir after test 1545 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1545 ./libtest/libtests lib1545 http://127.0.0.1:34881/1545 > log/15/stdout1545 2> log/15/stderr1545 === End of file commands.log === Start of file http_server.log 07:36:10.352856 Running HTTP IPv4 version on port 34881 07:36:10.352949 Wrote pid 157411 to log/15/server/http_server.pid 07:36:10.352985 Wrote port 34881 to log/15/server/http_server.port === End of file http_server.log === Start of file server.cmd Testnum 1545 === End of file server.cmd === Start of file stderr1545 URL: http://127.0.0.1:34881/1545 === End of file stderr1545 === Start of file valgrind1545 ==158402== ==158402== Process terminating with default action of signal 4 (SIGILL) ==158402== Illegal opcode at address 0x51C2DB3 ==158402== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158402== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158402== by 0x51C2DB3: Curl_open (url.c:541) ==158402== by 0x513D46F: curl_easy_init (easy.c:372) ==158402== by 0x4022DE9: test_lib1545.lto_priv.0 (lib1545.c:35) ==158402== by 0x4003443: main (first.c:167) ==158402== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x533CFA5: __tsearch (tsearch.c:337) ==158402== by 0x533CFA5: tsearch (tsearch.c:290) ==158402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158402== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158402== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== ==158402== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x533CFA5: __tsearch (tsearch.c:337) ==158402== by 0x533CFA5: tsearch (tsearch.c:290) ==158402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158402== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158402== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== ==158402== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158402== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158402== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== ==158402== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158402== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158402== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== ==158402== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158402== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158402== by 0x51C2D03: Curl_open (url.c:520) ==158402== by 0x513D46F: curl_easy_init (easy.c:372) ==158402== by 0x4022DE9: test_lib1545.lto_priv.0 (lib1545.c:35) ==158402== by 0x4003443: main (first.c:167) ==158402== ==158402== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x533CFA5: __tsearch (tsearch.c:337) ==158402== by 0x533CFA5: tsearch (tsearch.c:290) ==158402== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158402== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158402== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158402== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== ==158402== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158402== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158402== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158402== by 0x524F3FCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1568 ./libtest/libtests lib1568 http://127.0.0.1/1568 33235 > log/4/stdout1568 2> log/4/stderr1568 0: add_alias2 (gconv_conf.c:176) ==158402== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158402== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158402== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158402== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158402== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158402== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158402== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158402== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158402== by 0x525A142: setlocale (setlocale.c:337) ==158402== by 0x400336E: main (first.c:123) ==158402== === End of file valgrind1545 test 1568...[HTTP with Digest authorization on custom CURLOPT_PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1568 ./libtest/libtests lib1568 http://127.0.0.1/1568 33235 > log/4/stdout1568 2> log/4/stderr1568 1568: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1568 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1568 ./libtest/libtests lib1568 http://127.0.0.1/1568 33235 > log/4/stdout1568 2> log/4/stderr1568 === End of file commands.log === Start of file http_server.log 07:36:11.719421 ====> Client connect 07:36:11.719472 accept_connection 3 returned 4 07:36:11.719492 accept_connection 3 returned 0 07:36:11.719509 Read 93 bytes 07:36:11.719519 Process 93 bytes request 07:36:11.719532 Got request: GET /verifiedserver HTTP/1.1 07:36:11.719542 Are-we-friendly question received 07:36:11.719568 Wrote request (93 bytes) input to log/4/server.input 07:36:11.719586 Identifying ourselves as friends 07:36:11.719676 Response sent (56 bytes) and written to log/4/server.response 07:36:11.719686 special request received, no persistency 07:36:11.719695 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1568 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1568 URL: http://127.0.0.1/1568 === End of file stderr1568 === Start of file valgrind1568 ==158696== ==158696== Process terminating with default action of signal 4 (SIGILL) ==158696== Illegal opcode at address 0x51C2DB3 ==158696== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158696== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158696== by 0x51C2DB3: Curl_open (url.c:541) ==158696== by 0x513D46F: curl_easy_init (easy.c:372) ==158696== by 0x403147E: test_lib1568.lto_priv.0 (lib1568.c:34) ==158696== by 0x4003443: main (first.c:167) ==158696== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x533CFA5: __tsearch (tsearch.c:337) ==158696== by 0x533CFA5: tsearch (tsearch.c:290) ==158696== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158696== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158696== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158696== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158696== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158696== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== ==158696== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x533CFA5: __tsearch (tsearch.c:337) ==158696== by 0x533CFA5: tsearch (tsearch.c:290) ==158696== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158696== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158696== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== ==158696== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158696== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158696== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158696== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158696== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158696== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== ==158696== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158696== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158696== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== ==158696== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158696== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158696== by 0x51C2D03: Curl_open (url.c:520) ==158696== by 0x513D46F: curl_easy_init (easy.c:372) ==158696== by 0x403147E: test_lib1568.lto_priv.0 (lib1568.c:34) ==158696== by 0x4003443: main (first.c:167) ==158696== ==158696== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x533CFA5: __tsearch (tsearch.c:337) ==158696== by 0x533CFA5: tsearch (tsearch.c:290) ==158696== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158696== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158696== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158696== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158696== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158696== by 0x524F775: __gconv_read_conf (gconCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1553 ./libtest/libtests lib1553 imap://non-existing-host.haxx.se:35331/1553 > log/17/stdout1553 2> log/17/stderr1553 v_conf.c:480) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== ==158696== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158696== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158696== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158696== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158696== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158696== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158696== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158696== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158696== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158696== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158696== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158696== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158696== by 0x525A142: setlocale (setlocale.c:337) ==158696== by 0x400336E: main (first.c:123) ==158696== === End of file valgrind1568 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/17/server/imap_server.pid" --logfile "log/17/imap_server.log" --logdir "log/17" --portfile "log/17/server/imap_server.port" --srcdir "/startdir/src/curl/tests" --proto imap --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 35331 (log/17/server/imap_server.port) RUN: IMAP server is PID 157531 port 35331 * pid imap => 157531 157531 test 1553...[IMAP cleanup before a connection was created] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1553 ./libtest/libtests lib1553 imap://non-existing-host.haxx.se:35331/1553 > log/17/stdout1553 2> log/17/stderr1553 libtests returned 132, when expecting 0 1553: exit FAILED == Contents of files in the log/17/ dir after test 1553 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1553 ./libtest/libtests lib1553 imap://non-existing-host.haxx.se:35331/1553 > log/17/stdout1553 2> log/17/stderr1553 === End of file commands.log === Start of file imap_server.log 07:36:10.683045 IMAP server listens on port IPv4/35331 07:36:10.683153 logged pid 157531 in log/17/server/imap_server.pid 07:36:10.683180 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:10.527598 Running IPv4 version 07:36:10.527672 Listening on port 35331 07:36:10.527716 Wrote pid 157586 to log/17/server/imap_sockfilt.pid 07:36:10.527747 Wrote port 35331 to log/17/server/imap_server.port 07:36:10.528933 Received PING (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 1553 === End of file server.cmd === Start of file stderr1553 URL: imap://non-existing-host.haxx.se:35331/1553 === End of file stderr1553 === Start of file valgrind1553 ==158487== ==158487== Process terminating with default action of signal 4 (SIGILL) ==158487== Illegal opcode at address 0x518AA97 ==158487== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==158487== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==158487== by 0x518AA97: Curl_multi_handle (multi.c:236) ==158487== by 0x402BE24: UnknownInlinedFun (lib1553.c:57) ==158487== by 0x402BE24: test_lib1553.lto_priv.0 (lib1553.c:42) ==158487== by 0x4003443: main (first.c:167) ==158487== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x533CFA5: __tsearch (tsearch.c:337) ==158487== by 0x533CFA5: tsearch (tsearch.c:290) ==158487== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158487== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158487== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158487== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158487== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158487== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== ==158487== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x533CFA5: __tsearch (tsearch.c:337) ==158487== by 0x533CFA5: tsearch (tsearch.c:290) ==158487== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158487== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158487== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== ==158487== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==158487== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158487== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==158487== by 0x402BE24: UnknownInlinedFun (lib1553.c:57) ==158487== by 0x402BE24: test_lib1553.lto_priv.0 (lib1553.c:42) ==158487== by 0x4003443: main (first.c:167) ==158487== ==158487== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158487== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158487== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158487== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158487== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158487== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== ==158487== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158487== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158487== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== ==158487== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x533CFA5: __tsearch (tsearch.c:337) ==158487== by 0x533CFA5: tsearch (tsearch.c:290) ==158487== by 0x524F0F4:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1570 ./libtest/libtests lib1569 "ftp://127.0.0.1:39735/1570;type=D" ftp://127.0.0.1:39735/1570 > log/12/stdout1570 2> log/12/stderr1570 add_alias2.part.0 (gconv_conf.c:142) ==158487== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158487== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158487== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158487== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158487== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== ==158487== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158487== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158487== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158487== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158487== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158487== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158487== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158487== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158487== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158487== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158487== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158487== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158487== by 0x525A142: setlocale (setlocale.c:337) ==158487== by 0x400336E: main (first.c:123) ==158487== === End of file valgrind1553 test 1570...[FTP first type=D then regular URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1570 ./libtest/libtests lib1569 "ftp://127.0.0.1:39735/1570;type=D" ftp://127.0.0.1:39735/1570 > log/12/stdout1570 2> log/12/stderr1570 1570: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1570 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1570 ./libtest/libtests lib1569 "ftp://127.0.0.1:39735/1570;type=D" ftp://127.0.0.1:39735/1570 > log/12/stdout1570 2> log/12/stderr1570 === End of file commands.log === Start of file ftp_server.log 07:36:12.126820 ====> Client connect 07:36:12.126991 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:12.138775 < "USER anonymous" 07:36:12.138839 > "331 We are happy you popped in![CR][LF]" 07:36:12.139144 < "PASS ftp@example.com" 07:36:12.139177 > "230 Welcome you silly person[CR][LF]" 07:36:12.139348 < "PWD" 07:36:12.139383 > "257 "/" is current directory[CR][LF]" 07:36:12.139563 < "EPSV" 07:36:12.139592 ====> Passive DATA channel requested by client 07:36:12.139606 DATA sockfilt for passive data channel starting... 07:36:12.161328 DATA sockfilt for passive data channel started (pid 158796) 07:36:12.161482 DATA sockfilt for passive data channel listens on port 43473 07:36:12.161534 > "229 Entering Passive Mode (|||43473|)[LF]" 07:36:12.161551 Client has been notified that DATA conn will be accepted on port 43473 07:36:12.161839 Client connects to port 43473 07:36:12.161876 ====> Client established passive DATA connection on port 43473 07:36:12.162019 < "TYPE I" 07:36:12.162057 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:12.162230 < "SIZE verifiedserver" 07:36:12.162266 > "213 17[CR][LF]" 07:36:12.162425 < "RETR verifiedserver" 07:36:12.162460 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:12.162541 =====> Closing passive DATA connection... 07:36:12.162556 Server disconnects passive DATA connection 07:36:12.162666 Server disconnected passive DATA connection 07:36:12.162685 DATA sockfilt for passive data channel quits (pid 158796) 07:36:12.162945 DATA sockfilt for passive data channel quit (pid 158796) 07:36:12.162965 =====> Closed passive DATA connection 07:36:12.163014 > "226 File transfer complete[CR][LF]" 07:36:12.206966 < "QUIT" 07:36:12.207026 > "221 bye bye baby[CR][LF]" 07:36:12.207854 MAIN sockfilt said DISC 07:36:12.207898 ====> Client disconnected 07:36:12.207980 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:12.972659 ====> Client connect 07:36:12.973005 Received DATA (on stdin) 07:36:12.973024 > 160 bytes data, server => client 07:36:12.973037 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:12.973049 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:12.973060 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:12.984302 < 16 bytes data, client => server 07:36:12.984325 'USER anonymous\r\n' 07:36:12.984929 Received DATA (on stdin) 07:36:12.984946 > 33 bytes data, server => client 07:36:12.984958 '331 We are happy you popped in!\r\n' 07:36:12.985029 < 22 bytes data, client => server 07:36:12.985044 'PASS ftp@example.com\r\n' 07:36:12.985165 Received DATA (on stdin) 07:36:12.985179 > 30 bytes data, server => client 07:36:12.985190 '230 Welcome you silly person\r\n' 07:36:12.985241 < 5 bytes data, client => server 07:36:12.985256 'PWD\r\n' 07:36:12.985371 Received DATA (on stdin) 07:36:12.985385 > 30 bytes data, server => client 07:36:12.985395 '257 "/" is current directory\r\n' 07:36:12.985456 < 6 bytes data, client => server 07:36:12.985471 'EPSV\r\n' 07:36:13.007548 Received DATA (on stdin) 07:36:13.007567 > 38 bytes data, server => client 07:36:13.007578 '229 Entering Passive Mode (|||43473|)\n' 07:36:13.007882 < 8 bytes data, client => server 07:36:13.007897 'TYPE I\r\n' 07:36:13.008042 Received DATA (on stdin) 07:36:13.008053 > 33 bytes data, server => client 07:36:13.008064 '200 I modify TYPE as you wanted\r\n' 07:36:13.008121 < 21 bytes data, client => server 07:36:13.008133 'SIZE verifiedserver\r\n' 07:36:13.008250 Received DATA (on stdin) 07:36:13.008262 > 8 bytes data, server => client 07:36:13.008272 '213 17\r\n' 07:36:13.008322 < 21 bytes data, client => server 07:36:13.008334 'RETR verifiedserver\r\n' 07:36:13.009045 Received DATA (on stdin) 07:36:13.009059 > 29 bytes data, server => client 07:36:13.009069 '150 Binary junk (17 bytes).\r\n' 07:36:13.009340 Received DATA (on stdin) 07:36:13.009359 > 28 bytes data, server => client 07:36:13.009370 '226 File transfer complete\r\n' 07:36:13.052752 < 6 bytes data, client => server 07:36:13.052778 'QUIT\r\n' 07:36:13.053018 Received DATA (on stdin) 07:36:13.053033 > 18 bytes data, server => client 07:36:13.053044 '221 bye bye baby\r\n' 07:36:13.053770 ====> Client disconnect 07:36:13.053974 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:12.005362 Running IPv4 version 07:36:12.005452 Listening on port 43473 07:36:12.005492 Wrote pid 158796 to log/12/server/ftp_sockdata.pid 07:36:12.007223 Received PING (on stdin) 07:36:12.007366 Received PORT (on stdin) 07:36:12.007767 ====> Client connect 07:36:12.008542 Received DATA (on stdin) 07:36:12.008555 > 17 bytes data, server => client 07:36:12.008565 'WE ROOLZ: 81035\r\n' 07:36:12.008591 Received DISC (on stdin) 07:36:12.008602 ====> Client forcibly disconnected 07:36:12.008675 Received QUIT (on stdin) 07:36:12.008685 quits 07:36:12.008759 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1570 === End of file server.cmd === Start of file stderr1570 URL: ftp://127.0.0.1:39735/1570;type=D === End of file stderr1570 === Start of file valgrind1570 ==158870== ==158870== Process terminatiCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1571 ./libtest/libtests lib1571 http://127.0.0.1:35775/1571 > log/6/stdout1571 2> log/6/stderr1571 ng with default action of signal 4 (SIGILL) ==158870== Illegal opcode at address 0x51C2DB3 ==158870== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158870== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158870== by 0x51C2DB3: Curl_open (url.c:541) ==158870== by 0x513D46F: curl_easy_init (easy.c:372) ==158870== by 0x40308AC: UnknownInlinedFun (lib1569.c:34) ==158870== by 0x40308AC: test_lib1569.lto_priv.0 (lib1569.c:28) ==158870== by 0x4003443: main (first.c:167) ==158870== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x533CFA5: __tsearch (tsearch.c:337) ==158870== by 0x533CFA5: tsearch (tsearch.c:290) ==158870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158870== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158870== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== ==158870== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x533CFA5: __tsearch (tsearch.c:337) ==158870== by 0x533CFA5: tsearch (tsearch.c:290) ==158870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158870== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158870== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== ==158870== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158870== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158870== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== ==158870== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158870== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158870== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== ==158870== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158870== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158870== by 0x51C2D03: Curl_open (url.c:520) ==158870== by 0x513D46F: curl_easy_init (easy.c:372) ==158870== by 0x40308AC: UnknownInlinedFun (lib1569.c:34) ==158870== by 0x40308AC: test_lib1569.lto_priv.0 (lib1569.c:28) ==158870== by 0x4003443: main (first.c:167) ==158870== ==158870== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x533CFA5: __tsearch (tsearch.c:337) ==158870== by 0x533CFA5: tsearch (tsearch.c:290) ==158870== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158870== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158870== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== ==158870== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158870== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158870== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158870== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158870== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158870== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158870== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158870== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158870== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158870== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158870== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158870== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158870== by 0x525A142: setlocale (setlocale.c:337) ==158870== by 0x400336E: main (first.c:123) ==158870== === End of file valgrind1570 test 1571...[CURLFOLLOW_OBEYCODE with custom POST method, 302 => GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1571 ./libtest/libtests lib1571 http://127.0.0.1:35775/1571 > log/6/stdout1571 2> log/6/stderr1571 1571: protocol FAILED! There was no content at all in the file log/6/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/6/ dir after test 1571 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1571 ./libtest/libtests lib1571 http://127.0.0.1:35775/1571 > log/6/stdout1571 2> log/6/stderr1571 === End of file commands.log === Start of file http_server.log 07:36:12.049554 ====> Client connect 07:36:12.049600 accept_connection 3 returned 4 07:36:12.049620 accept_connection 3 returned 0 07:36:12.049644 Read 93 bytes 07:36:12.049659 Process 93 bytes request 07:36:12.049684 Got request: GET /verifiedserver HTTP/1.1 07:36:12.049696 Are-we-friendly question received 07:36:12.049736 Wrote request (93 bytes) input to log/6/server.input 07:36:12.049760 Identifying ourselves as friends 07:36:12.049835 Response sent (56 bytes) and written to log/6/server.response 07:36:12.049850 special request received, no persistency 07:36:12.049859 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:3577CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1576 ./libtest/libtests lib1576 http://127.0.0.1:46675/1576 > log/5/stdout1576 2> log/5/stderr1576 5... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1571 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file stderr1571 URL: http://127.0.0.1:35775/1571 === End of file stderr1571 === Start of file valgrind1571 ==158887== ==158887== Process terminating with default action of signal 4 (SIGILL) ==158887== Illegal opcode at address 0x51C2DB3 ==158887== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158887== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158887== by 0x51C2DB3: Curl_open (url.c:541) ==158887== by 0x513D46F: curl_easy_init (easy.c:372) ==158887== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158887== by 0x4003443: main (first.c:167) ==158887== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x533CFA5: __tsearch (tsearch.c:337) ==158887== by 0x533CFA5: tsearch (tsearch.c:290) ==158887== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158887== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158887== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158887== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158887== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158887== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== ==158887== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x533CFA5: __tsearch (tsearch.c:337) ==158887== by 0x533CFA5: tsearch (tsearch.c:290) ==158887== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158887== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158887== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== ==158887== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158887== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158887== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158887== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158887== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158887== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== ==158887== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158887== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158887== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== ==158887== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158887== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158887== by 0x51C2D03: Curl_open (url.c:520) ==158887== by 0x513D46F: curl_easy_init (easy.c:372) ==158887== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158887== by 0x4003443: main (first.c:167) ==158887== ==158887== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x533CFA5: __tsearch (tsearch.c:337) ==158887== by 0x533CFA5: tsearch (tsearch.c:290) ==158887== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158887== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158887== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158887== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158887== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158887== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== ==158887== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158887== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158887== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158887== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158887== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158887== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158887== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158887== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158887== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158887== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158887== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158887== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158887== by 0x525A142: setlocale (setlocale.c:337) ==158887== by 0x400336E: main (first.c:123) ==158887== === End of file valgrind1571 test 1576...[CURLFOLLOW_OBEYCODE with custom PUT method, 302 => custom] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1576 ./libtest/libtests lib1576 http://127.0.0.1:46675/1576 > log/5/stdout1576 2> log/5/stderr1576 1576: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 1576 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1576 ./libtest/libtests lib1576 http://127.0.0.1:46675/1576 > log/5/stdout1576 2> log/5/stderr1576 === End of file commands.log === Start of file http_server.log 07:36:12.209389 ====> Client connect 07:36:1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1573 ./libtest/libtests lib1571 http://127.0.0.1:37169/1573 > log/20/stdout1573 2> log/20/stderr1573 2.209433 accept_connection 3 returned 4 07:36:12.209450 accept_connection 3 returned 0 07:36:12.209466 Read 93 bytes 07:36:12.209476 Process 93 bytes request 07:36:12.209489 Got request: GET /verifiedserver HTTP/1.1 07:36:12.209498 Are-we-friendly question received 07:36:12.209522 Wrote request (93 bytes) input to log/5/server.input 07:36:12.209538 Identifying ourselves as friends 07:36:12.209609 Response sent (56 bytes) and written to log/5/server.response 07:36:12.209619 special request received, no persistency 07:36:12.209627 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1576 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stderr1576 URL: http://127.0.0.1:46675/1576 === End of file stderr1576 === Start of file valgrind1576 ==159128== ==159128== Process terminating with default action of signal 4 (SIGILL) ==159128== Illegal opcode at address 0x51C2DB3 ==159128== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159128== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159128== by 0x51C2DB3: Curl_open (url.c:541) ==159128== by 0x513D46F: curl_easy_init (easy.c:372) ==159128== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159128== by 0x4003443: main (first.c:167) ==159128== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x533CFA5: __tsearch (tsearch.c:337) ==159128== by 0x533CFA5: tsearch (tsearch.c:290) ==159128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== ==159128== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x533CFA5: __tsearch (tsearch.c:337) ==159128== by 0x533CFA5: tsearch (tsearch.c:290) ==159128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== ==159128== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== ==159128== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== ==159128== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159128== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159128== by 0x51C2D03: Curl_open (url.c:520) ==159128== by 0x513D46F: curl_easy_init (easy.c:372) ==159128== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159128== by 0x4003443: main (first.c:167) ==159128== ==159128== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x533CFA5: __tsearch (tsearch.c:337) ==159128== by 0x533CFA5: tsearch (tsearch.c:290) ==159128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== ==159128== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159128== by 0x525A142: setlocale (setlocale.c:337) ==159128== by 0x400336E: main (first.c:123) ==159128== === End of file valgrind1576 test 1573...[CURLFOLLOW_OBEYCODE with custom GET method, 301 => custom] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1573 ./libtest/libtests lib1571 http://127.0.0.1:37169/1573 > log/20/stdout1573 2> log/20/stderr1573 1573: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1573 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1573 ./libtest/libtests lib1571 http://127.0.0.1:37169/1573 > log/20/stdout1573 2> log/20/stderr1573 === End of file commands.log === Start of file http_server.log 07:36:12.104398 ====> Client connect 07:36:12.104429 accept_connection 3 returned 4 07:36:12.104445 accept_connection 3 returned 0 07:36:12.104459 Read 93 bytes 07:36:12.104469 Process 93 bytes request 07:36:12.104481 Got request: GET /verifiedserver HTTP/1.1 07:36:12.104491 Are-we-friendly question received 07:36:12.104515 Wrote request (93 bytes) input to log/20/server.input 07:36:12.104533 Identifying ourselves as friends 07:36:12.104660 Response sent (56 bytes) and written to log/20/server.response 07:36:12.104672 special request received, no persistency 07:36:12.104681 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1573 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr1573 URL: http://127.0.0.1:37169/1573 === End of file stderr1573 === Start of file valgrind1573 ==158979== ==158979== Process terminating with default action of signal 4 (SIGILL) ==158979== Illegal opcode at address 0x51C2DB3 ==158979== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158979== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158979== by 0x51C2DB3: Curl_open (url.c:541) ==158979== by 0x513D46F: curl_easy_init (easy.c:372) ==158979== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158979== by 0x4003443: main (first.c:167) ==158979== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x533CFA5: __tsearch (tsearch.c:337) ==158979== by 0x533CFA5: tsearch (tsearch.c:290) ==158979== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158979== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158979== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158979== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158979== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158979== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== ==158979== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x533CFA5: __tsearch (tsearch.c:337) ==158979== by 0x533CFA5: tsearch (tsearch.c:290) ==158979== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158979== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158979== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== ==158979== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158979== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158979== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158979== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158979== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158979== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== ==158979== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158979== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158979== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== ==158979== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158979== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158979== by 0x51C2D03: Curl_open (url.c:520) ==158979== by 0x513D46F: curl_easy_init (easy.c:372) ==158979== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158979== by 0x4003443: main (first.c:167) ==158979== ==158979== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x533CFA5: __tsearch (tsearch.c:337) ==158979== by 0x533CFA5: tsearch (tsearch.c:290) ==158979== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158979== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158979== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158979== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158979== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158979== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== ==158979== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158979== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158979== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158979== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158979== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158979== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158979== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158979== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158979== by 0x52BFCB3: __pthread_once_slow.isra.0 (ptCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1577 ./libtest/libtests lib1576 http://127.0.0.1:33627/1577 1577 > log/13/stdout1577 2> log/13/stderr1577 hread_once.c:116) ==158979== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158979== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158979== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158979== by 0x525A142: setlocale (setlocale.c:337) ==158979== by 0x400336E: main (first.c:123) ==158979== === End of file valgrind1573 test 1577...[CURLFOLLOW_OBEYCODE with custom PUT method, 308 => custom] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1577 ./libtest/libtests lib1576 http://127.0.0.1:33627/1577 1577 > log/13/stdout1577 2> log/13/stderr1577 1577: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1577 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1577 ./libtest/libtests lib1576 http://127.0.0.1:33627/1577 1577 > log/13/stdout1577 2> log/13/stderr1577 === End of file commands.log === Start of file http_server.log 07:36:12.236190 ====> Client connect 07:36:12.236233 accept_connection 3 returned 4 07:36:12.236253 accept_connection 3 returned 0 07:36:12.236270 Read 93 bytes 07:36:12.236281 Process 93 bytes request 07:36:12.236297 Got request: GET /verifiedserver HTTP/1.1 07:36:12.236307 Are-we-friendly question received 07:36:12.236338 Wrote request (93 bytes) input to log/13/server.input 07:36:12.236357 Identifying ourselves as friends 07:36:12.236438 Response sent (56 bytes) and written to log/13/server.response 07:36:12.236452 special request received, no persistency 07:36:12.236462 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1577 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr1577 URL: http://127.0.0.1:33627/1577 === End of file stderr1577 === Start of file valgrind1577 ==159219== ==159219== Process terminating with default action of signal 4 (SIGILL) ==159219== Illegal opcode at address 0x51C2DB3 ==159219== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159219== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159219== by 0x51C2DB3: Curl_open (url.c:541) ==159219== by 0x513D46F: curl_easy_init (easy.c:372) ==159219== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159219== by 0x4003443: main (first.c:167) ==159219== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x533CFA5: __tsearch (tsearch.c:337) ==159219== by 0x533CFA5: tsearch (tsearch.c:290) ==159219== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159219== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159219== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159219== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159219== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159219== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (setlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== ==159219== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x533CFA5: __tsearch (tsearch.c:337) ==159219== by 0x533CFA5: tsearch (tsearch.c:290) ==159219== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159219== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159219== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (setlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== ==159219== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159219== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159219== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159219== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159219== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159219== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (setlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== ==159219== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159219== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159219== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (setlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== ==159219== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159219== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159219== by 0x51C2D03: Curl_open (url.c:520) ==159219== by 0x513D46F: curl_easy_init (easy.c:372) ==159219== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159219== by 0x4003443: main (first.c:167) ==159219== ==159219== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x533CFA5: __tsearch (tsearch.c:337) ==159219== by 0x533CFA5: tsearch (tsearch.c:290) ==159219== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159219== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159219== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159219== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159219== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159219== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1569 ./libtest/libtests lib1569 "ftp://127.0.0.1:38657/1569;type=A" ftp://127.0.0.1:38657/1569 > log/24/stdout1569 2> log/24/stderr1569 etlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== ==159219== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159219== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159219== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159219== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159219== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159219== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159219== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159219== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159219== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159219== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159219== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159219== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159219== by 0x525A142: setlocale (setlocale.c:337) ==159219== by 0x400336E: main (first.c:123) ==159219== === End of file valgrind1577 test 1569...[FTP first type=A then regular URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1569 ./libtest/libtests lib1569 "ftp://127.0.0.1:38657/1569;type=A" ftp://127.0.0.1:38657/1569 > log/24/stdout1569 2> log/24/stderr1569 1569: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1569 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1569 ./libtest/libtests lib1569 "ftp://127.0.0.1:38657/1569;type=A" ftp://127.0.0.1:38657/1569 > log/24/stdout1569 2> log/24/stderr1569 === End of file commands.log === Start of file ftp_server.log 07:36:12.138402 ====> Client connect 07:36:12.138596 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:12.146917 < "USER anonymous" 07:36:12.146974 > "331 We are happy you popped in![CR][LF]" 07:36:12.153561 < "PASS ftp@example.com" 07:36:12.153620 > "230 Welcome you silly person[CR][LF]" 07:36:12.153832 < "PWD" 07:36:12.153878 > "257 "/" is current directory[CR][LF]" 07:36:12.154063 < "EPSV" 07:36:12.154089 ====> Passive DATA channel requested by client 07:36:12.154103 DATA sockfilt for passive data channel starting... 07:36:12.167833 DATA sockfilt for passive data channel started (pid 158803) 07:36:12.174724 DATA sockfilt for passive data channel listens on port 43103 07:36:12.174815 > "229 Entering Passive Mode (|||43103|)[LF]" 07:36:12.174836 Client has been notified that DATA conn will be accepted on port 43103 07:36:12.175191 Client connects to port 43103 07:36:12.175216 ====> Client established passive DATA connection on port 43103 07:36:12.175298 < "TYPE I" 07:36:12.175329 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:12.175463 < "SIZE verifiedserver" 07:36:12.175493 > "213 17[CR][LF]" 07:36:12.175621 < "RETR verifiedserver" 07:36:12.175651 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:12.175727 =====> Closing passive DATA connection... 07:36:12.175741 Server disconnects passive DATA connection 07:36:12.175915 Server disconnected passive DATA connection 07:36:12.175937 DATA sockfilt for passive data channel quits (pid 158803) 07:36:12.176211 DATA sockfilt for passive data channel quit (pid 158803) 07:36:12.176234 =====> Closed passive DATA connection 07:36:12.176259 > "226 File transfer complete[CR][LF]" 07:36:12.220294 < "QUIT" 07:36:12.220356 > "221 bye bye baby[CR][LF]" 07:36:12.224277 MAIN sockfilt said DISC 07:36:12.224344 ====> Client disconnected 07:36:12.224433 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:11.984187 ====> Client connect 07:36:11.984835 Received DATA (on stdin) 07:36:11.984853 > 160 bytes data, server => client 07:36:11.984866 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:11.984878 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:11.984888 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:11.992667 < 16 bytes data, client => server 07:36:11.992702 'USER anonymous\r\n' 07:36:11.992968 Received DATA (on stdin) 07:36:11.992983 > 33 bytes data, server => client 07:36:11.992995 '331 We are happy you popped in!\r\n' 07:36:11.999324 < 22 bytes data, client => server 07:36:11.999364 'PASS ftp@example.com\r\n' 07:36:11.999614 Received DATA (on stdin) 07:36:11.999629 > 30 bytes data, server => client 07:36:11.999641 '230 Welcome you silly person\r\n' 07:36:11.999715 < 5 bytes data, client => server 07:36:11.999731 'PWD\r\n' 07:36:11.999867 Received DATA (on stdin) 07:36:11.999881 > 30 bytes data, server => client 07:36:11.999892 '257 "/" is current directory\r\n' 07:36:11.999955 < 6 bytes data, client => server 07:36:11.999971 'EPSV\r\n' 07:36:12.020832 Received DATA (on stdin) 07:36:12.020855 > 38 bytes data, server => client 07:36:12.020867 '229 Entering Passive Mode (|||43103|)\n' 07:36:12.021083 < 8 bytes data, client => server 07:36:12.021098 'TYPE I\r\n' 07:36:12.021310 Received DATA (on stdin) 07:36:12.021321 > 33 bytes data, server => client 07:36:12.021331 '200 I modify TYPE as you wanted\r\n' 07:36:12.021375 < 21 bytes data, client => server 07:36:12.021385 'SIZE verifiedserver\r\n' 07:36:12.021472 Received DATA (on stdin) 07:36:12.021482 > 8 bytes data, server => client 07:36:12.021491 '213 17\r\n' 07:36:12.021531 < 21 bytes data, client => server 07:36:12.021542 'RETR verifiedserver\r\n' 07:36:12.021724 Received DATA (on stdin) 07:36:12.021735 > 29 bytes data, server => client 07:36:12.021745 '150 Binary junk (17 bytes).\r\n' 07:36:12.022242 Received DATA (on stdin) 07:36:12.022254 > 28 bytes data, server => client 07:36:12.022264 '226 File transfer complete\r\n' 07:36:12.066084 < 6 bytes data, client => server 07:36:12.066111 'QUIT\r\n' 07:36:12.066352 Received DATA (on stdin) 07:36:12.066367 > 18 bytes data, server => client 07:36:12.066379 '221 bye bye baby\r\n' 07:36:12.070178 ====> Client disconnect 07:36:12.070429 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:12.013620 Running IPv4 version 07:36:12.013696 Listening on port 43103 07:36:12.013732 Wrote pid 158803 to log/24/server/ftp_sockdata.pid 07:36:12.013751 Received PING (on stdin) 07:36:12.013859 Received PORT (on stdin) 07:36:12.021124 ====> Client connect 07:36:12.021796 Received DATA (on stdin) 07:36:12.021808 > 17 bytes data, server => client 07:36:12.021818 'WE ROOLZ: 81588\r\n' 07:36:12.021842 Received DISC (on stdin) 07:36:12.021852 ====> Client forcibly disconnected 07:36:12.021976 Received QUIT (on stdin) 07:36:12.021988 quits 07:36:12.022046 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY EPSV 500 no such command Testnum 1569 === End of file server.cmd === Start of file stderr1569 URL: ftp://127.0.0.1:38657/1569;type=A === End of file stderr1569 === Start of file valgrind1569 ==158875== ==158875== Process terminating with default action of signal 4 (SIGILL) ==158875== Illegal opcode at address 0x51C2DB3 ==158875== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158875== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158875== by 0x51C2DB3: Curl_open (url.c:541) ==158875== by 0x513D46F: curl_easy_init (easy.c:372) ==158875== by 0x40308AC: UnknownInlinedFun (lib1569.c:34) ==158875== by 0x40308AC: test_lib1569.lto_priv.0 (lib1569.c:28) ==158875== by 0x4003443: main (first.c:167) ==158875== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x533CFA5: __tsearch (tsearcCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1574 ./libtest/libtests lib1571 http://127.0.0.1:41087/1574 > log/21/stdout1574 2> log/21/stderr1574 h.c:337) ==158875== by 0x533CFA5: tsearch (tsearch.c:290) ==158875== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158875== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158875== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158875== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158875== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158875== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== ==158875== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x533CFA5: __tsearch (tsearch.c:337) ==158875== by 0x533CFA5: tsearch (tsearch.c:290) ==158875== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158875== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158875== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== ==158875== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158875== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158875== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158875== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158875== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158875== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== ==158875== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158875== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158875== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== ==158875== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158875== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158875== by 0x51C2D03: Curl_open (url.c:520) ==158875== by 0x513D46F: curl_easy_init (easy.c:372) ==158875== by 0x40308AC: UnknownInlinedFun (lib1569.c:34) ==158875== by 0x40308AC: test_lib1569.lto_priv.0 (lib1569.c:28) ==158875== by 0x4003443: main (first.c:167) ==158875== ==158875== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x533CFA5: __tsearch (tsearch.c:337) ==158875== by 0x533CFA5: tsearch (tsearch.c:290) ==158875== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158875== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158875== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158875== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158875== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158875== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== ==158875== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158875== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158875== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158875== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158875== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158875== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158875== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158875== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158875== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158875== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158875== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158875== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158875== by 0x525A142: setlocale (setlocale.c:337) ==158875== by 0x400336E: main (first.c:123) ==158875== === End of file valgrind1569 test 1574...[CURLFOLLOW_FIRSTONLY with custom GET method, 301 => GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1574 ./libtest/libtests lib1571 http://127.0.0.1:41087/1574 > log/21/stdout1574 2> log/21/stderr1574 1574: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 1574 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1574 ./libtest/libtests lib1571 http://127.0.0.1:41087/1574 > log/21/stdout1574 2> log/21/stderr1574 === End of file commands.log === Start of file http_server.log 07:36:12.138838 ====> Client connect 07:36:12.138881 accept_connection 3 returned 4 07:36:12.138902 accept_connection 3 returned 0 07:36:12.138920 Read 93 bytes 07:36:12.138932 Process 93 bytes request 07:36:12.138946 Got request: GET /verifiedserver HTTP/1.1 07:36:12.138956 Are-we-friendly question received 07:36:12.138988 Wrote request (93 bytes) input to log/21/server.input 07:36:12.139008 Identifying ourselves as friends 07:36:12.139099 Response sent (56 bytes) and written to log/21/server.response 07:36:12.139115 special request received, no persistency 07:36:12.139125 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 1574 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file stderr1574 URL: http://127.0.0.1:41087/1574 === CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1572 ./libtest/libtests lib1571 http://127.0.0.1:46761/1572 > log/22/stdout1572 2> log/22/stderr1572 End of file stderr1574 === Start of file valgrind1574 ==158995== ==158995== Process terminating with default action of signal 4 (SIGILL) ==158995== Illegal opcode at address 0x51C2DB3 ==158995== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158995== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158995== by 0x51C2DB3: Curl_open (url.c:541) ==158995== by 0x513D46F: curl_easy_init (easy.c:372) ==158995== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158995== by 0x4003443: main (first.c:167) ==158995== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x533CFA5: __tsearch (tsearch.c:337) ==158995== by 0x533CFA5: tsearch (tsearch.c:290) ==158995== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158995== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158995== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158995== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158995== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158995== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== ==158995== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x533CFA5: __tsearch (tsearch.c:337) ==158995== by 0x533CFA5: tsearch (tsearch.c:290) ==158995== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158995== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158995== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== ==158995== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158995== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158995== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158995== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158995== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158995== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== ==158995== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158995== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158995== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== ==158995== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158995== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158995== by 0x51C2D03: Curl_open (url.c:520) ==158995== by 0x513D46F: curl_easy_init (easy.c:372) ==158995== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158995== by 0x4003443: main (first.c:167) ==158995== ==158995== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x533CFA5: __tsearch (tsearch.c:337) ==158995== by 0x533CFA5: tsearch (tsearch.c:290) ==158995== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158995== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158995== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158995== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158995== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158995== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== ==158995== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158995== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158995== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158995== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158995== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158995== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158995== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158995== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158995== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158995== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158995== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158995== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158995== by 0x525A142: setlocale (setlocale.c:337) ==158995== by 0x400336E: main (first.c:123) ==158995== === End of file valgrind1574 test 1572...[CURLFOLLOW_OBEYCODE with custom POST method, 308 => custom] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1572 ./libtest/libtests lib1571 http://127.0.0.1:46761/1572 > log/22/stdout1572 2> log/22/stderr1572 1572: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1572 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1572 ./libtest/libtests lib1571 http://127.0.0.1:46761/1572 > log/22/stdout1572 2> log/22/stderr1572 === End of file commands.log === Start of file http_server.log 07:36:12.064282 ====> Client connect 07:36:12.064324 accept_connection 3 returned 4 07:36:12.064343 accept_connection 3 returned 0 07:36:12.064359 Read 93 bytes 07:36:12.064370 Process 93 bytes request 07:36:12.064384 Got request: GET /verifiedserver HTTP/1.1 07:36:12.064395 Are-we-friendly question received 07:36:12.064424 Wrote request (93 bytes) input to log/22/server.input 07:36:12.064442 Identifying ourselves as friends 07:36:12.064509 Response sent (56 bytes) and written to log/22/server.response 07:36:12.064522 special request received, no persistency 07:36:12.064531 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * ConnectCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1575 ./libtest/libtests lib1571 http://127.0.0.1:33487/1575 > log/19/stdout1575 2> log/19/stderr1575 ed to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1572 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr1572 URL: http://127.0.0.1:46761/1572 === End of file stderr1572 === Start of file valgrind1572 ==158876== ==158876== Process terminating with default action of signal 4 (SIGILL) ==158876== Illegal opcode at address 0x51C2DB3 ==158876== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158876== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158876== by 0x51C2DB3: Curl_open (url.c:541) ==158876== by 0x513D46F: curl_easy_init (easy.c:372) ==158876== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158876== by 0x4003443: main (first.c:167) ==158876== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x533CFA5: __tsearch (tsearch.c:337) ==158876== by 0x533CFA5: tsearch (tsearch.c:290) ==158876== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158876== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158876== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158876== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158876== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158876== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== ==158876== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x533CFA5: __tsearch (tsearch.c:337) ==158876== by 0x533CFA5: tsearch (tsearch.c:290) ==158876== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158876== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158876== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== ==158876== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158876== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158876== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158876== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158876== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158876== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== ==158876== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158876== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158876== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== ==158876== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158876== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158876== by 0x51C2D03: Curl_open (url.c:520) ==158876== by 0x513D46F: curl_easy_init (easy.c:372) ==158876== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158876== by 0x4003443: main (first.c:167) ==158876== ==158876== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x533CFA5: __tsearch (tsearch.c:337) ==158876== by 0x533CFA5: tsearch (tsearch.c:290) ==158876== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158876== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158876== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158876== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158876== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158876== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== ==158876== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158876== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158876== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158876== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158876== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158876== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158876== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158876== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158876== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158876== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158876== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158876== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158876== by 0x525A142: setlocale (setlocale.c:337) ==158876== by 0x400336E: main (first.c:123) ==158876== === End of file valgrind1572 test 1575...[CURLFOLLOW_FIRSTONLY with custom POST method, 308 => POST] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1575 ./libtest/libtests lib1571 http://127.0.0.1:33487/1575 > log/19/stdout1575 2> log/19/stderr1575 1575: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 1575 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1575 ./libtest/libtests lib1571 http://127.0.0.1:33487/1575 > log/19/stdout1575 2> log/19/stderr1575 === End of file commands.log === Start of file http_server.log 07:36:12.096044 ====> Client connect 07:36:12.09952CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1591 ./libtest/libtests lib1591 http://127.0.0.1:45701/bzz/1591 log/23/stdout1591 2> log/23/stderr1591 5 accept_connection 3 returned 4 07:36:12.099558 accept_connection 3 returned 0 07:36:12.099577 Read 93 bytes 07:36:12.099588 Process 93 bytes request 07:36:12.099602 Got request: GET /verifiedserver HTTP/1.1 07:36:12.099612 Are-we-friendly question received 07:36:12.099642 Wrote request (93 bytes) input to log/19/server.input 07:36:12.099659 Identifying ourselves as friends 07:36:12.099749 Response sent (56 bytes) and written to log/19/server.response 07:36:12.099760 special request received, no persistency 07:36:12.099769 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1575 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file stderr1575 URL: http://127.0.0.1:33487/1575 === End of file stderr1575 === Start of file valgrind1575 ==158956== ==158956== Process terminating with default action of signal 4 (SIGILL) ==158956== Illegal opcode at address 0x51C2DB3 ==158956== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==158956== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==158956== by 0x51C2DB3: Curl_open (url.c:541) ==158956== by 0x513D46F: curl_easy_init (easy.c:372) ==158956== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158956== by 0x4003443: main (first.c:167) ==158956== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x533CFA5: __tsearch (tsearch.c:337) ==158956== by 0x533CFA5: tsearch (tsearch.c:290) ==158956== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158956== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158956== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158956== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158956== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158956== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== ==158956== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x533CFA5: __tsearch (tsearch.c:337) ==158956== by 0x533CFA5: tsearch (tsearch.c:290) ==158956== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158956== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158956== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== ==158956== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158956== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158956== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158956== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158956== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==158956== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== ==158956== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158956== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==158956== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== ==158956== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==158956== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==158956== by 0x51C2D03: Curl_open (url.c:520) ==158956== by 0x513D46F: curl_easy_init (easy.c:372) ==158956== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==158956== by 0x4003443: main (first.c:167) ==158956== ==158956== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x533CFA5: __tsearch (tsearch.c:337) ==158956== by 0x533CFA5: tsearch (tsearch.c:290) ==158956== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==158956== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158956== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158956== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158956== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158956== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== ==158956== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==158956== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==158956== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==158956== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==158956== by 0x524F3F0: add_alias (gconv_conf.c:178) ==158956== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==158956== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==158956== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==158956== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==158956== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==158956== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==158956== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==158956== by 0x525A142: setlocale (setlocale.c:337) ==158956== by 0x400336E: main (first.c:123) ==158956== === End of file valgrind1575 test 1591...[HTTP PUT with trailers at the end] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1591 ./libtest/libtests lib1591 http://127.0.0.1:45701/bzz/1591 log/23/stdout1591 2> log/23/stderr1591 1591: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 1591 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1591 ./libtest/libtests lib1591 http://127.0.0.1:45701/bzz/1591 log/23/stdout1591 2> log/23/stderr1591 === End of file commands.log === Start of file http_server.log 07:36:12.899395 ====> Client connect 07:36:12.899439 accept_connection 3 returned 4 07:36:12.899457 accept_connection 3 returned 0 07:36:12.899473 Read 93 bytes 07:36:12.899483 Process 93 bytes request 07:36:12.899497 Got request: GET /verifiedserver HTTP/1.1 07:36:12.899506 Are-we-friendly question received 07:36:12.899530 Wrote request (93 bytes) input to log/23/server.input 07:36:12.899546 Identifying ourselves as friends 07:36:12.899610 Response sent (56 bytes) and written to log/23/server.response 07:36:12.899620 special request received, no persistency 07:36:12.899629 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 1591 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file stderr1591 URL: http://127.0.0.1:45701/bzz/1591 === End of file stderr1591 === Start of file stdin-for-1591 more than one byte === End of file stdin-for-1591 === Start of file valgrind1591 ==159606== ==159606== Process terminating with default action of signal 4 (SIGILL) ==159606== Illegal opcode at address 0x51C2DB3 ==159606== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159606== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159606== by 0x51C2DB3: Curl_open (url.c:541) ==159606== by 0x513D46F: curl_easy_init (easy.c:372) ==159606== by 0x4031D8C: test_lib1591.lto_priv.0 (lib1591.c:89) ==159606== by 0x4003443: main (first.c:167) ==159606== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x533CFA5: __tsearch (tsearch.c:337) ==159606== by 0x533CFA5: tsearch (tsearch.c:290) ==159606== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159606== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159606== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159606== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159606== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159606== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== ==159606== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x533CFA5: __tsearch (tsearch.c:337) ==159606== by 0x533CFA5: tsearch (tsearch.c:290) ==159606== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159606== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159606== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== ==159606== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159606== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159606== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159606== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159606== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159606== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== ==159606== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159606== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159606== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== ==159606== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159606== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159606== by 0x51C2D03: Curl_open (url.c:520) ==159606== by 0x513D46F: curl_easy_init (easy.c:372) ==159606== by 0x4031D8C: test_lib1591.lto_priv.0 (lib1591.c:89) ==159606== by 0x4003443: main (first.c:167) ==159606== ==159606== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x533CFA5: __tsearch (tsearch.c:337) ==159606== by 0x533CFA5: tsearch (tsearch.c:290) ==159606== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159606== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159606== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159606== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159606== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159606== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== ==159606== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159606== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159606== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159606== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159606== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159606== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159606== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159606== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1579 ./libtest/libtests lib1576 http://127.0.0.1:34851/1579 1579 > log/10/stdout1579 2> log/10/stderr1579 by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159606== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159606== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159606== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159606== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159606== by 0x525A142: setlocale (setlocale.c:337) ==159606== by 0x400336E: main (first.c:123) ==159606== === End of file valgrind1591 test 1579...[CURLFOLLOW_OBEYCODE with custom PUT method, 303 => GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1579 ./libtest/libtests lib1576 http://127.0.0.1:34851/1579 1579 > log/10/stdout1579 2> log/10/stderr1579 1579: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 1579 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1579 ./libtest/libtests lib1576 http://127.0.0.1:34851/1579 1579 > log/10/stdout1579 2> log/10/stderr1579 === End of file commands.log === Start of file http_server.log 07:36:12.462694 ====> Client connect 07:36:12.462736 accept_connection 3 returned 4 07:36:12.462753 accept_connection 3 returned 0 07:36:12.462768 Read 93 bytes 07:36:12.462778 Process 93 bytes request 07:36:12.462790 Got request: GET /verifiedserver HTTP/1.1 07:36:12.462799 Are-we-friendly question received 07:36:12.462822 Wrote request (93 bytes) input to log/10/server.input 07:36:12.462836 Identifying ourselves as friends 07:36:12.462892 Response sent (56 bytes) and written to log/10/server.response 07:36:12.462901 special request received, no persistency 07:36:12.462910 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 1579 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file stderr1579 URL: http://127.0.0.1:34851/1579 === End of file stderr1579 === Start of file valgrind1579 ==159399== ==159399== Process terminating with default action of signal 4 (SIGILL) ==159399== Illegal opcode at address 0x51C2DB3 ==159399== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159399== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159399== by 0x51C2DB3: Curl_open (url.c:541) ==159399== by 0x513D46F: curl_easy_init (easy.c:372) ==159399== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159399== by 0x4003443: main (first.c:167) ==159399== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x533CFA5: __tsearch (tsearch.c:337) ==159399== by 0x533CFA5: tsearch (tsearch.c:290) ==159399== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159399== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159399== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159399== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159399== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159399== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== ==159399== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x533CFA5: __tsearch (tsearch.c:337) ==159399== by 0x533CFA5: tsearch (tsearch.c:290) ==159399== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159399== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159399== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== ==159399== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159399== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159399== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159399== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159399== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159399== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== ==159399== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159399== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159399== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== ==159399== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159399== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159399== by 0x51C2D03: Curl_open (url.c:520) ==159399== by 0x513D46F: curl_easy_init (easy.c:372) ==159399== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159399== by 0x4003443: main (first.c:167) ==159399== ==159399== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x533CFA5: __tsearch (tsearch.c:337) ==159399== by 0x533CFA5: tsearch (tsearch.c:290) ==159399== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159399== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159399== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159399== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159399== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159399== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1578 ./libtest/libtests lib1576 http://127.0.0.1:45261/1578 > log/8/stdout1578 2> log/8/stderr1578 692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== ==159399== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159399== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159399== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159399== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159399== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159399== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159399== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159399== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159399== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159399== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159399== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159399== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159399== by 0x525A142: setlocale (setlocale.c:337) ==159399== by 0x400336E: main (first.c:123) ==159399== === End of file valgrind1579 test 1578...[CURLFOLLOW_FIRSTONLY with custom PUT method, 302 => PUT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1578 ./libtest/libtests lib1576 http://127.0.0.1:45261/1578 > log/8/stdout1578 2> log/8/stderr1578 1578: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 1578 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1578 ./libtest/libtests lib1576 http://127.0.0.1:45261/1578 > log/8/stdout1578 2> log/8/stderr1578 === End of file commands.log === Start of file http_server.log 07:36:12.419375 ====> Client connect 07:36:12.419428 accept_connection 3 returned 4 07:36:12.419450 accept_connection 3 returned 0 07:36:12.419469 Read 93 bytes 07:36:12.419480 Process 93 bytes request 07:36:12.419495 Got request: GET /verifiedserver HTTP/1.1 07:36:12.419506 Are-we-friendly question received 07:36:12.419542 Wrote request (93 bytes) input to log/8/server.input 07:36:12.419563 Identifying ourselves as friends 07:36:12.419651 Response sent (56 bytes) and written to log/8/server.response 07:36:12.419667 special request received, no persistency 07:36:12.419677 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 1578 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file stderr1578 URL: http://127.0.0.1:45261/1578 === End of file stderr1578 === Start of file valgrind1578 ==159367== ==159367== Process terminating with default action of signal 4 (SIGILL) ==159367== Illegal opcode at address 0x51C2DB3 ==159367== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159367== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159367== by 0x51C2DB3: Curl_open (url.c:541) ==159367== by 0x513D46F: curl_easy_init (easy.c:372) ==159367== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159367== by 0x4003443: main (first.c:167) ==159367== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x533CFA5: __tsearch (tsearch.c:337) ==159367== by 0x533CFA5: tsearch (tsearch.c:290) ==159367== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159367== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159367== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159367== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159367== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159367== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== ==159367== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x533CFA5: __tsearch (tsearch.c:337) ==159367== by 0x533CFA5: tsearch (tsearch.c:290) ==159367== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159367== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159367== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== ==159367== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159367== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159367== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159367== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159367== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159367== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== ==159367== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159367== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159367== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== ==159367== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159367== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159367== by 0x51C2D03: Curl_open (url.c:520) ==159367== by 0x513D46F: curl_easy_init (easy.c:372) ==159367== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159367== by 0x4003443: main (first.c:167) ==159367== ==159367== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x533CFA5: __tsearch (tsearch.c:337) ==159367CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1601 ./unit/units unit1601 - > log/12/stdout1601 2> log/12/stderr1601 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1580 ./libtest/libtests lib1576 http://127.0.0.1:43423/1580 1578 > log/7/stdout1580 2> log/7/stderr1580 == by 0x533CFA5: tsearch (tsearch.c:290) ==159367== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159367== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159367== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159367== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159367== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159367== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== ==159367== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159367== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159367== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159367== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159367== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159367== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159367== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159367== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159367== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159367== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159367== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159367== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159367== by 0x525A142: setlocale (setlocale.c:337) ==159367== by 0x400336E: main (first.c:123) ==159367== === End of file valgrind1578 * starts no server test 1601...[MD5 unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1601 ./unit/units unit1601 - > log/12/stdout1601 2> log/12/stderr1601 units returned 132, when expecting 0 1601: exit FAILED == Contents of files in the log/12/ dir after test 1601 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1601 ./unit/units unit1601 - > log/12/stdout1601 2> log/12/stderr1601 === End of file commands.log === Start of file server.cmd Testnum 1601 === End of file server.cmd === Start of file stderr1601 URL: - === End of file stderr1601 === Start of file valgrind1601 ==160229== ==160229== Process terminating with default action of signal 4 (SIGILL) ==160229== Illegal opcode at address 0x400FAE8 ==160229== at 0x400FAE8: test_unit1601.lto_priv.0 (unit1601.c:42) ==160229== by 0x400A15E: main (first.c:167) ==160229== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x532FFA5: __tsearch (tsearch.c:337) ==160229== by 0x532FFA5: tsearch (tsearch.c:290) ==160229== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160229== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160229== by 0x52423F0: add_alias (gconv_conf.c:178) ==160229== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160229== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160229== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== ==160229== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x532FFA5: __tsearch (tsearch.c:337) ==160229== by 0x532FFA5: tsearch (tsearch.c:290) ==160229== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160229== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160229== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== ==160229== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160229== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160229== by 0x52423F0: add_alias (gconv_conf.c:178) ==160229== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160229== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160229== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== ==160229== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160229== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160229== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== ==160229== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x532FFA5: __tsearch (tsearch.c:337) ==160229== by 0x532FFA5: tsearch (tsearch.c:290) ==160229== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160229== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160229== by 0x52423F0: add_alias (gconv_conf.c:178) ==160229== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160229== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160229== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== ==160229== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==160229== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160229== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160229== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160229== by 0x52423F0: add_alias (gconv_conf.c:178) ==160229== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160229== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160229== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160229== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160229== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160229== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160229== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160229== by 0x524D142: setlocale (setlocale.c:337) ==160229== by 0x400A0CB: main (first.c:123) ==160229== === End of file valgrind1601 test 1580...[CURLFOLLOW_FIRSTONLY with custom PUT method, 308 => PUT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1580 ./libtest/libtests lib1576 http://127.0.0.1:43423/1580 1578 > log/7/stdout1580 2> log/7/stderr1580 1580: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1580 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1580 ./libtest/libtests lib1576 http://127.0.0.1:43423/1580 1578 > log/7/stdout1580 2> log/7/stderr1580 === End of file commands.log === Start of file http_server.log 07:36:12.532736 ====> Client connect 07:36:12.532792 accept_connection 3 returned 4 07:36:12.532816 accept_connection 3 returned 0 07:36:12.532834 Read 93 bytes 07:36:12.532846 Process 93 bytes request 07:36:12.532860 Got request: GET /verifiedserver HTTP/1.1 07:36:12.532870 Are-we-friendly question received 07:36:12.532899 Wrote request (93 bytes) input to log/7/server.input 07:36:12.532919 Identifying ourselves as friends 07:36:12.533012 Response sent (57 bytes) and written to log/7/server.response 07:36:12.533026 special request received, no persistency 07:36:12.533036 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1580 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr1580 URL: http://127.0.0.1:43423/1580 === End of file stderr1580 === Start of file valgrind1580 ==159429== ==159429== Process terminating with default action of signal 4 (SIGILL) ==159429== Illegal opcode at address 0x51C2DB3 ==159429== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159429== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159429== by 0x51C2DB3: Curl_open (url.c:541) ==159429== by 0x513D46F: curl_easy_init (easy.c:372) ==159429== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159429== by 0x4003443: main (first.c:167) ==159429== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x533CFA5: __tsearch (tsearch.c:337) ==159429== by 0x533CFA5: tsearch (tsearch.c:290) ==159429== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159429== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159429== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159429== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159429== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159429== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocale.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== ==159429== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x533CFA5: __tsearch (tsearch.c:337) ==159429== by 0x533CFA5: tsearch (tsearch.c:290) ==159429== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159429== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159429== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocale.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== ==159429== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159429== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159429== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159429== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159429== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159429== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocale.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== ==159429== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159429== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159429== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocale.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== ==159429== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159429== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159429== by 0x51C2D03: Curl_open (url.c:520) ==159429== by 0x513D46F: curl_easy_init (easy.c:372) ==159429== by 0x4031ACC: test_lib1576.lto_priv.0 (lib1576.c:61) ==159429== by 0x4003443: main (first.c:167) ==159429== ==159429== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x533CFA5: __tsearch (tsearch.c:337) ==159429== by 0x533CFA5: tsearch (tsearch.c:290) ==159429== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159429== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159429== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159429== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159429== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159429== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1600 ./unit/units unit1600 - > log/17/stdout1600 2> log/17/stderr1600 le.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== ==159429== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159429== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159429== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159429== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159429== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159429== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159429== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159429== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159429== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159429== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159429== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159429== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159429== by 0x525A142: setlocale (setlocale.c:337) ==159429== by 0x400336E: main (first.c:123) ==159429== === End of file valgrind1580 * starts no server test 1600...[NTLM unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1600 ./unit/units unit1600 - > log/17/stdout1600 2> log/17/stderr1600 units returned 132, when expecting 0 1600: exit FAILED == Contents of files in the log/17/ dir after test 1600 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1600 ./unit/units unit1600 - > log/17/stdout1600 2> log/17/stderr1600 === End of file commands.log === Start of file server.cmd Testnum 1600 === End of file server.cmd === Start of file stderr1600 URL: - === End of file stderr1600 === Start of file valgrind1600 ==160130== ==160130== Process terminating with default action of signal 4 (SIGILL) ==160130== Illegal opcode at address 0x40775D3 ==160130== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160130== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160130== by 0x40775D3: Curl_open (url.c:541) ==160130== by 0x403D525: curl_easy_init (easy.c:372) ==160130== by 0x400F68B: UnknownInlinedFun (unit1600.c:34) ==160130== by 0x400F68B: test_unit1600.lto_priv.0 (unit1600.c:52) ==160130== by 0x400A15E: main (first.c:167) ==160130== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x532FFA5: __tsearch (tsearch.c:337) ==160130== by 0x532FFA5: tsearch (tsearch.c:290) ==160130== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160130== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160130== by 0x52423F0: add_alias (gconv_conf.c:178) ==160130== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160130== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160130== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== ==160130== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x532FFA5: __tsearch (tsearch.c:337) ==160130== by 0x532FFA5: tsearch (tsearch.c:290) ==160130== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160130== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160130== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== ==160130== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160130== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160130== by 0x52423F0: add_alias (gconv_conf.c:178) ==160130== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160130== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160130== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== ==160130== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160130== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160130== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== ==160130== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160130== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160130== by 0x4077523: Curl_open (url.c:520) ==160130== by 0x403D525: curl_easy_init (easy.c:372) ==160130== by 0x400F68B: UnknownInlinedFun (unit1600.c:34) ==160130== by 0x400F68B: test_unit1600.lto_priv.0 (unit1600.c:52) ==160130== by 0x400A15E: main (first.c:167) ==160130== ==160130== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x532FFA5: __tsearch (tsearch.c:337) ==160130== by 0x532FFA5: tsearch (tsearch.c:290) ==160130== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160130== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160130== by 0x52423F0: add_alias (gconv_conf.c:178) ==160130== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160130== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160130== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== ==160130== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160130== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160130== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160130== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160130== by 0x52423F0: add_alias (gconv_conf.c:178) ==160130== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160130== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160130== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160130== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_onCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1592 ./libtest/libtests lib1592 http://a-site-never-accessed.example.org/1592 > log/18/stdout1592 2> log/18/stderr1592 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1581 ./libtest/libtests lib1571 http://127.0.0.1:45457/1581 > log/2/stdout1581 2> log/2/stderr1581 ce.c:116) ==160130== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160130== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160130== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160130== by 0x524D142: setlocale (setlocale.c:337) ==160130== by 0x400A0CB: main (first.c:123) ==160130== === End of file valgrind1600 * starts no server test 1592...[HTTP request, remove handle while resolving, don't block] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1592 ./libtest/libtests lib1592 http://a-site-never-accessed.example.org/1592 > log/18/stdout1592 2> log/18/stderr1592 libtests returned 132, when expecting 0 1592: exit FAILED == Contents of files in the log/18/ dir after test 1592 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1592 ./libtest/libtests lib1592 http://a-site-never-accessed.example.org/1592 > log/18/stdout1592 2> log/18/stderr1592 === End of file commands.log === Start of file server.cmd Testnum 1592 === End of file server.cmd === Start of file stderr1592 URL: http://a-site-never-accessed.example.org/1592 === End of file stderr1592 === Start of file valgrind1592 ==159653== ==159653== Process terminating with default action of signal 4 (SIGILL) ==159653== Illegal opcode at address 0x518AA97 ==159653== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==159653== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==159653== by 0x518AA97: Curl_multi_handle (multi.c:236) ==159653== by 0x402F77B: UnknownInlinedFun (lib1592.c:52) ==159653== by 0x402F77B: test_lib1592.lto_priv.0 (lib1592.c:41) ==159653== by 0x4003443: main (first.c:167) ==159653== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x533CFA5: __tsearch (tsearch.c:337) ==159653== by 0x533CFA5: tsearch (tsearch.c:290) ==159653== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159653== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159653== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159653== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159653== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159653== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== ==159653== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x533CFA5: __tsearch (tsearch.c:337) ==159653== by 0x533CFA5: tsearch (tsearch.c:290) ==159653== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159653== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159653== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== ==159653== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==159653== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159653== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==159653== by 0x402F77B: UnknownInlinedFun (lib1592.c:52) ==159653== by 0x402F77B: test_lib1592.lto_priv.0 (lib1592.c:41) ==159653== by 0x4003443: main (first.c:167) ==159653== ==159653== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159653== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159653== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159653== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159653== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159653== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== ==159653== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159653== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159653== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== ==159653== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x533CFA5: __tsearch (tsearch.c:337) ==159653== by 0x533CFA5: tsearch (tsearch.c:290) ==159653== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159653== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159653== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159653== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159653== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159653== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== ==159653== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159653== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159653== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159653== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159653== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159653== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159653== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159653== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159653== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159653== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159653== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159653== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159653== by 0x525A142: setlocale (setlocale.c:337) ==159653== by 0x400336E: main (first.c:123) ==159653== === End of file valgrind1592 test 1581...[CURLFOLLOW_OBEYCODE with custom POST301 method, 301 => custom] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1581 ./libtest/libtests lib1571 http://127.0.0.1:45457/1581 > log/2/stdout1581 2> log/2/stderr1581 1581: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1581 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1581 ./libtest/libtests lib1571 http://127.0.0.1:45457/1581 > log/2/stdout1581 2> log/2/stderr1581 === End of file commands.log === Start of file http_server.log 07:36:12.818914 ====> Client connect 07:36:12.818949 accept_connection 3 returned 4 07:36:12.818965 accept_connection 3 returned 0 07:36:12.826207 Read 93 bytes 07:36:12.826236 Process 93 bytes request 07:36:12.826253 Got request: GET /verifiedserver HTTP/1.1 07:36:12.826264 Are-we-friendly question received 07:36:12.826310 Wrote request (93 bytes) input to log/2/server.input 07:36:12.826337 Identifying ourselves as friends 07:36:12.826401 Response sent (56 bytes) and written to log/2/server.response 07:36:12.826415 special request received, no persistency 07:36:12.826425 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1581 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr1581 URL: http://127.0.0.1:45457/1581 === End of file stderr1581 === Start of file valgrind1581 ==159585== ==159585== Process terminating with default action of signal 4 (SIGILL) ==159585== Illegal opcode at address 0x51C2DB3 ==159585== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159585== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159585== by 0x51C2DB3: Curl_open (url.c:541) ==159585== by 0x513D46F: curl_easy_init (easy.c:372) ==159585== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==159585== by 0x4003443: main (first.c:167) ==159585== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x533CFA5: __tsearch (tsearch.c:337) ==159585== by 0x533CFA5: tsearch (tsearch.c:290) ==159585== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159585== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159585== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159585== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159585== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159585== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== ==159585== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x533CFA5: __tsearch (tsearch.c:337) ==159585== by 0x533CFA5: tsearch (tsearch.c:290) ==159585== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159585== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159585== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== ==159585== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159585== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159585== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159585== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159585== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159585== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== ==159585== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159585== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159585== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== ==159585== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159585== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159585== by 0x51C2D03: Curl_open (url.c:520) ==159585== by 0x513D46F: curl_easy_init (easy.c:372) ==159585== by 0x4030A8A: test_lib1571.lto_priv.0 (lib1571.c:38) ==159585== by 0x4003443: main (first.c:167) ==159585== ==159585== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x533CFA5: __tsearch (tsearch.c:337) ==159585== by 0x533CFA5: tsearch (tsearch.c:290) ==159585== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159585== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159585== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159585== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159585== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159585== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== ==159585== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159585== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159585== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159585== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159585== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159585== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159585== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159585== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1593 ./libtest/libtests lib1593 http://127.0.0.1:40341/1593 > log/11/stdout1593 2> log/11/stderr1593 ==159585== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159585== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159585== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159585== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159585== by 0x525A142: setlocale (setlocale.c:337) ==159585== by 0x400336E: main (first.c:123) ==159585== === End of file valgrind1581 test 1593...[HTTP custom header overrides CURLOPT_TIMECONDITION] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1593 ./libtest/libtests lib1593 http://127.0.0.1:40341/1593 > log/11/stdout1593 2> log/11/stderr1593 1593: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 1593 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1593 ./libtest/libtests lib1593 http://127.0.0.1:40341/1593 > log/11/stdout1593 2> log/11/stderr1593 === End of file commands.log === Start of file http_server.log 07:36:13.136215 ====> Client connect 07:36:13.136265 accept_connection 3 returned 4 07:36:13.136287 accept_connection 3 returned 0 07:36:13.136304 Read 93 bytes 07:36:13.136315 Process 93 bytes request 07:36:13.136336 Got request: GET /verifiedserver HTTP/1.1 07:36:13.136346 Are-we-friendly question received 07:36:13.136377 Wrote request (93 bytes) input to log/11/server.input 07:36:13.136400 Identifying ourselves as friends 07:36:13.136483 Response sent (57 bytes) and written to log/11/server.response 07:36:13.136503 special request received, no persistency 07:36:13.136513 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40341... * Connected to 127.0.0.1 (127.0.0.1) port 40341 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40341 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 156367 === End of file http_verify.out === Start of file server.cmd Testnum 1593 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156367 === End of file server.response === Start of file stderr1593 URL: http://127.0.0.1:40341/1593 === End of file stderr1593 === Start of file valgrind1593 ==159772== ==159772== Process terminating with default action of signal 4 (SIGILL) ==159772== Illegal opcode at address 0x51C2DB3 ==159772== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159772== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159772== by 0x51C2DB3: Curl_open (url.c:541) ==159772== by 0x513D46F: curl_easy_init (easy.c:372) ==159772== by 0x4034AB9: UnknownInlinedFun (lib1593.c:40) ==159772== by 0x4034AB9: test_lib1593.lto_priv.0 (lib1593.c:31) ==159772== by 0x4003443: main (first.c:167) ==159772== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x533CFA5: __tsearch (tsearch.c:337) ==159772== by 0x533CFA5: tsearch (tsearch.c:290) ==159772== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159772== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159772== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159772== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159772== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159772== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== ==159772== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x533CFA5: __tsearch (tsearch.c:337) ==159772== by 0x533CFA5: tsearch (tsearch.c:290) ==159772== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159772== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159772== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== ==159772== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159772== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159772== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159772== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159772== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159772== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== ==159772== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159772== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159772== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== ==159772== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159772== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159772== by 0x51C2D03: Curl_open (url.c:520) ==159772== by 0x513D46F: curl_easy_init (easy.c:372) ==159772== by 0x4034AB9: UnknownInlinedFun (lib1593.c:40) ==159772== by 0x4034AB9: test_lib1593.lto_priv.0 (lib1593.c:31) ==159772== by 0x4003443: main (first.c:167) ==159772== ==159772== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x533CFA5: __tsearch (tsearch.c:337) ==159772== by 0x533CFA5: tsearch (tsearch.c:290) ==159772== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159772== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159772== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159772== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159772== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159772== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==15CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1602 ./unit/units unit1602 - > log/6/stdout1602 2> log/6/stderr1602 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1594 ./libtest/libtests lib1594 http://127.0.0.1:46739/1594 > log/16/stdout1594 2> log/16/stderr1594 9772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== ==159772== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159772== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159772== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159772== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159772== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159772== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159772== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159772== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159772== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159772== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159772== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159772== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159772== by 0x525A142: setlocale (setlocale.c:337) ==159772== by 0x400336E: main (first.c:123) ==159772== === End of file valgrind1593 * starts no server test 1602...[Internal hash create/add/destroy testing, exercising clean functions] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1602 ./unit/units unit1602 - > log/6/stdout1602 2> log/6/stderr1602 -------e-v- OK (1492 out of 1707, remaining: 00:12, took 1.271s, duration: 01:26) CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1604 ./tunit/tunits tool1604 - > log/20/stdout1604 2> log/20/stderr1604 test 1594...[HTTP Retry-After header parsing and extraction] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1594 ./libtest/libtests lib1594 http://127.0.0.1:46739/1594 > log/16/stdout1594 2> log/16/stderr1594 1594: stdout FAILED: --- log/16/check-expected 2025-07-18 07:36:15.643779914 +0000 +++ log/16/check-generated 2025-07-18 07:36:15.643779914 +0000 @@ -1 +0,0 @@ -Retry-After 22[LF] == Contents of files in the log/16/ dir after test 1594 === Start of file check-expected Retry-After 22[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1594 ./libtest/libtests lib1594 http://127.0.0.1:46739/1594 > log/16/stdout1594 2> log/16/stderr1594 === End of file commands.log === Start of file http_server.log 07:36:13.308168 ====> Client connect 07:36:13.308209 accept_connection 3 returned 4 07:36:13.308233 accept_connection 3 returned 0 07:36:13.308250 Read 93 bytes 07:36:13.308261 Process 93 bytes request 07:36:13.308274 Got request: GET /verifiedserver HTTP/1.1 07:36:13.308285 Are-we-friendly question received 07:36:13.308327 Wrote request (93 bytes) input to log/16/server.input 07:36:13.308346 Identifying ourselves as friends 07:36:13.308413 Response sent (56 bytes) and written to log/16/server.response 07:36:13.308426 special request received, no persistency 07:36:13.308436 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1594 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr1594 URL: http://127.0.0.1:46739/1594 === End of file stderr1594 === Start of file valgrind1594 ==159873== ==159873== Process terminating with default action of signal 4 (SIGILL) ==159873== Illegal opcode at address 0x51C2DB3 ==159873== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159873== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159873== by 0x51C2DB3: Curl_open (url.c:541) ==159873== by 0x513D46F: curl_easy_init (easy.c:372) ==159873== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159873== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159873== by 0x4003443: main (first.c:167) ==159873== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x533CFA5: __tsearch (tsearch.c:337) ==159873== by 0x533CFA5: tsearch (tsearch.c:290) ==159873== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159873== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159873== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159873== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159873== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159873== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== ==159873== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x533CFA5: __tsearch (tsearch.c:337) ==159873== by 0x533CFA5: tsearch (tsearch.c:290) ==159873== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159873== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159873== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== ==159873== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159873== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159873== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159873== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159873== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159873== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== ==159873== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159873== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159873== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== ==159873== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159873== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159873== by 0x51C2D03: Curl_open (url.c:520) ==159873== by 0x513D46F: curl_easy_init (easy.c:372) ==159873== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159873== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159873== by 0x4003443: main (first.c:167) ==159873== ==159873== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x533CFA5: __tsearch (tsearch.c:337) ==159873== by 0x533CFA5: tsearch (tsearch.c:290) ==159873== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159873== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159873== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159873== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159873== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159873== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== ==159873== 18,800 bytes in 486 blocks are possibly lost in losCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1596 ./libtest/libtests lib1594 http://127.0.0.1:37963/1596 > log/14/stdout1596 2> log/14/stderr1596 s record 653 of 655 ==159873== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159873== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159873== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159873== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159873== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159873== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159873== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159873== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159873== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159873== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159873== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159873== by 0x525A142: setlocale (setlocale.c:337) ==159873== by 0x400336E: main (first.c:123) ==159873== === End of file valgrind1594 * starts no server test 1604...[Test Windows/MS-DOS filename sanitization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1604 ./tunit/tunits tool1604 - > log/20/stdout1604 2> log/20/stderr1604 -------e-v- OK (1494 out of 1707, remaining: 00:12, took 1.427s, duration: 01:26) test 1596...[HTTP Retry-After header parsing using a date] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1596 ./libtest/libtests lib1594 http://127.0.0.1:37963/1596 > log/14/stdout1596 2> log/14/stderr1596 1596: stdout FAILED: --- log/14/check-expected 2025-07-18 07:36:15.667113246 +0000 +++ log/14/check-generated 2025-07-18 07:36:15.667113246 +0000 @@ -1 +0,0 @@ -Retry-After 21600[LF] == Contents of files in the log/14/ dir after test 1596 === Start of file check-expected Retry-After 21600[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1596 ./libtest/libtests lib1594 http://127.0.0.1:37963/1596 > log/14/stdout1596 2> log/14/stderr1596 === End of file commands.log === Start of file http_server.log 07:36:13.486046 ====> Client connect 07:36:13.486096 accept_connection 3 returned 4 07:36:13.486115 accept_connection 3 returned 0 07:36:13.486132 Read 93 bytes 07:36:13.486142 Process 93 bytes request 07:36:13.486156 Got request: GET /verifiedserver HTTP/1.1 07:36:13.486165 Are-we-friendly question received 07:36:13.486189 Wrote request (93 bytes) input to log/14/server.input 07:36:13.486206 Identifying ourselves as friends 07:36:13.486281 Response sent (56 bytes) and written to log/14/server.response 07:36:13.486291 special request received, no persistency 07:36:13.486300 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1596 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file stderr1596 URL: http://127.0.0.1:37963/1596 === End of file stderr1596 === Start of file valgrind1596 ==159977== ==159977== Process terminating with default action of signal 4 (SIGILL) ==159977== Illegal opcode at address 0x51C2DB3 ==159977== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159977== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159977== by 0x51C2DB3: Curl_open (url.c:541) ==159977== by 0x513D46F: curl_easy_init (easy.c:372) ==159977== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159977== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159977== by 0x4003443: main (first.c:167) ==159977== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x533CFA5: __tsearch (tsearch.c:337) ==159977== by 0x533CFA5: tsearch (tsearch.c:290) ==159977== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159977== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159977== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159977== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159977== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159977== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== ==159977== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x533CFA5: __tsearch (tsearch.c:337) ==159977== by 0x533CFA5: tsearch (tsearch.c:290) ==159977== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159977== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159977== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== ==159977== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159977== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159977== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159977== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159977== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159977== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== ==159977== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159977== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159977== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== ==159977== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159977== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159977== by 0x51C2D03: Curl_open (url.c:520) ==159977== by 0x513D46F: curl_easy_init (easy.c:372) ==159977== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159977== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159977== by 0x4003443: main (first.c:167) ==159977== ==159977== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x533CFA5: __tsearch (tsearch.c:337) ==159977== by 0x533CFA5: tsearch (tsearch.c:290) ==159977== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159977== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159977== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159977== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159977== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159977== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== ==159977== 18,800 bytes in 486 blocks are possibly lost inCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1605 ./unit/units unit1605 - > log/13/stdout1605 2> log/13/stderr1605 loss record 653 of 655 ==159977== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159977== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159977== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159977== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159977== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159977== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159977== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159977== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159977== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159977== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159977== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159977== by 0x525A142: setlocale (setlocale.c:337) ==159977== by 0x400336E: main (first.c:123) ==159977== === End of file valgrind1596 * starts no server test 1605...[Test negative data lengths as input to libcurl functions] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1605 ./unit/units unit1605 - > log/13/stdout1605 2> log/13/stderr1605 units returned 132, when expecting 0 1605: exit FAILED == Contents of files in the log/13/ dir after test 1605 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1605 ./unit/units unit1605 - > log/13/stdout1605 2> log/13/stderr1605 === End of file commands.log === Start of file server.cmd Testnum 1605 === End of file server.cmd === Start of file stderr1605 URL: - === End of file stderr1605 === Start of file valgrind1605 ==160379== ==160379== Process terminating with default action of signal 4 (SIGILL) ==160379== Illegal opcode at address 0x40775D3 ==160379== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160379== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160379== by 0x40775D3: Curl_open (url.c:541) ==160379== by 0x403D525: curl_easy_init (easy.c:372) ==160379== by 0x40111E7: UnknownInlinedFun (unit1605.c:33) ==160379== by 0x40111E7: test_unit1605.lto_priv.0 (unit1605.c:51) ==160379== by 0x400A15E: main (first.c:167) ==160379== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x532FFA5: __tsearch (tsearch.c:337) ==160379== by 0x532FFA5: tsearch (tsearch.c:290) ==160379== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160379== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160379== by 0x52423F0: add_alias (gconv_conf.c:178) ==160379== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160379== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160379== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== ==160379== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x532FFA5: __tsearch (tsearch.c:337) ==160379== by 0x532FFA5: tsearch (tsearch.c:290) ==160379== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160379== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160379== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== ==160379== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160379== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160379== by 0x52423F0: add_alias (gconv_conf.c:178) ==160379== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160379== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160379== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== ==160379== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160379== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160379== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== ==160379== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160379== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160379== by 0x4077523: Curl_open (url.c:520) ==160379== by 0x403D525: curl_easy_init (easy.c:372) ==160379== by 0x40111E7: UnknownInlinedFun (unit1605.c:33) ==160379== by 0x40111E7: test_unit1605.lto_priv.0 (unit1605.c:51) ==160379== by 0x400A15E: main (first.c:167) ==160379== ==160379== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x532FFA5: __tsearch (tsearch.c:337) ==160379== by 0x532FFA5: tsearch (tsearch.c:290) ==160379== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160379== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160379== by 0x52423F0: add_alias (gconv_conf.c:178) ==160379== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160379== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160379== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== ==160379== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160379== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160379== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160379== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160379== by 0x52423F0: add_alias (gconv_conf.c:178) ==160379== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160379== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160379== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160379== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160379== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1590 ./libtest/libtests lib1553 imap://localhost:37763/1590 > log/3/stdout1590 2> log/3/stderr1590 60379== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160379== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160379== by 0x524D142: setlocale (setlocale.c:337) ==160379== by 0x400A0CB: main (first.c:123) ==160379== === End of file valgrind1605 test 1590...[IMAP cleanup before a connection was created] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1590 ./libtest/libtests lib1553 imap://localhost:37763/1590 > log/3/stdout1590 2> log/3/stderr1590 libtests returned 132, when expecting 0 1590: exit FAILED == Contents of files in the log/3/ dir after test 1590 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1590 ./libtest/libtests lib1553 imap://localhost:37763/1590 > log/3/stdout1590 2> log/3/stderr1590 === End of file commands.log === Start of file imap_server.log 07:36:13.080034 ====> Client connect 07:36:13.080236 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:13.084051 < "A001 CAPABILITY" 07:36:13.084114 > "A001 BAD Command[CR][LF]" 07:36:13.084328 < "A002 LIST "verifiedserver" *" 07:36:13.084364 LIST_imap got "verifiedserver" * 07:36:13.084395 > "* LIST () "/" "WE ROOLZ: 115379"[CR][LF]" 07:36:13.084416 > "A002 OK LIST Completed[CR][LF]" 07:36:13.084429 return proof we are we 07:36:13.127361 < "A003 LOGOUT" 07:36:13.127420 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:13.127438 > "A003 OK LOGOUT completed[CR][LF]" 07:36:13.128884 MAIN sockfilt said DISC 07:36:13.128929 ====> Client disconnected 07:36:13.129000 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:12.922670 ====> Client connect 07:36:12.926243 Received DATA (on stdin) 07:36:12.926266 > 178 bytes data, server => client 07:36:12.926280 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:12.926292 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:12.926302 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:12.926312 'rve\r\n' 07:36:12.929422 < 17 bytes data, client => server 07:36:12.929459 'A001 CAPABILITY\r\n' 07:36:12.930109 Received DATA (on stdin) 07:36:12.930125 > 18 bytes data, server => client 07:36:12.930137 'A001 BAD Command\r\n' 07:36:12.930208 < 30 bytes data, client => server 07:36:12.930225 'A002 LIST "verifiedserver" *\r\n' 07:36:12.930415 Received DATA (on stdin) 07:36:12.930429 > 34 bytes data, server => client 07:36:12.930441 '* LIST () "/" "WE ROOLZ: 115379"\r\n' 07:36:12.930465 Received DATA (on stdin) 07:36:12.930475 > 24 bytes data, server => client 07:36:12.930486 'A002 OK LIST Completed\r\n' 07:36:12.973108 < 13 bytes data, client => server 07:36:12.973150 'A003 LOGOUT\r\n' 07:36:12.973423 Received DATA (on stdin) 07:36:12.973435 > 36 bytes data, server => client 07:36:12.973446 '* BYE curl IMAP server signing off\r\n' 07:36:12.973467 Received DATA (on stdin) 07:36:12.973476 > 26 bytes data, server => client 07:36:12.973485 'A003 OK LOGOUT completed\r\n' 07:36:12.974390 ====> Client disconnect 07:36:12.974984 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 1590 === End of file server.cmd === Start of file stderr1590 URL: imap://localhost:37763/1590 === End of file stderr1590 === Start of file valgrind1590 ==159685== ==159685== Process terminating with default action of signal 4 (SIGILL) ==159685== Illegal opcode at address 0x518AA97 ==159685== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==159685== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==159685== by 0x518AA97: Curl_multi_handle (multi.c:236) ==159685== by 0x402BE24: UnknownInlinedFun (lib1553.c:57) ==159685== by 0x402BE24: test_lib1553.lto_priv.0 (lib1553.c:42) ==159685== by 0x4003443: main (first.c:167) ==159685== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x533CFA5: __tsearch (tsearch.c:337) ==159685== by 0x533CFA5: tsearch (tsearch.c:290) ==159685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159685== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159685== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x400336E: main (first.c:123) ==159685== ==159685== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x533CFA5: __tsearch (tsearch.c:337) ==159685== by 0x533CFA5: tsearch (tsearch.c:290) ==159685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159685== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159685== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x400336E: main (first.c:123) ==159685== ==159685== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==159685== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159685== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==159685== by 0x402BE24: UnknownInlinedFun (lib1553.c:57) ==159685== by 0x402BE24: test_lib1553.lto_priv.0 (lib1553.c:42) ==159685== by 0x4003443: main (first.c:167) ==159685== ==159685== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159685== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159685== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x400336E: main (first.c:123) ==159685== ==159685== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159685== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159685== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x40CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1598 ./libtest/libtests lib1598 http://127.0.0.1:34881/bzz/1598 log/15/stdout1598 2> log/15/stderr1598 0336E: main (first.c:123) ==159685== ==159685== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x533CFA5: __tsearch (tsearch.c:337) ==159685== by 0x533CFA5: tsearch (tsearch.c:290) ==159685== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159685== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159685== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x400336E: main (first.c:123) ==159685== ==159685== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159685== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159685== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159685== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159685== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159685== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159685== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159685== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159685== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159685== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159685== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159685== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159685== by 0x525A142: setlocale (setlocale.c:337) ==159685== by 0x400336E: main (first.c:123) ==159685== === End of file valgrind1590 test 1598...[HTTP POST with trailers at the end] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1598 ./libtest/libtests lib1598 http://127.0.0.1:34881/bzz/1598 log/15/stdout1598 2> log/15/stderr1598 1598: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1598 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1598 ./libtest/libtests lib1598 http://127.0.0.1:34881/bzz/1598 log/15/stdout1598 2> log/15/stderr1598 === End of file commands.log === Start of file http_server.log 07:36:13.639416 ====> Client connect 07:36:13.639461 accept_connection 3 returned 4 07:36:13.639479 accept_connection 3 returned 0 07:36:13.639665 Read 93 bytes 07:36:13.639676 Process 93 bytes request 07:36:13.639691 Got request: GET /verifiedserver HTTP/1.1 07:36:13.639699 Are-we-friendly question received 07:36:13.639722 Wrote request (93 bytes) input to log/15/server.input 07:36:13.639741 Identifying ourselves as friends 07:36:13.639789 Response sent (57 bytes) and written to log/15/server.response 07:36:13.639801 special request received, no persistency 07:36:13.639809 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34881... * Connected to 127.0.0.1 (127.0.0.1) port 34881 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34881 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 157411 === End of file http_verify.out === Start of file server.cmd Testnum 1598 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 157411 === End of file server.response === Start of file stderr1598 URL: http://127.0.0.1:34881/bzz/1598 === End of file stderr1598 === Start of file stdin-for-1598 more than one byte === End of file stdin-for-1598 === Start of file valgrind1598 ==160110== ==160110== Process terminating with default action of signal 4 (SIGILL) ==160110== Illegal opcode at address 0x51C2DB3 ==160110== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==160110== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==160110== by 0x51C2DB3: Curl_open (url.c:541) ==160110== by 0x513D46F: curl_easy_init (easy.c:372) ==160110== by 0x4031FB0: test_lib1598.lto_priv.0 (lib1598.c:69) ==160110== by 0x4003443: main (first.c:167) ==160110== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x533CFA5: __tsearch (tsearch.c:337) ==160110== by 0x533CFA5: tsearch (tsearch.c:290) ==160110== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160110== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160110== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160110== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160110== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160110== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== ==160110== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x533CFA5: __tsearch (tsearch.c:337) ==160110== by 0x533CFA5: tsearch (tsearch.c:290) ==160110== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160110== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==160110== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== ==160110== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160110== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160110== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160110== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160110== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160110== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== ==160110== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160110== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==160110== byCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1603 ./unit/units unit1603 - > log/5/stdout1603 2> log/5/stderr1603 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1597 ./libtest/libtests lib1597 - > log/1/stdout1597 2> log/1/stderr1597 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== ==160110== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160110== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==160110== by 0x51C2D03: Curl_open (url.c:520) ==160110== by 0x513D46F: curl_easy_init (easy.c:372) ==160110== by 0x4031FB0: test_lib1598.lto_priv.0 (lib1598.c:69) ==160110== by 0x4003443: main (first.c:167) ==160110== ==160110== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x533CFA5: __tsearch (tsearch.c:337) ==160110== by 0x533CFA5: tsearch (tsearch.c:290) ==160110== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160110== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160110== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160110== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160110== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160110== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== ==160110== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160110== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160110== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160110== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160110== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160110== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160110== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160110== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==160110== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160110== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160110== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160110== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160110== by 0x525A142: setlocale (setlocale.c:337) ==160110== by 0x400336E: main (first.c:123) ==160110== === End of file valgrind1598 * starts no server test 1603...[Internal hash add, retrieval, deletion testing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1603 ./unit/units unit1603 - > log/5/stdout1603 2> log/5/stderr1603 -------e-v- OK (1493 out of 1707, remaining: 00:12, took 1.671s, duration: 01:27) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1599 ./libtest/libtests lib1599 ftp://127.0.0.1:37869/1599 log/4/netrc1599 > log/4/stdout1599 2> log/4/stderr1599 * starts no server test 1597...[CURLOPT_PROTOCOLS_STR] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1597 ./libtest/libtests lib1597 - > log/1/stdout1597 2> log/1/stderr1597 1597: stdout FAILED: --- log/1/check-expected 2025-07-18 07:36:15.973779920 +0000 +++ log/1/check-generated 2025-07-18 07:36:15.973779920 +0000 @@ -1 +0,0 @@ -Tested 15 strings[LF] == Contents of files in the log/1/ dir after test 1597 === Start of file check-expected Tested 15 strings[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1597 ./libtest/libtests lib1597 - > log/1/stdout1597 2> log/1/stderr1597 === End of file commands.log === Start of file server.cmd Testnum 1597 === End of file server.cmd === Start of file stderr1597 URL: - === End of file stderr1597 === Start of file valgrind1597 ==159924== ==159924== Process terminating with default action of signal 4 (SIGILL) ==159924== Illegal opcode at address 0x51C2DB3 ==159924== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159924== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159924== by 0x51C2DB3: Curl_open (url.c:541) ==159924== by 0x513D46F: curl_easy_init (easy.c:372) ==159924== by 0x4035E2D: UnknownInlinedFun (lib1597.c:73) ==159924== by 0x4035E2D: test_lib1597.lto_priv.0 (lib1597.c:36) ==159924== by 0x4003443: main (first.c:167) ==159924== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x533CFA5: __tsearch (tsearch.c:337) ==159924== by 0x533CFA5: tsearch (tsearch.c:290) ==159924== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159924== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159924== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159924== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159924== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159924== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== ==159924== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x533CFA5: __tsearch (tsearch.c:337) ==159924== by 0x533CFA5: tsearch (tsearch.c:290) ==159924== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159924== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159924== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== ==159924== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159924== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159924== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159924== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159924== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159924== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== ==159924== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159924== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159924== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== ==159924== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159924== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159924== by 0x51C2D03: Curl_open (url.c:520) ==159924== by 0x513D46F: curl_easy_init (easy.c:372) ==159924== by 0x4035E2D: UnknownInlinedFun (lib1597.c:73) ==159924== by 0x4035E2D: test_lib1597.lto_priv.0 (lib1597.c:36) ==159924== by 0x4003443: main (first.c:167) ==159924== ==159924== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x533CFA5: __tsearch (tsearch.c:337) ==159924== by 0x533CFA5: tsearch (tsearch.c:290) ==159924== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159924== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159924== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159924== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159924== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159924== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== ==159924== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159924== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159924== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159924== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159924== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159924== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159924== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159924== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159924== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159924== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159924== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159924== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159924== by 0x525A142: setlocale (setlocale.c:337) ==159924== by 0x400336E: main (first.c:123) ==159924== === End of file valgrind1597 test 1599...[FTP with netrc using no user but control code in password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1599 ./libtest/libtests lib1599 ftp://127.0.0.1:37869/1599 log/4/netrc1599 > log/4/stdout1599 2> log/4/stderr1599 1599: data FAILED: --- log/4/check-expected 2025-07-18 07:36:16.043779923 +0000 +++ log/4/check-generated 2025-07-18 07:36:16.043779923 +0000 @@ -1 +0,0 @@ --foo-[LF] == Contents of files in the log/4/ dir after test 1599 === Start of file check-expected -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1599 ./libtest/libtests lib1599 ftp://127.0.0.1:37869/1599 log/4/netrc1599 > log/4/stdout1599 2> log/4/stderr1599 === End of file commands.log === Start of file ftp_server.log 07:36:13.772540 ====> Client connect 07:36:13.772731 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:13.773035 < "USER anonymous" 07:36:13.773071 > "331 We are happy you popped in![CR][LF]" 07:36:13.773242 < "PASS ftp@example.com" 07:36:13.773269 > "230 Welcome you silly person[CR][LF]" 07:36:13.774728 < "PWD" 07:36:13.774760 > "257 "/" is current directory[CR][LF]" 07:36:13.774933 < "EPSV" 07:36:13.774958 ====> Passive DATA channel requested by client 07:36:13.774973 DATA sockfilt for passive data channel starting... 07:36:13.796768 DATA sockfilt for passive data channel started (pid 160088) 07:36:13.796928 DATA sockfilt for passive data channel listens on port 37629 07:36:13.796972 > "229 Entering Passive Mode (|||37629|)[LF]" 07:36:13.796987 Client has been notified that DATA conn will be accepted on port 37629 07:36:13.804518 Client connects to port 37629 07:36:13.804587 ====> Client established passive DATA connection on port 37629 07:36:13.806846 < "TYPE I" 07:36:13.806891 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:13.807073 < "SIZE verifiedserver" 07:36:13.807110 > "213 17[CR][LF]" 07:36:13.807253 < "RETR verifiedserver" 07:36:13.807284 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:13.807370 =====> Closing passive DATA connection... 07:36:13.807384 Server disconnects passive DATA connection 07:36:13.807503 Server disconnected passive DATA connection 07:36:13.807519 DATA sockfilt for passive data channel quits (pid 160088) 07:36:13.807795 DATA sockfilt for passive data channel quit (pid 160088) 07:36:13.807814 =====> Closed passive DATA connection 07:36:13.807838 > "226 File transfer complete[CR][LF]" 07:36:13.860250 < "QUIT" 07:36:13.860311 > "221 bye bye baby[CR][LF]" 07:36:13.861817 MAIN sockfilt said DISC 07:36:13.861854 ====> Client disconnected 07:36:13.861933 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:13.618391 ====> Client connect 07:36:13.618731 Received DATA (on stdin) 07:36:13.618748 > 160 bytes data, server => client 07:36:13.618761 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:13.618772 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:13.618782 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:13.618860 < 16 bytes data, client => server 07:36:13.618876 'USER anonymous\r\n' 07:36:13.619058 Received DATA (on stdin) 07:36:13.619071 > 33 bytes data, server => client 07:36:13.619082 '331 We are happy you popped in!\r\n' 07:36:13.619133 < 22 bytes data, client => server 07:36:13.619148 'PASS ftp@example.com\r\n' 07:36:13.619253 Received DATA (on stdin) 07:36:13.619266 > 30 bytes data, server => client 07:36:13.619276 '230 Welcome you silly person\r\n' 07:36:13.620610 < 5 bytes data, client => server 07:36:13.620631 'PWD\r\n' 07:36:13.620745 Received DATA (on stdin) 07:36:13.620758 > 30 bytes data, server => client 07:36:13.620769 '257 "/" is current directory\r\n' 07:36:13.620829 < 6 bytes data, client => server 07:36:13.620843 'EPSV\r\n' 07:36:13.642977 Received DATA (on stdin) 07:36:13.642995 > 38 bytes data, server => client 07:36:13.643004 '229 Entering Passive Mode (|||37629|)\n' 07:36:13.652659 < 8 bytes data, client => server 07:36:13.652683 'TYPE I\r\n' 07:36:13.652877 Received DATA (on stdin) 07:36:13.652893 > 33 bytes data, server => client 07:36:13.652904 '200 I modify TYPE as you wanted\r\n' 07:36:13.652966 < 21 bytes data, client => server 07:36:13.652982 'SIZE verifiedserver\r\n' 07:36:13.653095 Received DATA (on stdin) 07:36:13.653107 > 8 bytes data, server => client 07:36:13.653117 '213 17\r\n' 07:36:13.653162 < 21 bytes data, client => server 07:36:13.653173 'RETR verifiedserver\r\n' 07:36:13.653819 Received DATA (on stdin) 07:36:13.653831 > 29 bytes data, server => client 07:36:13.653841 '150 Binary junk (17 bytes).\r\n' 07:36:13.653862 Received DATA (on stdin) 07:36:13.653871 > 28 bytes data, server => client 07:36:13.653880 '226 File transfer complete\r\n' 07:36:13.706011 < 6 bytes data, client => server 07:36:13.706054 'QUIT\r\n' 07:36:13.706297 Received DATA (on stdin) 07:36:13.706307 > 18 bytes data, server => client 07:36:13.706316 '221 bye bye baby\r\n' 07:36:13.707340 ====> Client disconnect 07:36:13.707916 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:13.633639 Running IPv4 version 07:36:13.633739 Listening on port 37629 07:36:13.633779 Wrote pid 160088 to log/4/server/ftp_sockdata.pid 07:36:13.642652 Received PING (on stdin) 07:36:13.642809 Received PORT (on stdin) 07:36:13.650417 ====> Client connect 07:36:13.653371 Received DATA (on stdin) 07:36:13.653388 > 17 bytes data, server => client 07:36:13.653398 'WE ROOLZ: 79844\r\n' 07:36:13.653425 Received DISC (on stdin) 07:36:13.653437 ====> Client forcibly disconnected 07:36:13.653508 Received QUIT (on stdin) 07:36:13.653518 quits 07:36:13.653591 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc1599 default passwor?dlogin anonymou\ ' password login anonymous passwor?d.'macdef === End of file netrc1599 === Start of file server.cmd Testnum 1599 === End of file server.cmd === Start of file stderr1599 URL: ftp://127.0.0.1:37869/1599 === End of file stderr1599 === Start of file valgrind1599 ==160179== ==160179== Process terminating with default action of signal 4 (SIGILL) ==160179== Illegal opcode at address 0x51C2DB3 ==160179== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==160179== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==160179== by 0x51C2DB3: Curl_open (url.c:541) ==160179== by 0x513D46F: curl_easy_init (easy.c:372) ==160179== by 0x4030C6E: UnknownInlinedFun (lib1599.c:32) ==160179== by 0x4030C6E: test_lib1599.lto_priv.0 (lib1599.c:26) ==160179== by 0x4003443: main (first.c:167) ==160179== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x533CFA5: __tsearch (tsearch.c:337) ==160179== by 0x533CFA5: tsearch (tsearch.c:290) ==160179== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160179== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160179== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160179== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160179== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160179== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== ==1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1595 ./libtest/libtests lib1594 http://127.0.0.1:34999/1595 > log/9/stdout1595 2> log/9/stderr1595 60179== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x533CFA5: __tsearch (tsearch.c:337) ==160179== by 0x533CFA5: tsearch (tsearch.c:290) ==160179== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160179== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==160179== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== ==160179== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160179== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160179== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160179== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160179== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160179== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== ==160179== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160179== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==160179== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== ==160179== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160179== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==160179== by 0x51C2D03: Curl_open (url.c:520) ==160179== by 0x513D46F: curl_easy_init (easy.c:372) ==160179== by 0x4030C6E: UnknownInlinedFun (lib1599.c:32) ==160179== by 0x4030C6E: test_lib1599.lto_priv.0 (lib1599.c:26) ==160179== by 0x4003443: main (first.c:167) ==160179== ==160179== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x533CFA5: __tsearch (tsearch.c:337) ==160179== by 0x533CFA5: tsearch (tsearch.c:290) ==160179== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==160179== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160179== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160179== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160179== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160179== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== ==160179== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160179== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==160179== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==160179== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==160179== by 0x524F3F0: add_alias (gconv_conf.c:178) ==160179== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160179== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160179== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==160179== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160179== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160179== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==160179== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==160179== by 0x525A142: setlocale (setlocale.c:337) ==160179== by 0x400336E: main (first.c:123) ==160179== === End of file valgrind1599 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1612 ./unit/units unit1612 - > log/8/stdout1612 2> log/8/stderr1612 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1606 ./unit/units unit1606 - > log/24/stdout1606 2> log/24/stderr1606 test 1595...[HTTP Retry-After header extraction (without header)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1595 ./libtest/libtests lib1594 http://127.0.0.1:34999/1595 > log/9/stdout1595 2> log/9/stderr1595 1595: stdout FAILED: --- log/9/check-expected 2025-07-18 07:36:16.100446591 +0000 +++ log/9/check-generated 2025-07-18 07:36:16.100446591 +0000 @@ -1 +0,0 @@ -Retry-After 0[LF] == Contents of files in the log/9/ dir after test 1595 === Start of file check-expected Retry-After 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1595 ./libtest/libtests lib1594 http://127.0.0.1:34999/1595 > log/9/stdout1595 2> log/9/stderr1595 === End of file commands.log === Start of file http_server.log 07:36:13.429600 ====> Client connect 07:36:13.429648 accept_connection 3 returned 4 07:36:13.432662 accept_connection 3 returned 0 07:36:13.432692 Read 93 bytes 07:36:13.432703 Process 93 bytes request 07:36:13.432718 Got request: GET /verifiedserver HTTP/1.1 07:36:13.432728 Are-we-friendly question received 07:36:13.433789 Wrote request (93 bytes) input to log/9/server.input 07:36:13.433832 Identifying ourselves as friends 07:36:13.433924 Response sent (56 bytes) and written to log/9/server.response 07:36:13.433934 special request received, no persistency 07:36:13.433942 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1595 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr1595 URL: http://127.0.0.1:34999/1595 === End of file stderr1595 === Start of file valgrind1595 ==159927== ==159927== Process terminating with default action of signal 4 (SIGILL) ==159927== Illegal opcode at address 0x51C2DB3 ==159927== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==159927== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==159927== by 0x51C2DB3: Curl_open (url.c:541) ==159927== by 0x513D46F: curl_easy_init (easy.c:372) ==159927== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159927== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159927== by 0x4003443: main (first.c:167) ==159927== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x533CFA5: __tsearch (tsearch.c:337) ==159927== by 0x533CFA5: tsearch (tsearch.c:290) ==159927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159927== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159927== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== ==159927== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x533CFA5: __tsearch (tsearch.c:337) ==159927== by 0x533CFA5: tsearch (tsearch.c:290) ==159927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159927== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159927== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== ==159927== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159927== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==159927== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== ==159927== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159927== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==159927== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== ==159927== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==159927== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==159927== by 0x51C2D03: Curl_open (url.c:520) ==159927== by 0x513D46F: curl_easy_init (easy.c:372) ==159927== by 0x4034E99: UnknownInlinedFun (lib1594.c:40) ==159927== by 0x4034E99: test_lib1594.lto_priv.0 (lib1594.c:31) ==159927== by 0x4003443: main (first.c:167) ==159927== ==159927== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x533CFA5: __tsearch (tsearch.c:337) ==159927== by 0x533CFA5: tsearch (tsearch.c:290) ==159927== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==159927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159927== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159927== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== ==159927== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==159927== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==159927== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==159927== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==159927== by 0x524F3F0: add_alias (gconv_conf.c:178) ==159927== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==159927== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==159927== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==159927== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==159927== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==159927== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==159927== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==159927== by 0x525A142: setlocale (setlocale.c:337) ==159927== by 0x400336E: main (first.c:123) ==159927== === End of file valgrind1595 * starts no server test 1612...[HMAC unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1612 ./unit/units unit1612 - > log/8/stdout1612 2> log/8/stderr1612 units returned 132, when expecting 0 1612: exit FAILED == Contents of files in the log/8/ dir after test 1612 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1612 ./unit/units unit1612 - > log/8/stdout1612 2> log/8/stderr1612 === End of file commands.log === Start of file server.cmd Testnum 1612 === End of file server.cmd === Start of file stderr1612 URL: - === End of file stderr1612 === Start of file valgrind1612 ==160654== ==160654== Process terminating with default action of signal 4 (SIGILL) ==160654== Illegal opcode at address 0x4013676 ==160654== at 0x4013676: test_unit1612.lto_priv.0 (unit1612.c:47) ==160654== by 0x400A15E: main (first.c:167) ==160654== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x532FFA5: __tsearch (tsearch.c:337) ==160654== by 0x532FFA5: tsearch (tsearch.c:290) ==160654== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160654== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160654== by 0x52423F0: add_alias (gconv_conf.c:178) ==160654== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160654== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160654== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== ==160654== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x532FFA5: __tsearch (tsearch.c:337) ==160654== by 0x532FFA5: tsearch (tsearch.c:290) ==160654== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160654== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160654== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== ==160654== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160654== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160654== by 0x52423F0: add_alias (gconv_conf.c:178) ==160654== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160654== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160654== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== ==160654== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160654== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160654== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== ==160654== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x532FFA5: __tsearch (tsearch.c:337) ==160654== by 0x532FFA5: tsearch (tsearch.c:290) ==160654== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160654== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160654== by 0x52423F0: add_alias (gconv_conf.c:178) ==160654== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160654== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160654== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== ==160654== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==160654== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160654== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160654== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160654== by 0x52423F0: add_alias (gconv_conf.c:178) ==160654== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160654== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160654== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160654== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160654== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160654== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160654== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160654== by 0x524D142: setlocale (setlocale.c:337) ==160654== by 0x400A0CB: main (first.c:123) ==160654== === End of file valgrind1612 * starts no server test 1606...[verify speedcheck] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1606 ./unit/units unit1606 - > log/24/stdout1606 2> log/24/stderr1606 units returned 132, when expecting 0 1606: exit FAILED == Contents of files in the log/24/ dir after test 1606 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1613 ../src/curl -q --output log/12/curl1613.out --include --trace-ascii log/12/trace1613 --trace-config all --trace-time --request-target '*' -X OPTIONS --proxy http://127.0.0.1:37285/ -H "Testno: 1613" http://www.example.org/ > log/12/stdout1613 2> log/12/stderr1613 startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1606 ./unit/units unit1606 - > log/24/stdout1606 2> log/24/stderr1606 === End of file commands.log === Start of file server.cmd Testnum 1606 === End of file server.cmd === Start of file stderr1606 URL: - === End of file stderr1606 === Start of file valgrind1606 ==160415== ==160415== Process terminating with default action of signal 4 (SIGILL) ==160415== Illegal opcode at address 0x40775D3 ==160415== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160415== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160415== by 0x40775D3: Curl_open (url.c:541) ==160415== by 0x403D525: curl_easy_init (easy.c:372) ==160415== by 0x401158B: UnknownInlinedFun (unit1606.c:34) ==160415== by 0x401158B: test_unit1606.lto_priv.0 (unit1606.c:83) ==160415== by 0x400A15E: main (first.c:167) ==160415== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x532FFA5: __tsearch (tsearch.c:337) ==160415== by 0x532FFA5: tsearch (tsearch.c:290) ==160415== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160415== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160415== by 0x52423F0: add_alias (gconv_conf.c:178) ==160415== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160415== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160415== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== ==160415== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x532FFA5: __tsearch (tsearch.c:337) ==160415== by 0x532FFA5: tsearch (tsearch.c:290) ==160415== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160415== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160415== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== ==160415== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160415== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160415== by 0x52423F0: add_alias (gconv_conf.c:178) ==160415== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160415== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160415== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== ==160415== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160415== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160415== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== ==160415== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160415== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160415== by 0x4077523: Curl_open (url.c:520) ==160415== by 0x403D525: curl_easy_init (easy.c:372) ==160415== by 0x401158B: UnknownInlinedFun (unit1606.c:34) ==160415== by 0x401158B: test_unit1606.lto_priv.0 (unit1606.c:83) ==160415== by 0x400A15E: main (first.c:167) ==160415== ==160415== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x532FFA5: __tsearch (tsearch.c:337) ==160415== by 0x532FFA5: tsearch (tsearch.c:290) ==160415== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160415== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160415== by 0x52423F0: add_alias (gconv_conf.c:178) ==160415== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160415== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160415== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== ==160415== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160415== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160415== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160415== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160415== by 0x52423F0: add_alias (gconv_conf.c:178) ==160415== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160415== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160415== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160415== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160415== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160415== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160415== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160415== by 0x524D142: setlocale (setlocale.c:337) ==160415== by 0x400A0CB: main (first.c:123) ==160415== === End of file valgrind1606 test 1613...[Send "OPTIONS *" with --request-target to a proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1613 ../src/curl -q --output log/12/curl1613.out --include --trace-ascii log/12/trace1613 --trace-config all --trace-time --request-target '*' -X OPTIONS --proxy http://127.0.0.1:37285/ -H "Testno: 1613" http://www.example.org/ > log/12/stdout1613 2> log/12/stderr1613 1613: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 1613 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1613 ../src/curl -q --output log/12/curl1613.out --include --trace-ascii log/12/trace1613 --trace-config all --trace-time --request-target '*' -X OPTIONS --proxy http://127.0.0.1:37285/ -H "Testno: 1613" http://www.example.org/ > log/12/stdout1613 2> log/12/stderr1613 === End of file commands.log === Start CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1614 ./unit/units unit1614 - > log/7/stdout1614 2> log/7/stderr1614 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1611 ./unit/units unit1611 - > log/10/stdout1611 2> log/10/stderr1611 of file http_server.log 07:36:15.025258 ====> Client connect 07:36:15.025299 accept_connection 3 returned 4 07:36:15.025317 accept_connection 3 returned 0 07:36:15.025333 Read 93 bytes 07:36:15.025343 Process 93 bytes request 07:36:15.025355 Got request: GET /verifiedserver HTTP/1.1 07:36:15.025364 Are-we-friendly question received 07:36:15.025387 Wrote request (93 bytes) input to log/12/server.input 07:36:15.025403 Identifying ourselves as friends 07:36:15.025476 Response sent (56 bytes) and written to log/12/server.response 07:36:15.025486 special request received, no persistency 07:36:15.025495 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1613 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind1613 ==160776== ==160776== Process terminating with default action of signal 4 (SIGILL) ==160776== Illegal opcode at address 0x4003082 ==160776== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==160776== by 0x4003082: main (tool_main.c:234) === End of file valgrind1613 * starts no server test 1614...[noproxy and cidr comparisons] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1614 ./unit/units unit1614 - > log/7/stdout1614 2> log/7/stderr1614 -------e-v- OK (1504 out of 1707, remaining: 00:11, took 1.202s, duration: 01:27) * starts no server test 1611...[MD4 unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1611 ./unit/units unit1611 - > log/10/stdout1611 2> log/10/stderr1611 units returned 132, when expecting 0 1611: exit FAILED == Contents of files in the log/10/ dir after test 1611 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1611 ./unit/units unit1611 - > log/10/stdout1611 2> log/10/stderr1611 === End of file commands.log === Start of file server.cmd Testnum 1611 === End of file server.cmd === Start of file stderr1611 URL: - === End of file stderr1611 === Start of file valgrind1611 ==160652== ==160652== Process terminating with default action of signal 4 (SIGILL) ==160652== Illegal opcode at address 0x4053A6A ==160652== at 0x4053A6A: UnknownInlinedFun (md4.c:503) ==160652== by 0x4053A6A: Curl_md4it (md4.c:538) ==160652== by 0x40133D9: test_unit1611.lto_priv.0 (unit1611.c:38) ==160652== by 0x400A15E: main (first.c:167) ==160652== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x532FFA5: __tsearch (tsearch.c:337) ==160652== by 0x532FFA5: tsearch (tsearch.c:290) ==160652== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160652== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160652== by 0x52423F0: add_alias (gconv_conf.c:178) ==160652== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160652== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160652== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== ==160652== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x532FFA5: __tsearch (tsearch.c:337) ==160652== by 0x532FFA5: tsearch (tsearch.c:290) ==160652== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160652== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160652== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== ==160652== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160652== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160652== by 0x52423F0: add_alias (gconv_conf.c:178) ==160652== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160652== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160652== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== ==160652== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160652== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160652== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== ==160652== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x532FFA5: __tsearch (tsearch.c:337) ==160652== by 0x532FFA5: tsearch (tsearch.c:290) ==160652== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160652== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160652== by 0x52423F0: add_alias (gconv_conf.c:178) ==160652== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160652== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160652== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== ==160652== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==160652== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160652== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160652== by 0x52423F0: add_aliasCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1608 ./unit/units unit1608 - > log/22/stdout1608 2> log/22/stderr1608 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1607 ./unit/units unit1607 - > log/21/stdout1607 2> log/21/stderr1607 2 (gconv_conf.c:176) ==160652== by 0x52423F0: add_alias (gconv_conf.c:178) ==160652== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160652== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160652== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160652== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160652== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160652== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160652== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160652== by 0x524D142: setlocale (setlocale.c:337) ==160652== by 0x400A0CB: main (first.c:123) ==160652== === End of file valgrind1611 * starts no server test 1608...[verify DNS shuffling] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1608 ./unit/units unit1608 - > log/22/stdout1608 2> log/22/stderr1608 units returned 132, when expecting 0 1608: exit FAILED == Contents of files in the log/22/ dir after test 1608 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1608 ./unit/units unit1608 - > log/22/stdout1608 2> log/22/stderr1608 === End of file commands.log === Start of file server.cmd Testnum 1608 === End of file server.cmd === Start of file stderr1608 URL: - === End of file stderr1608 === Start of file valgrind1608 ==160443== ==160443== Process terminating with default action of signal 4 (SIGILL) ==160443== Illegal opcode at address 0x40775D3 ==160443== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160443== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160443== by 0x40775D3: Curl_open (url.c:541) ==160443== by 0x403D525: curl_easy_init (easy.c:372) ==160443== by 0x4012EBF: test_unit1608.lto_priv.0 (unit1608.c:53) ==160443== by 0x400A15E: main (first.c:167) ==160443== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x532FFA5: __tsearch (tsearch.c:337) ==160443== by 0x532FFA5: tsearch (tsearch.c:290) ==160443== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160443== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160443== by 0x52423F0: add_alias (gconv_conf.c:178) ==160443== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160443== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160443== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== ==160443== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x532FFA5: __tsearch (tsearch.c:337) ==160443== by 0x532FFA5: tsearch (tsearch.c:290) ==160443== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160443== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160443== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== ==160443== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160443== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160443== by 0x52423F0: add_alias (gconv_conf.c:178) ==160443== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160443== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160443== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== ==160443== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160443== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160443== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== ==160443== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160443== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160443== by 0x4077523: Curl_open (url.c:520) ==160443== by 0x403D525: curl_easy_init (easy.c:372) ==160443== by 0x4012EBF: test_unit1608.lto_priv.0 (unit1608.c:53) ==160443== by 0x400A15E: main (first.c:167) ==160443== ==160443== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x532FFA5: __tsearch (tsearch.c:337) ==160443== by 0x532FFA5: tsearch (tsearch.c:290) ==160443== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160443== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160443== by 0x52423F0: add_alias (gconv_conf.c:178) ==160443== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160443== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160443== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== ==160443== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160443== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160443== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160443== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160443== by 0x52423F0: add_alias (gconv_conf.c:178) ==160443== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160443== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160443== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160443== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160443== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160443== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160443== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160443== by 0x524D142: setlocale (setlocale.c:337) ==160443== by 0x400A0CB: main (first.c:123) ==160443== === End of file valgrind1608 * starts no server test 1607...[CURLOPT_RESOLVE parsing] ../libtool --mode=exCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1609 ./unit/units unit1609 - > log/19/stdout1609 2> log/19/stderr1609 ecute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1607 ./unit/units unit1607 - > log/21/stdout1607 2> log/21/stderr1607 units returned 132, when expecting 0 1607: exit FAILED == Contents of files in the log/21/ dir after test 1607 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1607 ./unit/units unit1607 - > log/21/stdout1607 2> log/21/stderr1607 === End of file commands.log === Start of file server.cmd Testnum 1607 === End of file server.cmd === Start of file stderr1607 URL: - === End of file stderr1607 === Start of file valgrind1607 ==160451== ==160451== Process terminating with default action of signal 4 (SIGILL) ==160451== Illegal opcode at address 0x40775D3 ==160451== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160451== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160451== by 0x40775D3: Curl_open (url.c:541) ==160451== by 0x403D525: curl_easy_init (easy.c:372) ==160451== by 0x4011954: UnknownInlinedFun (unit1607.c:117) ==160451== by 0x4011954: test_unit1607.lto_priv.0 (unit1607.c:39) ==160451== by 0x400A15E: main (first.c:167) ==160451== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x532FFA5: __tsearch (tsearch.c:337) ==160451== by 0x532FFA5: tsearch (tsearch.c:290) ==160451== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160451== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160451== by 0x52423F0: add_alias (gconv_conf.c:178) ==160451== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160451== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160451== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== ==160451== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x532FFA5: __tsearch (tsearch.c:337) ==160451== by 0x532FFA5: tsearch (tsearch.c:290) ==160451== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160451== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160451== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== ==160451== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160451== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160451== by 0x52423F0: add_alias (gconv_conf.c:178) ==160451== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160451== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160451== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== ==160451== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160451== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160451== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== ==160451== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160451== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160451== by 0x4077523: Curl_open (url.c:520) ==160451== by 0x403D525: curl_easy_init (easy.c:372) ==160451== by 0x4011954: UnknownInlinedFun (unit1607.c:117) ==160451== by 0x4011954: test_unit1607.lto_priv.0 (unit1607.c:39) ==160451== by 0x400A15E: main (first.c:167) ==160451== ==160451== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x532FFA5: __tsearch (tsearch.c:337) ==160451== by 0x532FFA5: tsearch (tsearch.c:290) ==160451== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160451== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160451== by 0x52423F0: add_alias (gconv_conf.c:178) ==160451== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160451== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160451== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== ==160451== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160451== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160451== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160451== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160451== by 0x52423F0: add_alias (gconv_conf.c:178) ==160451== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160451== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160451== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160451== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160451== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160451== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160451== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160451== by 0x524D142: setlocale (setlocale.c:337) ==160451== by 0x400A0CB: main (first.c:123) ==160451== === End of file valgrind1607 * starts no server test 1609...[CURLOPT_RESOLVE parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1609 ./unit/units unit1609 - > log/19/stdout1609 2> log/19/stderr1609 units returned 132, when expecting 0 1609: exit FAILED == Contents of files in the log/19/ dir after test 1609 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1609 ./unit/units unit1609 - > log/19/stdout1609 2> log/19/stderr1609 === End of file commands.log === Start of fileCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1616 ./unit/units unit1616 - > log/18/stdout1616 2> log/18/stderr1616 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1633 ../src/curl -q --output log/20/curl1633.out --include --trace-ascii log/20/trace1633 --trace-config all --trace-time http://127.0.0.1:37169/1633 -d moo --retry 1 -L > log/20/stdout1633 2> log/20/stderr1633 server.cmd Testnum 1609 === End of file server.cmd === Start of file stderr1609 URL: - === End of file stderr1609 === Start of file valgrind1609 ==160562== ==160562== Process terminating with default action of signal 4 (SIGILL) ==160562== Illegal opcode at address 0x40775D3 ==160562== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160562== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160562== by 0x40775D3: Curl_open (url.c:541) ==160562== by 0x403D525: curl_easy_init (easy.c:372) ==160562== by 0x40125EA: UnknownInlinedFun (unit1609.c:113) ==160562== by 0x40125EA: test_unit1609.lto_priv.0 (unit1609.c:71) ==160562== by 0x400A15E: main (first.c:167) ==160562== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x532FFA5: __tsearch (tsearch.c:337) ==160562== by 0x532FFA5: tsearch (tsearch.c:290) ==160562== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160562== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160562== by 0x52423F0: add_alias (gconv_conf.c:178) ==160562== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160562== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160562== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== ==160562== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x532FFA5: __tsearch (tsearch.c:337) ==160562== by 0x532FFA5: tsearch (tsearch.c:290) ==160562== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160562== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160562== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== ==160562== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160562== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160562== by 0x52423F0: add_alias (gconv_conf.c:178) ==160562== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160562== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160562== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== ==160562== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160562== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160562== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== ==160562== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160562== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160562== by 0x4077523: Curl_open (url.c:520) ==160562== by 0x403D525: curl_easy_init (easy.c:372) ==160562== by 0x40125EA: UnknownInlinedFun (unit1609.c:113) ==160562== by 0x40125EA: test_unit1609.lto_priv.0 (unit1609.c:71) ==160562== by 0x400A15E: main (first.c:167) ==160562== ==160562== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x532FFA5: __tsearch (tsearch.c:337) ==160562== by 0x532FFA5: tsearch (tsearch.c:290) ==160562== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160562== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160562== by 0x52423F0: add_alias (gconv_conf.c:178) ==160562== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160562== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160562== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== ==160562== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160562== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160562== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160562== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160562== by 0x52423F0: add_alias (gconv_conf.c:178) ==160562== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160562== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160562== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160562== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160562== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160562== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160562== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160562== by 0x524D142: setlocale (setlocale.c:337) ==160562== by 0x400A0CB: main (first.c:123) ==160562== === End of file valgrind1609 * starts no server test 1616...[Internal uint_hash create/add/destroy testing, exercising clean functions] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1616 ./unit/units unit1616 - > log/18/stdout1616 2> log/18/stderr1616 -------e-v- OK (1506 out of 1707, remaining: 00:11, took 1.571s, duration: 01:27) test 1633...[--retry with a 429 response and Retry-After:] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1633 ../src/curl -q --output log/20/curl1633.out --include --trace-ascii log/20/trace1633 --trace-config all --trace-time http://127.0.0.1:37169/1633 -d moo --retry 1 -L > log/20/stdout1633 2> log/20/stderr1633 1633: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 1633 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1633 ../src/curl -q --output log/20/curl1633.out --include --trace-ascii log/20/trace1633 --trace-config all --trace-time httCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1621 ./tunit/tunits tool1621 - > log/11/stdout1621 2> log/11/stderr1621 p://127.0.0.1:37169/1633 -d moo --retry 1 -L > log/20/stdout1633 2> log/20/stderr1633 === End of file commands.log === Start of file http_server.log 07:36:15.598395 ====> Client connect 07:36:15.598431 accept_connection 3 returned 4 07:36:15.598449 accept_connection 3 returned 0 07:36:15.598589 Read 93 bytes 07:36:15.598604 Process 93 bytes request 07:36:15.598623 Got request: GET /verifiedserver HTTP/1.1 07:36:15.598633 Are-we-friendly question received 07:36:15.598660 Wrote request (93 bytes) input to log/20/server.input 07:36:15.598677 Identifying ourselves as friends 07:36:15.598738 Response sent (56 bytes) and written to log/20/server.response 07:36:15.598749 special request received, no persistency 07:36:15.598759 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1633 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1633 ==161099== ==161099== Process terminating with default action of signal 4 (SIGILL) ==161099== Illegal opcode at address 0x4003082 ==161099== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161099== by 0x4003082: main (tool_main.c:234) === End of file valgrind1633 * starts no server test 1621...[unit tests for stripcredentials from URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1621 ./tunit/tunits tool1621 - > log/11/stdout1621 2> log/11/stderr1621 tunits returned 132, when expecting 0 1621: exit FAILED == Contents of files in the log/11/ dir after test 1621 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1621 ./tunit/tunits tool1621 - > log/11/stdout1621 2> log/11/stderr1621 === End of file commands.log === Start of file server.cmd Testnum 1621 === End of file server.cmd === Start of file stderr1621 URL: - === End of file stderr1621 === Start of file valgrind1621 ==160893== ==160893== Process terminating with default action of signal 4 (SIGILL) ==160893== Illegal opcode at address 0x4929B98 ==160893== at 0x4929B98: UnknownInlinedFun (string_fortified.h:59) ==160893== by 0x4929B98: UnknownInlinedFun (urlapi.c:1266) ==160893== by 0x4929B98: UnknownInlinedFun (urlapi.c:1704) ==160893== by 0x4929B98: curl_url_set (urlapi.c:1827) ==160893== by 0x400191B: UnknownInlinedFun (tool_xattr.c:53) ==160893== by 0x400191B: test_tool1621 (tool1621.c:75) ==160893== by 0x4001112: main (first.c:167) ==160893== 408 bytes in 17 blocks are possibly lost in loss record 10 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x4A95FA5: __tsearch (tsearch.c:337) ==160893== by 0x4A95FA5: tsearch (tsearch.c:290) ==160893== by 0x49A80F4: add_alias2.part.0 (gconv_conf.c:142) ==160893== by 0x49A83F0: add_alias2 (gconv_conf.c:176) ==160893== by 0x49A83F0: add_alias (gconv_conf.c:178) ==160893== by 0x49A83F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160893== by 0x49A8555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160893== by 0x49A8555: __gconv_read_conf (gconv_conf.c:480) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== ==160893== 552 bytes in 23 blocks are possibly lost in loss record 12 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x4A95FA5: __tsearch (tsearch.c:337) ==160893== by 0x4A95FA5: tsearch (tsearch.c:290) ==160893== by 0x49A80F4: add_alias2.part.0 (gconv_conf.c:142) ==160893== by 0x49A874A: add_alias2 (gconv_conf.c:105) ==160893== by 0x49A874A: __gconv_read_conf (gconv_conf.c:508) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== ==160893== 681 bytes in 17 blocks are possibly lost in loss record 15 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x49A80A9: add_alias2.part.0 (gconv_conf.c:132) ==160893== by 0x49A83F0: add_alias2 (gconv_conf.c:176) ==160893== by 0x49A83F0: add_alias (gconv_conf.c:178) ==160893== by 0x49A83F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160893== by 0x49A8555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160893== by 0x49A8555: __gconv_read_conf (gconv_conf.c:480) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== ==160893== 1,018 bytes in 23 blocks are possibly lost in loss record 20 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x49A80A9: add_alias2.part.0 (gconv_conf.c:132) ==160893== by 0x49A874A: add_alias2 (gconv_conf.c:105) ==160893== by 0x49A874A: __gconv_read_conf (gconv_conf.c:508) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== ==160893== 11,664 bytes in 486 blocks are possibly lost in loss record 27 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x4A95FA5: __tsearch (tsearch.c:337) ==160893== by 0x4A95FA5: tsearch (tsearch.c:290) ==160893== by 0x49A80F4: add_alias2.part.0 (gconv_conf.c:142) ==160893== by 0x49A83F0: add_alias2 (gconv_conf.c:176) ==160893== by 0x49A83F0: add_alias (gconv_conf.c:178) ==160893== by 0x49A83F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160893== by 0x49A8775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160893== by 0x49A8775: __gconv_read_conf (gconv_conf.c:480) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== ==160893== 18,800 bytes in 486 blocks are possibly lost in loss record 29 of 30 ==160893== at 0x484A7A8: malloc (vg_replace_malloc.c:446) ==160893== by 0x49A80A9: add_alias2.part.0 (gconv_conf.c:132) ==160893== by 0x49A83F0: add_alias2 (gconv_conf.c:176) ==160893== byCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1610 ./unit/units unit1610 - > log/23/stdout1610 2> log/23/stderr1610 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1634 ../src/curl -q --output log/14/curl1634.out --include --trace-ascii log/14/trace1634 --trace-config all --trace-time http://127.0.0.1:37963/1634 --retry 1 --fail > log/14/stdout1634 2> log/14/stderr1634 0x49A83F0: add_alias (gconv_conf.c:178) ==160893== by 0x49A83F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160893== by 0x49A8775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160893== by 0x49A8775: __gconv_read_conf (gconv_conf.c:480) ==160893== by 0x4A18CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160893== by 0x4A18D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160893== by 0x49A7246: __gconv_compare_alias (gconv_db.c:692) ==160893== by 0x49B0A3D: _nl_find_locale (findlocale.c:298) ==160893== by 0x49B3142: setlocale (setlocale.c:337) ==160893== by 0x4001047: main (first.c:123) ==160893== === End of file valgrind1621 test 1634...[--retry with a 429 response and Retry-After: and --fail] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1634 ../src/curl -q --output log/14/curl1634.out --include --trace-ascii log/14/trace1634 --trace-config all --trace-time http://127.0.0.1:37963/1634 --retry 1 --fail > log/14/stdout1634 2> log/14/stderr1634 1634: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 1634 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind1634 ../src/curl -q --output log/14/curl1634.out --include --trace-ascii log/14/trace1634 --trace-config all --trace-time http://127.0.0.1:37963/1634 --retry 1 --fail > log/14/stdout1634 2> log/14/stderr1634 === End of file commands.log === Start of file http_server.log 07:36:15.639284 ====> Client connect 07:36:15.639359 accept_connection 3 returned 4 07:36:15.639380 accept_connection 3 returned 0 07:36:15.639396 Read 93 bytes 07:36:15.639406 Process 93 bytes request 07:36:15.639421 Got request: GET /verifiedserver HTTP/1.1 07:36:15.639430 Are-we-friendly question received 07:36:15.639458 Wrote request (93 bytes) input to log/14/server.input 07:36:15.639478 Identifying ourselves as friends 07:36:15.639540 Response sent (56 bytes) and written to log/14/server.response 07:36:15.639551 special request received, no persistency 07:36:15.639560 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37963... * Connected to 127.0.0.1 (127.0.0.1) port 37963 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37963 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73860 === End of file http_verify.out === Start of file server.cmd Testnum 1634 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73860 === End of file server.response === Start of file valgrind1634 ==161118== ==161118== Process terminating with default action of signal 4 (SIGILL) ==161118== Illegal opcode at address 0x4003082 ==161118== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161118== by 0x4003082: main (tool_main.c:234) === End of file valgrind1634 * starts no server test 1610...[SHA256 unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1610 ./unit/units unit1610 - > log/23/stdout1610 2> log/23/stderr1610 units returned 132, when expecting 0 1610: exit FAILED == Contents of files in the log/23/ dir after test 1610 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind1610 ./unit/units unit1610 - > log/23/stdout1610 2> log/23/stderr1610 === End of file commands.log === Start of file server.cmd Testnum 1610 === End of file server.cmd === Start of file stderr1610 URL: - === End of file stderr1610 === Start of file valgrind1610 ==160605== ==160605== Process terminating with default action of signal 4 (SIGILL) ==160605== Illegal opcode at address 0x40130C1 ==160605== at 0x40130C1: UnknownInlinedFun (unit1610.c:49) ==160605== by 0x40130C1: test_unit1610.lto_priv.0 (unit1610.c:35) ==160605== by 0x400A15E: main (first.c:167) ==160605== 408 bytes in 17 blocks are possibly lost in loss record 665 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x532FFA5: __tsearch (tsearch.c:337) ==160605== by 0x532FFA5: tsearch (tsearch.c:290) ==160605== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160605== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160605== by 0x52423F0: add_alias (gconv_conf.c:178) ==160605== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160605== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160605== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== ==160605== 552 bytes in 23 blocks are possibly lost in loss record 673 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x532FFA5: __tsearch (tsearch.c:337) ==160605== by 0x532FFA5: tsearch (tsearch.c:290) ==160605== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160605== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160605== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== ==160605== 681 bytes in 17 blocks are possibly lost in loss record 682 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160605== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160605== by 0x52423F0: add_alias (gconv_conf.c:178) ==160605== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160605== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160605== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== ==160605== 1,018 bytes in 23 blocks are possibly lost in loss record 702 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160605== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160605== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1635 ../src/curl -q --trace-ascii log/6/trace1635 --trace-config all --trace-time http://127.0.0.1:35775/1635 --retry 1 --fail-with-body > log/6/stdout1635 2> log/6/stderr1635 setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== ==160605== 11,664 bytes in 486 blocks are possibly lost in loss record 738 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x532FFA5: __tsearch (tsearch.c:337) ==160605== by 0x532FFA5: tsearch (tsearch.c:290) ==160605== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160605== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160605== by 0x52423F0: add_alias (gconv_conf.c:178) ==160605== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160605== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160605== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== ==160605== 18,800 bytes in 486 blocks are possibly lost in loss record 740 of 742 ==160605== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160605== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160605== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160605== by 0x52423F0: add_alias (gconv_conf.c:178) ==160605== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160605== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160605== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160605== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160605== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160605== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160605== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160605== by 0x524D142: setlocale (setlocale.c:337) ==160605== by 0x400A0CB: main (first.c:123) ==160605== === End of file valgrind1610 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1650 ./unit/units unit1650 - > log/13/stdout1650 2> log/13/stderr1650 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1654 ./unit/units unit1654 log/5/1654 > log/5/stdout1654 2> log/5/stderr1654 test 1635...[--retry with a 429 response and Retry-After: and --fail-with-body] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1635 ../src/curl -q --trace-ascii log/6/trace1635 --trace-config all --trace-time http://127.0.0.1:35775/1635 --retry 1 --fail-with-body > log/6/stdout1635 2> log/6/stderr1635 1635: stdout FAILED: --- log/6/check-expected 2025-07-18 07:36:17.130446614 +0000 +++ log/6/check-generated 2025-07-18 07:36:17.130446614 +0000 @@ -1,2 +0,0 @@ -moo[LF] -hey[LF] == Contents of files in the log/6/ dir after test 1635 === Start of file check-expected moo[LF] hey[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/6/valgrind1635 ../src/curl -q --trace-ascii log/6/trace1635 --trace-config all --trace-time http://127.0.0.1:35775/1635 --retry 1 --fail-with-body > log/6/stdout1635 2> log/6/stderr1635 === End of file commands.log === Start of file http_server.log 07:36:15.646192 ====> Client connect 07:36:15.646232 accept_connection 3 returned 4 07:36:15.646249 accept_connection 3 returned 0 07:36:15.646263 Read 93 bytes 07:36:15.646274 Process 93 bytes request 07:36:15.646288 Got request: GET /verifiedserver HTTP/1.1 07:36:15.646298 Are-we-friendly question received 07:36:15.646334 Wrote request (93 bytes) input to log/6/server.input 07:36:15.646352 Identifying ourselves as friends 07:36:15.646409 Response sent (56 bytes) and written to log/6/server.response 07:36:15.646420 special request received, no persistency 07:36:15.646429 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:35775... * Connected to 127.0.0.1 (127.0.0.1) port 35775 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:35775 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 77685 === End of file http_verify.out === Start of file server.cmd Testnum 1635 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 77685 === End of file server.response === Start of file valgrind1635 ==161107== ==161107== Process terminating with default action of signal 4 (SIGILL) ==161107== Illegal opcode at address 0x4003082 ==161107== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161107== by 0x4003082: main (tool_main.c:234) === End of file valgrind1635 * starts no server setenv CURL_TIME = 1548369261 test 1654...[alt-svc] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1654 ./unit/units unit1654 log/5/1654 > log/5/stdout1654 2> log/5/stderr1654 1654: output (log/5/1654-out) FAILED: --- log/5/check-expected 2025-07-18 07:36:17.150446614 +0000 +++ log/5/check-generated 2025-07-18 07:36:17.150446614 +0000 @@ -1,12 +0,0 @@ -# Your alt-svc cache. https://curl.se/docs/alt-svc.html[CR][LF] -# This file was generated by libcurl! Edit at your own risk.[CR][LF] -h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0[CR][LF] -h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0[CR][LF] -h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0[CR][LF] -h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0[CR][LF] -h1 example.org 8080 h2 example.com 8080 "20190125 22:34:21" 0 0[CR][LF] -h1 2.example.org 8080 h3 2.example.org 8080 "20190125 22:34:21" 0 0[CR][LF] -h1 3.example.org 8080 h2 example.com 8080 "20190125 22:34:21" 0 0[CR][LF] -h1 3.example.org 8080 h3 yesyes.com 8080 "20190125 22:34:21" 0 0[CR][LF] -h2 example.org 80 h2 example.com 443 "20190124 22:36:21" 0 0[CR][LF] -h2 example.net 80 h2 example.net 443 "20190124 22:37:21" 0 0[CR][LF] == Contents of files in the log/5/ dir after test 1654 === Start of file 1654 h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 # a comment h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0 h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0 h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0 # also a comment bad example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 rubbish === End of file 1654 === Start of file check-expected # Your alt-svc cache. https://curl.se/docs/alt-svc.html[CR][LF] # This file was generated by libcurl! Edit at your own risk.[CR][LF] h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0[CR][LF] h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0[CR][LF] h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0[CR][LF] h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0[CR][LF] h1 example.org 8080 h2 example.com 8080 "20190125 22:34:21" 0 0[CR][LF] h1 2.example.org 8080 h3 2.example.org 8080 "20190125 22:34:21" 0 0[CR][LF] h1 3.example.org 8080 h2 example.com 8080 "20190125 22:34:21" 0 0[CR][LF] h1 3.example.org 8080 h3 yesyes.com 8080 "20190125 22:34:21" 0 0[CR][LF] h2 example.org 80 h2 example.com 443 "20190124 22:36:21" 0 0[CR][LF] h2 example.net 80 h2 example.net 443 "20190124 22:37:21" 0 0[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1654 ./unit/units unit1654 log/5/1654 > log/5/stdout1654 2> log/5/stderr1654 === End of file commands.log === Start of file server.cmd Testnum 1654 === End of file server.cmd === Start of file stderr1654 URL: log/5/1654 === End of file stderr1654 === Start of file valgrind1654 ==161192== ==161192== Process terminating with default action of signal 4 (SIGILL) ==161192== Illegal opcode at address 0x402E249 ==161192== at 0x402E249: UnknownInlinedFun (strparse.c:55) ==161192== by 0x402E249: UnknownInlinedFun (strparse.c:72) ==161192== by 0x402E249: UnknownInlinedFun (altsvc.c:176) ==161192== by 0x402E249: altsvc_load.lto_priv.0 (altsvc.c:238) ==161192== by 0x4017072: UnknownInlinedFun (altsvc.c:324) ==161192== by 0x4017072: test_unit1654.lto_priv.0 (unit1654.c:39) ==161192== by 0x400A15E: main (first.c:167) ==161192== 408 bytes in 17 blocks are possibly lost in loss record 12 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x532FFA5: __tsearch (tsearch.c:337) ==161192== by 0x532FFA5: tsearch (tsearch.c:290) ==161192== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161192== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161192== by 0x52423F0: add_alias (gconv_conf.c:178) ==161192== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161192== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161192== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== ==161192== 552 bytes in 23 blocks are possibly lost in loss record 15 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x532FFA5: __tsearch (tsearch.c:337) ==161192== by 0x532FFA5: tsearch (tsearch.c:290) ==161192== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161192== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161192== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== ==161192== 681 bytes in 17 blocks are possibly lost in loss record 18 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161192== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161192== by 0x52423F0: add_alias (gconv_conf.c:178) ==161192== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161192== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161192== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== ==161192== 1,018 bytes in 23 blocks are possibly lost in loss record 23 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161192== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161192== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== ==161192== 11,664 bytes in 486 blocks are possibly lost in loss record 31 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x532FFA5: __tsearch (tsearch.c:337) ==161192== by 0x532FFA5: tsearch (tsearch.c:290) ==161192== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161192== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161192== by 0x52423F0: add_alias (gconv_conf.c:178) ==161192== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161192== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161192== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1657 ./unit/units unit1657 - > log/9/stdout1657 2> log/9/stderr1657 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1655 ./unit/units unit1655 - > log/1/stdout1655 2> log/1/stderr1655 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -d log/5 -I /startdir/src/curl/tests/../include mainpage option1.md option2.md > log/5/stdout1705 2> log/5/stderr1705 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1656 ./unit/units unit1656 - > log/4/stdout1656 2> log/4/stderr1656 CMD (0): /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -I /startdir/src/curl/tests/../include -d log/9 ascii option1.md option2.md > log/9/stdout1706 2> log/9/stderr1706 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1615 ./unit/units unit1615 - > log/17/stdout1615 2> log/17/stderr1615 0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== ==161192== 18,800 bytes in 486 blocks are possibly lost in loss record 33 of 34 ==161192== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161192== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161192== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161192== by 0x52423F0: add_alias (gconv_conf.c:178) ==161192== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161192== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161192== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161192== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161192== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161192== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161192== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161192== by 0x524D142: setlocale (setlocale.c:337) ==161192== by 0x400A0CB: main (first.c:123) ==161192== === End of file valgrind1654 * starts no server test 1650...[DoH parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1650 ./unit/units unit1650 - > log/13/stdout1650 2> log/13/stderr1650 -------e-v- OK (1515 out of 1707, remaining: 00:11, took 1.312s, duration: 01:28) * starts no server test 1657...[Curl_x509_getASN1Element unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1657 ./unit/units unit1657 - > log/9/stdout1657 2> log/9/stderr1657 -------e-v- OK (1522 out of 1707, remaining: 00:10, took 1.060s, duration: 01:28) * starts no server test 1655...[unit test for doh_req_encode] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1655 ./unit/units unit1655 - > log/1/stdout1655 2> log/1/stderr1655 -------e-v- OK (1520 out of 1707, remaining: 00:10, took 1.227s, duration: 01:28) * starts no server test 1705...[managen makes manpage] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -d log/5 -I /startdir/src/curl/tests/../include mainpage option1.md option2.md > log/5/stdout1705 2> log/5/stderr1705 valgrind SKIPPED sr-----e--- OK (1538 out of 1707, remaining: 00:09, took 0.097s, duration: 01:28) * starts no server test 1656...[Curl_x509_GTime2str unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1656 ./unit/units unit1656 - > log/4/stdout1656 2> log/4/stderr1656 -------e-v- OK (1521 out of 1707, remaining: 00:10, took 1.194s, duration: 01:28) * starts no server test 1706...[managen makes ASCII page] /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/../scripts/managen -I /startdir/src/curl/tests/../include -d log/9 ascii option1.md option2.md > log/9/stdout1706 2> log/9/stderr1706 valgrind SKIPPED sr-----e--- OK (1539 out of 1707, remaining: 00:09, took 0.149s, duration: 01:28) * starts no server test 1615...[SHA-512/256 unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1615 ./unit/units unit1615 - > log/17/stdout1615 2> log/17/stderr1615 units returned 132, when expecting 0 1615: exit FAILED == Contents of files in the log/17/ dir after test 1615 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1615 ./unit/units unit1615 - > log/17/stdout1615 2> log/17/stderr1615 === End of file commands.log === Start of file server.cmd Testnum 1615 === End of file server.cmd === Start of file stderr1615 URL: - === End of file stderr1615 === Start of file valgrind1615 ==160801== ==160801== Process terminating with default action of signal 4 (SIGILL) ==160801== Illegal opcode at address 0x4013924 ==160801== at 0x4013924: test_unit1615.lto_priv.0 (unit1615.c:118) ==160801== by 0x400A15E: main (first.c:167) ==160801== 408 bytes in 17 blocks are possibly lost in loss record 665 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x532FFA5: __tsearch (tsearch.c:337) ==160801== by 0x532FFA5: tsearch (tsearch.c:290) ==160801== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160801== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160801== by 0x52423F0: add_alias (gconv_conf.c:178) ==160801== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160801== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160801== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== ==160801== 552 bytes in 23 blocks are possibly lost in loss record 673 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x532FFA5: __tsearch (tsearch.c:337) ==160801== by 0x532FFA5: tsearch (tsearch.c:290) ==160801== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160801== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160801== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== ==160801== 681 bytes in 17 blocks are possibly lost in loss record 682 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160801== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160801== by 0x52423F0: add_alias (gconv_conf.c:178) ==160801== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160801== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160801== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== ==160801== 1,018 bytes in 23 blocks are possibly lost in loss record 702 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160801== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160801== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1653 ./unit/units unit1653 - > log/15/stdout1653 2> log/15/stderr1653 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1658 ./unit/units unit1658 - > log/24/stdout1658 2> log/24/stderr1658 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1661 ./unit/units unit1661 - > log/12/stdout1661 2> log/12/stderr1661 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1670 ../src/curl -q --include --trace-ascii log/22/trace1670 --trace-config all --trace-time http://127.0.0.1:46761/1670 -w '%header{etag} %header{nope} %header{DATE}\n' -o log/22/1670.out > log/22/stdout1670 2> log/22/stderr1670 nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== ==160801== 11,664 bytes in 486 blocks are possibly lost in loss record 738 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x532FFA5: __tsearch (tsearch.c:337) ==160801== by 0x532FFA5: tsearch (tsearch.c:290) ==160801== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160801== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160801== by 0x52423F0: add_alias (gconv_conf.c:178) ==160801== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160801== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160801== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== ==160801== 18,800 bytes in 486 blocks are possibly lost in loss record 740 of 742 ==160801== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160801== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160801== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160801== by 0x52423F0: add_alias (gconv_conf.c:178) ==160801== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160801== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160801== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160801== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160801== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160801== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160801== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160801== by 0x524D142: setlocale (setlocale.c:337) ==160801== by 0x400A0CB: main (first.c:123) ==160801== === End of file valgrind1615 * starts no server test 1653...[urlapi port number parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1653 ./unit/units unit1653 - > log/15/stdout1653 2> log/15/stderr1653 -------e-v- OK (1518 out of 1707, remaining: 00:11, took 1.462s, duration: 01:28) * starts no server test 1658...[unit test for doh_resp_decode_httpsrr] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1658 ./unit/units unit1658 - > log/24/stdout1658 2> log/24/stderr1658 -r-----e-v- OK (1523 out of 1707, remaining: 00:10, took 1.274s, duration: 01:28) * starts no server test 1661...[bufref unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1661 ./unit/units unit1661 - > log/12/stdout1661 2> log/12/stderr1661 -------e-v- OK (1525 out of 1707, remaining: 00:10, took 1.251s, duration: 01:28) CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1651 ./unit/units unit1651 - > log/3/stdout1651 2> log/3/stderr1651 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1620 ./unit/units unit1620 - > log/2/stdout1620 2> log/2/stderr1620 test 1670...[-w individual header output] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1670 ../src/curl -q --include --trace-ascii log/22/trace1670 --trace-config all --trace-time http://127.0.0.1:46761/1670 -w '%header{etag} %header{nope} %header{DATE}\n' -o log/22/1670.out > log/22/stdout1670 2> log/22/stderr1670 1670: stdout FAILED: --- log/22/check-expected 2025-07-18 07:36:17.490446623 +0000 +++ log/22/check-generated 2025-07-18 07:36:17.490446623 +0000 @@ -1 +0,0 @@ -"21025-dc7-39462498" Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] == Contents of files in the log/22/ dir after test 1670 === Start of file check-expected "21025-dc7-39462498" Tue, 09 Nov 2010 14:49:00 GMT[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1670 ../src/curl -q --include --trace-ascii log/22/trace1670 --trace-config all --trace-time http://127.0.0.1:46761/1670 -w '%header{etag} %header{nope} %header{DATE}\n' -o log/22/1670.out > log/22/stdout1670 2> log/22/stderr1670 === End of file commands.log === Start of file http_server.log 07:36:16.258019 ====> Client connect 07:36:16.258057 accept_connection 3 returned 4 07:36:16.258072 accept_connection 3 returned 0 07:36:16.262780 Read 93 bytes 07:36:16.262804 Process 93 bytes request 07:36:16.262818 Got request: GET /verifiedserver HTTP/1.1 07:36:16.262828 Are-we-friendly question received 07:36:16.262858 Wrote request (93 bytes) input to log/22/server.input 07:36:16.262876 Identifying ourselves as friends 07:36:16.262936 Response sent (56 bytes) and written to log/22/server.response 07:36:16.262947 special request received, no persistency 07:36:16.262957 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1670 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1670 ==161717== ==161717== Process terminating with default action of signal 4 (SIGILL) ==161717== Illegal opcode at address 0x4003082 ==161717== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161717== by 0x4003082: main (tool_main.c:234) === End of file valgrind1670 * starts no server test 1651...[x509 parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1651 ./unit/units unit1651 - > log/3/stdout1651 2> log/3/stderr1651 -------e-v- OK (1516 out of 1707, remaining: 00:11, took 1.635s, duration: 01:28) * starts no server test 1620...[unit tests for url.c] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1620 ./unit/units unit1620 - > log/2/stdout1620 2> log/2/stderr1620 units returned 132, when expecting 0 1620: exit FAILED == Contents of files in the log/2/ dir after test 1620 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1620 ./unit/units unit1620 - > log/2/stdout1620 2> log/2/stderr1620 === End of file commands.log === Start of file server.cmd Testnum 1620 === End of file server.cmd === Start of file stderr1620 URL: - === End of file stderr1620 === Start of file valgrind1620 ==160870== ==160870== Process terminating with default action of signal 4 (SIGILL) ==160870== Illegal opcode at address 0x40775D3 ==160870== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==160870== by 0x40775D3: UnknownInlinedFun (request.c:46) ==160870== by 0x40775D3: Curl_open (url.c:541) ==160870== by 0x4014ACF: UnknownInlinedFun (unit1620.c:83) ==160870== by 0x4014ACF: test_unit1620.lto_priv.0 (unit1620.c:72) ==160870== by 0x400A15E: main (first.c:167) ==160870== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x532FFA5: __tsearch (tsearch.c:337) ==160870== by 0x532FFA5: tsearch (tsearch.c:290) ==160870== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160870== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160870== by 0x52423F0: add_alias (gconv_conf.c:178) ==160870== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160870== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160870== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== ==160870== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x532FFA5: __tsearch (tsearch.c:337) ==160870== by 0x532FFA5: tsearch (tsearch.c:290) ==160870== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160870== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160870== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== ==160870== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160870== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160870== by 0x52423F0: add_alias (gconv_conf.c:178) ==160870== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160870== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==160870== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== ==160870== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160870== by 0x524274A: add_alias2 (gconv_conf.c:105) ==160870== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1652 ./unit/units unit1652 - > log/16/stdout1652 2> log/16/stderr1652 by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== ==160870== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==160870== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==160870== by 0x4077523: Curl_open (url.c:520) ==160870== by 0x4014ACF: UnknownInlinedFun (unit1620.c:83) ==160870== by 0x4014ACF: test_unit1620.lto_priv.0 (unit1620.c:72) ==160870== by 0x400A15E: main (first.c:167) ==160870== ==160870== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x532FFA5: __tsearch (tsearch.c:337) ==160870== by 0x532FFA5: tsearch (tsearch.c:290) ==160870== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==160870== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160870== by 0x52423F0: add_alias (gconv_conf.c:178) ==160870== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160870== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160870== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== ==160870== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==160870== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==160870== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==160870== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==160870== by 0x52423F0: add_alias (gconv_conf.c:178) ==160870== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==160870== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==160870== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==160870== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==160870== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==160870== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==160870== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==160870== by 0x524D142: setlocale (setlocale.c:337) ==160870== by 0x400A0CB: main (first.c:123) ==160870== === End of file valgrind1620 * starts no server test 1652...[infof] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1652 ./unit/units unit1652 - > log/16/stdout1652 2> log/16/stderr1652 units returned 132, when expecting 0 1652: exit FAILED == Contents of files in the log/16/ dir after test 1652 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1652 ./unit/units unit1652 - > log/16/stdout1652 2> log/16/stderr1652 === End of file commands.log === Start of file server.cmd Testnum 1652 === End of file server.cmd === Start of file stderr1652 URL: - === End of file stderr1652 === Start of file valgrind1652 ==161178== ==161178== Process terminating with default action of signal 4 (SIGILL) ==161178== Illegal opcode at address 0x40775D3 ==161178== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==161178== by 0x40775D3: UnknownInlinedFun (request.c:46) ==161178== by 0x40775D3: Curl_open (url.c:541) ==161178== by 0x403D525: curl_easy_init (easy.c:372) ==161178== by 0x40159BB: UnknownInlinedFun (unit1652.c:60) ==161178== by 0x40159BB: test_unit1652.lto_priv.0 (unit1652.c:89) ==161178== by 0x400A15E: main (first.c:167) ==161178== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161178== by 0x532FFA5: __tsearch (tsearch.c:337) ==161178== by 0x532FFA5: tsearch (tsearch.c:290) ==161178== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161178== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161178== by 0x52423F0: add_alias (gconv_conf.c:178) ==161178== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161178== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161178== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== ==161178== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161178== by 0x532FFA5: __tsearch (tsearch.c:337) ==161178== by 0x532FFA5: tsearch (tsearch.c:290) ==161178== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161178== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161178== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== ==161178== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161178== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161178== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161178== by 0x52423F0: add_alias (gconv_conf.c:178) ==161178== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161178== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161178== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== ==161178== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161178== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161178== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161178== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== ==161178== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==161178== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==161178== by 0x4077523: Curl_open (url.c:520) ==161178== by 0x403D525: curl_easy_init (easy.c:372) ==161178== by 0x40159BB: UnknownInlinedFun (unit1652.c:60) ==161178== by 0x40159BB: test_unit1652.lto_priv.0 (unit1652.c:89) ==161178== by 0x400A15E: main (first.c:167) ==161178== ==161178== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1671 ../src/curl -q --include --trace-ascii log/21/trace1671 --trace-config all --trace-time http://127.0.0.1:41087/1671 -w '%{header_json}\n' -o log/21/1671.out > log/21/stdout1671 2> log/21/stderr1671 c:446) ==161178== by 0x532FFA5: __tsearch (tsearch.c:337) ==161178== by 0x532FFA5: tsearch (tsearch.c:290) ==161178== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161178== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161178== by 0x52423F0: add_alias (gconv_conf.c:178) ==161178== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161178== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161178== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== ==161178== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==161178== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161178== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161178== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161178== by 0x52423F0: add_alias (gconv_conf.c:178) ==161178== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161178== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161178== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161178== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161178== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161178== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161178== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161178== by 0x524D142: setlocale (setlocale.c:337) ==161178== by 0x400A0CB: main (first.c:123) ==161178== === End of file valgrind1652 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1680 ../src/curl -q --include --trace-ascii log/19/trace1680 --trace-config all --trace-time http://127.0.0.1:33487/1680 -o log/19/exist1680 --clobber > log/19/stdout1680 2> log/19/stderr1680 test 1671...[-w header JSON output] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1671 ../src/curl -q --include --trace-ascii log/21/trace1671 --trace-config all --trace-time http://127.0.0.1:41087/1671 -w '%{header_json}\n' -o log/21/1671.out > log/21/stdout1671 2> log/21/stderr1671 1671: stdout FAILED: --- log/21/check-expected 2025-07-18 07:36:17.967113301 +0000 +++ log/21/check-generated 2025-07-18 07:36:17.967113301 +0000 @@ -1,11 +0,0 @@ -{"date":["Tue, 09 Nov 2010 14:49:00 GMT"],[CR][LF] -"server":["test-server/fake"],[CR][LF] -"last-modified":["Tue, 13 Jun 2000 12:10:00 GMT"],[CR][LF] -"etag":["\"21025-dc7-39462498\""],[CR][LF] -"accept-ranges":["bytes"],[CR][LF] -"set-cookie":["firstcookie=want1; path=/","2cookie=want2; path=/","cookie3=want3; path=/"],[CR][LF] -"funny-head":["yesyes"],[CR][LF] -"content-type":["text/html"],[CR][LF] -"content-length":["6"],[CR][LF] -"connection":["close"][CR][LF] -}[CR][LF] == Contents of files in the log/21/ dir after test 1671 === Start of file check-expected {"date":["Tue, 09 Nov 2010 14:49:00 GMT"],[CR][LF] "server":["test-server/fake"],[CR][LF] "last-modified":["Tue, 13 Jun 2000 12:10:00 GMT"],[CR][LF] "etag":["\"21025-dc7-39462498\""],[CR][LF] "accept-ranges":["bytes"],[CR][LF] "set-cookie":["firstcookie=want1; path=/","2cookie=want2; path=/","cookie3=want3; path=/"],[CR][LF] "funny-head":["yesyes"],[CR][LF] "content-type":["text/html"],[CR][LF] "content-length":["6"],[CR][LF] "connection":["close"][CR][LF] }[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1671 ../src/curl -q --include --trace-ascii log/21/trace1671 --trace-config all --trace-time http://127.0.0.1:41087/1671 -w '%{header_json}\n' -o log/21/1671.out > log/21/stdout1671 2> log/21/stderr1671 === End of file commands.log === Start of file http_server.log 07:36:16.326237 ====> Client connect 07:36:16.326292 accept_connection 3 returned 4 07:36:16.326316 accept_connection 3 returned 0 07:36:16.326334 Read 93 bytes 07:36:16.326346 Process 93 bytes request 07:36:16.326361 Got request: GET /verifiedserver HTTP/1.1 07:36:16.326371 Are-we-friendly question received 07:36:16.326402 Wrote request (93 bytes) input to log/21/server.input 07:36:16.326422 Identifying ourselves as friends 07:36:16.326511 Response sent (56 bytes) and written to log/21/server.response 07:36:16.326524 special request received, no persistency 07:36:16.326534 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 1671 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind1671 ==161757== ==161757== Process terminating with default action of signal 4 (SIGILL) ==161757== Illegal opcode at address 0x4003082 ==161757== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161757== by 0x4003082: main (tool_main.c:234) === End of file valgrind1671 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1660 ./unit/units unit1660 log/8/hsts1660 > log/8/stdout1660 2> log/8/stderr1660 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1681 ../src/curl -q --include --trace-ascii log/18/trace1681 --trace-config all --trace-time http://127.0.0.1:45825/1681 -o log/18/exist1681 --no-clobber -w '%{filename_effective}\n' > log/18/stdout1681 2> log/18/stderr1681 test 1680...[HTTP GET with explicit clobber] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1680 ../src/curl -q --include --trace-ascii log/19/trace1680 --trace-config all --trace-time http://127.0.0.1:33487/1680 -o log/19/exist1680 --clobber > log/19/stdout1680 2> log/19/stderr1680 1680: output (log/19/exist1680) FAILED: --- log/19/check-expected 2025-07-18 07:36:17.983779968 +0000 +++ log/19/check-generated 2025-07-18 07:36:17.983779968 +0000 @@ -1,6 +1 @@ -HTTP/1.0 200 OK[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -Content-Length: 4[LF] -[LF] -foo[LF] +to be overwritten[LF] == Contents of files in the log/19/ dir after test 1680 === Start of file check-expected HTTP/1.0 200 OK[LF] Connection: close[LF] Content-Type: text/plain[LF] Content-Length: 4[LF] [LF] foo[LF] === End of file check-expected === Start of file check-generated to be overwritten[LF] === End of file check-generated === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1680 ../src/curl -q --include --trace-ascii log/19/trace1680 --trace-config all --trace-time http://127.0.0.1:33487/1680 -o log/19/exist1680 --clobber > log/19/stdout1680 2> log/19/stderr1680 === End of file commands.log === Start of file exist1680 to be overwritten === End of file exist1680 === Start of file http_server.log 07:36:16.581153 ====> Client connect 07:36:16.581189 accept_connection 3 returned 4 07:36:16.581207 accept_connection 3 returned 0 07:36:16.581221 Read 93 bytes 07:36:16.581231 Process 93 bytes request 07:36:16.581245 Got request: GET /verifiedserver HTTP/1.1 07:36:16.581254 Are-we-friendly question received 07:36:16.581288 Wrote request (93 bytes) input to log/19/server.input 07:36:16.581303 Identifying ourselves as friends 07:36:16.581358 Response sent (56 bytes) and written to log/19/server.response 07:36:16.581367 special request received, no persistency 07:36:16.581376 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 1680 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind1680 ==161865== ==161865== Process terminating with default action of signal 4 (SIGILL) ==161865== Illegal opcode at address 0x4003082 ==161865== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161865== by 0x4003082: main (tool_main.c:234) === End of file valgrind1680 * starts no server setenv CURL_TIME = 1548369261 test 1660...[HSTS] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1660 ./unit/units unit1660 log/8/hsts1660 > log/8/stdout1660 2> log/8/stderr1660 1660: stdout FAILED: --- log/8/check-expected 2025-07-18 07:36:18.080446636 +0000 +++ log/8/check-generated 2025-07-18 07:36:18.080446636 +0000 @@ -1,34 +0,0 @@ -readfrom.example [readfrom.example]: 1633063661 includeSubDomains[LF] -'old.example' is not HSTS[LF] -'readfrom.example' is not HSTS[LF] -example.com [example.com]: 1579905261[LF] -example.com [example.com]: 1569905261[LF] -example.com [example.com]: 1569905261[LF] -example.com [example.com]: 1569905261 includeSubDomains[LF] -example.org [example.org]: 1579905261[LF] -Input 8: error 43[LF] -Input 9: error 43[LF] -this.example [this.example]: 1548400797[LF] -'this.example' is not HSTS[LF] -Input 12: error 43[LF] -Input 13: error 43[LF] -Input 14: error 43[LF] -3.example.com [3.example.com]: 1569905261 includeSubDomains[LF] -3.example.com [example.com]: 1569905261 includeSubDomains[LF] -foo.example.com [example.com]: 1569905261 includeSubDomains[LF] -'foo.xample.com' is not HSTS[LF] -'forexample.net' is not HSTS[LF] -'forexample.net' is not HSTS[LF] -'example.net' is not HSTS[LF] -expire.example [expire.example]: 1548369268[LF] -Number of entries: 4[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -expire.example [expire.example]: 1548369268[LF] -'expire.example' is not HSTS[LF] -'expire.example' is not HSTS[LF] -'expire.example' is not HSTS[LF] == Contents of files in the log/8/ dir after test 1660 === Start of file check-expected readfrom.example [readfrom.example]: 1633063661 includeSubDomains[LF] 'old.example' is not HSTS[LF] 'readfrom.example' is not HSTS[LF] example.com [example.com]: 1579905261[LF] example.com [example.com]: 1569905261[LF] example.com [example.com]: 1569905261[LF] example.com [example.com]: 1569905261 includeSubDomains[LF] example.org [example.org]: 1579905261[LF] Input 8: error 43[LF] Input 9: error 43[LF] this.example [this.example]: 1548400797[LF] 'this.example' is not HSTS[LF] Input 12: error 43[LF] Input 13: error 43[LF] Input 14: error 43[LF] 3.example.com [3.example.com]: 1569905261 includeSubDomains[LF] 3.example.com [example.com]: 1569905261 includeSubDomains[LF] foo.example.com [example.com]: 1569905261 includeSubDomains[LF] 'foo.xample.com' is not HSTS[LF] 'forexample.net' is not HSTS[LF] 'forexample.net' is not HSTS[LF] 'example.net' is not HSTS[LF] expire.example [expire.example]: 1548369268[LF] Number of entries: 4[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] expire.example [expire.example]: 1548369268[LF] 'expire.example' is not HSTS[LF] 'expire.example' is not HSTS[LF] 'expire.example' is not HSTS[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1660 ./unit/units unit1660 log/8/hsts1660 > log/8/stdout1660 2> log/8/stderr1660 === End of file commands.log === Start of file hsts1660 # Your HSTS cache. https://curl.se/docs/hsts.html # This file was generated by libcurl! Edit at your own risk. .readfrom.example "20211001 04:47:41" .old.example "20161001 04:47:41" .new.example "unlimited" === End of file hsts1660 === Start of file server.cmd Testnum 1660 === End of file server.cmd === Start of file stderr1660 URL: log/8/hsts1660 === End of file stderr1660 === Start of file valgrind1660 ==161492== ==161492== Process terminating with default action of signal 4 (SIGILL) ==161492== Illegal opcode at address 0x40775D3 ==161492== at 0x40775D3: UnknownInlinedFun (string_fortified.h:59) ==161492== by 0x40775D3: UnknownInlinedFun (request.c:46) ==161492== by 0x40775D3: Curl_open (url.c:541) ==161492== by 0x403D525: curl_easy_init (easy.c:372) ==161492== by 0x4018003: test_unit1660.lto_priv.0 (unit1660.c:124) ==161492== by 0x400A15E: main (first.c:167) ==161492== 408 bytes in 17 blocks are possibly lost in loss record 605 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x532FFA5: __tsearch (tsearch.c:337) ==161492== by 0x532FFA5: tsearch (tsearch.c:290) ==161492== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161492== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161492== by 0x52423F0: add_alias (gconv_conf.c:178) ==161492== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161492== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161492== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== ==161492== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x532FFA5: __tsearch (tsearch.c:337) ==161492== by 0x532FFA5: tsearch (tsearch.c:290) ==161492== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161492== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161492== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== ==161492== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161492== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161492== by 0x52423F0: add_alias (gconv_conf.c:178) ==161492== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161492== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==161492== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== ==161492== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161492== by 0x524274A: add_alias2 (gconv_conf.c:105) ==161492== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== ==161492== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==161492== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==161492== by 0x4077523: Curl_open (url.c:520) ==161492== by 0x403D525: curl_easy_init (easy.c:372) ==161492== by 0x4018003: test_unit1660.lto_priv.0 (unit1660.c:124) ==161492== by 0x400A15E: main (first.c:167) ==161492== ==161492== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x532FFA5: __tsearch (tsearch.c:337) ==161492== by 0x532FFA5: tsearch (tsearch.c:290) ==161492== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==161492== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161492== by 0x52423F0: add_alias (gconv_conf.c:178) ==161492== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161492== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161492== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== ==161492== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==161492== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==161492== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==161492== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==161492== by 0x52423F0: add_alias (gconv_conf.c:178) ==161492== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==161492== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==161492== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==161492== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==161492== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==161492== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==161492== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==161492== by 0x524D142: setlocale (setlocale.c:337) ==161492== by 0x400A0CB: main (first.c:123) ==161492== === End of file valgrind1660 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1664 ./unit/units unit1664 - > log/10/stdout1664 2> log/10/stderr1664 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1683 ../src/curl -q --include --trace-ascii log/11/trace1683 --trace-config all --trace-time http://127.0.0.1:40341/1683 -o log/11/exist1683 --no-clobber > log/11/stdout1683 2> log/11/stderr1683 CMD (0): /usr/bin/perl -e 'for my $i ((1..100)) { my $filename = "log/11/exist1683.$i"; open(FH, "<", $filename) or die $!; ( eq "to stay the same" and eq "") or die "incorrect $filename" ; close(FH) }' test 1681...[HTTP GET without clobber] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1681 ../src/curl -q --include --trace-ascii log/18/trace1681 --trace-config all --trace-time http://127.0.0.1:45825/1681 -o log/18/exist1681 --no-clobber -w '%{filename_effective}\n' > log/18/stdout1681 2> log/18/stderr1681 1681: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:18.097113304 +0000 +++ log/18/check-generated 2025-07-18 07:36:18.097113304 +0000 @@ -1 +0,0 @@ -log/18/exist1681.1[CR][LF] == Contents of files in the log/18/ dir after test 1681 === Start of file check-expected log/18/exist1681.1[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1681 ../src/curl -q --include --trace-ascii log/18/trace1681 --trace-config all --trace-time http://127.0.0.1:45825/1681 -o log/18/exist1681 --no-clobber -w '%{filename_effective}\n' > log/18/stdout1681 2> log/18/stderr1681 === End of file commands.log === Start of file exist1681 to stay the same === End of file exist1681 === Start of file http_server.log 07:36:16.771845 ====> Client connect 07:36:16.771884 accept_connection 3 returned 4 07:36:16.771901 accept_connection 3 returned 0 07:36:16.772038 Read 93 bytes 07:36:16.772050 Process 93 bytes request 07:36:16.772064 Got request: GET /verifiedserver HTTP/1.1 07:36:16.772073 Are-we-friendly question received 07:36:16.772102 Wrote request (93 bytes) input to log/18/server.input 07:36:16.772118 Identifying ourselves as friends 07:36:16.772173 Response sent (56 bytes) and written to log/18/server.response 07:36:16.772182 special request received, no persistency 07:36:16.772191 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 1681 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind1681 ==161958== ==161958== Process terminating with default action of signal 4 (SIGILL) ==161958== Illegal opcode at address 0x4003082 ==161958== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161958== by 0x4003082: main (tool_main.c:234) === End of file valgrind1681 * starts no server test 1664...[unit tests for strparse.c string parsing functions] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1664 ./unit/units unit1664 - > log/10/stdout1664 2> log/10/stderr1664 s------e-v- OK (1527 out of 1707, remaining: 00:10, took 1.959s, duration: 01:29) prechecked /usr/bin/perl -e 'for my $i ((1..100)) { my $filename = "log/11/exist1683.$i"; open(FH, ">", $filename) or die $!; print FH "to stay the same" ; close(FH) }' test 1683...[HTTP GET without clobber when 100 files already exist] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1683 ../src/curl -q --include --trace-ascii log/11/trace1683 --trace-config all --trace-time http://127.0.0.1:40341/1683 -o log/11/exist1683 --no-clobber > log/11/stdout1683 2> log/11/stderr1683 postcheck /usr/bin/perl -e 'for my $i ((1..100)) { my $filename = "log/11/exist1683.$i"; open(FH, "<", $filename) or die $!; ( eq "to stay the same" and eq "") or die "incorrect $filename" ; close(FH) }' curl returned 132, when expecting 23 1683: exit FAILED == Contents of files in the log/11/ dir after test 1683 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1683 ../src/curl -q --include --trace-ascii log/11/trace1683 --trace-config all --trace-time http://127.0.0.1:40341/1683 -o log/11/exist1683 --no-clobber > log/11/stdout1683 2> log/11/stderr1683 === End of file commands.log === Start of file exist1683 to stay the same === End of file exist1683 === Start of file exist1683.1 to stay the same === End of file exist1683.1 === Start of file exist1683.10 to stay the same === End of file exist1683.10 === Start of file exist1683.100 to stay the same === End of file exist1683.100 === Start of file exist1683.11 to stay the same === End of file exist1683.11 === Start of file exist1683.12 to stay the same === End of file exist1683.12 === Start of file exist1683.13 to stay the same === End of file exist1683.13 === Start of file exist1683.14 to stay the same === End of file exist1683.14 === Start of file exist1683.15 to stay the same === End of file exist1683.15 === Start of file exist1683.16 to stay the same === End of file exist1683.16 === Start of file exist1683.17 to stay the same === End of file exist1683.17 === Start of file exist1683.18 to stay the same === End of file exist1683.18 === Start of file exist1683.19 to stay the same === End of file exist1683.19 === Start of file exist1683.2 to stay the same === End of file exist1683.2 === Start of file exist1683.20 to stay the same === End of file exist1683.20 === Start of file exist1683.21 to stay the same === End of file exist1683.21 === Start of file exist1683.22 to stay the same === End of file exist1683.22 === Start of file exist1683.23 to stay the same === End of file exist1683.23 === Start of file exist1683.24 to stay the same === End of file exist1683.24 === Start of file exist1683.25 to stay the same === End of file exist1683.25 === Start of file exist1683.26 to stay the same === End of file exist1683.26 === Start of file exist1683.27 to stay the same === End of file exist1683.27 === Start of file exist1683.28 to stay the same === End of file exist1683.28 === Start of file exist1683.29 to stay the same === End of file exist1683.29 === Start of file exist1683.3 to stay the same === End of file exist1683.3 === Start of file exist1683.30 to stay the same === End of file exist1683.30 === Start of file exist1683.31 to stay the same === End of file exist1683.31 === Start of file exist1683.32 to stay the same === End of file exist1683.32 === Start of file exist1683.33 to stay the same === End of file exist1683.33 === Start of file exist1683.34 to stay the same === End of file exist1683.34 === Start of file exist1683.35 to stay the same === End of file exist1683.35 === Start of file exist1683.36 to stay the same === End of file exist1683.36 === Start of file exist1683.37 to stay the same === End of file exist1683.37 === Start of file exist1683.38 to stay the same === End of file exist1683.38 === Start of file exist1683.39 to stay the same === End of file exist1683.39 === Start of file exist1683.4 to stay the same === End of file exist1683.4 === Start of file exist1683.40 to stay the same === End of file exist1683.40 === Start of file exist1683.41 to stay the same === End of file exist1683.41 === Start of file exist1683.42 to stay the same === End of file exist1683.42 === Start of file exist1683.43 to stay the same === End of file exist1683.43 === Start of file exist1683.44 to stay the same === End of file exist1683.44 === Start of file exist1683.45 to stay the same === End of file exist1683.45 === Start of file exist1683.46 to stay the same === End of file exist1683.46 === Start of file exist1683.47 to stay the samCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1663 ./unit/units unit1663 - > log/7/stdout1663 2> log/7/stderr1663 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1800 ../src/curl -q --output log/1/curl1800.out --include --trace-ascii log/1/trace1800 --trace-config all --trace-time http://127.0.0.1:38941/1800 --http2 > log/1/stdout1800 2> log/1/stderr1800 e === End of file exist1683.47 === Start of file exist1683.48 to stay the same === End of file exist1683.48 === Start of file exist1683.49 to stay the same === End of file exist1683.49 === Start of file exist1683.5 to stay the same === End of file exist1683.5 === Start of file exist1683.50 to stay the same === End of file exist1683.50 === Start of file exist1683.51 to stay the same === End of file exist1683.51 === Start of file exist1683.52 to stay the same === End of file exist1683.52 === Start of file exist1683.53 to stay the same === End of file exist1683.53 === Start of file exist1683.54 to stay the same === End of file exist1683.54 === Start of file exist1683.55 to stay the same === End of file exist1683.55 === Start of file exist1683.56 to stay the same === End of file exist1683.56 === Start of file exist1683.57 to stay the same === End of file exist1683.57 === Start of file exist1683.58 to stay the same === End of file exist1683.58 === Start of file exist1683.59 to stay the same === End of file exist1683.59 === Start of file exist1683.6 to stay the same === End of file exist1683.6 === Start of file exist1683.60 to stay the same === End of file exist1683.60 === Start of file exist1683.61 to stay the same === End of file exist1683.61 === Start of file exist1683.62 to stay the same === End of file exist1683.62 === Start of file exist1683.63 to stay the same === End of file exist1683.63 === Start of file exist1683.64 to stay the same === End of file exist1683.64 === Start of file exist1683.65 to stay the same === End of file exist1683.65 === Start of file exist1683.66 to stay the same === End of file exist1683.66 === Start of file exist1683.67 to stay the same === End of file exist1683.67 === Start of file exist1683.68 to stay the same === End of file exist1683.68 === Start of file exist1683.69 to stay the same === End of file exist1683.69 === Start of file exist1683.7 to stay the same === End of file exist1683.7 === Start of file exist1683.70 to stay the same === End of file exist1683.70 === Start of file exist1683.71 to stay the same === End of file exist1683.71 === Start of file exist1683.72 to stay the same === End of file exist1683.72 === Start of file exist1683.73 to stay the same === End of file exist1683.73 === Start of file exist1683.74 to stay the same === End of file exist1683.74 === Start of file exist1683.75 to stay the same === End of file exist1683.75 === Start of file exist1683.76 to stay the same === End of file exist1683.76 === Start of file exist1683.77 to stay the same === End of file exist1683.77 === Start of file exist1683.78 to stay the same === End of file exist1683.78 === Start of file exist1683.79 to stay the same === End of file exist1683.79 === Start of file exist1683.8 to stay the same === End of file exist1683.8 === Start of file exist1683.80 to stay the same === End of file exist1683.80 === Start of file exist1683.81 to stay the same === End of file exist1683.81 === Start of file exist1683.82 to stay the same === End of file exist1683.82 === Start of file exist1683.83 to stay the same === End of file exist1683.83 === Start of file exist1683.84 to stay the same === End of file exist1683.84 === Start of file exist1683.85 to stay the same === End of file exist1683.85 === Start of file exist1683.86 to stay the same === End of file exist1683.86 === Start of file exist1683.87 to stay the same === End of file exist1683.87 === Start of file exist1683.88 to stay the same === End of file exist1683.88 === Start of file exist1683.89 to stay the same === End of file exist1683.89 === Start of file exist1683.9 to stay the same === End of file exist1683.9 === Start of file exist1683.90 to stay the same === End of file exist1683.90 === Start of file exist1683.91 to stay the same === End of file exist1683.91 === Start of file exist1683.92 to stay the same === End of file exist1683.92 === Start of file exist1683.93 to stay the same === End of file exist1683.93 === Start of file exist1683.94 to stay the same === End of file exist1683.94 === Start of file exist1683.95 to stay the same === End of file exist1683.95 === Start of file exist1683.96 to stay the same === End of file exist1683.96 === Start of file exist1683.97 to stay the same === End of file exist1683.97 === Start of file exist1683.98 to stay the same === End of file exist1683.98 === Start of file exist1683.99 to stay the same === End of file exist1683.99 === Start of file http_server.log 07:36:16.814914 ====> Client connect 07:36:16.814958 accept_connection 3 returned 4 07:36:16.814977 accept_connection 3 returned 0 07:36:16.814994 Read 93 bytes 07:36:16.815005 Process 93 bytes request 07:36:16.815021 Got request: GET /verifiedserver HTTP/1.1 07:36:16.815032 Are-we-friendly question received 07:36:16.815069 Wrote request (93 bytes) input to log/11/server.input 07:36:16.815090 Identifying ourselves as friends 07:36:16.815159 Response sent (57 bytes) and written to log/11/server.response 07:36:16.815173 special request received, no persistency 07:36:16.815183 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40341... * Connected to 127.0.0.1 (127.0.0.1) port 40341 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40341 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 156367 === End of file http_verify.out === Start of file server.cmd Testnum 1683 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156367 === End of file server.response === Start of file valgrind1683 ==161987== ==161987== Process terminating with default action of signal 4 (SIGILL) ==161987== Illegal opcode at address 0x4003082 ==161987== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161987== by 0x4003082: main (tool_main.c:234) === End of file valgrind1683 * starts no server test 1663...[unit tests for interface option parsing] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1663 ./unit/units unit1663 - > log/7/stdout1663 2> log/7/stderr1663 -------e-v- OK (1526 out of 1707, remaining: 00:10, took 2.033s, duration: 01:29) test 1800...[HTTP/2 upgrade refused] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1800 ../src/curl -q --output log/1/curl1800.out --include --trace-ascii log/1/trace1800 --trace-config all --trace-time http://127.0.0.1:38941/1800 --http2 > log/1/stdout1800 2> log/1/stderr1800 1800: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 1800 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1800 ../src/curl -q --output log/1/curl1800.out --include --trace-ascii log/1/trace1800 --trace-config all --trace-time http://127.0.0.1:38941/1800 --http2 > log/1/stdout1800 2> log/1/stderr1800 === End of file commands.log === Start of file http_server.log 07:36:17.145015 ====> Client connect 07:36:17.145054 accept_connection 3 returned 4 07:36:17.145073 accept_connection 3 returned 0 07:36:17.145089 Read 93 bytes 07:36:17.145100 Process 93 bytes request 07:36:17.145115 Got request: GET /verifiedserver HTTP/1.1 07:36:17.145125 Are-we-friendly question received 07:36:17.145153 Wrote request (93 bytes) input to log/1/server.input 07:36:17.145172 Identifying ourselves as friends 07:36:17.145241 Response sent (56 bytes) and written to log/1/server.response 07:36:17.145255 special request receivedCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1682 ../src/curl -q --include --trace-ascii log/20/trace1682 --trace-config all --trace-time http://127.0.0.1:37169/1682 --output-dir log/20 -o exist1682 --no-clobber > log/20/stdout1682 2> log/20/stderr1682 , no persistency 07:36:17.145265 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1800 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind1800 ==162235== ==162235== Process terminating with default action of signal 4 (SIGILL) ==162235== Illegal opcode at address 0x4003082 ==162235== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==162235== by 0x4003082: main (tool_main.c:234) === End of file valgrind1800 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1704 ../src/curl -q --output log/13/curl1704.out --include --trace-ascii log/13/trace1704 --trace-config all --trace-time http://127.0.0.1:33627/1704 --http2 > log/13/stdout1704 2> log/13/stderr1704 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1904 ../src/curl -q --output log/17/curl1904.out --include --trace-ascii log/17/trace1904 --trace-config all --trace-time http://test.1904:39089/we/want/that/page/1904 -p --proxy 127.0.0.1:40179 > log/17/stdout1904 2> log/17/stderr1904 test 1682...[HTTP GET without clobber and --output-dir] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1682 ../src/curl -q --include --trace-ascii log/20/trace1682 --trace-config all --trace-time http://127.0.0.1:37169/1682 --output-dir log/20 -o exist1682 --no-clobber > log/20/stdout1682 2> log/20/stderr1682 1682: output (log/20/exist1682.1) FAILED: --- log/20/check-expected 2025-07-18 07:36:18.360446642 +0000 +++ log/20/check-generated 2025-07-18 07:36:18.360446642 +0000 @@ -1,6 +0,0 @@ -HTTP/1.0 200 OK[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -Content-Length: 4[LF] -[LF] -foo[LF] == Contents of files in the log/20/ dir after test 1682 === Start of file check-expected HTTP/1.0 200 OK[LF] Connection: close[LF] Content-Type: text/plain[LF] Content-Length: 4[LF] [LF] foo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1682 ../src/curl -q --include --trace-ascii log/20/trace1682 --trace-config all --trace-time http://127.0.0.1:37169/1682 --output-dir log/20 -o exist1682 --no-clobber > log/20/stdout1682 2> log/20/stderr1682 === End of file commands.log === Start of file exist1682 to stay the same === End of file exist1682 === Start of file http_server.log 07:36:16.822479 ====> Client connect 07:36:16.822518 accept_connection 3 returned 4 07:36:16.822537 accept_connection 3 returned 0 07:36:16.822552 Read 93 bytes 07:36:16.822563 Process 93 bytes request 07:36:16.822577 Got request: GET /verifiedserver HTTP/1.1 07:36:16.822587 Are-we-friendly question received 07:36:16.822614 Wrote request (93 bytes) input to log/20/server.input 07:36:16.822642 Identifying ourselves as friends 07:36:16.822728 Response sent (56 bytes) and written to log/20/server.response 07:36:16.822742 special request received, no persistency 07:36:16.822752 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 1682 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind1682 ==161992== ==161992== Process terminating with default action of signal 4 (SIGILL) ==161992== Illegal opcode at address 0x4003082 ==161992== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==161992== by 0x4003082: main (tool_main.c:234) === End of file valgrind1682 test 1704...[HTTP/1 doing HTTP/2 Upgrade: getting an HTTP/2 101 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1704 ../src/curl -q --output log/13/curl1704.out --include --trace-ascii log/13/trace1704 --trace-config all --trace-time http://127.0.0.1:33627/1704 --http2 > log/13/stdout1704 2> log/13/stderr1704 1704: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 1704 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1704 ../src/curl -q --output log/13/curl1704.out --include --trace-ascii log/13/trace1704 --trace-config all --trace-time http://127.0.0.1:33627/1704 --http2 > log/13/stdout1704 2> log/13/stderr1704 === End of file commands.log === Start of file http_server.log 07:36:17.106025 ====> Client connect 07:36:17.106074 accept_connection 3 returned 4 07:36:17.106095 accept_connection 3 returned 0 07:36:17.106113 Read 93 bytes 07:36:17.106124 Process 93 bytes request 07:36:17.106140 Got request: GET /verifiedserver HTTP/1.1 07:36:17.106150 Are-we-friendly question received 07:36:17.106179 Wrote request (93 bytes) input to log/13/server.input 07:36:17.106198 Identifying ourselves as friends 07:36:17.106284 Response sent (56 bytes) and written to log/13/server.response 07:36:17.106298 special request received, no persistency 07:36:17.106308 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1704 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind1704 ==162234== ==162234== Process terminating with default action of signal 4 (SIGILL) ==162234== Illegal opcode at address 0x4003082 ==162234== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==162234== by 0x4003082: main (tool_main.c:234) === End of file valgrind1704 test 1904...[HTTP CONNECT with 204 response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1904 ../src/curl -q --output log/17/curl1904.out --include --trace-ascii log/17/trace1904 --trace-config all --trace-time http://test.1904:39089/we/want/that/page/1904 -p --proxy 127.0.0.1:40179 > log/17/stdout1904 2> log/17/stderr1904 1904: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 1904 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1904 ../src/curl -q --output log/17/curl1904.out --include --trace-ascii log/17/trace1904 --trace-config all --trace-time http://test.1904:39089/we/want/that/page/1904 -p --proxy 127.0.0.1:40179 > log/17/stdout1904 2> log/17/stderr1904 === End of file commands.log === Start of file http2_server.log 07:36:17.397718 ====> Client connect 07:36:17.397752 accept_connection 3 returned 4 07:36:17.397767 accept_connection 3 returned 0 07:36:17.397782 Read 93 bytes 07:36:17.397796 Process 93 bytes request 07:36:17.397808 Got request: GET /verifiedserver HTTP/1.1 07:36:17.397817 Are-we-friendly question received 07:36:17.397839 Wrote request (93 bytes) input to log/17/proxy.input 07:36:17.397859 Identifying ourselves as friends 07:36:17.397916 Response sent (57 bytes) and written to log/17/proxy.response 07:36:17.397928 special request received, no persistency 07:36:17.397937 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:40179... * Connected to 127.0.0.1 (127.0.0.1) port 40179 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40179 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.logCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1909 ../src/curl -q --trace-ascii log/22/trace1909 --trace-config all --trace-time --retry 1 --retry-all-errors -o log/22/outfile1909 http://127.0.0.1:46761/1909 > log/22/stdout1909 2> log/22/stderr1909 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1906 ./libtest/libtests lib1906 http://127.0.0.1:38675/1906 > log/24/stdout1906 2> log/24/stderr1906 === Start of file http2_verify.out WE ROOLZ: 111419 === End of file http2_verify.out === Start of file http_server.log 07:36:17.295045 ====> Client connect 07:36:17.295082 accept_connection 3 returned 4 07:36:17.295100 accept_connection 3 returned 0 07:36:17.295196 Read 93 bytes 07:36:17.295213 Process 93 bytes request 07:36:17.295226 Got request: GET /verifiedserver HTTP/1.1 07:36:17.295236 Are-we-friendly question received 07:36:17.295371 Wrote request (93 bytes) input to log/17/server.input 07:36:17.295394 Identifying ourselves as friends 07:36:17.295456 Response sent (56 bytes) and written to log/17/server.response 07:36:17.295470 special request received, no persistency 07:36:17.295480 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 111419 === End of file proxy.response === Start of file server.cmd Testnum 1904 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind1904 ==162643== ==162643== Process terminating with default action of signal 4 (SIGILL) ==162643== Illegal opcode at address 0x4003082 ==162643== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==162643== by 0x4003082: main (tool_main.c:234) === End of file valgrind1904 test 1909...[HTTP GET --retry-all-errors to overcome partial transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1909 ../src/curl -q --trace-ascii log/22/trace1909 --trace-config all --trace-time --retry 1 --retry-all-errors -o log/22/outfile1909 http://127.0.0.1:46761/1909 > log/22/stdout1909 2> log/22/stderr1909 1909: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 1909 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1909 ../src/curl -q --trace-ascii log/22/trace1909 --trace-config all --trace-time --retry 1 --retry-all-errors -o log/22/outfile1909 http://127.0.0.1:46761/1909 > log/22/stdout1909 2> log/22/stderr1909 === End of file commands.log === Start of file http_server.log 07:36:17.439360 ====> Client connect 07:36:17.439406 accept_connection 3 returned 4 07:36:17.439423 accept_connection 3 returned 0 07:36:17.453439 Read 93 bytes 07:36:17.453467 Process 93 bytes request 07:36:17.453483 Got request: GET /verifiedserver HTTP/1.1 07:36:17.453492 Are-we-friendly question received 07:36:17.453537 Wrote request (93 bytes) input to log/22/server.input 07:36:17.453558 Identifying ourselves as friends 07:36:17.453612 Response sent (56 bytes) and written to log/22/server.response 07:36:17.453621 special request received, no persistency 07:36:17.453630 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1909 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind1909 ==162714== ==162714== Process terminating with default action of signal 4 (SIGILL) ==162714== Illegal opcode at address 0x4003082 ==162714== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==162714== by 0x4003082: main (tool_main.c:234) === End of file valgrind1909 test 1906...[CURLOPT_CURLU and CURLOPT_PORT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1906 ./libtest/libtests lib1906 http://127.0.0.1:38675/1906 > log/24/stdout1906 2> log/24/stderr1906 1906: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 1906 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1906 ./libtest/libtests lib1906 http://127.0.0.1:38675/1906 > log/24/stdout1906 2> log/24/stderr1906 === End of file commands.log === Start of file http_server.log 07:36:17.341716 ====> Client connect 07:36:17.341763 accept_connection 3 returned 4 07:36:17.341783 accept_connection 3 returned 0 07:36:17.341800 Read 93 bytes 07:36:17.341811 Process 93 bytes request 07:36:17.341825 Got request: GET /verifiedserver HTTP/1.1 07:36:17.341835 Are-we-friendly question received 07:36:17.341865 Wrote request (93 bytes) input to log/24/server.input 07:36:17.341885 Identifying ourselves as friends 07:36:17.341958 Response sent (56 bytes) and written to log/24/server.response 07:36:17.341972 special request received, no persistency 07:36:17.341982 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 1906 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr1906 URL: http://127.0.0.1:38675/1906 === End of file stderr1906 === Start of file valgrind1906 ==162550== ==162550== Process terminating with default action of signal 4 (SIGILL) ==162550== Illegal opcode at address 0x4036EDF ==162550== at 0x4036EDF: test_lib1906.lto_priv.0 (lib1906.c:33) ==162550== by 0x4003443: main (first.c:167) ==162550== 88 bytes in 1 blocks are definitely lost in loss record 5 of 30 ==162550== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162550== by 0x4036EDA: test_lib1906.lto_priv.0 (lib1906.c:32) ==162550== by 0x4003443: main (first.c:167) ==162550== ==162550== 408 bytes in 17 blocks are possibly lost in loss record 10 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x533CFA5: __tsearch (tsearch.c:337) ==162550== by 0x533CFA5: tsearch (tsearch.c:290) ==162550== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162550== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162550== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162550== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162550== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162550== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162550== by 0x52BFCB3: __CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1907 ./libtest/libtests lib1907 127.0.0.1:37285/hello/../1907 > log/12/stdout1907 2> log/12/stderr1907 pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== ==162550== 552 bytes in 23 blocks are possibly lost in loss record 12 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x533CFA5: __tsearch (tsearch.c:337) ==162550== by 0x533CFA5: tsearch (tsearch.c:290) ==162550== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162550== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162550== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162550== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== ==162550== 681 bytes in 17 blocks are possibly lost in loss record 15 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162550== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162550== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162550== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162550== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162550== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162550== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== ==162550== 1,018 bytes in 23 blocks are possibly lost in loss record 20 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162550== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162550== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162550== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== ==162550== 11,664 bytes in 486 blocks are possibly lost in loss record 27 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x533CFA5: __tsearch (tsearch.c:337) ==162550== by 0x533CFA5: tsearch (tsearch.c:290) ==162550== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162550== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162550== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162550== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162550== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162550== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162550== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== ==162550== 18,800 bytes in 486 blocks are possibly lost in loss record 29 of 30 ==162550== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162550== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162550== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162550== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162550== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162550== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162550== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162550== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162550== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162550== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162550== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162550== by 0x525A142: setlocale (setlocale.c:337) ==162550== by 0x400336E: main (first.c:123) ==162550== === End of file valgrind1906 test 1907...[CURLINFO_EFFECTIVE_URL with non-scheme URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1907 ./libtest/libtests lib1907 127.0.0.1:37285/hello/../1907 > log/12/stdout1907 2> log/12/stderr1907 1907: stdout FAILED: --- log/12/check-expected 2025-07-18 07:36:18.760446652 +0000 +++ log/12/check-generated 2025-07-18 07:36:18.760446652 +0000 @@ -1 +0,0 @@ -Effective URL: http://127.0.0.1:37285/1907[LF] == Contents of files in the log/12/ dir after test 1907 === Start of file check-expected Effective URL: http://127.0.0.1:37285/1907[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1907 ./libtest/libtests lib1907 127.0.0.1:37285/hello/../1907 > log/12/stdout1907 2> log/12/stderr1907 === End of file commands.log === Start of file http_server.log 07:36:17.429559 ====> Client connect 07:36:17.429602 accept_connection 3 returned 4 07:36:17.429621 accept_connection 3 returned 0 07:36:17.429638 Read 93 bytes 07:36:17.429648 Process 93 bytes request 07:36:17.429660 Got request: GET /verifiedserver HTTP/1.1 07:36:17.429670 Are-we-friendly question received 07:36:17.429699 Wrote request (93 bytes) input to log/12/server.input 07:36:17.429715 Identifying ourselves as friends 07:36:17.429786 Response sent (56 bytes) and written to log/12/server.response 07:36:17.429799 special request received, no persistency 07:36:17.429808 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1907 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr1907 URL: 127.0.0.1:37285/hello/../1907 === End of file stderr1907 === Start of file valgrind1907 ==162656== ==162656== Process terminating with default action of signal 4 (SIGILL) ==162656== Illegal opcode at address 0x403502C ==162656== at 0x403502C: test_lib1907.lto_priv.0 (lib1907.c:33) ==162656== by 0x4003443: main (first.c:167) ==162656== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x533CFA5: __tsearch (tsearch.c:337) ==162656== by 0x533CFA5: tsearch (tsearch.c:290) ==162656== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162656== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162656== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162656== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162656== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162656== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== ==162656== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x533CFA5: __tsearch (tsearch.c:337) ==162656== by 0x533CFA5: tsearch (tsearch.c:290) ==162656== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162656== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162656== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== ==162656== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162656== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162656== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162656== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162656== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162656== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== ==162656== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162656== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162656== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== ==162656== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x533CFA5: __tsearch (tsearch.c:337) ==162656== by 0x533CFA5: tsearch (tsearch.c:290) ==162656== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162656== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162656== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162656== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162656== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162656== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== ==162656== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==162656== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162656== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162656== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162656== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162656== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162656== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162656== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162656== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162656== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162656== by 0x524E246: __gconv_compare_alias (gconv_db.c:692CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1900 ./libtest/libtests lib1900 http://127.0.0.1:47/not-there/1900 > log/5/stdout1900 2> log/5/stderr1900 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1911 ./libtest/libtests lib1911 - > log/2/stdout1911 2> log/2/stderr1911 ) ==162656== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162656== by 0x525A142: setlocale (setlocale.c:337) ==162656== by 0x400336E: main (first.c:123) ==162656== === End of file valgrind1907 * starts no server test 1900...[HSTS curl_easy_duphandle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1900 ./libtest/libtests lib1900 http://127.0.0.1:47/not-there/1900 > log/5/stdout1900 2> log/5/stderr1900 libtests returned 132, when expecting 0 1900: exit FAILED == Contents of files in the log/5/ dir after test 1900 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1900 ./libtest/libtests lib1900 http://127.0.0.1:47/not-there/1900 > log/5/stdout1900 2> log/5/stderr1900 === End of file commands.log === Start of file server.cmd Testnum 1900 === End of file server.cmd === Start of file stderr1900 URL: http://127.0.0.1:47/not-there/1900 === End of file stderr1900 === Start of file valgrind1900 ==162236== ==162236== Process terminating with default action of signal 4 (SIGILL) ==162236== Illegal opcode at address 0x51C2DB3 ==162236== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==162236== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==162236== by 0x51C2DB3: Curl_open (url.c:541) ==162236== by 0x513D46F: curl_easy_init (easy.c:372) ==162236== by 0x403650C: UnknownInlinedFun (lib1900.c:36) ==162236== by 0x403650C: test_lib1900.lto_priv.0 (lib1900.c:28) ==162236== by 0x4003443: main (first.c:167) ==162236== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x533CFA5: __tsearch (tsearch.c:337) ==162236== by 0x533CFA5: tsearch (tsearch.c:290) ==162236== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162236== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162236== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162236== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162236== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162236== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== ==162236== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x533CFA5: __tsearch (tsearch.c:337) ==162236== by 0x533CFA5: tsearch (tsearch.c:290) ==162236== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162236== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162236== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== ==162236== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162236== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162236== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162236== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162236== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162236== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== ==162236== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162236== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162236== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== ==162236== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==162236== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162236== by 0x51C2D03: Curl_open (url.c:520) ==162236== by 0x513D46F: curl_easy_init (easy.c:372) ==162236== by 0x403650C: UnknownInlinedFun (lib1900.c:36) ==162236== by 0x403650C: test_lib1900.lto_priv.0 (lib1900.c:28) ==162236== by 0x4003443: main (first.c:167) ==162236== ==162236== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x533CFA5: __tsearch (tsearch.c:337) ==162236== by 0x533CFA5: tsearch (tsearch.c:290) ==162236== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162236== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162236== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162236== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162236== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162236== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== ==162236== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162236== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162236== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162236== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162236== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162236== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162236== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162236== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162236== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162236== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162236== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162236== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162236== by 0x525A142: setlocale (setlocale.c:337) ==162236== by 0x400336E: main (first.c:123) ==162236== === End of file valgrind1900 * starts no server test 1911...[verify that curl_easy_setopt() rejects too long string inputs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1911 ./libtest/libtests lib1911 - > log/2/stdout1911 2> log/2/stderr1911 libtests returCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1912 ./libtest/libtests lib1912 - > log/16/stdout1912 2> log/16/stderr1912 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1901 ./libtest/libtests lib1901 http://127.0.0.1:33235/boom > log/4/stdout1901 2> log/4/stderr1901 ned 132, when expecting 0 1911: exit FAILED == Contents of files in the log/2/ dir after test 1911 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1911 ./libtest/libtests lib1911 - > log/2/stdout1911 2> log/2/stderr1911 === End of file commands.log === Start of file server.cmd Testnum 1911 === End of file server.cmd === Start of file stderr1911 URL: - === End of file stderr1911 === Start of file valgrind1911 ==162675== ==162675== Process terminating with default action of signal 4 (SIGILL) ==162675== Illegal opcode at address 0x51C2DB3 ==162675== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==162675== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==162675== by 0x51C2DB3: Curl_open (url.c:541) ==162675== by 0x513D46F: curl_easy_init (easy.c:372) ==162675== by 0x40377FF: test_lib1911.lto_priv.0 (lib1911.c:42) ==162675== by 0x4003443: main (first.c:167) ==162675== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x533CFA5: __tsearch (tsearch.c:337) ==162675== by 0x533CFA5: tsearch (tsearch.c:290) ==162675== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162675== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162675== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162675== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162675== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162675== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== ==162675== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x533CFA5: __tsearch (tsearch.c:337) ==162675== by 0x533CFA5: tsearch (tsearch.c:290) ==162675== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162675== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162675== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== ==162675== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162675== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162675== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162675== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162675== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162675== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== ==162675== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162675== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162675== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== ==162675== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==162675== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162675== by 0x51C2D03: Curl_open (url.c:520) ==162675== by 0x513D46F: curl_easy_init (easy.c:372) ==162675== by 0x40377FF: test_lib1911.lto_priv.0 (lib1911.c:42) ==162675== by 0x4003443: main (first.c:167) ==162675== ==162675== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x533CFA5: __tsearch (tsearch.c:337) ==162675== by 0x533CFA5: tsearch (tsearch.c:290) ==162675== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162675== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162675== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162675== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162675== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162675== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== ==162675== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162675== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162675== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162675== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162675== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162675== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162675== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162675== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162675== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162675== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162675== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162675== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162675== by 0x525A142: setlocale (setlocale.c:337) ==162675== by 0x400336E: main (first.c:123) ==162675== === End of file valgrind1911 * starts no server test 1912...[Cross validate that gcc-typecheck macros match the option types.] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1912 ./libtest/libtests lib1912 - > log/16/stdout1912 2> log/16/stderr1912 -------e-v- OK (1551 out of 1707, remaining: 00:09, took 1.192s, duration: 01:30) prechecked ./libtest/lib1960 check test 1901...[Chunked HTTP POST from callback with CURLOPT_POSTFIELDSIZE set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1901 ./libtest/libtests lib1901 http://127.0.0.1:33235/boom > log/4/stdout1901 2> log/4/stderr1901 1901: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 1901 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1901 ./libtest/libtests lib1901 http://127.0.0.1:33235/boom > log/4/stdout1901 2> log/4/stderr1901 === End of file commands.log === Start of file http_server.log 07:36:17.212704 ====> Client connect 07:36:17.212750 accept_connection 3 returned 4 07:36:17.212771 accept_connection 3 returned 0 07:36:17.212791 Read 93 bytes 07:36:17.212801 Process 93 bytes request 07:36:17.212816 Got request: GET /verifiedserver HTTP/1.1 07:36:17.212825 Are-we-friendly question received 07:36:17.212852 Wrote request (93 bytes) input to log/4/server.input 07:36:17.212868 Identifying ourselves as friends 07:36:17.212951 Response sent (56 bytes) and written to log/4/server.response 07:36:17.212961 special request received, no persistency 07:36:17.212970 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1901 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1901 URL: http://127.0.0.1:33235/boom === End of file stderr1901 === Start of file valgrind1901 ==162313== ==162313== Process terminating with default action of signal 4 (SIGILL) ==162313== Illegal opcode at address 0x51C2DB3 ==162313== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==162313== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==162313== by 0x51C2DB3: Curl_open (url.c:541) ==162313== by 0x513D46F: curl_easy_init (easy.c:372) ==162313== by 0x4032184: test_lib1901.lto_priv.0 (lib1901.c:58) ==162313== by 0x4003443: main (first.c:167) ==162313== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x533CFA5: __tsearch (tsearch.c:337) ==162313== by 0x533CFA5: tsearch (tsearch.c:290) ==162313== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162313== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162313== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162313== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162313== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162313== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== ==162313== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x533CFA5: __tsearch (tsearch.c:337) ==162313== by 0x533CFA5: tsearch (tsearch.c:290) ==162313== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162313== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162313== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== ==162313== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162313== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162313== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162313== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162313== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162313== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== ==162313== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162313== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162313== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== ==162313== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==162313== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162313== by 0x51C2D03: Curl_open (url.c:520) ==162313== by 0x513D46F: curl_easy_init (easy.c:372) ==162313== by 0x4032184: test_lib1901.lto_priv.0 (lib1901.c:58) ==162313== by 0x4003443: main (first.c:167) ==162313== ==162313== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x533CFA5: __tsearch (tsearch.c:337) ==162313== by 0x533CFA5: tsearch (tsearch.c:290) ==162313== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162313== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162313== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162313== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162313== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162313== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== ==162313== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162313== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162313== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162313== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162313== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162313== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162313== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162313== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162313== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162313== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162313== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162313== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162313== by 0x525A142: setlocale (setlocale.c:337) ==162313== by 0x400336E: main (first.c:123) ==162313== === End of file CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1903 ./libtest/libtests lib1903 http://127.0.0.1:34999/we/want/1903 log/9/cookies1903 log/9/cookiesout1903 > log/9/stdout1903 2> log/9/stderr1903 valgrind1901 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1910 ./libtest/libtests lib1910 127.0.0.1:42345/1910 > log/3/stdout1910 2> log/3/stderr1910 test 1903...[CURLOPT_COOKIEFILE then reset then set again] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1903 ./libtest/libtests lib1903 http://127.0.0.1:34999/we/want/1903 log/9/cookies1903 log/9/cookiesout1903 > log/9/stdout1903 2> log/9/stderr1903 1903: output (log/9/cookiesout1903) FAILED: --- log/9/check-expected 2025-07-18 07:36:19.423780000 +0000 +++ log/9/check-generated 2025-07-18 07:36:19.423780000 +0000 @@ -1,6 +0,0 @@ -# Netscape HTTP Cookie File[CR][LF] -# https://curl.se/docs/http-cookies.html[CR][LF] -# This file was generated by libcurl! Edit at your own risk.[CR][LF] -[CR][LF] -127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09foobar%09name[CR][LF] -127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09secondcookie%09present[CR][LF] == Contents of files in the log/9/ dir after test 1903 === Start of file check-expected # Netscape HTTP Cookie File[CR][LF] # https://curl.se/docs/http-cookies.html[CR][LF] # This file was generated by libcurl! Edit at your own risk.[CR][LF] [CR][LF] 127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09foobar%09name[CR][LF] 127.0.0.1%09FALSE%09/we/want/%09FALSE%090%09secondcookie%09present[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1903 ./libtest/libtests lib1903 http://127.0.0.1:34999/we/want/1903 log/9/cookies1903 log/9/cookiesout1903 > log/9/stdout1903 2> log/9/stderr1903 === End of file commands.log === Start of file cookies1903 # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. 127.0.0.1 FALSE /we/want/ FALSE 0 secondcookie present 127.0.0.1 FALSE /we/want/ FALSE 0 foobar name === End of file cookies1903 === Start of file http_server.log 07:36:17.293288 ====> Client connect 07:36:17.293329 accept_connection 3 returned 4 07:36:17.293348 accept_connection 3 returned 0 07:36:17.299327 Read 93 bytes 07:36:17.299351 Process 93 bytes request 07:36:17.299363 Got request: GET /verifiedserver HTTP/1.1 07:36:17.299373 Are-we-friendly question received 07:36:17.299405 Wrote request (93 bytes) input to log/9/server.input 07:36:17.299425 Identifying ourselves as friends 07:36:17.299476 Response sent (56 bytes) and written to log/9/server.response 07:36:17.299489 special request received, no persistency 07:36:17.299498 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 1903 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr1903 URL: http://127.0.0.1:34999/we/want/1903 === End of file stderr1903 === Start of file valgrind1903 ==162480== ==162480== Process terminating with default action of signal 4 (SIGILL) ==162480== Illegal opcode at address 0x51C2DB3 ==162480== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==162480== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==162480== by 0x51C2DB3: Curl_open (url.c:541) ==162480== by 0x513D46F: curl_easy_init (easy.c:372) ==162480== by 0x403682C: UnknownInlinedFun (lib1903.c:34) ==162480== by 0x403682C: test_lib1903.lto_priv.0 (lib1903.c:28) ==162480== by 0x4003443: main (first.c:167) ==162480== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x533CFA5: __tsearch (tsearch.c:337) ==162480== by 0x533CFA5: tsearch (tsearch.c:290) ==162480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162480== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162480== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== ==162480== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x533CFA5: __tsearch (tsearch.c:337) ==162480== by 0x533CFA5: tsearch (tsearch.c:290) ==162480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162480== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162480== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== ==162480== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162480== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162480== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== ==162480== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162480== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162480== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== ==162480== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==162480== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162480== by 0x51C2D03: Curl_open (url.c:520) ==162480== by 0x513D46F: curl_easy_init (easy.c:372) ==162480== by 0x403682C: UnknownInlinedFun (lib1903.c:34) ==162480== by 0x403682C: test_lib1903.lto_priv.0 (lib1903.c:28) ==162480== by 0x4003443: main (first.c:167) ==162480== ==162480== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x533CFA5: __tsearch (tsearch.c:337) ==162480== by 0x533CFA5: tsearch (tsearch.c:290) ==162480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162480== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162480== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== ==162480== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162480== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162480== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162480== by 0x525A142: setlocale (setlocale.c:337) ==162480== by 0x400336E: main (first.c:123) ==162480== === End of file valgrind1903 test 1910...[HTTP credentials with newline and redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1910 ./libtest/libtests lib1910 127.0.0.1:42345/1910 > log/3/stdout1910 2> log/3/stderr1910 1910: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 1910 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1910 ./libtest/libtests lib1910 127.0.0.1:42345/1910 > log/3/stdout1910 2> log/3/stderr1910 === End of file commands.log === Start of file http_server.log 07:36:17.441894 ====> Client connect 07:36:17.441928 accept_connection 3 returned 4 07:36:17.441944 accept_connection 3 returned 0 07:36:17.441957 Read 93 bytes 07:36:17.441966 Process 93 bytes request 07:36:17.441980 Got request: GET /verifiedserver HTTP/1.1 07:36:17.441989 Are-we-friendly question received 07:36:17.442014 Wrote request (93 bytes) input to log/3/server.input 07:36:17.442031 Identifying ourselves as friends 07:36:17.442084 Response sent (56 bytes) and written to log/3/server.response 07:36:17.442094 special request received, no persistency 07:36:17.442102 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 1910 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr1910 URL: 127.0.0.1:42345/1910 === End of file stderr1910 === Start of file valgrind1910 ==162678== ==162678== Process terminating with default action of signal 4 (SIGILL) ==162678== Illegal opcode at address 0x51C2DB3 ==162678== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==162678== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==162678== by 0x51C2DB3: Curl_open (url.c:541) ==162678== by 0x513D46F: curl_easy_init (easy.c:372) ==162678== by 0x4030DB7: test_lib1910.lto_priv.0 (lib1910.c:36) ==162678== by 0x4003443: main (first.c:167) ==162678== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x533CFA5: __tsearch (tsearch.c:337) ==162678== by 0x533CFA5: tsearch (tsearch.c:290) ==162678== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162678== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162678== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162678== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162678== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162678== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocale (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== ==162678== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x533CFA5: __tsearch (tsearch.c:337) ==162678== by 0x533CFA5: tsearch (tsearch.c:290) ==162678== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162678== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162678== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocale (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== ==162678== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162678== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162678== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162678== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162678== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162678== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocale (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== ==162678== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162678== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162678== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1905 ./libtest/libtests lib1905 http://127.0.0.1:34881/we/want/1905 log/15/cookies1905 > log/15/stdout1905 2> log/15/stderr1905 le (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== ==162678== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==162678== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162678== by 0x51C2D03: Curl_open (url.c:520) ==162678== by 0x513D46F: curl_easy_init (easy.c:372) ==162678== by 0x4030DB7: test_lib1910.lto_priv.0 (lib1910.c:36) ==162678== by 0x4003443: main (first.c:167) ==162678== ==162678== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x533CFA5: __tsearch (tsearch.c:337) ==162678== by 0x533CFA5: tsearch (tsearch.c:290) ==162678== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162678== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162678== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162678== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162678== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162678== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocale (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== ==162678== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162678== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162678== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162678== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162678== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162678== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162678== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162678== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162678== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162678== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162678== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162678== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162678== by 0x525A142: setlocale (setlocale.c:337) ==162678== by 0x400336E: main (first.c:123) ==162678== === End of file valgrind1910 test 1905...[CURLOPT_COOKIELIST set to "FLUSH" of a shared cookie object] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1905 ./libtest/libtests lib1905 http://127.0.0.1:34881/we/want/1905 log/15/cookies1905 > log/15/stdout1905 2> log/15/stderr1905 1905: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 1905 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind1905 ./libtest/libtests lib1905 http://127.0.0.1:34881/we/want/1905 log/15/cookies1905 > log/15/stdout1905 2> log/15/stderr1905 === End of file commands.log === Start of file http_server.log 07:36:17.297589 ====> Client connect 07:36:17.297622 accept_connection 3 returned 4 07:36:17.297641 accept_connection 3 returned 0 07:36:17.297656 Read 93 bytes 07:36:17.297667 Process 93 bytes request 07:36:17.297678 Got request: GET /verifiedserver HTTP/1.1 07:36:17.297688 Are-we-friendly question received 07:36:17.297723 Wrote request (93 bytes) input to log/15/server.input 07:36:17.297742 Identifying ourselves as friends 07:36:17.297802 Response sent (57 bytes) and written to log/15/server.response 07:36:17.297814 special request received, no persistency 07:36:17.297823 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34881... * Connected to 127.0.0.1 (127.0.0.1) port 34881 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34881 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 157411 === End of file http_verify.out === Start of file server.cmd Testnum 1905 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 157411 === End of file server.response === Start of file stderr1905 URL: http://127.0.0.1:34881/we/want/1905 === End of file stderr1905 === Start of file valgrind1905 ==162486== ==162486== Process terminating with default action of signal 4 (SIGILL) ==162486== Illegal opcode at address 0x518AA97 ==162486== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==162486== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==162486== by 0x518AA97: Curl_multi_handle (multi.c:236) ==162486== by 0x4036C00: test_lib1905.lto_priv.0 (lib1905.c:37) ==162486== by 0x4003443: main (first.c:167) ==162486== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x533CFA5: __tsearch (tsearch.c:337) ==162486== by 0x533CFA5: tsearch (tsearch.c:290) ==162486== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162486== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162486== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162486== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162486== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162486== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162486== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== ==162486== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x533CFA5: __tsearch (tsearch.c:337) ==162486== by 0x533CFA5: tsearch (tsearch.c:290) ==162486== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162486== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162486== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162486== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== ==162486== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==162486== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==162486== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==162486== by 0x4036C00: test_lib1905.lto_priv.0 (lib1905.c:37) ==162486== by 0x4003443: main (first.c:167) ==162486== ==162486== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162486== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162486== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162486== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162486== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==162486== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==162486== by 0x52BFCB3: _CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1914 ./libtest/libtests lib1913 ftp://127.0.0.1:40681/not-there/1913 1 > log/19/stdout1914 2> log/19/stderr1914 _pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== ==162486== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162486== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==162486== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==162486== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== ==162486== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x533CFA5: __tsearch (tsearch.c:337) ==162486== by 0x533CFA5: tsearch (tsearch.c:290) ==162486== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==162486== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162486== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162486== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162486== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162486== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162486== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== ==162486== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==162486== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==162486== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==162486== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==162486== by 0x524F3F0: add_alias (gconv_conf.c:178) ==162486== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==162486== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==162486== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==162486== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==162486== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==162486== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==162486== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==162486== by 0x525A142: setlocale (setlocale.c:337) ==162486== by 0x400336E: main (first.c:123) ==162486== === End of file valgrind1905 test 1914...[FTP with NOBODY and FILETIME set, getting a missing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1914 ./libtest/libtests lib1913 ftp://127.0.0.1:40681/not-there/1913 1 > log/19/stdout1914 2> log/19/stderr1914 libtests returned 132, when expecting 78 1914: exit FAILED == Contents of files in the log/19/ dir after test 1914 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind1914 ./libtest/libtests lib1913 ftp://127.0.0.1:40681/not-there/1913 1 > log/19/stdout1914 2> log/19/stderr1914 === End of file commands.log === Start of file ftp_server.log 07:36:18.090027 ====> Client connect 07:36:18.090234 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:18.097093 < "USER anonymous" 07:36:18.100027 > "331 We are happy you popped in![CR][LF]" 07:36:18.126835 < "PASS ftp@example.com" 07:36:18.126903 > "230 Welcome you silly person[CR][LF]" 07:36:18.127147 < "PWD" 07:36:18.127179 > "257 "/" is current directory[CR][LF]" 07:36:18.127334 < "EPSV" 07:36:18.127356 ====> Passive DATA channel requested by client 07:36:18.127368 DATA sockfilt for passive data channel starting... 07:36:18.140113 DATA sockfilt for passive data channel started (pid 163038) 07:36:18.140355 DATA sockfilt for passive data channel listens on port 43705 07:36:18.140420 > "229 Entering Passive Mode (|||43705|)[LF]" 07:36:18.140439 Client has been notified that DATA conn will be accepted on port 43705 07:36:18.140794 Client connects to port 43705 07:36:18.140822 ====> Client established passive DATA connection on port 43705 07:36:18.140908 < "TYPE I" 07:36:18.140941 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:18.141073 < "SIZE verifiedserver" 07:36:18.141108 > "213 17[CR][LF]" 07:36:18.141230 < "RETR verifiedserver" 07:36:18.141263 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:18.141355 =====> Closing passive DATA connection... 07:36:18.141369 Server disconnects passive DATA connection 07:36:18.143540 Server disconnected passive DATA connection 07:36:18.143569 DATA sockfilt for passive data channel quits (pid 163038) 07:36:18.143963 DATA sockfilt for passive data channel quit (pid 163038) 07:36:18.143993 =====> Closed passive DATA connection 07:36:18.144025 > "226 File transfer complete[CR][LF]" 07:36:18.200164 < "QUIT" 07:36:18.200238 > "221 bye bye baby[CR][LF]" 07:36:18.201425 MAIN sockfilt said DISC 07:36:18.201464 ====> Client disconnected 07:36:18.201572 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:17.926174 ====> Client connect 07:36:17.942648 Received DATA (on stdin) 07:36:17.942688 > 160 bytes data, server => client 07:36:17.942701 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:17.942713 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:17.942723 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:17.942868 < 16 bytes data, client => server 07:36:17.942884 'USER anonymous\r\n' 07:36:17.955993 Received DATA (on stdin) 07:36:17.956033 > 33 bytes data, server => client 07:36:17.956046 '331 We are happy you popped in!\r\n' 07:36:17.965995 < 22 bytes data, client => server 07:36:17.966040 'PASS ftp@example.com\r\n' 07:36:17.972902 Received DATA (on stdin) 07:36:17.972932 > 30 bytes data, server => client 07:36:17.972943 '230 Welcome you silly person\r\n' 07:36:17.973050 < 5 bytes data, client => server 07:36:17.973062 'PWD\r\n' 07:36:17.973161 Received DATA (on stdin) 07:36:17.973172 > 30 bytes data, server => client 07:36:17.973186 '257 "/" is current directory\r\n' 07:36:17.973243 < 6 bytes data, client => server 07:36:17.973254 'EPSV\r\n' 07:36:17.986433 Received DATA (on stdin) 07:36:17.986454 > 38 bytes data, server => client 07:36:17.986464 '229 Entering Passive Mode (|||43705|)\n' 07:36:17.986689 < 8 bytes data, client => server 07:36:17.986703 'TYPE I\r\n' 07:36:17.986923 Received DATA (on stdin) 07:36:17.986933 > 33 bytes data, server => client 07:36:17.986943 '200 I modify TYPE as you wanted\r\n' 07:36:17.986986 < 21 bytes data, client => server 07:36:17.986995 'SIZE verifiedserver\r\n' 07:36:17.987089 Received DATA (on stdin) 07:36:17.987098 > 8 bytes data, server => client 07:36:17.987107 '213 17\r\n' 07:36:17.987145 < 21 bytes data, client => server 07:36:17.987154 'RETR verifiedserver\r\n' 07:36:17.989305 Received DATA (on stdin) 07:36:17.989324 > 29 bytes data, server => client 07:36:17.989335 '150 Binary junk (17 bytes).\r\n' 07:36:17.990014 Received DATA (on stdin) 07:36:17.990028 > 28 bytes data, server => client 07:36:17.990040 '226 File transfeCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1917 ./libtest/libtests lib1916 "mqtt://127.0.0.1:34515/%20" > log/10/stdout1917 2> log/10/stderr1917 r complete\r\n' 07:36:18.039333 < 6 bytes data, client => server 07:36:18.039372 'QUIT\r\n' 07:36:18.046243 Received DATA (on stdin) 07:36:18.046267 > 18 bytes data, server => client 07:36:18.046279 '221 bye bye baby\r\n' 07:36:18.047342 ====> Client disconnect 07:36:18.047570 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:18.977091 Running IPv4 version 07:36:18.977172 Listening on port 43705 07:36:18.977255 Wrote pid 163038 to log/19/server/ftp_sockdata.pid 07:36:18.985986 Received PING (on stdin) 07:36:18.986190 Received PORT (on stdin) 07:36:18.986727 ====> Client connect 07:36:18.989397 Received DATA (on stdin) 07:36:18.989415 > 17 bytes data, server => client 07:36:18.989426 'WE ROOLZ: 93871\r\n' 07:36:18.989454 Received DISC (on stdin) 07:36:18.989467 ====> Client forcibly disconnected 07:36:18.989632 Received QUIT (on stdin) 07:36:18.989650 quits 07:36:18.989734 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY MDTM 550 no such file Testnum 1914 === End of file server.cmd === Start of file stderr1914 URL: ftp://127.0.0.1:40681/not-there/1913 === End of file stderr1914 === Start of file valgrind1914 ==163081== ==163081== Process terminating with default action of signal 4 (SIGILL) ==163081== Illegal opcode at address 0x51C2DB3 ==163081== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163081== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163081== by 0x51C2DB3: Curl_open (url.c:541) ==163081== by 0x513D46F: curl_easy_init (easy.c:372) ==163081== by 0x4030F17: test_lib1913.lto_priv.0 (lib1913.c:36) ==163081== by 0x4003443: main (first.c:167) ==163081== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x533CFA5: __tsearch (tsearch.c:337) ==163081== by 0x533CFA5: tsearch (tsearch.c:290) ==163081== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163081== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163081== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163081== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163081== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163081== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== ==163081== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x533CFA5: __tsearch (tsearch.c:337) ==163081== by 0x533CFA5: tsearch (tsearch.c:290) ==163081== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163081== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163081== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== ==163081== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163081== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163081== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163081== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163081== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163081== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== ==163081== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163081== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163081== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== ==163081== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163081== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163081== by 0x51C2D03: Curl_open (url.c:520) ==163081== by 0x513D46F: curl_easy_init (easy.c:372) ==163081== by 0x4030F17: test_lib1913.lto_priv.0 (lib1913.c:36) ==163081== by 0x4003443: main (first.c:167) ==163081== ==163081== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x533CFA5: __tsearch (tsearch.c:337) ==163081== by 0x533CFA5: tsearch (tsearch.c:290) ==163081== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163081== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163081== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163081== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163081== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163081== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== ==163081== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163081== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163081== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163081== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163081== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163081== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163081== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163081== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163081== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163081== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163081== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163081== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163081== by 0x525A142: setlocale (setlocale.c:337) ==163081== by 0x400336E: main (first.c:123) ==163081== === End of file valgrind1914 test 1917...[MQTT PUBLISH with CURLOPT_POST set (no payload)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1917 ./libtest/libtests lib1916 "mqtt://127.0.0.1:34515/%20" > log/10/stdout1917 2> log/10/stderr1917 1917: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl fCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1918 ./libtest/libtests lib1918 - > log/11/stdout1918 2> log/11/stderr1918 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1915 ./libtest/libtests lib1915 http://127.0.0.1:47/not-there/1915 > log/8/stdout1915 2> log/8/stderr1915 ailure? Returned: 132 == Contents of files in the log/10/ dir after test 1917 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind1917 ./libtest/libtests lib1916 "mqtt://127.0.0.1:34515/%20" > log/10/stdout1917 2> log/10/stderr1917 === End of file commands.log === Start of file server.cmd Testnum 1917 === End of file server.cmd === Start of file stderr1917 URL: mqtt://127.0.0.1:34515/%20 === End of file stderr1917 === Start of file valgrind1917 ==163131== ==163131== Process terminating with default action of signal 4 (SIGILL) ==163131== Illegal opcode at address 0x51C2DB3 ==163131== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163131== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163131== by 0x51C2DB3: Curl_open (url.c:541) ==163131== by 0x513D46F: curl_easy_init (easy.c:372) ==163131== by 0x40357CA: test_lib1916.lto_priv.0 (lib1916.c:38) ==163131== by 0x4003443: main (first.c:167) ==163131== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x533CFA5: __tsearch (tsearch.c:337) ==163131== by 0x533CFA5: tsearch (tsearch.c:290) ==163131== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163131== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163131== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163131== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163131== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163131== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== ==163131== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x533CFA5: __tsearch (tsearch.c:337) ==163131== by 0x533CFA5: tsearch (tsearch.c:290) ==163131== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163131== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163131== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== ==163131== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163131== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163131== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163131== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163131== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163131== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== ==163131== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163131== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163131== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== ==163131== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163131== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163131== by 0x51C2D03: Curl_open (url.c:520) ==163131== by 0x513D46F: curl_easy_init (easy.c:372) ==163131== by 0x40357CA: test_lib1916.lto_priv.0 (lib1916.c:38) ==163131== by 0x4003443: main (first.c:167) ==163131== ==163131== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x533CFA5: __tsearch (tsearch.c:337) ==163131== by 0x533CFA5: tsearch (tsearch.c:290) ==163131== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163131== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163131== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163131== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163131== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163131== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== ==163131== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163131== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163131== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163131== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163131== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163131== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163131== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163131== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163131== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163131== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163131== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163131== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163131== by 0x525A142: setlocale (setlocale.c:337) ==163131== by 0x400336E: main (first.c:123) ==163131== === End of file valgrind1917 * starts no server test 1918...[curl_easy_option_by_name() and curl_easy_option_by_id()] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind1918 ./libtest/libtests lib1918 - > log/11/stdout1918 2> log/11/stderr1918 -------e-v- OK (1557 out of 1707, remaining: 00:08, took 1.686s, duration: 01:31) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1913 ./libtest/libtests lib1913 ftp://127.0.0.1:38701/not-there/1913 > log/21/stdout1913 2> log/21/stderr1913 * starts no server test 1915...[HSTS read/write callbacks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1915 ./libtest/libtests lib1915 http://127.0.0.1:47/not-there/1915 > log/8/stdout1915 2> log/8/stderr1915 1915: stdout FAILED: --- log/8/check-expected 2025-07-18 07:36:20.013780016 +0000 +++ log/8/check-generated 2025-07-18 07:36:20.013780016 +0000 @@ -1,6 +0,0 @@ -[0/4] 1.example.com 25250320 01:02:03[LF] -[1/4] 2.example.com 25250320 03:02:01[LF] -[2/4] 3.example.com 25250319 01:02:03[LF] -[3/4] 4.example.com unlimited[LF] -First request returned 7[LF] -Second request returned 42[LF] == Contents of files in the log/8/ dir after test 1915 === Start of file check-expected [0/4] 1.example.com 25250320 01:02:03[LF] [1/4] 2.example.com 25250320 03:02:01[LF] [2/4] 3.example.com 25250319 01:02:03[LF] [3/4] 4.example.com unlimited[LF] First request returned 7[LF] Second request returned 42[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind1915 ./libtest/libtests lib1915 http://127.0.0.1:47/not-there/1915 > log/8/stdout1915 2> log/8/stderr1915 === End of file commands.log === Start of file server.cmd Testnum 1915 === End of file server.cmd === Start of file stderr1915 URL: http://127.0.0.1:47/not-there/1915 === End of file stderr1915 === Start of file valgrind1915 ==163041== ==163041== Process terminating with default action of signal 4 (SIGILL) ==163041== Illegal opcode at address 0x51C2DB3 ==163041== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163041== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163041== by 0x51C2DB3: Curl_open (url.c:541) ==163041== by 0x513D46F: curl_easy_init (easy.c:372) ==163041== by 0x40351F0: test_lib1915.lto_priv.0 (lib1915.c:109) ==163041== by 0x4003443: main (first.c:167) ==163041== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x533CFA5: __tsearch (tsearch.c:337) ==163041== by 0x533CFA5: tsearch (tsearch.c:290) ==163041== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163041== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163041== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163041== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163041== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163041== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== ==163041== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x533CFA5: __tsearch (tsearch.c:337) ==163041== by 0x533CFA5: tsearch (tsearch.c:290) ==163041== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163041== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163041== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== ==163041== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163041== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163041== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163041== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163041== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163041== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== ==163041== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163041== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163041== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== ==163041== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163041== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163041== by 0x51C2D03: Curl_open (url.c:520) ==163041== by 0x513D46F: curl_easy_init (easy.c:372) ==163041== by 0x40351F0: test_lib1915.lto_priv.0 (lib1915.c:109) ==163041== by 0x4003443: main (first.c:167) ==163041== ==163041== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x533CFA5: __tsearch (tsearch.c:337) ==163041== by 0x533CFA5: tsearch (tsearch.c:290) ==163041== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163041== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163041== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163041== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163041== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163041== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== ==163041== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163041== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163041== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163041== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163041== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163041== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163041== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163041== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163041== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163041== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163041== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163041== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163041== by 0x525A142: setlocale (setlocale.c:337) ==163041== by 0x400336E: main (first.c:123) ==163041== === End of file valgrind1915 test 1913...[FTP with NOBODY set, getting a missing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1913 ./libtest/libtests lib1913 ftp://127.0.0.1:38701/not-there/1913 > log/21/stdout1913 2> log/21/stderr1913 libtests returned 132, when expecting 78 1913: exit FAILED == Contents of files in the log/21/ dir after test 1913 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind1913 ./libtest/libtests lib1913 ftp://127.0.0.1:38701/not-there/1913 > log/21/stdout1913 2> log/21/stderr1913 === End of file commands.log === Start of file ftp_server.log 07:36:18.083366 ====> Client connect 07:36:18.083544 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:18.090369 < "USER anonymous" 07:36:18.090433 > "331 We are happy you popped in![CR][LF]" 07:36:18.090620 < "PASS ftp@example.com" 07:36:18.090652 > "230 Welcome you silly person[CR][LF]" 07:36:18.090813 < "PWD" 07:36:18.090847 > "257 "/" is current directory[CR][LF]" 07:36:18.091027 < "EPSV" 07:36:18.091053 ====> Passive DATA channel requested by client 07:36:18.091066 DATA sockfilt for passive data channel starting... 07:36:18.100171 DATA sockfilt for passive data channel started (pid 163028) 07:36:18.100376 DATA sockfilt for passive data channel listens on port 46755 07:36:18.100434 > "229 Entering Passive Mode (|||46755|)[LF]" 07:36:18.100456 Client has been notified that DATA conn will be accepted on port 46755 07:36:18.100808 Client connects to port 46755 07:36:18.100840 ====> Client established passive DATA connection on port 46755 07:36:18.100938 < "TYPE I" 07:36:18.100977 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:18.101153 < "SIZE verifiedserver" 07:36:18.101193 > "213 17[CR][LF]" 07:36:18.101360 < "RETR verifiedserver" 07:36:18.101399 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:18.101487 =====> Closing passive DATA connection... 07:36:18.101508 Server disconnects passive DATA connection 07:36:18.101749 Server disconnected passive DATA connection 07:36:18.101777 DATA sockfilt for passive data channel quits (pid 163028) 07:36:18.102052 DATA sockfilt for passive data channel quit (pid 163028) 07:36:18.102083 =====> Closed passive DATA connection 07:36:18.102112 > "226 File transfer complete[CR][LF]" 07:36:18.150236 < "QUIT" 07:36:18.150301 > "221 bye bye baby[CR][LF]" 07:36:18.154157 MAIN sockfilt said DISC 07:36:18.154200 ====> Client disconnected 07:36:18.154294 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:17.926261 ====> Client connect 07:36:17.932642 Received DATA (on stdin) 07:36:17.932672 > 160 bytes data, server => client 07:36:17.932685 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:17.932696 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:17.932706 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:17.936086 < 16 bytes data, client => server 07:36:17.936128 'USER anonymous\r\n' 07:36:17.936425 Received DATA (on stdin) 07:36:17.936440 > 33 bytes data, server => client 07:36:17.936452 '331 We are happy you popped in!\r\n' 07:36:17.936507 < 22 bytes data, client => server 07:36:17.936521 'PASS ftp@example.com\r\n' 07:36:17.936637 Received DATA (on stdin) 07:36:17.936650 > 30 bytes data, server => client 07:36:17.936661 '230 Welcome you silly person\r\n' 07:36:17.936710 < 5 bytes data, client => server 07:36:17.936723 'PWD\r\n' 07:36:17.936833 Received DATA (on stdin) 07:36:17.936845 > 30 bytes data, server => client 07:36:17.936856 '257 "/" is current directory\r\n' 07:36:17.936924 < 6 bytes data, client => server 07:36:17.936936 'EPSV\r\n' 07:36:17.946453 Received DATA (on stdin) 07:36:17.946474 > 38 bytes data, server => client 07:36:17.946486 '229 Entering Passive Mode (|||46755|)\n' 07:36:17.946700 < 8 bytes data, client => server 07:36:17.946719 'TYPE I\r\n' 07:36:17.946964 Received DATA (on stdin) 07:36:17.946978 > 33 bytes data, server => client 07:36:17.946989 '200 I modify TYPE as you wanted\r\n' 07:36:17.947043 < 21 bytes data, client => server 07:36:17.947058 'SIZE verifiedserver\r\n' 07:36:17.947180 Received DATA (on stdin) 07:36:17.947193 > 8 bytes data, server => client 07:36:17.947204 '213 17\r\n' 07:36:17.947255 < 21 bytes data, client => server 07:36:17.947269 'RETR verifiedserver\r\n' 07:36:17.947496 Received DATA (on stdin) 07:36:17.947510 > 29 bytes data, server => client 07:36:17.947521 '150 Binary junk (17 bytes).\r\n' 07:36:17.948097 Received DATA (on stdin) 07:36:17.948111 > 28 bytes data, server => client 07:36:17.948122 '226 File transfer complete\r\n' 07:36:17.995996 < 6 bytes data, client => server 07:36:17.996035 'QUIT\r\n' 07:36:17.996322 Received DATA (on stdin) 07:36:17.996338 > 18 bytes data, server => client 07:36:17.996350 '221 bye bye baby\r\n' 07:36:18.000073 ====> Client disconnect 07:36:18.000290 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:18.940943 Running IPv4 version 07:36:18.941048 Listening on port 46755 07:36:18.941085 Wrote pid 163028 to log/21/server/ftp_sockdata.pid 07:36:18.941103 Received PING (on stdin) 07:36:18.946239 Received PORT (on stdin) 07:36:18.946743 ====> Client connect 07:36:18.947548 Received DATA (on stdin) 07:36:18.947562 > 17 bytes data, server => client 07:36:18.947573 'WE ROOLZ: 81322\r\n' 07:36:18.947597 Received DISC (on stdin) 07:36:18.947611 ====> Client forcibly disconnected 07:36:18.947769 Received QUIT (on stdin) 07:36:18.947783 quits 07:36:18.947855 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY SIZE 550 no such file Testnum 1913 === End of file server.cmd === Start of file stderr1913 URL: ftp://127.0.0.1:38701/not-there/1913 === End of file stderr1913 === Start of file valgrind1913 ==163051== ==163051== Process terminating with default action of signal 4 (SIGILL) ==163051== Illegal opcode at address 0x51C2DB3 ==163051== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163051== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163051== by 0x51C2DB3: Curl_open (url.c:541) ==163051== by 0x513D46F: curl_easy_init (easy.c:372) ==163051== by 0x4030F17: test_lib1913.lto_priv.0 (lib1913.c:36) ==163051== by 0x4003443: main (first.c:167) ==163051== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x533CFA5: __tsearch (tsearch.c:337) ==163051== by 0x533CFA5: tsearch (tsearch.c:290) ==163051== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163051== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163051== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163051== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163051== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163051== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163051== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== ==163051== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x533CFA5: __tsearch (tsearch.c:337) ==163051== by 0x533CFA5: tsearch (tsearch.c:290) ==163051== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163051== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163051== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163051CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1942 ./libtest/libtests lib1940 http://127.0.0.1:33627/1942 > log/13/stdout1942 2> log/13/stderr1942 == by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== ==163051== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163051== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163051== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163051== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163051== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163051== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163051== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== ==163051== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163051== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163051== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163051== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== ==163051== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163051== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163051== by 0x51C2D03: Curl_open (url.c:520) ==163051== by 0x513D46F: curl_easy_init (easy.c:372) ==163051== by 0x4030F17: test_lib1913.lto_priv.0 (lib1913.c:36) ==163051== by 0x4003443: main (first.c:167) ==163051== ==163051== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x533CFA5: __tsearch (tsearch.c:337) ==163051== by 0x533CFA5: tsearch (tsearch.c:290) ==163051== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163051== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163051== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163051== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163051== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163051== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163051== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== ==163051== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163051== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163051== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163051== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163051== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163051== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163051== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163051== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163051== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163051== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163051== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163051== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163051== by 0x525A142: setlocale (setlocale.c:337) ==163051== by 0x400336E: main (first.c:123) ==163051== === End of file valgrind1913 test 1942...[curl_easy_header with 1xx response] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1942 ./libtest/libtests lib1940 http://127.0.0.1:33627/1942 > log/13/stdout1942 2> log/13/stderr1942 1942: stdout FAILED: --- log/13/check-expected 2025-07-18 07:36:20.183780019 +0000 +++ log/13/check-generated 2025-07-18 07:36:20.183780019 +0000 @@ -1,10 +0,0 @@ - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == test with trailing space[LF] - Content-Type == text/html[LF] - Content-Length == 0[LF] - Location == /19420002[LF] -- Set-Cookie == onecookie=data; (0/3)[LF] -- Set-Cookie == secondcookie=2data; (1/3)[LF] -- Set-Cookie == cookie3=data3; (2/3)[LF] - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == maybe different[LF] == Contents of files in the log/13/ dir after test 1942 === Start of file check-expected Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == test with trailing space[LF] Content-Type == text/html[LF] Content-Length == 0[LF] Location == /19420002[LF] - Set-Cookie == onecookie=data; (0/3)[LF] - Set-Cookie == secondcookie=2data; (1/3)[LF] - Set-Cookie == cookie3=data3; (2/3)[LF] Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == maybe different[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind1942 ./libtest/libtests lib1940 http://127.0.0.1:33627/1942 > log/13/stdout1942 2> log/13/stderr1942 === End of file commands.log === Start of file http_server.log 07:36:18.386052 ====> Client connect 07:36:18.386126 accept_connection 3 returned 4 07:36:18.386143 accept_connection 3 returned 0 07:36:18.386157 Read 93 bytes 07:36:18.386167 Process 93 bytes request 07:36:18.386179 Got request: GET /verifiedserver HTTP/1.1 07:36:18.386188 Are-we-friendly question received 07:36:18.386211 Wrote request (93 bytes) input to log/13/server.input 07:36:18.386227 Identifying ourselves as friends 07:36:18.386284 Response sent (56 bytes) and written to log/13/server.response 07:36:18.386293 special request received, no persistency 07:36:18.386302 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 1942 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr1942 URL: http://127.0.0.1:33627/1942 === End of file stderr1942 === Start of file valgrind1942 ==163440== ==163440== Process terminating with default action of signal 4 (SIGILL) ==163440== Illegal opcode at address 0x51C2DB3 ==163440== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163440== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163440== by 0x51C2DB3: Curl_open (url.c:541) ==163440== by 0x513D46F: curl_easy_init (easy.c:372) ==163440== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163440== by 0x4003443: main (first.c:167) ==163440== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x533CFA5: __tsearch (tsearch.c:337) ==163440== by 0x533CFA5: tsearch (tsearch.c:290) ==163440== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163440== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163440== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163440== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163440== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163440== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== ==163440== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x533CFA5: __tsearch (tsearch.c:337) ==163440== by 0x533CFA5: tsearch (tsearch.c:290) ==163440== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163440== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163440== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== ==163440== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163440== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163440== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163440== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163440== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163440== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== ==163440== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163440== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163440== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== ==163440== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163440== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163440== by 0x51C2D03: Curl_open (url.c:520) ==163440== by 0x513D46F: curl_easy_init (easy.c:372) ==163440== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163440== by 0x4003443: main (first.c:167) ==163440== ==163440== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x533CFA5: __tsearch (tsearch.c:337) ==163440== by 0x533CFA5: tsearch (tsearch.c:290) ==163440== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163440== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163440== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163440== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163440== by 0x5CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1919 ./libtest/libtests lib1919 http://127.0.0.1:43423/1919 > log/7/stdout1919 2> log/7/stderr1919 24F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163440== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== ==163440== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163440== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163440== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163440== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163440== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163440== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163440== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163440== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163440== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163440== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163440== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163440== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163440== by 0x525A142: setlocale (setlocale.c:337) ==163440== by 0x400336E: main (first.c:123) ==163440== === End of file valgrind1942 test 1919...[set CURLOPT_XOAUTH2_BEARER and do connection reuse] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1919 ./libtest/libtests lib1919 http://127.0.0.1:43423/1919 > log/7/stdout1919 2> log/7/stderr1919 1919: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 1919 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind1919 ./libtest/libtests lib1919 http://127.0.0.1:43423/1919 > log/7/stdout1919 2> log/7/stderr1919 === End of file commands.log === Start of file http_server.log 07:36:18.263985 ====> Client connect 07:36:18.264040 accept_connection 3 returned 4 07:36:18.264062 accept_connection 3 returned 0 07:36:18.264081 Read 93 bytes 07:36:18.264093 Process 93 bytes request 07:36:18.264109 Got request: GET /verifiedserver HTTP/1.1 07:36:18.264119 Are-we-friendly question received 07:36:18.264148 Wrote request (93 bytes) input to log/7/server.input 07:36:18.264168 Identifying ourselves as friends 07:36:18.264247 Response sent (57 bytes) and written to log/7/server.response 07:36:18.264260 special request received, no persistency 07:36:18.264270 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 1919 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr1919 URL: http://127.0.0.1:43423/1919 === End of file stderr1919 === Start of file valgrind1919 ==163318== ==163318== Process terminating with default action of signal 4 (SIGILL) ==163318== Illegal opcode at address 0x51C2DB3 ==163318== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163318== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163318== by 0x51C2DB3: Curl_open (url.c:541) ==163318== by 0x513D46F: curl_easy_init (easy.c:372) ==163318== by 0x403100C: UnknownInlinedFun (lib1919.c:35) ==163318== by 0x403100C: test_lib1919.lto_priv.0 (lib1919.c:28) ==163318== by 0x4003443: main (first.c:167) ==163318== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x533CFA5: __tsearch (tsearch.c:337) ==163318== by 0x533CFA5: tsearch (tsearch.c:290) ==163318== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163318== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163318== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163318== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163318== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163318== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== ==163318== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x533CFA5: __tsearch (tsearch.c:337) ==163318== by 0x533CFA5: tsearch (tsearch.c:290) ==163318== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163318== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163318== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== ==163318== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163318== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163318== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163318== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163318== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163318== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== ==163318== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163318== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163318== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== ==163318== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163318== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163318== by 0x51C2D03: Curl_open (url.c:520) CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1940 ./libtest/libtests lib1940 http://127.0.0.1:38941/1940 > log/1/stdout1940 2> log/1/stderr1940 ==163318== by 0x513D46F: curl_easy_init (easy.c:372) ==163318== by 0x403100C: UnknownInlinedFun (lib1919.c:35) ==163318== by 0x403100C: test_lib1919.lto_priv.0 (lib1919.c:28) ==163318== by 0x4003443: main (first.c:167) ==163318== ==163318== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x533CFA5: __tsearch (tsearch.c:337) ==163318== by 0x533CFA5: tsearch (tsearch.c:290) ==163318== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163318== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163318== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163318== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163318== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163318== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== ==163318== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163318== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163318== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163318== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163318== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163318== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163318== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163318== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163318== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163318== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163318== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163318== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163318== by 0x525A142: setlocale (setlocale.c:337) ==163318== by 0x400336E: main (first.c:123) ==163318== === End of file valgrind1919 test 1940...[curl_easy_header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1940 ./libtest/libtests lib1940 http://127.0.0.1:38941/1940 > log/1/stdout1940 2> log/1/stderr1940 1940: stdout FAILED: --- log/1/check-expected 2025-07-18 07:36:20.307113355 +0000 +++ log/1/check-generated 2025-07-18 07:36:20.307113355 +0000 @@ -1,11 +0,0 @@ - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == test with trailing space[LF] - Content-Type == text/html[LF] - Content-Length == 0[LF] - Location == /19400002[LF] -- Set-Cookie == onecookie=data; (0/3)[LF] -- Set-Cookie == secondcookie=2data; (1/3)[LF] -- Set-Cookie == cookie3=data3; (2/3)[LF] - Fold == is folding a line[LF] - Blank == [LF] - Blank2 == [LF] == Contents of files in the log/1/ dir after test 1940 === Start of file check-expected Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == test with trailing space[LF] Content-Type == text/html[LF] Content-Length == 0[LF] Location == /19400002[LF] - Set-Cookie == onecookie=data; (0/3)[LF] - Set-Cookie == secondcookie=2data; (1/3)[LF] - Set-Cookie == cookie3=data3; (2/3)[LF] Fold == is folding a line[LF] Blank == [LF] Blank2 == [LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind1940 ./libtest/libtests lib1940 http://127.0.0.1:38941/1940 > log/1/stdout1940 2> log/1/stderr1940 === End of file commands.log === Start of file http_server.log 07:36:18.271419 ====> Client connect 07:36:18.271467 accept_connection 3 returned 4 07:36:18.271487 accept_connection 3 returned 0 07:36:18.271503 Read 93 bytes 07:36:18.271514 Process 93 bytes request 07:36:18.271527 Got request: GET /verifiedserver HTTP/1.1 07:36:18.271537 Are-we-friendly question received 07:36:18.271565 Wrote request (93 bytes) input to log/1/server.input 07:36:18.271589 Identifying ourselves as friends 07:36:18.271653 Response sent (56 bytes) and written to log/1/server.response 07:36:18.271665 special request received, no persistency 07:36:18.271675 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 1940 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr1940 URL: http://127.0.0.1:38941/1940 === End of file stderr1940 === Start of file valgrind1940 ==163310== ==163310== Process terminating with default action of signal 4 (SIGILL) ==163310== Illegal opcode at address 0x51C2DB3 ==163310== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163310== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163310== by 0x51C2DB3: Curl_open (url.c:541) ==163310== by 0x513D46F: curl_easy_init (easy.c:372) ==163310== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163310== by 0x4003443: main (first.c:167) ==163310== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x533CFA5: __tsearch (tsearch.c:337) ==163310== by 0x533CFA5: tsearch (tsearch.c:290) ==163310== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163310== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163310== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163310== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163310== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163310== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== ==163310== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x533CFA5: __tsearch (tsearch.c:337) ==163310== by 0x533CFA5: tsearch (tsearch.c:290) ==163310== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163310== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163310== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== ==163310== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163310== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163310== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163310== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163310== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163310== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== ==163310== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163310== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163310== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== ==163310== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163310== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163310== by 0x51C2D03: Curl_open (url.c:520) ==163310== by 0x513D46F: curl_easy_init (easy.c:372) ==163310== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163310== by 0x4003443: main (first.c:167) ==163310== ==163310== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x533CFA5: __tsearch (tsearch.c:337) ==163310== by 0x533CFA5: tsearch (tsearch.c:290) ==163310== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163310== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163310== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163310== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163310== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:17CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1945 ./libtest/libtests lib1945 http://hello:38675/1945 127.0.0.1:45069 > log/24/stdout1945 2> log/24/stderr1945 0) ==163310== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== ==163310== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163310== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163310== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163310== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163310== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163310== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163310== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163310== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163310== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163310== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163310== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163310== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163310== by 0x525A142: setlocale (setlocale.c:337) ==163310== by 0x400336E: main (first.c:123) ==163310== === End of file valgrind1940 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1943 ./libtest/libtests lib1940 http://127.0.0.1:39089/1943 > log/17/stdout1943 2> log/17/stderr1943 test 1945...[curl_easy_nextheader with server + CONNECT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1945 ./libtest/libtests lib1945 http://hello:38675/1945 127.0.0.1:45069 > log/24/stdout1945 2> log/24/stderr1945 1945: stdout FAILED: --- log/24/check-expected 2025-07-18 07:36:20.373780023 +0000 +++ log/24/check-generated 2025-07-18 07:36:20.373780023 +0000 @@ -1,10 +0,0 @@ - Server == from the connect (0/2)[LF] - Silly-thing == yes yes (0/1)[LF] - Date == Thu, 09 Nov 2010 14:49:00 GMT (0/1)[LF] - Server == test with trailing space (1/2)[LF] - Content-Type == text/html (0/1)[LF] - Content-Length == 0 (0/1)[LF] - Set-Cookie == onecookie=data; (0/3)[LF] - Set-Cookie == secondcookie=2data; (1/3)[LF] - Set-Cookie == cookie3=data3; (2/3)[LF] - Location == /19450002 (0/1)[LF] == Contents of files in the log/24/ dir after test 1945 === Start of file check-expected Server == from the connect (0/2)[LF] Silly-thing == yes yes (0/1)[LF] Date == Thu, 09 Nov 2010 14:49:00 GMT (0/1)[LF] Server == test with trailing space (1/2)[LF] Content-Type == text/html (0/1)[LF] Content-Length == 0 (0/1)[LF] Set-Cookie == onecookie=data; (0/3)[LF] Set-Cookie == secondcookie=2data; (1/3)[LF] Set-Cookie == cookie3=data3; (2/3)[LF] Location == /19450002 (0/1)[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind1945 ./libtest/libtests lib1945 http://hello:38675/1945 127.0.0.1:45069 > log/24/stdout1945 2> log/24/stderr1945 === End of file commands.log === Start of file http2_server.log 07:36:18.732874 ====> Client connect 07:36:18.732909 accept_connection 3 returned 4 07:36:18.732926 accept_connection 3 returned 0 07:36:18.732939 Read 93 bytes 07:36:18.732948 Process 93 bytes request 07:36:18.732965 Got request: GET /verifiedserver HTTP/1.1 07:36:18.732973 Are-we-friendly question received 07:36:18.732994 Wrote request (93 bytes) input to log/24/proxy.input 07:36:18.733012 Identifying ourselves as friends 07:36:18.733076 Response sent (57 bytes) and written to log/24/proxy.response 07:36:18.733090 special request received, no persistency 07:36:18.733099 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:45069... * Connected to 127.0.0.1 (127.0.0.1) port 45069 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45069 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 156284 === End of file http2_verify.out === Start of file http_server.log 07:36:18.652717 ====> Client connect 07:36:18.652763 accept_connection 3 returned 4 07:36:18.652782 accept_connection 3 returned 0 07:36:18.652799 Read 93 bytes 07:36:18.652808 Process 93 bytes request 07:36:18.652822 Got request: GET /verifiedserver HTTP/1.1 07:36:18.652832 Are-we-friendly question received 07:36:18.652857 Wrote request (93 bytes) input to log/24/server.input 07:36:18.652874 Identifying ourselves as friends 07:36:18.652953 Response sent (56 bytes) and written to log/24/server.response 07:36:18.652965 special request received, no persistency 07:36:18.652974 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156284 === End of file proxy.response === Start of file server.cmd Testnum 1945 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr1945 URL: http://hello:38675/1945 === End of file stderr1945 === Start of file valgrind1945 ==163707== ==163707== Process terminating with default action of signal 4 (SIGILL) ==163707== Illegal opcode at address 0x51C2DB3 ==163707== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163707== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163707== by 0x51C2DB3: Curl_open (url.c:541) ==163707== by 0x513D46F: curl_easy_init (easy.c:372) ==163707== by 0x403802C: UnknownInlinedFun (lib1945.c:56) ==163707== by 0x403802C: test_lib1945.lto_priv.0 (lib1945.c:49) ==163707== by 0x4003443: main (first.c:167) ==163707== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x533CFA5: __tsearch (tsearch.c:337) ==163707== by 0x533CFA5: tsearch (tsearch.c:290) ==163707== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163707== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163707== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163707== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163707== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163707== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== ==163707== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x533CFA5: __tsearch (tsearch.c:337) ==163707== by 0x533CFA5: tsearch (tsearch.c:290) ==163707== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163707== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163707== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== ==163707== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163707== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163707== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163707== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163707== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163707== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== ==163707== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163707== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163707== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== ==163707== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163707== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163707== by 0x51C2D03: Curl_open (url.c:520) ==163707== by 0x513D46F: curl_easy_init (easy.c:372) ==163707== by 0x403802C: UnknownInlinedFun (lib1945.c:56) ==163707== by 0x403802C: test_lib1945.lto_priv.0 (lib1945.c:49) ==163707== by 0x4003443: main (first.c:167) ==163707== ==163707== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x533CFA5: __tsearch (tsearch.c:337) ==163707== by 0x533CFA5: tsearch (tsearch.c:290) ==163707== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163707== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163707== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163707== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163707== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163707== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== ==163707== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163707== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163707== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163707== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163707== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163707== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163707== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163707== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163707== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163707== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163707== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163707== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163707== by 0x525A142: setlocale (setlocale.c:337) ==163707== by 0x400336E: main (first.c:123) ==163707== === End of file valgrind1945 test 1943...[curl_easy_header with trailers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1943 ./libtest/libtests lib1940 http://127.0.0.1:39089/1943 > log/17/stdout1943 2> log/17/stderr1943 1943: stdout FAILED: --- log/17/check-expected 2025-07-18 07:36:20.387113358 +0000 +++ log/17/check-generated 2025-07-18 07:36:20.387113358 +0000 @@ -1,3 +0,0 @@ - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == fakeit/0.9 fakeitbad/1.0[LF] - Server == sent-as-trailer[LF] == Contents of files in the log/17/ dir after test 1943 === Start of file check-expected Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == fakeit/0.9 fakeitbad/1.0[LF] Server == sent-as-trailer[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind1943 ./libtest/libtests lib1940 http://127.0.0.1:39089/1943 > log/17/stdout1943 2> log/17/stderr1943 === End of file commands.log === Start of file http_server.log 07:36:18.585073 ====> Client connect 07:36:18.585105 accept_connection 3 returned 4 07:36:18.585120 accept_connection 3 returned 0 07:36:18.585134 Read 93 bytes 07:36:18.585144 Process 93 bytes request 07:36:18.585158 Got request: GET /verifiedserver HTTP/1.1 07:36:18.585167 Are-we-friendly question received 07:36:18.585190 Wrote request (93 bytes) input to log/17/server.input 07:36:18.585205 Identifying ourselves as friends 07:36:18.585258 Response sent (56 bytes) and written to log/17/server.response 07:36:18.585267 special request received, no persistency 07:36:18.585276 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 1943 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr1943 URL: http://127.0.0.1:39089/1943 === End of file stderr1943 === Start of file valgrind1943 ==163603== ==163603== Process terminating with default action of signal 4 (SIGILL) ==163603== Illegal opcode at address 0x51C2DB3 ==163603== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163603== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163603== by 0x51C2DB3: Curl_open (url.c:541) ==163603== by 0x513D46F: curl_easy_init (easy.c:372) ==163603== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163603== by 0x4003443: main (first.c:167) ==163603== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x533CFA5: __tsearch (tsearch.c:337) ==163603== by 0x533CFA5: tsearch (tsearch.c:290) ==163603== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163603== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163603== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163603== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163603== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163603== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== ==163603== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x533CFA5: __tsearch (tsearch.c:337) ==163603== by 0x533CFA5: tsearch (tsearch.c:290) ==163603== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163603== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163603== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== ==163603== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163603== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163603== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163603== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163603== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163603== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== ==163603== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163603== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163603== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== ==163603== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163603== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163603== by 0x51C2D03: Curl_open (url.c:520) ==163603== by 0x513D46F: curl_easy_init (easy.c:372) ==163603== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163603== by 0x4003443: main (first.c:167) ==163603== ==163603== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x533CFA5: __tsearch (tsearch.c:337) ==163603== by 0x533CFA5: tsearch (tsearch.c:290) ==163603== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163603== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163603== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163603== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163603== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163603== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== ==1636CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1979 ./unit/units unit1979 - > log/9/stdout1979 2> log/9/stderr1979 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1980 ./unit/units unit1980 - > log/3/stdout1980 2> log/3/stderr1980 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1946 ./libtest/libtests lib1940 http://127.0.0.1:37285/1946 > log/12/stdout1946 2> log/12/stderr1946 03== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163603== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163603== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163603== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163603== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163603== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163603== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163603== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163603== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163603== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163603== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163603== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163603== by 0x525A142: setlocale (setlocale.c:337) ==163603== by 0x400336E: main (first.c:123) ==163603== === End of file valgrind1943 * starts no server test 1979...[sigv4 canon_string unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind1979 ./unit/units unit1979 - > log/9/stdout1979 2> log/9/stderr1979 -------e-v- OK (1572 out of 1707, remaining: 00:07, took 1.002s, duration: 01:31) * starts no server test 1980...[sigv4 canon_query unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind1980 ./unit/units unit1980 - > log/3/stdout1980 2> log/3/stderr1980 -------e-v- OK (1573 out of 1707, remaining: 00:07, took 1.097s, duration: 01:31) test 1946...[curl_easy_header with redirect but get headers from first request] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1946 ./libtest/libtests lib1940 http://127.0.0.1:37285/1946 > log/12/stdout1946 2> log/12/stderr1946 1946: stdout FAILED: --- log/12/check-expected 2025-07-18 07:36:20.550446693 +0000 +++ log/12/check-generated 2025-07-18 07:36:20.550446693 +0000 @@ -1,8 +0,0 @@ - Date == Thu, 01 Nov 2001 14:49:00 GMT[LF] - Server == test with trailing space[LF] - Content-Type == text/html[LF] - Content-Length == 0[LF] - Location == /19460002[LF] -- Set-Cookie == onecookie=data; (0/3)[LF] -- Set-Cookie == secondcookie=2data; (1/3)[LF] -- Set-Cookie == cookie3=data3; (2/3)[LF] == Contents of files in the log/12/ dir after test 1946 === Start of file check-expected Date == Thu, 01 Nov 2001 14:49:00 GMT[LF] Server == test with trailing space[LF] Content-Type == text/html[LF] Content-Length == 0[LF] Location == /19460002[LF] - Set-Cookie == onecookie=data; (0/3)[LF] - Set-Cookie == secondcookie=2data; (1/3)[LF] - Set-Cookie == cookie3=data3; (2/3)[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind1946 ./libtest/libtests lib1940 http://127.0.0.1:37285/1946 > log/12/stdout1946 2> log/12/stderr1946 === End of file commands.log === Start of file http_server.log 07:36:18.698419 ====> Client connect 07:36:18.698462 accept_connection 3 returned 4 07:36:18.698481 accept_connection 3 returned 0 07:36:18.698499 Read 93 bytes 07:36:18.698510 Process 93 bytes request 07:36:18.698525 Got request: GET /verifiedserver HTTP/1.1 07:36:18.698535 Are-we-friendly question received 07:36:18.698567 Wrote request (93 bytes) input to log/12/server.input 07:36:18.698589 Identifying ourselves as friends 07:36:18.698655 Response sent (56 bytes) and written to log/12/server.response 07:36:18.698668 special request received, no persistency 07:36:18.698677 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 1946 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr1946 URL: http://127.0.0.1:37285/1946 === End of file stderr1946 === Start of file valgrind1946 ==163680== ==163680== Process terminating with default action of signal 4 (SIGILL) ==163680== Illegal opcode at address 0x51C2DB3 ==163680== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163680== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163680== by 0x51C2DB3: Curl_open (url.c:541) ==163680== by 0x513D46F: curl_easy_init (easy.c:372) ==163680== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163680== by 0x4003443: main (first.c:167) ==163680== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x533CFA5: __tsearch (tsearch.c:337) ==163680== by 0x533CFA5: tsearch (tsearch.c:290) ==163680== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163680== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163680== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163680== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163680== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163680== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== ==163680== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x533CFA5: __tsearch (tsearch.c:337) ==163680== by 0x533CFA5: tsearch (tsearch.c:290) ==163680== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163680== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163680== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== ==163680== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163680== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163680== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163680== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163680== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163680== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== ==163680== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163680== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163680== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== ==163680== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163680== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163680== by 0x51C2D03: Curl_open (url.c:520) ==163680== by 0x513D46F: curl_easy_init (easy.c:372) ==163680== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163680== by 0x4003443: main (first.c:167) ==163680== ==163680== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x533CFA5: __tsearch (tsearch.c:337) ==163680== by 0x533CFA5: tsearch (tsearch.c:290) ==163680== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163680== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163680== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163680== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163680== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163680== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) =CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2000 ../src/curl -q --trace-ascii log/15/trace2000 --trace-config all --trace-time ftp://127.0.0.1:46295/2000 file://localhost/startdir/src/build-curl/tests/log/15/test2000.txt > log/15/stdout2000 2> log/15/stderr2000 =163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== ==163680== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163680== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163680== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163680== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163680== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163680== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163680== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163680== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163680== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163680== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163680== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163680== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163680== by 0x525A142: setlocale (setlocale.c:337) ==163680== by 0x400336E: main (first.c:123) ==163680== === End of file valgrind1946 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1941 ./libtest/libtests lib1940 http://hello:37169/1941 127.0.0.1:39205 > log/20/stdout1941 2> log/20/stderr1941 test 2000...[FTP RETR followed by FILE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2000 ../src/curl -q --trace-ascii log/15/trace2000 --trace-config all --trace-time ftp://127.0.0.1:46295/2000 file://localhost/startdir/src/build-curl/tests/log/15/test2000.txt > log/15/stdout2000 2> log/15/stderr2000 2000: stdout FAILED: --- log/15/check-expected 2025-07-18 07:36:20.567113361 +0000 +++ log/15/check-generated 2025-07-18 07:36:20.567113361 +0000 @@ -1,11 +0,0 @@ -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/15/ dir after test 2000 === Start of file check-expected data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2000 ../src/curl -q --trace-ascii log/15/trace2000 --trace-config all --trace-time ftp://127.0.0.1:46295/2000 file://localhost/startdir/src/build-curl/tests/log/15/test2000.txt > log/15/stdout2000 2> log/15/stderr2000 === End of file commands.log === Start of file ftp_server.log 07:36:19.655441 ====> Client connect 07:36:19.655662 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:19.660222 < "USER anonymous" 07:36:19.660293 > "331 We are happy you popped in![CR][LF]" 07:36:19.660525 < "PASS ftp@example.com" 07:36:19.660560 > "230 Welcome you silly person[CR][LF]" 07:36:19.660712 < "PWD" 07:36:19.660746 > "257 "/" is current directory[CR][LF]" 07:36:19.663435 < "EPSV" 07:36:19.663463 ====> Passive DATA channel requested by client 07:36:19.663476 DATA sockfilt for passive data channel starting... 07:36:19.680057 DATA sockfilt for passive data channel started (pid 164250) 07:36:19.683562 DATA sockfilt for passive data channel listens on port 42679 07:36:19.683648 > "229 Entering Passive Mode (|||42679|)[LF]" 07:36:19.683665 Client has been notified that DATA conn will be accepted on port 42679 07:36:19.693563 Client connects to port 42679 07:36:19.693642 ====> Client established passive DATA connection on port 42679 07:36:19.696949 < "TYPE I" 07:36:19.697007 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:19.697256 < "SIZE verifiedserver" 07:36:19.697303 > "213 17[CR][LF]" 07:36:19.697457 < "RETR verifiedserver" 07:36:19.697493 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:19.697588 =====> Closing passive DATA connection... 07:36:19.697605 Server disconnects passive DATA connection 07:36:19.697879 Server disconnected passive DATA connection 07:36:19.697907 DATA sockfilt for passive data channel quits (pid 164250) 07:36:19.698229 DATA sockfilt for passive data channel quit (pid 164250) 07:36:19.698253 =====> Closed passive DATA connection 07:36:19.698280 > "226 File transfer complete[CR][LF]" 07:36:19.746911 < "QUIT" 07:36:19.746965 > "221 bye bye baby[CR][LF]" 07:36:19.748040 MAIN sockfilt said DISC 07:36:19.748083 ====> Client disconnected 07:36:19.748174 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:19.501284 ====> Client connect 07:36:19.501667 Received DATA (on stdin) 07:36:19.501685 > 160 bytes data, server => client 07:36:19.501697 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:19.501709 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:19.501719 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:19.501799 < 16 bytes data, client => server 07:36:19.501812 'USER anonymous\r\n' 07:36:19.506287 Received DATA (on stdin) 07:36:19.506308 > 33 bytes data, server => client 07:36:19.506319 '331 We are happy you popped in!\r\n' 07:36:19.506405 < 22 bytes data, client => server 07:36:19.506417 'PASS ftp@example.com\r\n' 07:36:19.506543 Received DATA (on stdin) 07:36:19.506555 > 30 bytes data, server => client 07:36:19.506565 '230 Welcome you silly person\r\n' 07:36:19.506612 < 5 bytes data, client => server 07:36:19.506622 'PWD\r\n' 07:36:19.506727 Received DATA (on stdin) 07:36:19.506738 > 30 bytes data, server => client 07:36:19.506747 '257 "/" is current directory\r\n' 07:36:19.509306 < 6 bytes data, client => server 07:36:19.509326 'EPSV\r\n' 07:36:19.532653 Received DATA (on stdin) 07:36:19.532686 > 38 bytes data, server => client 07:36:19.532698 '229 Entering Passive Mode (|||42679|)\n' 07:36:19.542677 < 8 bytes data, client => server 07:36:19.542738 'TYPE I\r\n' 07:36:19.542997 Received DATA (on stdin) 07:36:19.543011 > 33 bytes data, server => client 07:36:19.543022 '200 I modify TYPE as you wanted\r\n' 07:36:19.543134 < 21 bytes data, client => server 07:36:19.543146 'SIZE verifiedserver\r\n' 07:36:19.543287 Received DATA (on stdin) 07:36:19.543298 > 8 bytes data, server => client 07:36:19.543308 '213 17\r\n' 07:36:19.543357 < 21 bytes data, client => server 07:36:19.543367 'RETR verifiedserver\r\n' 07:36:19.543587 Received DATA (on stdin) 07:36:19.543599 > 29 bytes data, server => client 07:36:19.543609 '150 Binary junk (17 bytes).\r\n' 07:36:19.544265 Received DATA (on stdin) 07:36:19.544279 > 28 bytes data, server => client 07:36:19.544289 '226 File transfer complete\r\n' 07:36:19.592673 < 6 bytes data, client => server 07:36:19.592713 'QUIT\r\n' 07:36:19.592953 Received DATA (on stdin) 07:36:19.592965 > 18 bytes data, server => client 07:36:19.592975 '221 bye bye baby\r\n' 07:36:19.593961 ====> Client disconnect 07:36:19.594156 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:19.511178 Running IPv4 version 07:36:19.511257 Listening on port 42679 07:36:19.511292 Wrote pid 164250 to log/15/server/ftp_sockdata.pid 07:36:19.519328 Received PING (on stdin) 07:36:19.529318 Received PORT (on stdin) 07:36:19.539448 ====> Client connect 07:36:19.543675 Received DATA (on stdin) 07:36:19.543695 > 17 bytes data, server => client 07:36:19.543705 'WE ROOLZ: 79835\r\n' 07:36:19.543734 Received DISC (on stdin) 07:36:19.543747 ====> Client forcibly disconnected 07:36:19.543898 Received QUIT (on stdin) 07:36:19.543912 quits 07:36:19.543995 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 2000 === End of file server.cmd === Start of file test2000.txt foo bar bar foo moo === End of file test2000.txt === Start of file valgrind2000 ==164259== ==164259== Process terminating with default action of signal 4 (SIGILL) ==164259== Illegal opcode at address 0x4003082 ==164259== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==164259== by 0x4003082: main (tool_main.c:234) === End of file valgrind2000 test 1941...[curl_easy_header with CONNECT] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1941 ./libtest/libtests lib1940 http://hello:37169/1941 127.0.0.1:39205 > log/20/stdout1941 2> log/20/stderr1941 1941: stdout FAILED: --- log/20/check-expected 2025-07-18 07:36:20.577113362 +0000 +++ log/20/check-generated 2025-07-18 07:36:20.577113362 +0000 @@ -1,10 +0,0 @@ - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == test with trailing space[LF] - Content-Type == text/html[LF] - Content-Length == 0[LF] - Location == /19410002[LF] -- Set-Cookie == onecookie=data; (0/3)[LF] -- Set-Cookie == secondcookie=2data; (1/3)[LF] -- Set-Cookie == cookie3=data3; (2/3)[LF] - Server == from the connect[LF] - Silly-thing == yes yes[LF] == Contents of files in the log/20/ dir after test 1941 === Start of file check-expected Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == test with trailing space[LF] Content-Type == text/html[LF] Content-Length == 0[LF] Location == /19410002[LF] - Set-Cookie == onecookie=data; (0/3)[LF] - Set-Cookie == secondcookie=2data; (1/3)[LF] - Set-Cookie == cookie3=data3; (2/3)[LF] Server == from the connect[LF] Silly-thing == yes yes[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind1941 ./libtest/libtests lib1940 http://hello:37169/1941 127.0.0.1:39205 > log/20/stdout1941 2> log/20/stderr1941 === End of file commands.log === Start of file http2_server.log 07:36:18.390619 ====> Client connect 07:36:18.390656 accept_connection 3 returned 4 07:36:18.390673 accept_connection 3 returned 0 07:36:18.390687 Read 93 bytes 07:36:18.390698 Process 93 bytes request 07:36:18.390709 Got request: GET /verifiedserver HTTP/1.1 07:36:18.390719 Are-we-friendly question received 07:36:18.390747 Wrote request (93 bytes) input to log/20/proxy.input 07:36:18.390764 Identifying ourselves as friends 07:36:18.390823 Response sent (56 bytes) and written to log/20/proxy.response 07:36:18.390834 special request received, no persistency 07:36:18.390843 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:39205... * Connected to 127.0.0.1 (127.0.0.1) port 39205 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39205 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 78734 === End of file http2_verify.out === Start of file http_server.log 07:36:18.306018 ====> Client connect 07:36:18.306062 accept_connection 3 returned 4 07:36:18.306081 accept_connection 3 returned 0 07:36:18.306096 Read 93 bytes 07:36:18.306106 Process 93 bytes request 07:36:18.306120 Got request: GET /verifiedserver HTTP/1.1 07:36:18.306129 Are-we-friendly question received 07:36:18.306157 Wrote request (93 bytes) input to log/20/server.input 07:36:18.306175 Identifying ourselves as friends 07:36:18.306255 Response sent (56 bytes) and written to log/20/server.response 07:36:18.306266 special request received, no persistency 07:36:18.306275 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 78734 === End of file proxy.response === Start of file server.cmd Testnum 1941 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr1941 URL: http://hello:37169/1941 === End of file stderr1941 === Start of file valgrind1941 ==163441== ==163441== Process terminating with default action of signal 4 (SIGILL) ==163441== Illegal opcode at address 0x51C2DB3 ==163441== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163441== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163441== by 0x51C2DB3: Curl_open (url.c:541) ==163441== by 0x513D46F: curl_easy_init (easy.c:372) ==163441== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163441== by 0x4003443: main (first.c:167) ==163441== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x533CFA5: __tsearch (tsearch.c:337) ==163441== by 0x533CFA5: tsearch (tsearch.c:290) ==163441== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163441== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163441== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163441== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163441== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163441== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163441== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== ==163441== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x533CFA5: __tsearch (tsearch.c:337) ==163441== by 0x533CFA5: tsearch (tsearch.c:290) ==163441== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163441== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163441== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163441== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== ==163441== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163441== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163441== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163441== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163441== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163441== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163441== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== ==163441== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163441== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163441== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163441== by 0x52BFCB3: __ptCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1977 ./libtest/libtests lib1977 http://127.0.0.1:33235/1977 > log/4/stdout1977 2> log/4/stderr1977 hread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== ==163441== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163441== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163441== by 0x51C2D03: Curl_open (url.c:520) ==163441== by 0x513D46F: curl_easy_init (easy.c:372) ==163441== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163441== by 0x4003443: main (first.c:167) ==163441== ==163441== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x533CFA5: __tsearch (tsearch.c:337) ==163441== by 0x533CFA5: tsearch (tsearch.c:290) ==163441== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163441== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163441== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163441== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163441== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163441== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163441== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== ==163441== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163441== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163441== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163441== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163441== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163441== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163441== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163441== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163441== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163441== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163441== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163441== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163441== by 0x525A142: setlocale (setlocale.c:337) ==163441== by 0x400336E: main (first.c:123) ==163441== === End of file valgrind1941 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1944 ./libtest/libtests lib1940 http://127.0.0.1:46761/1944 > log/22/stdout1944 2> log/22/stderr1944 test 1977...[CURLOPT_CURLU and CURLINFO_EFFECTIVE_URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1977 ./libtest/libtests lib1977 http://127.0.0.1:33235/1977 > log/4/stdout1977 2> log/4/stderr1977 1977: stdout FAILED: --- log/4/check-expected 2025-07-18 07:36:20.680446696 +0000 +++ log/4/check-generated 2025-07-18 07:36:20.680446696 +0000 @@ -1,3 +0,0 @@ -effective URL: http://127.0.0.1:33235/1977[LF] -effective URL: http://127.0.0.1:33235/1977?foo[LF] -effective URL: http://127.0.0.1:33235/1977?foo&bar[LF] == Contents of files in the log/4/ dir after test 1977 === Start of file check-expected effective URL: http://127.0.0.1:33235/1977[LF] effective URL: http://127.0.0.1:33235/1977?foo[LF] effective URL: http://127.0.0.1:33235/1977?foo&bar[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind1977 ./libtest/libtests lib1977 http://127.0.0.1:33235/1977 > log/4/stdout1977 2> log/4/stderr1977 === End of file commands.log === Start of file http_server.log 07:36:19.256047 ====> Client connect 07:36:19.256091 accept_connection 3 returned 4 07:36:19.256109 accept_connection 3 returned 0 07:36:19.256124 Read 93 bytes 07:36:19.256134 Process 93 bytes request 07:36:19.256147 Got request: GET /verifiedserver HTTP/1.1 07:36:19.256156 Are-we-friendly question received 07:36:19.256183 Wrote request (93 bytes) input to log/4/server.input 07:36:19.256200 Identifying ourselves as friends 07:36:19.256284 Response sent (56 bytes) and written to log/4/server.response 07:36:19.256295 special request received, no persistency 07:36:19.256304 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 1977 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr1977 URL: http://127.0.0.1:33235/1977 === End of file stderr1977 === Start of file valgrind1977 ==164105== ==164105== Process terminating with default action of signal 4 (SIGILL) ==164105== Illegal opcode at address 0x51C2DB3 ==164105== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164105== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164105== by 0x51C2DB3: Curl_open (url.c:541) ==164105== by 0x513D46F: curl_easy_init (easy.c:372) ==164105== by 0x40358F7: test_lib1977.lto_priv.0 (lib1977.c:37) ==164105== by 0x4003443: main (first.c:167) ==164105== 88 bytes in 1 blocks are definitely lost in loss record 575 of 657 ==164105== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164105== by 0x40358D3: test_lib1977.lto_priv.0 (lib1977.c:32) ==164105== by 0x4003443: main (first.c:167) ==164105== ==164105== 408 bytes in 17 blocks are possibly lost in loss record 606 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x533CFA5: __tsearch (tsearch.c:337) ==164105== by 0x533CFA5: tsearch (tsearch.c:290) ==164105== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164105== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164105== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164105== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164105== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164105== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== ==164105== 552 bytes in 23 blocks are possibly lost in loss record 610 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x533CFA5: __tsearch (tsearch.c:337) ==164105== by 0x533CFA5: tsearch (tsearch.c:290) ==164105== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164105== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164105== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== ==164105== 681 bytes in 17 blocks are possibly lost in loss record 616 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164105== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164105== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164105== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164105== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164105== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== ==164105== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164105== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164105== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== ==164105== 5,480 bytes in 1 blocks are definitely lost in loss record 650 of 657 ==164105== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164105== by 0x51C2D03: Curl_open (url.c:520) ==164105== by 0x513D46F: curl_easy_init (easy.c:372) ==164105== by 0x40358F7: test_lib1977.lto_priv.0 (lib1977.c:37) ==164105== by 0x4003443: main (first.c:167) ==164105== ==164105== 11,664 bytes in 486 blocks are possibly lost in loss record 653 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x533CFA5: __tsearch (tsearch.c:337) ==164105== by 0x533CFA5: tsearch (tsearch.c:290) ==164105== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164105== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164105== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164105== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164105== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164105== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== ==164105== 18,800 bytes in 486 blocks are possibly lost in loss record 655 of 657 ==164105== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164105== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164105== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164105== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164105== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164105== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164105== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164105== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164105== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164105== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164105== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164105== by 0x525A142: setlocale (setlocale.c:337) ==164105== by 0x400336E: main (first.c:123) ==164105== === End of file valgrind1977 test 1944...[curl_easy_header with redirect] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1944 ./libtest/libtests lib1940 http://127.0.0.1:46761/1944 > log/22/stdout1944 2> log/22/stderr1944 1944: stdout FAILED: --- log/22/check-expected 2025-07-18 07:36:20.690446697 +0000 +++ log/22/check-generated 2025-07-18 07:36:20.690446697 +0000 @@ -1,6 +0,0 @@ - Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] - Server == the other one[LF] - Content-Type == text/html[LF] - Content-Length == 0[LF] -- Set-Cookie == 1cookie=data1; (0/2)[LF] -- Set-Cookie == 2cookie=data2; (1/2)[LF] == Contents of files in the log/22/ dir after test 1944 === Start of file check-expected Date == Thu, 09 Nov 2010 14:49:00 GMT[LF] Server == the other one[LF] Content-Type == text/html[LF] Content-Length == 0[LF] - Set-Cookie == 1cookie=data1; (0/2)[LF] - Set-Cookie == 2cookie=data2; (1/2)[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind1944 ./libtest/libtests lib1940 http://127.0.0.1:46761/1944 > log/22/stdout1944 2> log/22/stderr1944 === End of file commands.log === Start of file http_server.log 07:36:18.598300 ====> Client connect 07:36:18.598341 accept_connection 3 returned 4 07:36:18.598357 accept_connection 3 returned 0 07:36:18.598376 Read 93 bytes 07:36:18.598386 Process 93 bytes request 07:36:18.598400 Got request: GET /verifiedserver HTTP/1.1 07:36:18.598409 Are-we-friendly question received 07:36:18.598437 Wrote request (93 bytes) input to log/22/server.input 07:36:18.598453 Identifying ourselves as friends 07:36:18.598508 Response sent (56 bytes) and written to log/22/server.response 07:36:18.598519 special request received, no persistency 07:36:18.598527 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 1944 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr1944 URL: http://127.0.0.1:46761/1944 === End of file stderr1944 === Start of file valgrind1944 ==163604== ==163604== Process terminating with default action of signal 4 (SIGILL) ==163604== Illegal opcode at address 0x51C2DB3 ==163604== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163604== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163604== by 0x51C2DB3: Curl_open (url.c:541) ==163604== by 0x513D46F: curl_easy_init (easy.c:372) ==163604== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163604== by 0x4003443: main (first.c:167) ==163604== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x533CFA5: __tsearch (tsearch.c:337) ==163604== by 0x533CFA5: tsearch (tsearch.c:290) ==163604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163604== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163604== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== ==163604== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x533CFA5: __tsearch (tsearch.c:337) ==163604== by 0x533CFA5: tsearch (tsearch.c:290) ==163604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163604== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163604== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== ==163604== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163604== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163604== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== ==163604== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163604== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163604== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== ==163604== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163604== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163604== by 0x51C2D03: Curl_open (url.c:520) ==163604== by 0x513D46F: curl_easy_init (easy.c:372) ==163604== by 0x4037D51: test_lib1940.lto_priv.0 (lib1940.c:94) ==163604== by 0x4003443: main (first.c:167) ==163604== ==163604== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x533CFA5: __tsearch (tsearch.c:337) ==163604== by 0x533CFA5: tsearch (tsearch.c:290) ==163604== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163604== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163604== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_dCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1947 ./libtest/libtests lib1947 http://127.0.0.1:46675/1947 http://127.0.0.1:46675/19470003 > log/5/stdout1947 2> log/5/stderr1947 b.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== ==163604== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163604== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163604== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163604== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163604== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163604== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163604== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163604== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163604== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163604== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163604== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163604== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163604== by 0x525A142: setlocale (setlocale.c:337) ==163604== by 0x400336E: main (first.c:123) ==163604== === End of file valgrind1944 test 1947...[curl_easy_nextheader on second request after first did redirects] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1947 ./libtest/libtests lib1947 http://127.0.0.1:46675/1947 http://127.0.0.1:46675/19470003 > log/5/stdout1947 2> log/5/stderr1947 1947: stdout FAILED: --- log/5/check-expected 2025-07-18 07:36:20.710446697 +0000 +++ log/5/check-generated 2025-07-18 07:36:20.710446697 +0000 @@ -1,2 +0,0 @@ -count = 2[LF] -count = 1[LF] == Contents of files in the log/5/ dir after test 1947 === Start of file check-expected count = 2[LF] count = 1[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind1947 ./libtest/libtests lib1947 http://127.0.0.1:46675/1947 http://127.0.0.1:46675/19470003 > log/5/stdout1947 2> log/5/stderr1947 === End of file commands.log === Start of file http_server.log 07:36:18.848687 ====> Client connect 07:36:18.848730 accept_connection 3 returned 4 07:36:18.848749 accept_connection 3 returned 0 07:36:18.848765 Read 93 bytes 07:36:18.848776 Process 93 bytes request 07:36:18.848789 Got request: GET /verifiedserver HTTP/1.1 07:36:18.848798 Are-we-friendly question received 07:36:18.848826 Wrote request (93 bytes) input to log/5/server.input 07:36:18.848845 Identifying ourselves as friends 07:36:18.848904 Response sent (56 bytes) and written to log/5/server.response 07:36:18.848917 special request received, no persistency 07:36:18.848926 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 1947 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file stderr1947 URL: http://127.0.0.1:46675/1947 === End of file stderr1947 === Start of file valgrind1947 ==163827== ==163827== Process terminating with default action of signal 4 (SIGILL) ==163827== Illegal opcode at address 0x51C2DB3 ==163827== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163827== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163827== by 0x51C2DB3: Curl_open (url.c:541) ==163827== by 0x513D46F: curl_easy_init (easy.c:372) ==163827== by 0x403822C: UnknownInlinedFun (lib1947.c:46) ==163827== by 0x403822C: test_lib1947.lto_priv.0 (lib1947.c:36) ==163827== by 0x4003443: main (first.c:167) ==163827== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x533CFA5: __tsearch (tsearch.c:337) ==163827== by 0x533CFA5: tsearch (tsearch.c:290) ==163827== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163827== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163827== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163827== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163827== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163827== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: main (first.c:123) ==163827== ==163827== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x533CFA5: __tsearch (tsearch.c:337) ==163827== by 0x533CFA5: tsearch (tsearch.c:290) ==163827== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163827== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163827== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: main (first.c:123) ==163827== ==163827== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163827== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163827== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163827== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163827== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163827== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: main (first.c:123) ==163827== ==163827== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163827== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163827== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: main (first.c:123) ==163827== ==163827== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163827== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163827== by 0x51C2D03: Curl_open (url.c:520) ==163827== by 0x513D46F: curl_easy_init (easy.c:372) ==163827== by 0x403822C: UnknownInlinedFun (lib1947.c:46) ==163827== by 0x403822C: test_lib1947.lto_priv.0 (lib1947.c:36) ==163827== by 0x4003443: main (first.c:167) ==163827== ==163827== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x533CFA5: __tsearch (tsearch.c:337) ==163827== by 0x533CFA5: tsearch (tsearch.c:290) ==163827== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163827== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163827== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163827== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163827== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163827== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: maCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1916 ./libtest/libtests lib1916 "mqtt://127.0.0.1:37321/%20" > log/18/stdout1916 2> log/18/stderr1916 in (first.c:123) ==163827== ==163827== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163827== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163827== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163827== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163827== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163827== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163827== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163827== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163827== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163827== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163827== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163827== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163827== by 0x525A142: setlocale (setlocale.c:337) ==163827== by 0x400336E: main (first.c:123) ==163827== === End of file valgrind1947 startnew: ./server/servers mqttd --port 0 --pidfile log/18/server/mqtt_server.pid --portfile log/18/server/mqtt_server.port --config log/18/server.cmd --logfile log/18/mqtt_server.log --logdir log/18 RUN: MQTT server is now running PID 163037 on PORT 37321 * pid mqtt => 163037 163037 test 1916...[MQTT PUBLISH with no POSTFIELDSIZE set] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1916 ./libtest/libtests lib1916 "mqtt://127.0.0.1:37321/%20" > log/18/stdout1916 2> log/18/stderr1916 1916: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 1916 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind1916 ./libtest/libtests lib1916 "mqtt://127.0.0.1:37321/%20" > log/18/stdout1916 2> log/18/stderr1916 === End of file commands.log === Start of file mqtt_server.log 07:36:18.977737 Running IPv4 version 07:36:18.977790 Listening on port 37321 07:36:18.977824 Wrote pid 163037 to log/18/server/mqtt_server.pid 07:36:18.977853 Wrote port 37321 to log/18/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 1916 === End of file server.cmd === Start of file stderr1916 URL: mqtt://127.0.0.1:37321/%20 === End of file stderr1916 === Start of file valgrind1916 ==163926== ==163926== Process terminating with default action of signal 4 (SIGILL) ==163926== Illegal opcode at address 0x51C2DB3 ==163926== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163926== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163926== by 0x51C2DB3: Curl_open (url.c:541) ==163926== by 0x513D46F: curl_easy_init (easy.c:372) ==163926== by 0x40357CA: test_lib1916.lto_priv.0 (lib1916.c:38) ==163926== by 0x4003443: main (first.c:167) ==163926== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x533CFA5: __tsearch (tsearch.c:337) ==163926== by 0x533CFA5: tsearch (tsearch.c:290) ==163926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163926== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163926== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== ==163926== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x533CFA5: __tsearch (tsearch.c:337) ==163926== by 0x533CFA5: tsearch (tsearch.c:290) ==163926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163926== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163926== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== ==163926== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163926== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163926== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== ==163926== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163926== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163926== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== ==163926== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163926== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163926== by 0x51C2D03: Curl_open (url.c:520) ==163926== by 0x513D46F: curl_easy_init (easy.c:372) ==163926== by 0x40357CA: test_lib1916.lto_priv.0 (lib1916.c:38) ==163926== by 0x4003443: main (first.c:167) ==163926== ==163926== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x533CFA5: __tsearch (tsearch.c:337) ==163926== by 0x533CFA5: tsearch (tsearch.c:290) ==163926== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163926== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163926== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== ==163926== 18,800 bytes in 486 blocks are possCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1964 ./libtest/libtests lib1964 http://xxx:yyy@127.0.0.1:9000/1964/testapi/test 127.0.0.1:9000:127.0.0.1:46739 > log/16/stdout1964 2> log/16/stderr1964 ibly lost in loss record 653 of 655 ==163926== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163926== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163926== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163926== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163926== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163926== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163926== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163926== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163926== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163926== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163926== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163926== by 0x525A142: setlocale (setlocale.c:337) ==163926== by 0x400336E: main (first.c:123) ==163926== === End of file valgrind1916 test 1964...[HTTP AWS_SIGV4 with X-Xxx-Date header set manually] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1964 ./libtest/libtests lib1964 http://xxx:yyy@127.0.0.1:9000/1964/testapi/test 127.0.0.1:9000:127.0.0.1:46739 > log/16/stdout1964 2> log/16/stderr1964 1964: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 1964 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind1964 ./libtest/libtests lib1964 http://xxx:yyy@127.0.0.1:9000/1964/testapi/test 127.0.0.1:9000:127.0.0.1:46739 > log/16/stdout1964 2> log/16/stderr1964 === End of file commands.log === Start of file http_server.log 07:36:19.119390 ====> Client connect 07:36:19.119440 accept_connection 3 returned 4 07:36:19.119460 accept_connection 3 returned 0 07:36:19.119477 Read 93 bytes 07:36:19.119487 Process 93 bytes request 07:36:19.119501 Got request: GET /verifiedserver HTTP/1.1 07:36:19.119510 Are-we-friendly question received 07:36:19.119535 Wrote request (93 bytes) input to log/16/server.input 07:36:19.119552 Identifying ourselves as friends 07:36:19.119631 Response sent (56 bytes) and written to log/16/server.response 07:36:19.119642 special request received, no persistency 07:36:19.119652 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 1964 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file stderr1964 URL: http://xxx:yyy@127.0.0.1:9000/1964/testapi/test === End of file stderr1964 === Start of file valgrind1964 ==164028== ==164028== Process terminating with default action of signal 4 (SIGILL) ==164028== Illegal opcode at address 0x51C2DB3 ==164028== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164028== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164028== by 0x51C2DB3: Curl_open (url.c:541) ==164028== by 0x513D46F: curl_easy_init (easy.c:372) ==164028== by 0x4033A0C: UnknownInlinedFun (lib1964.c:36) ==164028== by 0x4033A0C: test_lib1964.lto_priv.0 (lib1964.c:28) ==164028== by 0x4003443: main (first.c:167) ==164028== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x533CFA5: __tsearch (tsearch.c:337) ==164028== by 0x533CFA5: tsearch (tsearch.c:290) ==164028== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164028== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164028== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164028== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164028== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164028== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== ==164028== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x533CFA5: __tsearch (tsearch.c:337) ==164028== by 0x533CFA5: tsearch (tsearch.c:290) ==164028== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164028== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164028== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== ==164028== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164028== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164028== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164028== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164028== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164028== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== ==164028== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164028== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164028== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== ==164028== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164028== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164028== by 0x51C2D03: Curl_open (url.c:520) ==164028== by 0x513D46F: curl_easy_init (easy.c:372) ==164028== by 0x4033A0C: UnknownInlinedFun (lib1964.c:36) ==164028== by 0x4033A0C: test_lib1964.lto_priv.0 (lib1964.c:28) ==164028== by 0x4003443: main (first.c:167) ==164028== ==164028== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x533CFA5: __tsearch (tsearchCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1948 ./libtest/libtests lib1948 http://127.0.0.1:45457/1948 > log/2/stdout1948 2> log/2/stderr1948 .c:337) ==164028== by 0x533CFA5: tsearch (tsearch.c:290) ==164028== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164028== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164028== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164028== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164028== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164028== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== ==164028== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164028== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164028== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164028== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164028== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164028== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164028== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164028== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164028== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164028== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164028== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164028== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164028== by 0x525A142: setlocale (setlocale.c:337) ==164028== by 0x400336E: main (first.c:123) ==164028== === End of file valgrind1964 test 1948...[CURLOPT_POST after CURLOPT_UPLOAD reusing handle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1948 ./libtest/libtests lib1948 http://127.0.0.1:45457/1948 > log/2/stdout1948 2> log/2/stderr1948 1948: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 1948 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind1948 ./libtest/libtests lib1948 http://127.0.0.1:45457/1948 > log/2/stdout1948 2> log/2/stderr1948 === End of file commands.log === Start of file http_server.log 07:36:18.946180 ====> Client connect 07:36:18.946224 accept_connection 3 returned 4 07:36:18.946241 accept_connection 3 returned 0 07:36:18.946257 Read 93 bytes 07:36:18.946267 Process 93 bytes request 07:36:18.946281 Got request: GET /verifiedserver HTTP/1.1 07:36:18.946290 Are-we-friendly question received 07:36:18.946316 Wrote request (93 bytes) input to log/2/server.input 07:36:18.946336 Identifying ourselves as friends 07:36:18.946394 Response sent (56 bytes) and written to log/2/server.response 07:36:18.946406 special request received, no persistency 07:36:18.946415 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 1948 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file stderr1948 URL: http://127.0.0.1:45457/1948 === End of file stderr1948 === Start of file valgrind1948 ==163896== ==163896== Process terminating with default action of signal 4 (SIGILL) ==163896== Illegal opcode at address 0x51C2DB3 ==163896== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==163896== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==163896== by 0x51C2DB3: Curl_open (url.c:541) ==163896== by 0x513D46F: curl_easy_init (easy.c:372) ==163896== by 0x40315B1: test_lib1948.lto_priv.0 (lib1948.c:52) ==163896== by 0x4003443: main (first.c:167) ==163896== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x533CFA5: __tsearch (tsearch.c:337) ==163896== by 0x533CFA5: tsearch (tsearch.c:290) ==163896== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163896== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163896== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163896== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163896== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163896== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocale (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== ==163896== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x533CFA5: __tsearch (tsearch.c:337) ==163896== by 0x533CFA5: tsearch (tsearch.c:290) ==163896== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163896== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163896== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocale (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== ==163896== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163896== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163896== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163896== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163896== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==163896== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocale (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== ==163896== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163896== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==163896== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocaleCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2001 ../src/curl -q --trace-ascii log/19/trace2001 --trace-config all --trace-time http://127.0.0.1:33487/20010001 ftp://127.0.0.1:40681/20010002 file://localhost/startdir/src/build-curl/tests/log/19/test2001.txt > log/19/stdout2001 2> log/19/stderr2001 (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== ==163896== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==163896== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==163896== by 0x51C2D03: Curl_open (url.c:520) ==163896== by 0x513D46F: curl_easy_init (easy.c:372) ==163896== by 0x40315B1: test_lib1948.lto_priv.0 (lib1948.c:52) ==163896== by 0x4003443: main (first.c:167) ==163896== ==163896== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x533CFA5: __tsearch (tsearch.c:337) ==163896== by 0x533CFA5: tsearch (tsearch.c:290) ==163896== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==163896== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163896== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163896== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163896== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163896== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocale (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== ==163896== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==163896== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==163896== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==163896== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==163896== by 0x524F3F0: add_alias (gconv_conf.c:178) ==163896== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==163896== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==163896== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==163896== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==163896== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==163896== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==163896== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==163896== by 0x525A142: setlocale (setlocale.c:337) ==163896== by 0x400336E: main (first.c:123) ==163896== === End of file valgrind1948 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2005 ../src/curl -q --output log/21/curl2005.out --include --trace-ascii log/21/trace2005 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc2005 http://127.0.0.1:41087/ > log/21/stdout2005 2> log/21/stderr2005 test 2001...[HTTP GET followed by FTP RETR followed by FILE] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2001 ../src/curl -q --trace-ascii log/19/trace2001 --trace-config all --trace-time http://127.0.0.1:33487/20010001 ftp://127.0.0.1:40681/20010002 file://localhost/startdir/src/build-curl/tests/log/19/test2001.txt > log/19/stdout2001 2> log/19/stderr2001 2001: stdout FAILED: --- log/19/check-expected 2025-07-18 07:36:20.793780032 +0000 +++ log/19/check-generated 2025-07-18 07:36:20.793780032 +0000 @@ -1,12 +0,0 @@ --foo-[LF] -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/19/ dir after test 2001 === Start of file check-expected -foo-[LF] data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2001 ../src/curl -q --trace-ascii log/19/trace2001 --trace-config all --trace-time http://127.0.0.1:33487/20010001 ftp://127.0.0.1:40681/20010002 file://localhost/startdir/src/build-curl/tests/log/19/test2001.txt > log/19/stdout2001 2> log/19/stderr2001 === End of file commands.log === Start of file ftp_server.log 07:36:20.107954 ====> Client connect 07:36:20.108100 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:20.108326 < "USER anonymous" 07:36:20.108356 > "331 We are happy you popped in![CR][LF]" 07:36:20.108492 < "PASS ftp@example.com" 07:36:20.108513 > "230 Welcome you silly person[CR][LF]" 07:36:20.108641 < "PWD" 07:36:20.108666 > "257 "/" is current directory[CR][LF]" 07:36:20.108799 < "EPSV" 07:36:20.108820 ====> Passive DATA channel requested by client 07:36:20.108832 DATA sockfilt for passive data channel starting... 07:36:20.120198 DATA sockfilt for passive data channel started (pid 164399) 07:36:20.120324 DATA sockfilt for passive data channel listens on port 34857 07:36:20.120377 > "229 Entering Passive Mode (|||34857|)[LF]" 07:36:20.120396 Client has been notified that DATA conn will be accepted on port 34857 07:36:20.120670 Client connects to port 34857 07:36:20.120699 ====> Client established passive DATA connection on port 34857 07:36:20.120788 < "TYPE I" 07:36:20.120823 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:20.120987 < "SIZE verifiedserver" 07:36:20.121021 > "213 17[CR][LF]" 07:36:20.121181 < "RETR verifiedserver" 07:36:20.121219 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:20.121305 =====> Closing passive DATA connection... 07:36:20.121325 Server disconnects passive DATA connection 07:36:20.121520 Server disconnected passive DATA connection 07:36:20.121546 DATA sockfilt for passive data channel quits (pid 164399) 07:36:20.121843 DATA sockfilt for passive data channel quit (pid 164399) 07:36:20.121871 =====> Closed passive DATA connection 07:36:20.121899 > "226 File transfer complete[CR][LF]" 07:36:20.166920 < "QUIT" 07:36:20.166967 > "221 bye bye baby[CR][LF]" 07:36:20.167829 MAIN sockfilt said DISC 07:36:20.167857 ====> Client disconnected 07:36:20.167926 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:19.953822 ====> Client connect 07:36:19.954094 Received DATA (on stdin) 07:36:19.954108 > 160 bytes data, server => client 07:36:19.954120 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:19.954130 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:19.954140 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:19.954198 < 16 bytes data, client => server 07:36:19.954209 'USER anonymous\r\n' 07:36:19.954339 Received DATA (on stdin) 07:36:19.954350 > 33 bytes data, server => client 07:36:19.954360 '331 We are happy you popped in!\r\n' 07:36:19.954402 < 22 bytes data, client => server 07:36:19.954412 'PASS ftp@example.com\r\n' 07:36:19.954493 Received DATA (on stdin) 07:36:19.954503 > 30 bytes data, server => client 07:36:19.954513 '230 Welcome you silly person\r\n' 07:36:19.954553 < 5 bytes data, client => server 07:36:19.954563 'PWD\r\n' 07:36:19.954645 Received DATA (on stdin) 07:36:19.954655 > 30 bytes data, server => client 07:36:19.954665 '257 "/" is current directory\r\n' 07:36:19.954711 < 6 bytes data, client => server 07:36:19.954721 'EPSV\r\n' 07:36:19.966391 Received DATA (on stdin) 07:36:19.966412 > 38 bytes data, server => client 07:36:19.966424 '229 Entering Passive Mode (|||34857|)\n' 07:36:19.966568 < 8 bytes data, client => server 07:36:19.966585 'TYPE I\r\n' 07:36:19.966810 Received DATA (on stdin) 07:36:19.966822 > 33 bytes data, server => client 07:36:19.966832 '200 I modify TYPE as you wanted\r\n' 07:36:19.966884 < 21 bytes data, client => server 07:36:19.966899 'SIZE verifiedserver\r\n' 07:36:19.967007 Received DATA (on stdin) 07:36:19.967018 > 8 bytes data, server => client 07:36:19.967028 '213 17\r\n' 07:36:19.967075 < 21 bytes data, client => server 07:36:19.967089 'RETR verifiedserver\r\n' 07:36:19.967311 Received DATA (on stdin) 07:36:19.967325 > 29 bytes data, server => client 07:36:19.967335 '150 Binary junk (17 bytes).\r\n' 07:36:19.967884 Received DATA (on stdin) 07:36:19.967897 > 28 bytes data, server => client 07:36:19.967907 '226 File transfer complete\r\n' 07:36:20.012745 < 6 bytes data, client => server 07:36:20.012770 'QUIT\r\n' 07:36:20.012950 Received DATA (on stdin) 07:36:20.012960 > 18 bytes data, server => client 07:36:20.012970 '221 bye bye baby\r\n' 07:36:20.013761 ====> Client disconnect 07:36:20.013907 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:20.965714 Running IPv4 version 07:36:20.965772 Listening on port 34857 07:36:20.965809 Wrote pid 164399 to log/19/server/ftp_sockdata.pid 07:36:20.966110 Received PING (on stdin) 07:36:20.966213 Received PORT (on stdin) 07:36:20.966607 ====> Client connect 07:36:20.967387 Received DATA (on stdin) 07:36:20.967404 > 17 bytes data, server => client 07:36:20.967415 'WE ROOLZ: 93871\r\n' 07:36:20.967443 Received DISC (on stdin) 07:36:20.967455 ====> Client forcibly disconnected 07:36:20.967590 Received QUIT (on stdin) 07:36:20.967607 quits 07:36:20.967664 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:36:19.852701 ====> Client connect 07:36:19.852742 accept_connection 3 returned 4 07:36:19.852758 accept_connection 3 returned 0 07:36:19.852774 Read 93 bytes 07:36:19.852784 Process 93 bytes request 07:36:19.852796 Got request: GET /verifiedserver HTTP/1.1 07:36:19.852804 Are-we-friendly question received 07:36:19.852828 Wrote request (93 bytes) input to log/19/server.input 07:36:19.852843 Identifying ourselves as friends 07:36:19.852905 Response sent (56 bytes) and written to log/19/server.response 07:36:19.852914 special request received, no persistency 07:36:19.852922 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 2001 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file test2001.txt CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2044 ../src/curl -q --output log/5/curl2044.out --include --trace-ascii log/5/trace2044 --trace-config all --trace-time --proto-default DOESNOTEXIST > log/5/stdout2044 2> log/5/stderr2044 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2040 ../src/curl -q --trace-ascii log/4/trace2040 --trace-config all --trace-time -u testuser:testpass http://127.0.0.1:33235/20400100 --next --no-basic http://127.0.0.1:33235/20400200 > log/4/stdout2040 2> log/4/stderr2040 foo bar bar foo moo === End of file test2001.txt === Start of file valgrind2001 ==164412== ==164412== Process terminating with default action of signal 4 (SIGILL) ==164412== Illegal opcode at address 0x4003082 ==164412== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==164412== by 0x4003082: main (tool_main.c:234) === End of file valgrind2001 test 2005...[netrc match with password only in file, no username. machine follows] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2005 ../src/curl -q --output log/21/curl2005.out --include --trace-ascii log/21/trace2005 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc2005 http://127.0.0.1:41087/ > log/21/stdout2005 2> log/21/stderr2005 2005: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 2005 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2005 ../src/curl -q --output log/21/curl2005.out --include --trace-ascii log/21/trace2005 --trace-config all --trace-time --netrc-optional --netrc-file log/21/netrc2005 http://127.0.0.1:41087/ > log/21/stdout2005 2> log/21/stderr2005 === End of file commands.log === Start of file http_server.log 07:36:20.069368 ====> Client connect 07:36:20.069407 accept_connection 3 returned 4 07:36:20.069427 accept_connection 3 returned 0 07:36:20.071528 Read 93 bytes 07:36:20.071547 Process 93 bytes request 07:36:20.071561 Got request: GET /verifiedserver HTTP/1.1 07:36:20.071571 Are-we-friendly question received 07:36:20.071603 Wrote request (93 bytes) input to log/21/server.input 07:36:20.071621 Identifying ourselves as friends 07:36:20.071679 Response sent (56 bytes) and written to log/21/server.response 07:36:20.071690 special request received, no persistency 07:36:20.071698 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file netrc2005 machine 127.0.0.1 password 5up3r53cr37 machine example.com === End of file netrc2005 === Start of file server.cmd Testnum 2005 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind2005 ==164469== ==164469== Process terminating with default action of signal 4 (SIGILL) ==164469== Illegal opcode at address 0x4003082 ==164469== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==164469== by 0x4003082: main (tool_main.c:234) === End of file valgrind2005 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/8/server/tftp_server.pid" --portfile "log/8/server/tftp_server.port" --logfile "log/8/tftp_server.log" --logdir "log/8" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 164361 port 47307 * pid tftp => 164361 164361 * starts no server test 2044...[Attempt to set a default protocol that does not exist] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2044 ../src/curl -q --output log/5/curl2044.out --include --trace-ascii log/5/trace2044 --trace-config all --trace-time --proto-default DOESNOTEXIST > log/5/stdout2044 2> log/5/stderr2044 curl returned 132, when expecting 1 2044: exit FAILED == Contents of files in the log/5/ dir after test 2044 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2044 ../src/curl -q --output log/5/curl2044.out --include --trace-ascii log/5/trace2044 --trace-config all --trace-time --proto-default DOESNOTEXIST > log/5/stdout2044 2> log/5/stderr2044 === End of file commands.log === Start of file server.cmd Testnum 2044 === End of file server.cmd === Start of file valgrind2044 ==165229== ==165229== Process terminating with default action of signal 4 (SIGILL) ==165229== Illegal opcode at address 0x4003082 ==165229== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165229== by 0x4003082: main (tool_main.c:234) === End of file valgrind2044 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2024 ./libtest/libtests lib2023 http://127.0.0.1:43423/2024 basic digest > log/7/stdout2024 2> log/7/stderr2024 test 2040...[HTTP Basic authorization, then without authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2040 ../src/curl -q --trace-ascii log/4/trace2040 --trace-config all --trace-time -u testuser:testpass http://127.0.0.1:33235/20400100 --next --no-basic http://127.0.0.1:33235/20400200 > log/4/stdout2040 2> log/4/stderr2040 2040: stdout FAILED: --- log/4/check-expected 2025-07-18 07:36:21.283780045 +0000 +++ log/4/check-generated 2025-07-18 07:36:21.283780045 +0000 @@ -1,2 +0,0 @@ -Finally, this is the real page![LF] -This is a bad password page![LF] == Contents of files in the log/4/ dir after test 2040 === Start of file check-expected Finally, this is the real page![LF] This is a bad password page![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2040 ../src/curl -q --trace-ascii log/4/trace2040 --trace-config all --trace-time -u testuser:testpass http://127.0.0.1:33235/20400100 --next --no-basic http://127.0.0.1:33235/20400200 > log/4/stdout2040 2> log/4/stderr2040 === End of file commands.log === Start of file http_server.log 07:36:20.569200 ====> Client connect 07:36:20.569229 accept_connection 3 returned 4 07:36:20.569244 accept_connection 3 returned 0 07:36:20.569257 Read 93 bytes 07:36:20.569266 Process 93 bytes request 07:36:20.569278 Got request: GET /verifiedserver HTTP/1.1 07:36:20.569295 Are-we-friendly question received 07:36:20.569318 Wrote request (93 bytes) input to log/4/server.input 07:36:20.569334 Identifying ourselves as friends 07:36:20.569386 Response sent (56 bytes) and written to log/4/server.response 07:36:20.569395 special request received, no persistency 07:36:20.569403 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 2040 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind2040 ==165241== ==165241== Process terminating with default action of signal 4 (SIGILL) ==165241== Illegal opcode at address 0x4003082 ==165241== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165241== by 0x4003082: main (tool_main.c:234) === End of file valgrind2040 test 2024...[HTTP authorization retry (Basic switching to Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2024 ./libtest/libtests lib2023 http://127.0.0.1:43423/2024 basic digest > log/7/stdout2024 2> log/7/stderr2024 2024: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 2024 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2024 ./libtest/libtests lib2023 http://127.0.0.1:43423/2024 basic digest > log/7/stdout2024 2> log/7/stderr2024 === End of file commands.log === Start of file http_server.log 07:36:20.116052 ====> Client connect 07:36:20.116098 accept_connection 3 returned 4 07:36:20.116116 accept_connection 3 returned 0 07:36:20.116133 Read 93 bytes 07:36:20.116143 Process 93 bytes request 07:36:20.116156 Got request: GET /verifiedserver HTTP/1.1 07:36:20.116165 Are-we-friendly question received 07:36:20.116188 Wrote request (93 bytes) input to log/7/server.input 07:36:20.116204 Identifying ourselves as friends 07:36:20.116282 Response sent (57 bytes) and written to log/7/server.response 07:36:20.116291 special request received, no persistency 07:36:20.116300 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 2024 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr2024 URL: http://127.0.0.1:43423/2024 === End of file stderr2024 === Start of file valgrind2024 ==164539== ==164539== Process terminating with default action of signal 4 (SIGILL) ==164539== Illegal opcode at address 0x51C2DB3 ==164539== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164539== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164539== by 0x51C2DB3: Curl_open (url.c:541) ==164539== by 0x513D46F: curl_easy_init (easy.c:372) ==164539== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164539== by 0x4003443: main (first.c:167) ==164539== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x533CFA5: __tsearch (tsearch.c:337) ==164539== by 0x533CFA5: tsearch (tsearch.c:290) ==164539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164539== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164539== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== ==164539== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x533CFA5: __tsearch (tsearch.c:337) ==164539== by 0x533CFA5: tsearch (tsearch.c:290) ==164539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164539== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164539== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== ==164539== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164539== by 0x524F3F0: read_conf_fileCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2039 ../src/curl -q --output log/22/curl2039.out --include --trace-ascii log/22/trace2039 --trace-config all --trace-time --netrc-optional --netrc-file log/22/netrc2039 ftp://127.0.0.1:42651/ > log/22/stdout2039 2> log/22/stderr2039 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2047 ../src/curl -q --include --trace-ascii log/2/trace2047 --trace-config all --trace-time http://åäö.se/2047 -x 127.0.0.1:45457 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout2047 2> log/2/stderr2047 .isra.0 (gconv_parseconfdir.h:101) ==164539== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164539== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== ==164539== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164539== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164539== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== ==164539== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164539== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164539== by 0x51C2D03: Curl_open (url.c:520) ==164539== by 0x513D46F: curl_easy_init (easy.c:372) ==164539== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164539== by 0x4003443: main (first.c:167) ==164539== ==164539== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x533CFA5: __tsearch (tsearch.c:337) ==164539== by 0x533CFA5: tsearch (tsearch.c:290) ==164539== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164539== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164539== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== ==164539== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164539== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164539== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164539== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164539== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164539== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164539== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164539== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164539== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164539== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164539== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164539== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164539== by 0x525A142: setlocale (setlocale.c:337) ==164539== by 0x400336E: main (first.c:123) ==164539== === End of file valgrind2024 test 2039...[FTP (optional .netrc with 'default' override; no user/pass) dir list PASV] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2039 ../src/curl -q --output log/22/curl2039.out --include --trace-ascii log/22/trace2039 --trace-config all --trace-time --netrc-optional --netrc-file log/22/netrc2039 ftp://127.0.0.1:42651/ > log/22/stdout2039 2> log/22/stderr2039 2039: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 2039 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2039 ../src/curl -q --output log/22/curl2039.out --include --trace-ascii log/22/trace2039 --trace-config all --trace-time --netrc-optional --netrc-file log/22/netrc2039 ftp://127.0.0.1:42651/ > log/22/stdout2039 2> log/22/stderr2039 === End of file commands.log === Start of file ftp_server.log 07:36:20.721121 ====> Client connect 07:36:20.721236 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:20.721435 < "USER anonymous" 07:36:20.721461 > "331 We are happy you popped in![CR][LF]" 07:36:20.721578 < "PASS ftp@example.com" 07:36:20.721597 > "230 Welcome you silly person[CR][LF]" 07:36:20.721701 < "PWD" 07:36:20.721722 > "257 "/" is current directory[CR][LF]" 07:36:20.721831 < "EPSV" 07:36:20.721849 ====> Passive DATA channel requested by client 07:36:20.721858 DATA sockfilt for passive data channel starting... 07:36:20.723098 DATA sockfilt for passive data channel started (pid 165227) 07:36:20.723189 DATA sockfilt for passive data channel listens on port 39957 07:36:20.723222 > "229 Entering Passive Mode (|||39957|)[LF]" 07:36:20.723237 Client has been notified that DATA conn will be accepted on port 39957 07:36:20.723438 Client connects to port 39957 07:36:20.723462 ====> Client established passive DATA connection on port 39957 07:36:20.723518 < "TYPE I" 07:36:20.723541 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:20.723670 < "SIZE verifiedserver" 07:36:20.723700 > "213 17[CR][LF]" 07:36:20.723823 < "RETR verifiedserver" 07:36:20.723850 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:20.723921 =====> Closing passive DATA connection... 07:36:20.723937 Server disconnects passive DATA connection 07:36:20.724140 Server disconnected passive DATA connection 07:36:20.724166 DATA sockfilt for passive data channel quits (pid 165227) 07:36:20.724353 DATA sockfilt for passive data channel quit (pid 165227) 07:36:20.724375 =====> Closed passive DATA connection 07:36:20.724398 > "226 File transfer complete[CR][LF]" 07:36:20.766921 < "QUIT" 07:36:20.766999 > "221 bye bye baby[CR][LF]" 07:36:20.767233 MAIN sockfilt said DISC 07:36:20.767260 ====> Client disconnected 07:36:20.767326 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:20.567010 ====> Client connect 07:36:20.567222 Received DATA (on stdin) 07:36:20.567233 > 160 bytes data, server => client 07:36:20.567242 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:20.567251 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:20.567258 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:20.567313 < 16 bytes data, client => server 07:36:20.567322 'USER anonymous\r\n' 07:36:20.567440 Received DATA (on stdin) 07:36:20.567449 > 33 bytes data, server => client 07:36:20.567457 '331 We are happy you popped in!\r\n' 07:36:20.567494 < 22 bytes data, client => server 07:36:20.567502 'PASS ftp@example.com\r\n' 07:36:20.567573 Received DATA (on stdin) 07:36:20.567582 > 30 bytes data, server => client 07:36:20.567590 '230 Welcome you silly person\r\n' 07:36:20.567623 < 5 bytes data, client => server 07:36:20.567630 'PWD\r\n' 07:36:20.567699 Received DATA (on stdin) 07:36:20.567707 > 30 bytes data, server => client 07:36:20.567715 '257 "/" is current directory\r\n' 07:36:20.567753 < 6 bytes data, client => server 07:36:20.567760 'EPSV\r\n' 07:36:20.569219 Received DATA (on stdin) 07:36:20.569231 > 38 bytes data, server => client 07:36:20.569241 '229 Entering Passive Mode (|||39957|)\n' 07:36:20.569373 < 8 bytes data, client => server 07:36:20.569383 'TYPE I\r\n' 07:36:20.569521 Received DATA (on stdin) 07:36:20.569531 > 33 bytes data, server => client 07:36:20.569541 '200 I modify TYPE as you wanted\r\n' 07:36:20.569581 < 21 bytes data, client => server 07:36:20.569591 'SIZE verifiedserver\r\n' 07:36:20.569679 Received DATA (on stdin) 07:36:20.569689 > 8 bytes data, server => client 07:36:20.569697 '213 17\r\n' 07:36:20.569735 < 21 bytes data, client => server 07:36:20.569745 'RETR verifiedserver\r\n' 07:36:20.569918 Received DATA (on stdin) 07:36:20.569929 > 29 bytes data, server => client 07:36:20.569940 '150 Binary junk (17 bytes).\r\n' 07:36:20.570380 Received DATA (on stdin) 07:36:20.570392 > 28 bytes data, server => client 07:36:20.570403 '226 File transfer complete\r\n' 07:36:20.612737 < 6 bytes data, client => server 07:36:20.612756 'QUIT\r\n' 07:36:20.612933 Received DATA (on stdin) 07:36:20.612945 > 18 bytes data, server => client 07:36:20.612988 '221 bye bye baby\r\n' 07:36:20.613168 ====> Client disconnect 07:36:20.613309 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:20.568931 Running IPv4 version 07:36:20.568975 Listening on port 39957 07:36:20.569010 Wrote pid 165227 to log/22/server/ftp_sockdata.pid 07:36:20.569027 Received PING (on stdin) 07:36:20.569100 Received PORT (on stdin) 07:36:20.569348 ====> Client connect 07:36:20.569964 Received DATA (on stdin) 07:36:20.569977 > 17 bytes data, server => client 07:36:20.569988 'WE ROOLZ: 79849\r\n' 07:36:20.570012 Received DISC (on stdin) 07:36:20.570023 ====> Client forcibly disconnected 07:36:20.570154 Received QUIT (on stdin) 07:36:20.570166 quits 07:36:20.570217 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file netrc2039 # the following two lines were created while testing curl default login userdef password passwddef machine 127.0.0.1 login user1 password passwd1 machine 127.0.0.1 login user2 password passwd2 === End of file netrc2039 === Start of file server.cmd Testnum 2039 === End of file server.cmd === Start of file valgrind2039 ==165354== ==165354== Process terminating with default action of signal 4 (SIGILL) ==165354== Illegal opcode at address 0x4003082 ==165354== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165354== by 0x4003082: main (tool_main.c:234) === End of file valgrind2039 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2023 ./libtest/libtests lib2023 http://127.0.0.1:33627/2023 basic basic > log/13/stdout2023 2> log/13/stderr2023 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 2047...[Connection reuse with IDN host name over HTTP proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2047 ../src/curl -q --include --trace-ascii log/2/trace2047 --trace-config all --trace-time http://åäö.se/2047 -x 127.0.0.1:45457 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout2047 2> log/2/stderr2047 2047: stdout FAILED: --- log/2/check-expected 2025-07-18 07:36:21.317113378 +0000 +++ log/2/check-generated 2025-07-18 07:36:21.313780045 +0000 @@ -1,18 +0,0 @@ -HTTP/1.1 302 OK swsbounce[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Content-Type: text/plain[LF] -Location: ./20470001[LF] -[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Content-Type: text/plain; charset=us-ascii[LF] -[LF] -OK[LF] -1[LF] -1[LF] -3[LF] -http://%c3%a5%c3%a4%c3%b6.se/20470001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/2/ dir after test 2047 === Start of file check-expected HTTP/1.1 302 OK swsbounce[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Content-Type: text/plain[LF] Location: ./20470001[LF] [LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Content-Type: text/plain; charset=us-ascii[LF] [LF] OK[LF] 1[LF] 1[LF] 3[LF] http://%c3%a5%c3%a4%c3%b6.se/20470001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2047 ../src/curl -q --include --trace-ascii log/2/trace2047 --trace-config all --trace-time http://åäö.se/2047 -x 127.0.0.1:45457 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/2/stdout2047 2> log/2/stderr2047 === End of file commands.log === Start of file http_server.log 07:36:20.655126 ====> Client connect 07:36:20.655157 accept_connection 3 returned 4 07:36:20.655172 accept_connection 3 returned 0 07:36:20.655185 Read 93 bytes 07:36:20.655194 Process 93 bytes request 07:36:20.655207 Got request: GET /verifiedserver HTTP/1.1 07:36:20.655216 Are-we-friendly question received 07:36:20.655239 Wrote request (93 bytes) input to log/2/server.input 07:36:20.655253 Identifying ourselves as friends 07:36:20.655305 Response sent (56 bytes) and written to log/2/server.response 07:36:20.655314 special request received, no persistency 07:36:20.655322 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 2047 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind2047 ==165478== ==165478== Process terminating with default action of signal 4 (SIGILL) ==165478== Illegal opcode at address 0x4003082 ==165478== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165478== by 0x4003082: main (tool_main.c:234) === End of file valgrind2047 test 2023...[HTTP authorization retry (Basic)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2023 ./libtest/libtests lib2023 http://127.0.0.1:33627/2023 basic basic > log/13/stdout2023 2> log/13/stderr2023 2023: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 2023 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2023 ./libtest/libtests lib2023 http://127.0.0.1:33627/2023 basic basic > log/13/stdout2023 2> log/13/stderr2023 === End of file commands.log === Start of file http_server.log 07:36:20.092959 ====> Client connect 07:36:20.092992 accept_connection 3 returned 4 07:36:20.093008 accept_connection 3 returned 0 07:36:20.093022 Read 93 bytes 07:36:20.093032 Process 93 bytes request 07:36:20.093044 Got request: GET /verifiedserver HTTP/1.1 07:36:20.093054 Are-we-friendly question received 07:36:20.093078 Wrote request (93 bytes) input to log/13/server.input 07:36:20.093094 Identifying ourselves as friends 07:36:20.093147 Response sent (56 bytes) and written to log/13/server.response 07:36:20.093157 special request received, no persistency 07:36:20.093165 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 2023 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file stderr2023 URL: http://127.0.0.1:33627/2023 === End of file stderr2023 === Start of file valgrind2023 ==164528== ==164528== Process terminating with default action of signal 4 (SIGILL) ==164528== Illegal opcode at address 0x51C2DB3 ==164528== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164528== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164528== by 0x51C2DB3: Curl_open (url.c:541) ==164528== by 0x513D46F: curl_easy_init (easy.c:372) ==164528== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164528== by 0x4003443: main (first.c:167) ==164528== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x533CFA5: __tsearch (tsearch.c:337) ==164528== by 0x533CFA5: tsearch (tsearch.c:290) ==164528== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164528== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164528== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164528== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164528== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164528== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== ==164528== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x533CFA5: __tsearch (tsearch.c:337) ==164528== by 0x533CFA5: tsearch (tsearch.c:290) ==164528== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164528== by 0x524F74A: add_alias2 (gcoCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2046 ../src/curl -q --include --trace-ascii log/16/trace2046 --trace-config all --trace-time http://åäö.se:46739/2046 --resolve xn--4cab6c.se:46739:127.0.0.1 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/16/stdout2046 2> log/16/stderr2046 nv_conf.c:105) ==164528== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== ==164528== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164528== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164528== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164528== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164528== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164528== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== ==164528== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164528== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164528== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== ==164528== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164528== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164528== by 0x51C2D03: Curl_open (url.c:520) ==164528== by 0x513D46F: curl_easy_init (easy.c:372) ==164528== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164528== by 0x4003443: main (first.c:167) ==164528== ==164528== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x533CFA5: __tsearch (tsearch.c:337) ==164528== by 0x533CFA5: tsearch (tsearch.c:290) ==164528== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164528== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164528== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164528== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164528== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164528== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== ==164528== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164528== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164528== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164528== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164528== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164528== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164528== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164528== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164528== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164528== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164528== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164528== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164528== by 0x525A142: setlocale (setlocale.c:337) ==164528== by 0x400336E: main (first.c:123) ==164528== === End of file valgrind2023 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2045 ../src/curl -q --output log/18/curl2045.out --include --trace-ascii log/18/trace2045 --trace-config all --trace-time -H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp 127.0.0.1:33107 > log/18/stdout2045 2> log/18/stderr2045 setenv LC_ALL = en_US.UTF-8 setenv LC_CTYPE = en_US.UTF-8 test 2046...[Connection reuse with IDN host name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2046 ../src/curl -q --include --trace-ascii log/16/trace2046 --trace-config all --trace-time http://åäö.se:46739/2046 --resolve xn--4cab6c.se:46739:127.0.0.1 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/16/stdout2046 2> log/16/stderr2046 2046: stdout FAILED: --- log/16/check-expected 2025-07-18 07:36:21.340446713 +0000 +++ log/16/check-generated 2025-07-18 07:36:21.340446713 +0000 @@ -1,18 +0,0 @@ -HTTP/1.1 302 OK swsbounce[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Content-Type: text/plain[LF] -Location: ./20460001[LF] -[LF] -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Content-Type: text/plain; charset=us-ascii[LF] -[LF] -OK[LF] -1[LF] -1[LF] -3[LF] -http://%c3%a5%c3%a4%c3%b6.se:46739/20460001[LF] -text/plain; charset=us-ascii[LF] -200[LF] == Contents of files in the log/16/ dir after test 2046 === Start of file check-expected HTTP/1.1 302 OK swsbounce[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Content-Type: text/plain[LF] Location: ./20460001[LF] [LF] HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Content-Type: text/plain; charset=us-ascii[LF] [LF] OK[LF] 1[LF] 1[LF] 3[LF] http://%c3%a5%c3%a4%c3%b6.se:46739/20460001[LF] text/plain; charset=us-ascii[LF] 200[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2046 ../src/curl -q --include --trace-ascii log/16/trace2046 --trace-config all --trace-time http://åäö.se:46739/2046 --resolve xn--4cab6c.se:46739:127.0.0.1 -w "%{num_connects}\n%{num_redirects}\n%{size_download}\n%{url_effective}\n%{content_type}\n%{response_code}\n" -L > log/16/stdout2046 2> log/16/stderr2046 === End of file commands.log === Start of file http_server.log 07:36:20.632582 ====> Client connect 07:36:20.632633 accept_connection 3 returned 4 07:36:20.632680 accept_connection 3 returned 0 07:36:20.632695 Read 93 bytes 07:36:20.632704 Process 93 bytes request 07:36:20.632717 Got request: GET /verifiedserver HTTP/1.1 07:36:20.632726 Are-we-friendly question received 07:36:20.632753 Wrote request (93 bytes) input to log/16/server.input 07:36:20.632769 Identifying ourselves as friends 07:36:20.632825 Response sent (56 bytes) and written to log/16/server.response 07:36:20.632835 special request received, no persistency 07:36:20.632844 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 2046 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind2046 ==165425== ==165425== Process terminating with default action of signal 4 (SIGILL) ==165425== Illegal opcode at address 0x4003082 ==165425== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165425== by 0x4003082: main (tool_main.c:234) === End of file valgrind2046 test 2045...[Set the default protocol to ftp for a schemeless URL] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2045 ../src/curl -q --output log/18/curl2045.out --include --trace-ascii log/18/trace2045 --trace-config all --trace-time -H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp 127.0.0.1:33107 > log/18/stdout2045 2> log/18/stderr2045 curl returned 132, when expecting 8 2045: exit FAILED == Contents of files in the log/18/ dir after test 2045 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2045 ../src/curl -q --output log/18/curl2045.out --include --trace-ascii log/18/trace2045 --trace-config all --trace-time -H "User-Agent:" -H "Host:" -H "Accept:" --proto-default ftp 127.0.0.1:33107 > log/18/stdout2045 2> log/18/stderr2045 === End of file commands.log === Start of file ftp_server.log 07:36:20.761429 ====> Client connect 07:36:20.761631 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:20.762061 < "USER anonymous" 07:36:20.762094 > "331 We are happy you popped in![CR][LF]" 07:36:20.762242 < "PASS ftp@example.com" 07:36:20.762271 > "230 Welcome you silly person[CR][LF]" 07:36:20.762403 < "PWD" 07:36:20.762429 > "257 "/" is current directory[CR][LF]" 07:36:20.762592 < "EPSV" 07:36:20.762614 ====> Passive DATA channel requested by client 07:36:20.762626 DATA sockfilt for passive data channel starting... 07:36:20.764341 DATA sockfilt for passive data channel started (pid 165318) 07:36:20.764445 DATA sockfilt for passive data channel listens on port 44197 07:36:20.764481 > "229 Entering Passive Mode (|||44197|)[LF]" 07:36:20.764495 Client has been notified that DATA conn will be accepted on port 44197 07:36:20.764722 Client connects to port 44197 07:36:20.764744 ====> Client established passive DATA connection on port 44197 07:36:20.764802 < "TYPE I" 07:36:20.764825 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:20.764945 < "SIZE verifiedserver" 07:36:20.764972 > "213 17[CR][LF]" 07:36:20.765080 < "RETR verifiedserver" 07:36:20.765107 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:20.765179 =====> Closing passive DATA connection... 07:36:20.765196 Server disconnects passive DATA connection 07:36:20.765254 Server disconnected passive DATA connection 07:36:20.765276 DATA sockfilt for passive data channel quits (pid 165318) 07:36:20.765494 DATA sockfilt for passive data channel quit (pid 165318) 07:36:20.765520 =====> Closed passive DATA connection 07:36:20.765544 > "226 File transfer complete[CR][LF]" 07:36:20.812600 < "QUIT" 07:36:20.812660 > "221 bye bye baby[CR][LF]" 07:36:20.812798 MAIN sockfilt said DISC 07:36:20.812823 ====> Client disconnected 07:36:20.813036 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:20.607244 ====> Client connect 07:36:20.607727 Received DATA (on stdin) 07:36:20.607765 > 160 bytes data, server => client 07:36:20.607777 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:20.607787 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:20.607797 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:20.607899 < 16 bytes data, client => server 07:36:20.607911 'USER anonymous\r\n' 07:36:20.608077 Received DATA (on stdin) 07:36:20.608089 > 33 bytes data, server => client 07:36:20.608099 '331 We are happy you popped in!\r\n' 07:36:20.608144 < 22 bytes data, client => server 07:36:20.608155 'PASS ftp@example.com\r\n' 07:36:20.608250 Received DATA (on stdin) 07:36:20.608261 > 30 bytes data, server => client 07:36:20.608271 '230 Welcome you silly person\r\n' 07:36:20.608312 < 5 bytes data, client => server 07:36:20.608322 'PWD\r\n' 07:36:20.608409 Received DATA (on stdin) 07:36:20.608419 > 30 bytes data, server => client 07:36:20.6084CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2049 ../src/curl -q --output log/21/curl2049.out --include --trace-ascii log/21/trace2049 --trace-config all --trace-time http://www1.example.com:8081/2049 --connect-to ::127.0.0.1:41087 --next http://www2.example.com:8082/2049 --connect-to :8082:127.0.0.1:41087 --next http://www3.example.com:8083/2049 --connect-to www3.example.com::127.0.0.1:41087 --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:127.0.0.1:41087 > log/21/stdout2049 2> log/21/stderr2049 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2050 ../src/curl -q --output log/19/curl2050.out --include --trace-ascii log/19/trace2050 --trace-config all --trace-time http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:33487 -x 127.0.0.1:38499 > log/19/stdout2050 2> log/19/stderr2050 29 '257 "/" is current directory\r\n' 07:36:20.608498 < 6 bytes data, client => server 07:36:20.608509 'EPSV\r\n' 07:36:20.610480 Received DATA (on stdin) 07:36:20.610493 > 38 bytes data, server => client 07:36:20.610502 '229 Entering Passive Mode (|||44197|)\n' 07:36:20.610656 < 8 bytes data, client => server 07:36:20.610666 'TYPE I\r\n' 07:36:20.610804 Received DATA (on stdin) 07:36:20.610814 > 33 bytes data, server => client 07:36:20.610822 '200 I modify TYPE as you wanted\r\n' 07:36:20.610860 < 21 bytes data, client => server 07:36:20.610869 'SIZE verifiedserver\r\n' 07:36:20.610949 Received DATA (on stdin) 07:36:20.610957 > 8 bytes data, server => client 07:36:20.610965 '213 17\r\n' 07:36:20.610999 < 21 bytes data, client => server 07:36:20.611007 'RETR verifiedserver\r\n' 07:36:20.611080 Received DATA (on stdin) 07:36:20.611100 > 29 bytes data, server => client 07:36:20.611112 '150 Binary junk (17 bytes).\r\n' 07:36:20.611529 Received DATA (on stdin) 07:36:20.611547 > 28 bytes data, server => client 07:36:20.611558 '226 File transfer complete\r\n' 07:36:20.656101 < 6 bytes data, client => server 07:36:20.656132 'QUIT\r\n' 07:36:20.658656 Received DATA (on stdin) 07:36:20.658676 > 18 bytes data, server => client 07:36:20.658687 '221 bye bye baby\r\n' 07:36:20.658739 ====> Client disconnect 07:36:20.658938 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:20.610170 Running IPv4 version 07:36:20.610227 Listening on port 44197 07:36:20.610256 Wrote pid 165318 to log/18/server/ftp_sockdata.pid 07:36:20.610270 Received PING (on stdin) 07:36:20.610349 Received PORT (on stdin) 07:36:20.610629 ====> Client connect 07:36:20.611108 Received DATA (on stdin) 07:36:20.611121 > 17 bytes data, server => client 07:36:20.611132 'WE ROOLZ: 82311\r\n' 07:36:20.611184 Received DISC (on stdin) 07:36:20.611200 ====> Client forcibly disconnected 07:36:20.611265 Received QUIT (on stdin) 07:36:20.611276 quits 07:36:20.611348 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY welcome HTTP/1.1 200 OK\r\nContent-Length: 21\r\n\r\n500 Weird FTP Reply Testnum 2045 === End of file server.cmd === Start of file valgrind2045 ==165472== ==165472== Process terminating with default action of signal 4 (SIGILL) ==165472== Illegal opcode at address 0x4003082 ==165472== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165472== by 0x4003082: main (tool_main.c:234) === End of file valgrind2045 test 2049...[Connect to specific host] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2049 ../src/curl -q --output log/21/curl2049.out --include --trace-ascii log/21/trace2049 --trace-config all --trace-time http://www1.example.com:8081/2049 --connect-to ::127.0.0.1:41087 --next http://www2.example.com:8082/2049 --connect-to :8082:127.0.0.1:41087 --next http://www3.example.com:8083/2049 --connect-to www3.example.com::127.0.0.1:41087 --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:127.0.0.1:41087 > log/21/stdout2049 2> log/21/stderr2049 2049: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 2049 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2049 ../src/curl -q --output log/21/curl2049.out --include --trace-ascii log/21/trace2049 --trace-config all --trace-time http://www1.example.com:8081/2049 --connect-to ::127.0.0.1:41087 --next http://www2.example.com:8082/2049 --connect-to :8082:127.0.0.1:41087 --next http://www3.example.com:8083/2049 --connect-to www3.example.com::127.0.0.1:41087 --next http://www4.example.com:8084/2049 --connect-to www4.example.com:8084:127.0.0.1:41087 > log/21/stdout2049 2> log/21/stderr2049 === End of file commands.log === Start of file http_server.log 07:36:20.677887 ====> Client connect 07:36:20.677922 accept_connection 3 returned 4 07:36:20.677939 accept_connection 3 returned 0 07:36:20.677953 Read 93 bytes 07:36:20.677963 Process 93 bytes request 07:36:20.677976 Got request: GET /verifiedserver HTTP/1.1 07:36:20.677985 Are-we-friendly question received 07:36:20.678009 Wrote request (93 bytes) input to log/21/server.input 07:36:20.678025 Identifying ourselves as friends 07:36:20.678085 Response sent (56 bytes) and written to log/21/server.response 07:36:20.678096 special request received, no persistency 07:36:20.678105 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 2049 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind2049 ==165576== ==165576== Process terminating with default action of signal 4 (SIGILL) ==165576== Illegal opcode at address 0x4003082 ==165576== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165576== by 0x4003082: main (tool_main.c:234) === End of file valgrind2049 test 2050...[--connect-to via HTTP proxy (tunnel mode automatically)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2050 ../src/curl -q --output log/19/curl2050.out --include --trace-ascii log/19/trace2050 --trace-config all --trace-time http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:33487 -x 127.0.0.1:38499 > log/19/stdout2050 2> log/19/stderr2050 2050: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 2050 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2050 ../src/curl -q --output log/19/curl2050.out --include --trace-ascii log/19/trace2050 --trace-config all --trace-time http://www.example.com.2050/2050 --connect-to ::connect.example.com.2050:33487 -x 127.0.0.1:38499 > log/19/stdout2050 2> log/19/stderr2050 === End of file commands.log === Start of file http2_server.log 07:36:20.695995 ====> Client connect 07:36:20.696031 accept_connection 3 returned 4 07:36:20.696048 accept_connection 3 returned 0 07:36:20.696064 Read 93 bytes 07:36:20.696074 Process 93 bytes request 07:36:20.696088 Got request: GET /verifiedserver HTTP/1.1 07:36:20.696097 Are-we-friendly question received 07:36:20.696124 Wrote request (93 bytes) input to log/19/proxy.input 07:36:20.696145 Identifying ourselves as friends 07:36:20.696305 Response sent (57 bytes) and written to log/19/proxy.response 07:36:20.696321 special request received, no persistency 07:36:20.696331 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:38499... * Connected to 127.0.0.1 (127.0.0.1) port 38499 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38499 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2026 ./libtest/libtests lib2023 http://127.0.0.1:38675/2026 digest basic > log/24/stdout2026 2> log/24/stderr2026 of file http2_verify.out WE ROOLZ: 144721 === End of file http2_verify.out === Start of file http_server.log 07:36:20.674567 ====> Client connect 07:36:20.674604 accept_connection 3 returned 4 07:36:20.674621 accept_connection 3 returned 0 07:36:20.674636 Read 93 bytes 07:36:20.674646 Process 93 bytes request 07:36:20.674658 Got request: GET /verifiedserver HTTP/1.1 07:36:20.674667 Are-we-friendly question received 07:36:20.674702 Wrote request (93 bytes) input to log/19/server.input 07:36:20.674719 Identifying ourselves as friends 07:36:20.674791 Response sent (56 bytes) and written to log/19/server.response 07:36:20.674801 special request received, no persistency 07:36:20.674810 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144721 === End of file proxy.response === Start of file server.cmd Testnum 2050 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind2050 ==165646== ==165646== Process terminating with default action of signal 4 (SIGILL) ==165646== Illegal opcode at address 0x4003082 ==165646== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165646== by 0x4003082: main (tool_main.c:234) === End of file valgrind2050 test 2026...[HTTP authorization retry (Digest switching to Basic)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2026 ./libtest/libtests lib2023 http://127.0.0.1:38675/2026 digest basic > log/24/stdout2026 2> log/24/stderr2026 2026: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 2026 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2026 ./libtest/libtests lib2023 http://127.0.0.1:38675/2026 digest basic > log/24/stdout2026 2> log/24/stderr2026 === End of file commands.log === Start of file http_server.log 07:36:20.287461 ====> Client connect 07:36:20.287495 accept_connection 3 returned 4 07:36:20.287511 accept_connection 3 returned 0 07:36:20.287526 Read 93 bytes 07:36:20.287536 Process 93 bytes request 07:36:20.287549 Got request: GET /verifiedserver HTTP/1.1 07:36:20.287558 Are-we-friendly question received 07:36:20.287581 Wrote request (93 bytes) input to log/24/server.input 07:36:20.287600 Identifying ourselves as friends 07:36:20.287652 Response sent (56 bytes) and written to log/24/server.response 07:36:20.287662 special request received, no persistency 07:36:20.287671 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 2026 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file stderr2026 URL: http://127.0.0.1:38675/2026 === End of file stderr2026 === Start of file valgrind2026 ==164767== ==164767== Process terminating with default action of signal 4 (SIGILL) ==164767== Illegal opcode at address 0x51C2DB3 ==164767== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164767== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164767== by 0x51C2DB3: Curl_open (url.c:541) ==164767== by 0x513D46F: curl_easy_init (easy.c:372) ==164767== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164767== by 0x4003443: main (first.c:167) ==164767== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x533CFA5: __tsearch (tsearch.c:337) ==164767== by 0x533CFA5: tsearch (tsearch.c:290) ==164767== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164767== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164767== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164767== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164767== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164767== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== ==164767== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x533CFA5: __tsearch (tsearch.c:337) ==164767== by 0x533CFA5: tsearch (tsearch.c:290) ==164767== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164767== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164767== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== ==164767== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164767== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164767== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164767== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164767== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164767== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== ==164767== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164767== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164767== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2025 ./libtest/libtests lib2023 http://127.0.0.1:38941/2025 basic ntlm > log/1/stdout2025 2> log/1/stderr2025 A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== ==164767== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164767== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164767== by 0x51C2D03: Curl_open (url.c:520) ==164767== by 0x513D46F: curl_easy_init (easy.c:372) ==164767== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164767== by 0x4003443: main (first.c:167) ==164767== ==164767== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x533CFA5: __tsearch (tsearch.c:337) ==164767== by 0x533CFA5: tsearch (tsearch.c:290) ==164767== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164767== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164767== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164767== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164767== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164767== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== ==164767== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164767== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164767== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164767== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164767== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164767== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164767== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164767== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164767== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164767== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164767== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164767== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164767== by 0x525A142: setlocale (setlocale.c:337) ==164767== by 0x400336E: main (first.c:123) ==164767== === End of file valgrind2026 test 2025...[HTTP authorization retry (Basic switching to NTLM)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2025 ./libtest/libtests lib2023 http://127.0.0.1:38941/2025 basic ntlm > log/1/stdout2025 2> log/1/stderr2025 2025: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 2025 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2025 ./libtest/libtests lib2023 http://127.0.0.1:38941/2025 basic ntlm > log/1/stdout2025 2> log/1/stderr2025 === End of file commands.log === Start of file http_server.log 07:36:20.214620 ====> Client connect 07:36:20.214654 accept_connection 3 returned 4 07:36:20.214669 accept_connection 3 returned 0 07:36:20.214682 Read 93 bytes 07:36:20.214692 Process 93 bytes request 07:36:20.214706 Got request: GET /verifiedserver HTTP/1.1 07:36:20.214715 Are-we-friendly question received 07:36:20.214740 Wrote request (93 bytes) input to log/1/server.input 07:36:20.214756 Identifying ourselves as friends 07:36:20.214809 Response sent (56 bytes) and written to log/1/server.response 07:36:20.214818 special request received, no persistency 07:36:20.214827 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 2025 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file stderr2025 URL: http://127.0.0.1:38941/2025 === End of file stderr2025 === Start of file valgrind2025 ==164697== ==164697== Process terminating with default action of signal 4 (SIGILL) ==164697== Illegal opcode at address 0x51C2DB3 ==164697== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164697== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164697== by 0x51C2DB3: Curl_open (url.c:541) ==164697== by 0x513D46F: curl_easy_init (easy.c:372) ==164697== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164697== by 0x4003443: main (first.c:167) ==164697== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x533CFA5: __tsearch (tsearch.c:337) ==164697== by 0x533CFA5: tsearch (tsearch.c:290) ==164697== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164697== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164697== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164697== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164697== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164697== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== by 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== ==164697== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x533CFA5: __tsearch (tsearch.c:337) ==164697== by 0x533CFA5: tsearch (tsearch.c:290) ==164697== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164697== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164697== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== by 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== ==164697== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164697== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164697== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164697== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164697== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164697== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== bCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2028 ./libtest/libtests lib2023 http://127.0.0.1:34999/2028 digest ntlm > log/9/stdout2028 2> log/9/stderr2028 y 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== ==164697== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164697== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164697== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== by 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== ==164697== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164697== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164697== by 0x51C2D03: Curl_open (url.c:520) ==164697== by 0x513D46F: curl_easy_init (easy.c:372) ==164697== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164697== by 0x4003443: main (first.c:167) ==164697== ==164697== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x533CFA5: __tsearch (tsearch.c:337) ==164697== by 0x533CFA5: tsearch (tsearch.c:290) ==164697== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164697== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164697== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164697== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164697== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164697== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== by 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== ==164697== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164697== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164697== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164697== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164697== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164697== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164697== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164697== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164697== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164697== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164697== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164697== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164697== by 0x525A142: setlocale (setlocale.c:337) ==164697== by 0x400336E: main (first.c:123) ==164697== === End of file valgrind2025 test 2028...[HTTP authorization retry (Digest switching to NTLM)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2028 ./libtest/libtests lib2023 http://127.0.0.1:34999/2028 digest ntlm > log/9/stdout2028 2> log/9/stderr2028 2028: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 2028 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2028 ./libtest/libtests lib2023 http://127.0.0.1:34999/2028 digest ntlm > log/9/stdout2028 2> log/9/stderr2028 === End of file commands.log === Start of file http_server.log 07:36:20.339810 ====> Client connect 07:36:20.339851 accept_connection 3 returned 4 07:36:20.339871 accept_connection 3 returned 0 07:36:20.339886 Read 93 bytes 07:36:20.339896 Process 93 bytes request 07:36:20.339910 Got request: GET /verifiedserver HTTP/1.1 07:36:20.339919 Are-we-friendly question received 07:36:20.339945 Wrote request (93 bytes) input to log/9/server.input 07:36:20.339962 Identifying ourselves as friends 07:36:20.340021 Response sent (56 bytes) and written to log/9/server.response 07:36:20.340033 special request received, no persistency 07:36:20.340043 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 2028 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file stderr2028 URL: http://127.0.0.1:34999/2028 === End of file stderr2028 === Start of file valgrind2028 ==164813== ==164813== Process terminating with default action of signal 4 (SIGILL) ==164813== Illegal opcode at address 0x51C2DB3 ==164813== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164813== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164813== by 0x51C2DB3: Curl_open (url.c:541) ==164813== by 0x513D46F: curl_easy_init (easy.c:372) ==164813== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164813== by 0x4003443: main (first.c:167) ==164813== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0x533CFA5: __tsearch (tsearch.c:337) ==164813== by 0x533CFA5: tsearch (tsearch.c:290) ==164813== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164813== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164813== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164813== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164813== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164813== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== ==164813== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0x533CFA5: __tsearch (tsearch.c:337) ==164813== by 0x533CFA5: tsearch (tsearch.c:290) ==164813== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164813== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164813== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== ==164813== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2029 ./libtest/libtests lib2023 http://127.0.0.1:42345/2029 ntlm basic > log/3/stdout2029 2> log/3/stderr2029 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2027 ./libtest/libtests lib2023 http://127.0.0.1:39089/2027 digest digest > log/17/stdout2027 2> log/17/stderr2027 x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164813== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164813== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164813== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164813== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164813== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== ==164813== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164813== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164813== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== ==164813== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164813== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164813== by 0x51C2D03: Curl_open (url.c:520) ==164813== by 0x513D46F: curl_easy_init (easy.c:372) ==164813== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164813== by 0x4003443: main (first.c:167) ==164813== ==164813== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0x533CFA5: __tsearch (tsearch.c:337) ==164813== by 0x533CFA5: tsearch (tsearch.c:290) ==164813== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164813== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164813== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164813== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164813== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164813== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== ==164813== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164813== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164813== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164813== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164813== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164813== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164813== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164813== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164813== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164813== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164813== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164813== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164813== by 0x525A142: setlocale (setlocale.c:337) ==164813== by 0x400336E: main (first.c:123) ==164813== === End of file valgrind2028 test 2029...[HTTP authorization retry (NTLM switching to Basic)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2029 ./libtest/libtests lib2023 http://127.0.0.1:42345/2029 ntlm basic > log/3/stdout2029 2> log/3/stderr2029 2029: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 2029 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2029 ./libtest/libtests lib2023 http://127.0.0.1:42345/2029 ntlm basic > log/3/stdout2029 2> log/3/stderr2029 === End of file commands.log === Start of file http_server.log 07:36:20.422554 ====> Client connect 07:36:20.422593 accept_connection 3 returned 4 07:36:20.422610 accept_connection 3 returned 0 07:36:20.422664 Read 93 bytes 07:36:20.422676 Process 93 bytes request 07:36:20.422692 Got request: GET /verifiedserver HTTP/1.1 07:36:20.422702 Are-we-friendly question received 07:36:20.422731 Wrote request (93 bytes) input to log/3/server.input 07:36:20.422748 Identifying ourselves as friends 07:36:20.422810 Response sent (56 bytes) and written to log/3/server.response 07:36:20.422822 special request received, no persistency 07:36:20.422831 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 2029 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr2029 URL: http://127.0.0.1:42345/2029 === End of file stderr2029 === Start of file valgrind2029 ==164997== ==164997== Process terminating with default action of signal 4 (SIGILL) ==164997== Illegal opcode at address 0x51C2DB3 ==164997== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164997== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164997== by 0x51C2DB3: Curl_open (url.c:541) ==164997== by 0x513D46F: curl_easy_init (easy.c:372) ==164997== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164997== by 0x4003443: main (first.c:167) ==164997== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x533CFA5: __tsearch (tsearch.c:337) ==164997== by 0x533CFA5: tsearch (tsearch.c:290) ==164997== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164997== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164997== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164997== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164997== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164997== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== ==164997== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x533CFA5: __tsearch (tsearch.c:337) ==164997== by 0x533CFA5: tsearch (tsearch.c:290) ==164997== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164997== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164997== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== ==164997== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164997== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164997== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164997== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164997== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164997== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== ==164997== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164997== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164997== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== ==164997== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164997== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164997== by 0x51C2D03: Curl_open (url.c:520) ==164997== by 0x513D46F: curl_easy_init (easy.c:372) ==164997== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164997== by 0x4003443: main (first.c:167) ==164997== ==164997== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x533CFA5: __tsearch (tsearch.c:337) ==164997== by 0x533CFA5: tsearch (tsearch.c:290) ==164997== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164997== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164997== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164997== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164997== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164997== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== ==164997== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164997== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164997== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164997== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164997== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164997== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164997== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164997== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164997== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164997== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164997== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164997== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164997== by 0x525A142: setlocale (setlocale.c:337) ==164997== by 0x400336E: main (first.c:123) ==164997== === End of file valgrind2029 test 2027...[HTTP authorization retry (Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2027 ./libtest/libtests lib2023 http://127.0.0.1:39089/2027 digest digest > log/17/stdout2027 2> log/17/stderr2027 2027: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 2027 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2027 ./libtest/libtests lib2023 http://127.0.0.1:39089/2027 digest digest > log/17/stdout2027 2> log/17/stderr2027 === End of file commands.log === Start of file http_server.log 07:36:20.332965 ====> Client connect 07:36:20.333002 accept_connection 3 returned 4 07:36:20.333020 accept_connection 3 returned 0 07:36:20.333038 Read 93 bytes 07:36:20.333049 Process 93 bytes request 07:36:20.333065 Got request: GET /verifiedserver HTTP/1.1 07:36:20.333076 Are-we-friendly question received 07:36:20.333104 Wrote request (93 bytes) input to log/17/server.input 07:36:20.333122 Identifying ourselves as friends 07:36:20.333185 Response sent (56 bytes) and written to log/17/server.response 07:36:20.333198 special request received, no persistency 07:36:20.333208 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 2027 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file stderr2027 URL: http://127.0.0.1:39089/2027 === End of file stderr2027 === Start of file valgrind2027 ==164862== ==164862== Process terminating with default action of signal 4 (SIGILL) ==164862== Illegal opcode at address 0x51C2DB3 ==164862== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==164862== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==164862== by 0x51C2DB3: Curl_open (url.c:541) ==164862== by 0x513D46F: curl_easy_init (easy.c:372) ==164862== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164862== by 0x4003443: main (first.c:167) ==164862== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x533CFA5: __tsearch (tsearch.c:337) ==164862== by 0x533CFA5: tsearch (tsearch.c:290) ==164862== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164862== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164862== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164862== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164862== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164862== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164862== by 0x52BFCB3: __pthread_once_sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2032 ./libtest/libtests lib2032 http://127.0.0.1:37169/2032 > log/20/stdout2032 2> log/20/stderr2032 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2030 ./libtest/libtests lib2023 http://127.0.0.1:37285/2030 ntlm digest > log/12/stdout2030 2> log/12/stderr2030 low.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== ==164862== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x533CFA5: __tsearch (tsearch.c:337) ==164862== by 0x533CFA5: tsearch (tsearch.c:290) ==164862== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164862== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164862== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164862== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== ==164862== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164862== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164862== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164862== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164862== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==164862== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==164862== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== ==164862== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164862== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==164862== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==164862== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== ==164862== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==164862== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==164862== by 0x51C2D03: Curl_open (url.c:520) ==164862== by 0x513D46F: curl_easy_init (easy.c:372) ==164862== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==164862== by 0x4003443: main (first.c:167) ==164862== ==164862== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x533CFA5: __tsearch (tsearch.c:337) ==164862== by 0x533CFA5: tsearch (tsearch.c:290) ==164862== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==164862== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164862== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164862== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164862== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164862== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164862== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== ==164862== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==164862== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==164862== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==164862== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==164862== by 0x524F3F0: add_alias (gconv_conf.c:178) ==164862== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==164862== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==164862== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==164862== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==164862== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==164862== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==164862== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==164862== by 0x525A142: setlocale (setlocale.c:337) ==164862== by 0x400336E: main (first.c:123) ==164862== === End of file valgrind2027 test 2032...[NTLM connection mapping] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2032 ./libtest/libtests lib2032 http://127.0.0.1:37169/2032 > log/20/stdout2032 2> log/20/stderr2032 2032: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 2032 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2032 ./libtest/libtests lib2032 http://127.0.0.1:37169/2032 > log/20/stdout2032 2> log/20/stderr2032 === End of file commands.log === Start of file http_server.log 07:36:20.461266 ====> Client connect 07:36:20.461308 accept_connection 3 returned 4 07:36:20.461325 accept_connection 3 returned 0 07:36:20.461340 Read 93 bytes 07:36:20.461349 Process 93 bytes request 07:36:20.461362 Got request: GET /verifiedserver HTTP/1.1 07:36:20.461372 Are-we-friendly question received 07:36:20.461398 Wrote request (93 bytes) input to log/20/server.input 07:36:20.461416 Identifying ourselves as friends 07:36:20.461477 Response sent (56 bytes) and written to log/20/server.response 07:36:20.461489 special request received, no persistency 07:36:20.461499 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 2032 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr2032 URL: http://127.0.0.1:37169/2032 === End of file stderr2032 === Start of file valgrind2032 ==165043== ==165043== Process terminating with default action of signal 4 (SIGILL) ==165043== Illegal opcode at address 0x518AA97 ==165043== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==165043== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==165043== by 0x518AA97: Curl_multi_handle (multi.c:236) ==165043== by 0x4038B81: test_lib2032.lto_priv.0 (lib2032.c:114) ==165043== by 0x4003443: main (first.c:167) ==165043== 408 bytes in 17 blocks are possibly lost in loss record 605 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x533CFA5: __tsearch (tsearch.c:337) ==165043== by 0x533CFA5: tsearch (tsearch.c:290) ==165043== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165043== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165043== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165043== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165043== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165043== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== ==165043== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x533CFA5: __tsearch (tsearch.c:337) ==165043== by 0x533CFA5: tsearch (tsearch.c:290) ==165043== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165043== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165043== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== ==165043== 648 bytes in 1 blocks are possibly lost in loss record 615 of 656 ==165043== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==165043== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==165043== by 0x4038B81: test_lib2032.lto_priv.0 (lib2032.c:114) ==165043== by 0x4003443: main (first.c:167) ==165043== ==165043== 681 bytes in 17 blocks are possibly lost in loss record 616 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165043== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165043== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165043== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165043== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165043== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== ==165043== 1,018 bytes in 23 blocks are possibly lost in loss record 631 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165043== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165043== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== ==165043== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x533CFA5: __tsearch (tsearch.c:337) ==165043== by 0x533CFA5: tsearch (tsearch.c:290) ==165043== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165043== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165043== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165043== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165043== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165043== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== ==165043== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==165043== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165043== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165043== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165043== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165043== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165043== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165043== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165043== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165043== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165043== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165043== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165043== by 0x525A142: setlocale (setlocale.c:337) ==165043== by 0x400336E: main (first.c:123) ==165043== === End of file valgrind2032 test 2030...[HTTP authorization retry (NTLM switching to Digest)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2030 ./libtest/libtests lib2023 http://127.0.0.1:37285/2030 ntlm digest > log/12/stdout2030 2> log/12/stderr2030 2030: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 2030 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2030 ./libtest/libtests lib2023 http://127.0.0.1:37285/2030 ntlm digest > log/12/stdout2030 2> log/12/stderr2030 === End of file commands.log === Start of file http_server.log 07:36:20.431780 ====> Client connect 07:36:20.431815 accept_connection 3 returned 4 07:36:20.431831 accept_connection 3 returned 0 07:36:20.431845 Read 93 bytes 07:36:20.431855 Process 93 bytes request 07:36:20.431868 Got request: GET /verifiedserver HTTP/1.1 07:36:20.431877 Are-we-friendly question received 07:36:20.431903 Wrote request (93 bytes) input to log/12/server.input 07:36:20.431919 Identifying ourselves as friends 07:36:20.431977 Response sent (56 bytes) and written to log/12/server.response 07:36:20.431987 special request received, no persistency 07:36:20.431995 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 2030 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr2030 URL: http://127.0.0.1:37285/2030 === End CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2031 ./libtest/libtests lib2023 http://127.0.0.1:34881/2031 ntlm ntlm > log/15/stdout2031 2> log/15/stderr2031 of file stderr2030 === Start of file valgrind2030 ==165017== ==165017== Process terminating with default action of signal 4 (SIGILL) ==165017== Illegal opcode at address 0x51C2DB3 ==165017== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==165017== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==165017== by 0x51C2DB3: Curl_open (url.c:541) ==165017== by 0x513D46F: curl_easy_init (easy.c:372) ==165017== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==165017== by 0x4003443: main (first.c:167) ==165017== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x533CFA5: __tsearch (tsearch.c:337) ==165017== by 0x533CFA5: tsearch (tsearch.c:290) ==165017== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165017== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165017== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165017== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165017== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165017== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== ==165017== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x533CFA5: __tsearch (tsearch.c:337) ==165017== by 0x533CFA5: tsearch (tsearch.c:290) ==165017== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165017== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165017== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== ==165017== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165017== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165017== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165017== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165017== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165017== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== ==165017== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165017== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165017== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== ==165017== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==165017== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==165017== by 0x51C2D03: Curl_open (url.c:520) ==165017== by 0x513D46F: curl_easy_init (easy.c:372) ==165017== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==165017== by 0x4003443: main (first.c:167) ==165017== ==165017== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x533CFA5: __tsearch (tsearch.c:337) ==165017== by 0x533CFA5: tsearch (tsearch.c:290) ==165017== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165017== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165017== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165017== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165017== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165017== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== ==165017== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==165017== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165017== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165017== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165017== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165017== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165017== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165017== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165017== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165017== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165017== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165017== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165017== by 0x525A142: setlocale (setlocale.c:337) ==165017== by 0x400336E: main (first.c:123) ==165017== === End of file valgrind2030 test 2031...[HTTP authorization retry (NTLM)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2031 ./libtest/libtests lib2023 http://127.0.0.1:34881/2031 ntlm ntlm > log/15/stdout2031 2> log/15/stderr2031 2031: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 2031 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2031 ./libtest/libtests lib2023 http://127.0.0.1:34881/2031 ntlm ntlm > log/15/stdout2031 2> log/15/stderr2031 === End of file commands.log === Start of file http_server.log 07:36:20.452596 ====> Client connect 07:36:20.452642 accept_connection 3 returned 4 07:36:20.452659 accept_connection 3 returned 0 07:36:20.452675 Read 93 bytes 07:36:20.452687 Process 93 bytes request 07:36:20.452701 Got request: GET /verifiedserver HTTP/1.1 07:36:20.452711 Are-we-friendly question received 07:36:20.452740 Wrote request (93 bytes) input to log/15/server.input 07:36:20.452757 Identifying ourselves as friends 07:36:20.452821 Response sent (57 bytes) and written to log/15/server.response 07:36:20.452833 special request received, no persistency 07:36:20.452843 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34881... * Connected to 127CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2051 ../src/curl -q --include --trace-ascii log/8/trace2051 --trace-config all --trace-time http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next --connect-to ::127.0.0.1:45261 http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next http://127.0.0.1:45261/2051 -w "%{num_connects}\n" > log/8/stdout2051 2> log/8/stderr2051 .0.0.1 (127.0.0.1) port 34881 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34881 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 157411 === End of file http_verify.out === Start of file server.cmd Testnum 2031 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 157411 === End of file server.response === Start of file stderr2031 URL: http://127.0.0.1:34881/2031 === End of file stderr2031 === Start of file valgrind2031 ==165056== ==165056== Process terminating with default action of signal 4 (SIGILL) ==165056== Illegal opcode at address 0x51C2DB3 ==165056== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==165056== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==165056== by 0x51C2DB3: Curl_open (url.c:541) ==165056== by 0x513D46F: curl_easy_init (easy.c:372) ==165056== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==165056== by 0x4003443: main (first.c:167) ==165056== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x533CFA5: __tsearch (tsearch.c:337) ==165056== by 0x533CFA5: tsearch (tsearch.c:290) ==165056== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165056== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165056== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165056== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165056== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165056== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== ==165056== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x533CFA5: __tsearch (tsearch.c:337) ==165056== by 0x533CFA5: tsearch (tsearch.c:290) ==165056== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165056== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165056== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== ==165056== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165056== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165056== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165056== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165056== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==165056== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== ==165056== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165056== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==165056== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== ==165056== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==165056== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==165056== by 0x51C2D03: Curl_open (url.c:520) ==165056== by 0x513D46F: curl_easy_init (easy.c:372) ==165056== by 0x40360CC: test_lib2023.lto_priv.0 (lib2023.c:107) ==165056== by 0x4003443: main (first.c:167) ==165056== ==165056== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x533CFA5: __tsearch (tsearch.c:337) ==165056== by 0x533CFA5: tsearch (tsearch.c:290) ==165056== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==165056== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165056== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165056== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165056== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165056== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== ==165056== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==165056== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==165056== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==165056== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==165056== by 0x524F3F0: add_alias (gconv_conf.c:178) ==165056== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==165056== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==165056== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==165056== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==165056== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==165056== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==165056== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==165056== by 0x525A142: setlocale (setlocale.c:337) ==165056== by 0x400336E: main (first.c:123) ==165056== === End of file valgrind2031 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2003 ../src/curl -q --trace-ascii log/11/trace2003 --trace-config all --trace-time http://127.0.0.1:40341/20030001 ftp://127.0.0.1:37957/20030002 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt tftp://127.0.0.1:32896//20030003 tftp://127.0.0.1:32896//20030003 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt ftp://127.0.0.1:37957/20030002 http://127.0.0.1:40341/20030001 > log/11/stdout2003 2> log/11/stderr2003 test 2051...[Connect to specific host: Reuse existing connections if possible] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2051 ../src/curl -q --include --trace-ascii log/8/trace2051 --trace-config all --trace-time http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next --connect-to ::127.0.0.1:45261 http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next http://127.0.0.1:45261/2051 -w "%{num_connects}\n" > log/8/stdout2051 2> log/8/stderr2051 2051: stdout FAILED: --- log/8/check-expected 2025-07-18 07:36:21.607113386 +0000 +++ log/8/check-generated 2025-07-18 07:36:21.607113386 +0000 @@ -1,11 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Content-Type: text/plain[LF] -[LF] -OK[LF] -1[LF] -OK[LF] -0[LF] -OK[LF] -0[LF] == Contents of files in the log/8/ dir after test 2051 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Content-Type: text/plain[LF] [LF] OK[LF] 1[LF] OK[LF] 0[LF] OK[LF] 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2051 ../src/curl -q --include --trace-ascii log/8/trace2051 --trace-config all --trace-time http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next --connect-to ::127.0.0.1:45261 http://127.0.0.1:45261/2051 -w "%{num_connects}\n" --next http://127.0.0.1:45261/2051 -w "%{num_connects}\n" > log/8/stdout2051 2> log/8/stderr2051 === End of file commands.log === Start of file http_server.log 07:36:20.904454 ====> Client connect 07:36:20.904489 accept_connection 3 returned 4 07:36:20.904506 accept_connection 3 returned 0 07:36:20.904521 Read 93 bytes 07:36:20.904531 Process 93 bytes request 07:36:20.904545 Got request: GET /verifiedserver HTTP/1.1 07:36:20.904555 Are-we-friendly question received 07:36:20.904581 Wrote request (93 bytes) input to log/8/server.input 07:36:20.904597 Identifying ourselves as friends 07:36:20.904652 Response sent (56 bytes) and written to log/8/server.response 07:36:20.904663 special request received, no persistency 07:36:20.904671 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 2051 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind2051 ==165768== ==165768== Process terminating with default action of signal 4 (SIGILL) ==165768== Illegal opcode at address 0x4003082 ==165768== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165768== by 0x4003082: main (tool_main.c:234) === End of file valgrind2051 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2002 ../src/curl -q --trace-ascii log/10/trace2002 --trace-config all --trace-time http://127.0.0.1:34851/20020001 ftp://127.0.0.1:34951/20020002 file://localhost/startdir/src/build-curl/tests/log/10/test2002.txt tftp://127.0.0.1:37114//20020003 > log/10/stdout2002 2> log/10/stderr2002 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/ftpserver.pl --pidfile "log/11/server/ftp_server.pid" --logfile "log/11/ftp_server.log" --logdir "log/11" --portfile "log/11/server/ftp_server.port" --srcdir "/startdir/src/curl/tests" --proto ftp --ipv4 --port 0 --addr "127.0.0.1" PINGPONG runs on port 37957 (log/11/server/ftp_server.port) RUN: FTP server is PID 164383 port 37957 * pid ftp => 164383 164383 test 2003...[HTTP GET, FTP RETR, FILE, TFTP RRQ then again in rev order] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2003 ../src/curl -q --trace-ascii log/11/trace2003 --trace-config all --trace-time http://127.0.0.1:40341/20030001 ftp://127.0.0.1:37957/20030002 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt tftp://127.0.0.1:32896//20030003 tftp://127.0.0.1:32896//20030003 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt ftp://127.0.0.1:37957/20030002 http://127.0.0.1:40341/20030001 > log/11/stdout2003 2> log/11/stderr2003 2003: stdout FAILED: --- log/11/check-expected 2025-07-18 07:36:21.640446719 +0000 +++ log/11/check-generated 2025-07-18 07:36:21.640446719 +0000 @@ -1,32 +0,0 @@ --foo-[LF] -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] -a chunk of[LF] -data[LF] -returned[LF] - to TFTP client[LF] -a chunk of[LF] -data[LF] -returned[LF] - to TFTP client[LF] -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] --foo-[LF] == Contents of files in the log/11/ dir after test 2003 === Start of file check-expected -foo-[LF] data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] a chunk of[LF] data[LF] returned[LF] to TFTP client[LF] a chunk of[LF] data[LF] returned[LF] to TFTP client[LF] foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2003 ../src/curl -q --trace-ascii log/11/trace2003 --trace-config all --trace-time http://127.0.0.1:40341/20030001 ftp://127.0.0.1:37957/20030002 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt tftp://127.0.0.1:32896//20030003 tftp://127.0.0.1:32896//20030003 file://localhost/startdir/src/build-curl/tests/log/11/test2003.txt ftp://127.0.0.1:37957/20030002 http://127.0.0.1:40341/20030001 > log/11/stdout2003 2> log/11/stderr2003 === End of file commands.log === Start of file ftp_server.log 07:36:20.122741 FTP server listens on port IPv4/37957 07:36:20.122870 logged pid 164383 in log/11/server/ftp_server.pid 07:36:20.122902 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:20.967867 Running IPv4 version 07:36:20.967949 Listening on port 37957 07:36:20.967998 Wrote pid 164400 to log/11/server/ftp_sockctrl.pid 07:36:20.968029 Wrote port 37957 to log/11/server/ftp_server.port 07:36:20.968053 Received PING (on stdin) === End of file ftp_sockctrl.log === Start of file http_server.log 07:36:19.914365 ====> Client connect 07:36:19.914402 accept_connection 3 returned 4 07:36:19.914418 accept_connection 3 returned 0 07:36:19.914433 Read 93 bytes 07:36:19.914443 Process 93 bytes request 07:36:19.914457 Got request: GET /verifiedserver HTTP/1.1 07:36:19.914466 Are-we-friendly question received 07:36:19.914492 Wrote request (93 bytes) input to log/11/server.input 07:36:19.914508 Identifying ourselves as friends 07:36:19.914563 Response sent (57 bytes) and written to log/11/server.response 07:36:19.914573 special request received, no persistency 07:36:19.914582 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40341... * Connected to 127.0.0.1 (127.0.0.1) port 40341 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40341 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 156367 === End of file http_verify.out === Start of file server.cmd Testnum 2003 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156367 === End of file server.response === Start of file test2003.txt foo bar bar foo moo === End of file test2003.txt === Start of file tftp_server.log 07:36:20.940656 trying to get file: verifiedserver mode 1 07:36:20.940692 Are-we-friendly question received 07:36:20.940705 write 07:36:20.940724 read 07:36:20.941352 read: 4 07:36:20.941411 end of one transfer === End of file tftp_server.log === Start of file valgrind2003 ==165837== ==165837== Process terminating with default action of signal 4 (SIGILL) ==165837== Illegal opcode at address 0x4003082 ==165837== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165837== by 0x4003082: main (tool_main.c:234) === End of file valgrind2003 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/tftpserver.pl --pidfile "log/10/server/tftp_server.pid" --portfile "log/10/server/tftp_server.port" --logfile "log/10/tftp_server.log" --logdir "log/10" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: TFTP server on PID 164404 port 37114 * pid tftp => 164404 164404 test 2002...[HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2002 ../src/curl -q --trace-ascii log/10/trace2002 --trace-config all --trace-time http://127.0.0.1:34851/20020001 ftp://127.0.0.1:34951/20020002 file://localhost/startdir/src/build-curl/tests/log/10/test2002.txt tftp://127.0.0.1:37114//20020003 > log/10/stdout2002 2> log/10/stderr2002 2002: stdout FAILED: --- log/10/check-expected 2025-07-18 07:36:21.753780055 +0000 +++ log/10/check-generated 2025-07-18 07:36:21.753780055 +0000 @@ -1,16 +0,0 @@ --foo-[LF] -data[LF] - to[LF] - see[LF] -that FTP[LF] -works[LF] - so does it?[LF] -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] -a chunk of[LF] -data[LF] -returned[LF] - to TFTP client[LF] == Contents of files in the log/10/ dir after test 2002 === Start of file check-expected -foo-[LF] data[LF] to[LF] see[LF] that FTP[LF] works[LF] so does it?[LF] foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] a chunk of[LF] data[LF] returned[LF] to TFTP client[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2002 ../src/curl -q --trace-ascii log/10/trace2002 --trace-config all --trace-time http://127.0.0.1:34851/20020001 ftp://127.0.0.1:34951/20020002 file://localhost/startdir/src/build-curl/tests/log/10/test2002.txt tftp://127.0.0.1:37114//20020003 > log/10/stdout2002 2> log/10/stderr2002 === End of file commands.log === Start of file ftp_server.log 07:36:20.103504 ====> Client connect 07:36:20.103714 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:20.110220 < "USER anonymous" 07:36:20.110277 > "331 We are happy you popped in![CR][LF]" 07:36:20.113507 < "PASS ftp@example.com" 07:36:20.113566 > "230 Welcome you silly person[CR][LF]" 07:36:20.114103 < "PWD" 07:36:20.114151 > "257 "/" is current directory[CR][LF]" 07:36:20.114296 < "EPSV" 07:36:20.114318 ====> Passive DATA channel requested by client 07:36:20.114329 DATA sockfilt for passive data channel starting... 07:36:20.116507 DATA sockfilt for passive data channel started (pid 164398) 07:36:20.116602 DATA sockfilt for passive data channel listens on port 39019 07:36:20.116641 > "229 Entering Passive Mode (|||39019|)[LF]" 07:36:20.116685 Client has been notified that DATA conn will be accepted on port 39019 07:36:20.117084 Client connects to port 39019 07:36:20.117110 ====> Client established passive DATA connection on port 39019 07:36:20.117172 < "TYPE I" 07:36:20.117199 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:20.117341 < "SIZE verifiedserver" 07:36:20.117373 > "213 18[CR][LF]" 07:36:20.117507 < "RETR verifiedserver" 07:36:20.117538 > "150 Binary junk (18 bytes).[CR][LF]" 07:36:20.117610 =====> Closing passive DATA connection... 07:36:20.117625 Server disconnects passive DATA connection 07:36:20.117837 Server disconnected passive DATA connection 07:36:20.117862 DATA sockfilt for passive data channel quits (pid 164398) 07:36:20.118105 DATA sockfilt for passive data channel quit (pid 164398) 07:36:20.118126 =====> Closed passive DATA connection 07:36:20.118150 > "226 File transfer complete[CR][LF]" 07:36:20.161450 < "QUIT" 07:36:20.161502 > "221 bye bye baby[CR][LF]" 07:36:20.162440 MAIN sockfilt said DISC 07:36:20.162483 ====> Client disconnected 07:36:20.162559 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:20.949326 ====> Client connect 07:36:20.949721 Received DATA (on stdin) 07:36:20.949739 > 160 bytes data, server => client 07:36:20.949752 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:20.949764 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:20.949775 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:20.955992 < 16 bytes data, client => server 07:36:20.956029 'USER anonymous\r\n' 07:36:20.956263 Received DATA (on stdin) 07:36:20.956275 > 33 bytes data, server => client 07:36:20.956285 '331 We are happy you popped in!\r\n' 07:36:20.959319 < 22 bytes data, client => server 07:36:20.959347 'PASS ftp@example.com\r\n' 07:36:20.959559 Received DATA (on stdin) 07:36:20.959575 > 30 bytes data, server => client 07:36:20.959587 '230 Welcome you silly person\r\n' 07:36:20.959935 < 5 bytes data, client => server 07:36:20.959961 'PWD\r\n' 07:36:20.960136 Received DATA (on stdin) 07:36:20.960147 > 30 bytes data, server => client 07:36:20.960156 '257 "/" is current directory\r\n' 07:36:20.960205 < 6 bytes data, client => server 07:36:20.960215 'EPSV\r\n' 07:36:20.962826 Received DATA (on stdin) 07:36:20.962840 > 38 bytes data, server => client 07:36:20.962851 '229 Entering Passive Mode (|||39019|)\n' 07:36:20.962975 < 8 bytes data, client => server 07:36:20.962993 'TYPE I\r\n' 07:36:20.963181 Received DATA (on stdin) 07:36:20.963192 > 33 bytes data, server => client 07:36:20.963203 '200 I modify TYPE as you wanted\r\n' 07:36:20.963248 < 21 bytes data, client => server 07:36:20.963259 'SIZE verifiedserver\r\n' 07:36:20.963354 Received DATA (on stdin) 07:36:20.963364 > 8 bytes data, server => client 07:36:20.963374 '213 18\r\n' 07:36:20.963416 < 21 bytes data, client => server 07:36:20.963426 'RETR verifiedserver\r\n' 07:36:20.963608 Received DATA (on stdin) 07:36:20.963619 > 29 bytes data, server => client 07:36:20.963629 '150 Binary junk (18 bytes).\r\n' 07:36:20.964133 Received DATA (on stdin) 07:36:20.964145 > 28 bytes data, server => client 07:36:20.964155 '226 File transfer complete\r\n' 07:36:21.007265 < 6 bytes data, client => server 07:36:21.007295 'QUIT\r\n' 07:36:21.007492 Received DATA (on stdin) 07:36:21.007506 > 18 bytes data, server => client 07:36:21.007517 '221 bye bye baby\r\n' 07:36:21.008359 ====> Client disconnect 07:36:21.008544 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:20.962208 Running IPv4 version 07:36:20.962275 Listening on port 39019 07:36:20.962313 Wrote pid 164398 to log/10/server/ftp_sockdata.pid 07:36:20.962437 Received PING (on stdin) 07:36:20.962510 Received PORT (on stdin) 07:36:20.963021 ====> Client connect 07:36:20.963652 Received DATA (on stdin) 07:36:20.963664 > 18 bytes data, server => client 07:36:20.963674 'WE ROOLZ: 133133\r\n' 07:36:20.963697 Received DISC (on stdin) 07:36:20.963708 ====> Client forcibly disconnected 07:36:20.963851 Received QUIT (on stdin) 07:36:20.963862 quits 07:36:20.963923 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file http_server.log 07:36:19.866037 ====> Client connect 07:36:19.866072 accept_connection 3 returned 4 07:36:19.866087 accept_connection 3 returned 0 07:36:19.866103 Read 93 bytes 07:36:19.866113 Process 93 bytes request 07:36:19.866127 Got request: GET /verifiedserver HTTP/1.1 07:36:19.866136 Are-we-friendly question received 07:36:19.866163 Wrote request (93 bytes) input to log/10/server.input 07:36:19.866179 Identifying ourselves as friends 07:36:19.866250 Response sent (56 bytes) and written to log/10/server.response 07:36:19.866260 special request received, no persistency 07:36:19.866268 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2052 ../src/curl -q --include --trace-ascii log/5/trace2052 --trace-config all --trace-time http://www.example.com:46675/2052 --resolve www.example.com:46675:127.0.0.1 -w "%{num_connects}\n" --next --resolve -www.example.com:46675 --connect-to ::127.0.0.1:46675 http://www.example.com:46675/2052 -w "%{num_connects}\n" > log/5/stdout2052 2> log/5/stderr2052 server HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 2002 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file test2002.txt foo bar bar foo moo === End of file test2002.txt === Start of file tftp_server.log 07:36:20.044572 Wrote pid 164404 to log/10/server/tftp_server.pid 07:36:20.044633 Wrote port 37114 to log/10/server/tftp_server.port 07:36:20.044645 Running IPv4 version on port UDP/37114 === End of file tftp_server.log === Start of file valgrind2002 ==165899== ==165899== Process terminating with default action of signal 4 (SIGILL) ==165899== Illegal opcode at address 0x4003082 ==165899== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165899== by 0x4003082: main (tool_main.c:234) === End of file valgrind2002 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2053 ../src/curl -q --output log/4/curl2053.out --include --trace-ascii log/4/trace2053 --trace-config all --trace-time http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:127.0.0.1:33235 --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:127.0.0.1:33235 > log/4/stdout2053 2> log/4/stderr2053 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2058 ../src/curl -q --output log/2/curl2058.out --include --trace-ascii log/2/trace2058 --trace-config all --trace-time http://127.0.0.1:45457/2058 -u auser:apasswd --digest -T log/2/2058 -x http://127.0.0.1:45457 -C 2 -X GET > log/2/stdout2058 2> log/2/stderr2058 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2054 ../src/curl -q --output log/7/curl2054.out --include --trace-ascii log/7/trace2054 --trace-config all --trace-time http://127.0.0.1:43423/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:43423/2054 --connect-to www.example.com::127.0.0.1: --connect-to www.example.com::foo: --next http://127.0.0.1:8083/2054 --connect-to :8083::43423 --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:127.0.0.1:43423 --connect-to www.example.com:8084:foo:123 > log/7/stdout2054 2> log/7/stderr2054 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2059 ../src/curl -q --output log/13/curl2059.out --include --trace-ascii log/13/trace2059 --trace-config all --trace-time http://127.0.0.1:33627/2059 -u auser:apasswd --digest -T log/13/2059 -x http://127.0.0.1:33627 -C 2 -X GET > log/13/stdout2059 2> log/13/stderr2059 test 2052...[--connect-to: do not mix connections with and without a "connect to host"] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2052 ../src/curl -q --include --trace-ascii log/5/trace2052 --trace-config all --trace-time http://www.example.com:46675/2052 --resolve www.example.com:46675:127.0.0.1 -w "%{num_connects}\n" --next --resolve -www.example.com:46675 --connect-to ::127.0.0.1:46675 http://www.example.com:46675/2052 -w "%{num_connects}\n" > log/5/stdout2052 2> log/5/stderr2052 2052: stdout FAILED: --- log/5/check-expected 2025-07-18 07:36:21.900446726 +0000 +++ log/5/check-generated 2025-07-18 07:36:21.900446726 +0000 @@ -1,9 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 3[LF] -Content-Type: text/plain[LF] -[LF] -OK[LF] -1[LF] -OK[LF] -1[LF] == Contents of files in the log/5/ dir after test 2052 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 3[LF] Content-Type: text/plain[LF] [LF] OK[LF] 1[LF] OK[LF] 1[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2052 ../src/curl -q --include --trace-ascii log/5/trace2052 --trace-config all --trace-time http://www.example.com:46675/2052 --resolve www.example.com:46675:127.0.0.1 -w "%{num_connects}\n" --next --resolve -www.example.com:46675 --connect-to ::127.0.0.1:46675 http://www.example.com:46675/2052 -w "%{num_connects}\n" > log/5/stdout2052 2> log/5/stderr2052 === End of file commands.log === Start of file http_server.log 07:36:21.144591 ====> Client connect 07:36:21.144625 accept_connection 3 returned 4 07:36:21.144641 accept_connection 3 returned 0 07:36:21.144656 Read 93 bytes 07:36:21.144666 Process 93 bytes request 07:36:21.144680 Got request: GET /verifiedserver HTTP/1.1 07:36:21.144689 Are-we-friendly question received 07:36:21.144714 Wrote request (93 bytes) input to log/5/server.input 07:36:21.144731 Identifying ourselves as friends 07:36:21.144786 Response sent (56 bytes) and written to log/5/server.response 07:36:21.144797 special request received, no persistency 07:36:21.144806 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 2052 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind2052 ==165988== ==165988== Process terminating with default action of signal 4 (SIGILL) ==165988== Illegal opcode at address 0x4003082 ==165988== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==165988== by 0x4003082: main (tool_main.c:234) === End of file valgrind2052 test 2053...[Connect to specific host with IP addresses] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2053 ../src/curl -q --output log/4/curl2053.out --include --trace-ascii log/4/trace2053 --trace-config all --trace-time http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:127.0.0.1:33235 --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:127.0.0.1:33235 > log/4/stdout2053 2> log/4/stderr2053 2053: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 2053 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2053 ../src/curl -q --output log/4/curl2053.out --include --trace-ascii log/4/trace2053 --trace-config all --trace-time http://10.0.0.1:8081/2053 --connect-to 10.0.0.1:8081:127.0.0.1:33235 --next http://[fc00::1]:8082/2053 --connect-to [fc00::1]:8082:127.0.0.1:33235 > log/4/stdout2053 2> log/4/stderr2053 === End of file commands.log === Start of file http_server.log 07:36:21.164874 ====> Client connect 07:36:21.164914 accept_connection 3 returned 4 07:36:21.164947 accept_connection 3 returned 0 07:36:21.164967 Read 93 bytes 07:36:21.164976 Process 93 bytes request 07:36:21.164988 Got request: GET /verifiedserver HTTP/1.1 07:36:21.164996 Are-we-friendly question received 07:36:21.165026 Wrote request (93 bytes) input to log/4/server.input 07:36:21.165042 Identifying ourselves as friends 07:36:21.165095 Response sent (56 bytes) and written to log/4/server.response 07:36:21.165103 special request received, no persistency 07:36:21.165110 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 2053 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind2053 ==166037== ==166037== Process terminating with default action of signal 4 (SIGILL) ==166037== Illegal opcode at address 0x4003082 ==166037== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166037== by 0x4003082: main (tool_main.c:234) === End of file valgrind2053 test 2058...[HTTP Digest with PUT, resumed upload, modified method and SHA-256] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2058 ../src/curl -q --output log/2/curl2058.out --include --trace-ascii log/2/trace2058 --trace-config all --trace-time http://127.0.0.1:45457/2058 -u auser:apasswd --digest -T log/2/2058 -x http://127.0.0.1:45457 -C 2 -X GET > log/2/stdout2058 2> log/2/stderr2058 2058: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 2058 === Start of file 2058 test === End of file 2058 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2058 ../src/curl -q --output log/2/curl2058.out --include --trace-ascii log/2/trace2058 --trace-config all --trace-time http://127.0.0.1:45457/2058 -u auser:apasswd --digest -T log/2/2058 -x http://127.0.0.1:45457 -C 2 -X GET > log/2/stdout2058 2> log/2/stderr2058 === End of file commands.log === Start of file http_server.log 07:36:21.200039 ====> Client connect 07:36:21.200068 accept_connection 3 returned 4 07:36:21.200081 accept_connection 3 returned 0 07:36:21.200092 Read 93 bytes 07:36:21.200100 Process 93 bytes request 07:36:21.200111 Got request: GET /verifiedserver HTTP/1.1 07:36:21.200118 Are-we-friendly question received 07:36:21.200137 Wrote request (93 bytes) input to log/2/server.input 07:36:21.200149 Identifying ourCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2055 ../src/curl -q --output log/22/curl2055.out --include --trace-ascii log/22/trace2055 --trace-config all --trace-time http://www.example.com.2055/2055 --connect-to ::connect.example.com.2055:46761 -x 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout2055 2> log/22/stderr2055 selves as friends 07:36:21.200195 Response sent (56 bytes) and written to log/2/server.response 07:36:21.200202 special request received, no persistency 07:36:21.200209 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 2058 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind2058 ==166195== ==166195== Process terminating with default action of signal 4 (SIGILL) ==166195== Illegal opcode at address 0x4003082 ==166195== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166195== by 0x4003082: main (tool_main.c:234) === End of file valgrind2058 test 2054...[Connect to specific host: use the first "connect-to" string that matches] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2054 ../src/curl -q --output log/7/curl2054.out --include --trace-ascii log/7/trace2054 --trace-config all --trace-time http://127.0.0.1:43423/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:43423/2054 --connect-to www.example.com::127.0.0.1: --connect-to www.example.com::foo: --next http://127.0.0.1:8083/2054 --connect-to :8083::43423 --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:127.0.0.1:43423 --connect-to www.example.com:8084:foo:123 > log/7/stdout2054 2> log/7/stderr2054 2054: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 2054 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2054 ../src/curl -q --output log/7/curl2054.out --include --trace-ascii log/7/trace2054 --trace-config all --trace-time http://127.0.0.1:43423/2054 --connect-to foo::bar: --connect-to :123::456 --next http://www.example.com:43423/2054 --connect-to www.example.com::127.0.0.1: --connect-to www.example.com::foo: --next http://127.0.0.1:8083/2054 --connect-to :8083::43423 --connect-to :8083::123 --next http://www.example.com:8084/2054 --connect-to www.example.com:8084:127.0.0.1:43423 --connect-to www.example.com:8084:foo:123 > log/7/stdout2054 2> log/7/stderr2054 === End of file commands.log === Start of file http_server.log 07:36:21.187800 ====> Client connect 07:36:21.187832 accept_connection 3 returned 4 07:36:21.187847 accept_connection 3 returned 0 07:36:21.187860 Read 93 bytes 07:36:21.187870 Process 93 bytes request 07:36:21.187882 Got request: GET /verifiedserver HTTP/1.1 07:36:21.187890 Are-we-friendly question received 07:36:21.187913 Wrote request (93 bytes) input to log/7/server.input 07:36:21.187928 Identifying ourselves as friends 07:36:21.187980 Response sent (57 bytes) and written to log/7/server.response 07:36:21.187989 special request received, no persistency 07:36:21.187997 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 2054 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind2054 ==166131== ==166131== Process terminating with default action of signal 4 (SIGILL) ==166131== Illegal opcode at address 0x4003082 ==166131== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166131== by 0x4003082: main (tool_main.c:234) === End of file valgrind2054 test 2059...[HTTP Digest with PUT, resumed upload, modified method, SHA-256 and userhash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2059 ../src/curl -q --output log/13/curl2059.out --include --trace-ascii log/13/trace2059 --trace-config all --trace-time http://127.0.0.1:33627/2059 -u auser:apasswd --digest -T log/13/2059 -x http://127.0.0.1:33627 -C 2 -X GET > log/13/stdout2059 2> log/13/stderr2059 2059: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 2059 === Start of file 2059 test === End of file 2059 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2059 ../src/curl -q --output log/13/curl2059.out --include --trace-ascii log/13/trace2059 --trace-config all --trace-time http://127.0.0.1:33627/2059 -u auser:apasswd --digest -T log/13/2059 -x http://127.0.0.1:33627 -C 2 -X GET > log/13/stdout2059 2> log/13/stderr2059 === End of file commands.log === Start of file http_server.log 07:36:21.204703 ====> Client connect 07:36:21.204736 accept_connection 3 returned 4 07:36:21.204751 accept_connection 3 returned 0 07:36:21.204764 Read 93 bytes 07:36:21.204774 Process 93 bytes request 07:36:21.204785 Got request: GET /verifiedserver HTTP/1.1 07:36:21.204794 Are-we-friendly question received 07:36:21.204819 Wrote request (93 bytes) input to log/13/server.input 07:36:21.204834 Identifying ourselves as friends 07:36:21.204886 Response sent (56 bytes) and written to log/13/server.response 07:36:21.204895 special request received, no persistency 07:36:21.204904 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33627... * Connected to 127.0.0.1 (127.0.0.1) port 33627 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33627 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73846 === End of file http_verify.out === Start of file server.cmd Testnum 2059 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73846 === End of file server.response === Start of file valgrind2059 ==166211== ==166211== Process terminating with default action of signal 4 (SIGILL) ==166211== Illegal opcode at address 0x4003082 ==166211== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166211== by 0x4003082: main (tool_main.c:234) === End of file valgrind2059 test 2055...[--connect-to via SOCKS proxy and HTTP proxy (tunnel mode automatically)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2055 ../src/curl -q --output log/22/curl2055.out --include --trace-ascii log/22/trace2055 --trace-config all --trace-time http://www.example.com.2055/2055 --connect-to ::connect.example.CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2060 ../src/curl -q --output log/16/curl2060.out --include --trace-ascii log/16/trace2060 --trace-config all --trace-time http://127.0.0.1:46739/2060 -u auser:apasswd --digest -T log/16/2060 -x http://127.0.0.1:46739 -C 2 -X GET > log/16/stdout2060 2> log/16/stderr2060 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2061 ../src/curl -q --output log/18/curl2061.out --include --trace-ascii log/18/trace2061 --trace-config all --trace-time http://127.0.0.1:45825/2061 -u testuser:testpass --digest > log/18/stdout2061 2> log/18/stderr2061 com.2055:46761 -x 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout2055 2> log/22/stderr2055 2055: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 2055 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2055 ../src/curl -q --output log/22/curl2055.out --include --trace-ascii log/22/trace2055 --trace-config all --trace-time http://www.example.com.2055/2055 --connect-to ::connect.example.com.2055:46761 -x 127.0.0.1:45245 --preproxy socks5://127.0.0.1:34771 > log/22/stdout2055 2> log/22/stderr2055 === End of file commands.log === Start of file http2_server.log 07:36:21.218504 ====> Client connect 07:36:21.218534 accept_connection 3 returned 4 07:36:21.218550 accept_connection 3 returned 0 07:36:21.218563 Read 93 bytes 07:36:21.218572 Process 93 bytes request 07:36:21.218585 Got request: GET /verifiedserver HTTP/1.1 07:36:21.218594 Are-we-friendly question received 07:36:21.218616 Wrote request (93 bytes) input to log/22/proxy.input 07:36:21.218650 Identifying ourselves as friends 07:36:21.218707 Response sent (57 bytes) and written to log/22/proxy.response 07:36:21.218719 special request received, no persistency 07:36:21.218728 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:45245... * Connected to 127.0.0.1 (127.0.0.1) port 45245 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45245 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 111423 === End of file http2_verify.out === Start of file http_server.log 07:36:21.191170 ====> Client connect 07:36:21.191201 accept_connection 3 returned 4 07:36:21.191216 accept_connection 3 returned 0 07:36:21.191229 Read 93 bytes 07:36:21.191239 Process 93 bytes request 07:36:21.191252 Got request: GET /verifiedserver HTTP/1.1 07:36:21.191261 Are-we-friendly question received 07:36:21.191284 Wrote request (93 bytes) input to log/22/server.input 07:36:21.191299 Identifying ourselves as friends 07:36:21.191355 Response sent (56 bytes) and written to log/22/server.response 07:36:21.191365 special request received, no persistency 07:36:21.191373 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 111423 === End of file proxy.response === Start of file server.cmd Testnum 2055 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind2055 ==166247== ==166247== Process terminating with default action of signal 4 (SIGILL) ==166247== Illegal opcode at address 0x4003082 ==166247== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166247== by 0x4003082: main (tool_main.c:234) === End of file valgrind2055 test 2060...[HTTP Digest with PUT, resumed upload, SHA-512-256, userhash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2060 ../src/curl -q --output log/16/curl2060.out --include --trace-ascii log/16/trace2060 --trace-config all --trace-time http://127.0.0.1:46739/2060 -u auser:apasswd --digest -T log/16/2060 -x http://127.0.0.1:46739 -C 2 -X GET > log/16/stdout2060 2> log/16/stderr2060 2060: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 2060 === Start of file 2060 test === End of file 2060 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2060 ../src/curl -q --output log/16/curl2060.out --include --trace-ascii log/16/trace2060 --trace-config all --trace-time http://127.0.0.1:46739/2060 -u auser:apasswd --digest -T log/16/2060 -x http://127.0.0.1:46739 -C 2 -X GET > log/16/stdout2060 2> log/16/stderr2060 === End of file commands.log === Start of file http_server.log 07:36:21.221192 ====> Client connect 07:36:21.221233 accept_connection 3 returned 4 07:36:21.221252 accept_connection 3 returned 0 07:36:21.221268 Read 93 bytes 07:36:21.221281 Process 93 bytes request 07:36:21.221295 Got request: GET /verifiedserver HTTP/1.1 07:36:21.221305 Are-we-friendly question received 07:36:21.221339 Wrote request (93 bytes) input to log/16/server.input 07:36:21.221358 Identifying ourselves as friends 07:36:21.221422 Response sent (56 bytes) and written to log/16/server.response 07:36:21.221435 special request received, no persistency 07:36:21.221445 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 2060 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind2060 ==166270== ==166270== Process terminating with default action of signal 4 (SIGILL) ==166270== Illegal opcode at address 0x4003082 ==166270== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166270== by 0x4003082: main (tool_main.c:234) === End of file valgrind2060 test 2061...[HTTP with RFC7616 SHA256 Digest authorization] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2061 ../src/curl -q --output log/18/curl2061.out --include --trace-ascii log/18/trace2061 --trace-config all --trace-time http://127.0.0.1:45825/2061 -u testuser:testpass --digest > log/18/stdout2061 2> log/18/stderr2061 2061: protocol FAILED! There was no content at all in the file log/18/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/18/ dir after test 2061 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2061 ../src/curl -q --output log/18/curl2061.out --include --trace-ascii log/18/trace2061 --trace-config all --trace-time http://127.0.0.1:45825/2061 -u testuser:testpass --digest > log/18/stdout2061 2> log/18/stderr2061 === End of file commands.log === Start of file http_server.log 07:36:21.268739 ====> Client connect 07:36:21.268778 accept_connection 3 returned 4 07:36:21.268792 accept_connection 3 returned 0 07:36:21.268806 Read 93 bytes 07:36:21.268814 Process 93 bytes request 07:36:21.268826 Got requesCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2062 ../src/curl -q --output log/21/curl2062.out --include --trace-ascii log/21/trace2062 --trace-config all --trace-time http://127.0.0.1:41087/2062 -u testuser:testpass --digest > log/21/stdout2062 2> log/21/stderr2062 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2064 ../src/curl -q --output log/24/curl2064.out --include --trace-ascii log/24/trace2064 --trace-config all --trace-time http://127.0.0.1:38675/2064 -u testuser:test2pass --digest > log/24/stdout2064 2> log/24/stderr2064 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2063 ../src/curl -q --output log/19/curl2063.out --include --trace-ascii log/19/trace2063 --trace-config all --trace-time http://127.0.0.1:33487/2063 -u testuser:testpass --digest > log/19/stdout2063 2> log/19/stderr2063 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2065 ../src/curl -q --output log/1/curl2065.out --include --trace-ascii log/1/trace2065 --trace-config all --trace-time http://127.0.0.1:38941/2065 -u testuser:test2pass --digest > log/1/stdout2065 2> log/1/stderr2065 t: GET /verifiedserver HTTP/1.1 07:36:21.268834 Are-we-friendly question received 07:36:21.268854 Wrote request (93 bytes) input to log/18/server.input 07:36:21.268867 Identifying ourselves as friends 07:36:21.268934 Response sent (56 bytes) and written to log/18/server.response 07:36:21.268944 special request received, no persistency 07:36:21.268953 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 2061 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file valgrind2061 ==166471== ==166471== Process terminating with default action of signal 4 (SIGILL) ==166471== Illegal opcode at address 0x4003082 ==166471== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166471== by 0x4003082: main (tool_main.c:234) === End of file valgrind2061 test 2062...[HTTP with RFC7616 SHA-512-256 Digest authorization and userhash=false] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2062 ../src/curl -q --output log/21/curl2062.out --include --trace-ascii log/21/trace2062 --trace-config all --trace-time http://127.0.0.1:41087/2062 -u testuser:testpass --digest > log/21/stdout2062 2> log/21/stderr2062 2062: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 2062 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2062 ../src/curl -q --output log/21/curl2062.out --include --trace-ascii log/21/trace2062 --trace-config all --trace-time http://127.0.0.1:41087/2062 -u testuser:testpass --digest > log/21/stdout2062 2> log/21/stderr2062 === End of file commands.log === Start of file http_server.log 07:36:21.276687 ====> Client connect 07:36:21.276723 accept_connection 3 returned 4 07:36:21.276740 accept_connection 3 returned 0 07:36:21.276754 Read 93 bytes 07:36:21.276763 Process 93 bytes request 07:36:21.276777 Got request: GET /verifiedserver HTTP/1.1 07:36:21.276786 Are-we-friendly question received 07:36:21.276811 Wrote request (93 bytes) input to log/21/server.input 07:36:21.276828 Identifying ourselves as friends 07:36:21.276885 Response sent (56 bytes) and written to log/21/server.response 07:36:21.276896 special request received, no persistency 07:36:21.276905 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 2062 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind2062 ==166513== ==166513== Process terminating with default action of signal 4 (SIGILL) ==166513== Illegal opcode at address 0x4003082 ==166513== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166513== by 0x4003082: main (tool_main.c:234) === End of file valgrind2062 test 2064...[HTTP with RFC7616 Digest authorization with bad password and SHA256] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2064 ../src/curl -q --output log/24/curl2064.out --include --trace-ascii log/24/trace2064 --trace-config all --trace-time http://127.0.0.1:38675/2064 -u testuser:test2pass --digest > log/24/stdout2064 2> log/24/stderr2064 2064: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 2064 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2064 ../src/curl -q --output log/24/curl2064.out --include --trace-ascii log/24/trace2064 --trace-config all --trace-time http://127.0.0.1:38675/2064 -u testuser:test2pass --digest > log/24/stdout2064 2> log/24/stderr2064 === End of file commands.log === Start of file http_server.log 07:36:21.302855 ====> Client connect 07:36:21.302886 accept_connection 3 returned 4 07:36:21.302902 accept_connection 3 returned 0 07:36:21.302914 Read 93 bytes 07:36:21.302923 Process 93 bytes request 07:36:21.302934 Got request: GET /verifiedserver HTTP/1.1 07:36:21.302942 Are-we-friendly question received 07:36:21.302963 Wrote request (93 bytes) input to log/24/server.input 07:36:21.302978 Identifying ourselves as friends 07:36:21.303031 Response sent (56 bytes) and written to log/24/server.response 07:36:21.303040 special request received, no persistency 07:36:21.303048 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38675... * Connected to 127.0.0.1 (127.0.0.1) port 38675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73852 === End of file http_verify.out === Start of file server.cmd Testnum 2064 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73852 === End of file server.response === Start of file valgrind2064 ==166615== ==166615== Process terminating with default action of signal 4 (SIGILL) ==166615== Illegal opcode at address 0x4003082 ==166615== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166615== by 0x4003082: main (tool_main.c:234) === End of file valgrind2064 test 2065...[HTTP with RFC7616 Digest, bad password, SHA-512-256 and userhash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2065 ../src/curl -q --output log/1/curl2065.out --include --trace-ascii log/1/trace2065 --trace-config all --trace-time http://127.0.0.1:38941/2065 -u testuser:test2pass --digest > log/1/stdout2065 2> log/1/stderr2065 2065: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 2065 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2065 ../src/curl -q --output log/1/curl2065.out --include --trace-ascii log/1/trace2065 --trace-config all --trace-time http://127.0.0.1:38941/2065 -u testuser:test2pass --digest > log/1/stdout2065 2> log/1/stderr2065 === End of CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2066 ../src/curl -q --output log/9/curl2066.out --include --trace-ascii log/9/trace2066 --trace-config all --trace-time http://127.0.0.1:34999/2066 -u testuser:test2pass --digest > log/9/stdout2066 2> log/9/stderr2066 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2071 ../src/curl -q --output log/12/curl2071.out --trace-ascii log/12/trace2071 --trace-config all --trace-time file://127.0.0.1/startdir/src/build-curl/tests/log/12/test2070.txt > log/12/stdout2071 2> log/12/stderr2071 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2068 ../src/curl -q --output log/3/curl2068.out --include --trace-ascii log/3/trace2068 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:42345/2068 > log/3/stdout2068 2> log/3/stderr2068 file commands.log === Start of file http_server.log 07:36:21.307391 ====> Client connect 07:36:21.307429 accept_connection 3 returned 4 07:36:21.307444 accept_connection 3 returned 0 07:36:21.307456 Read 93 bytes 07:36:21.307464 Process 93 bytes request 07:36:21.307475 Got request: GET /verifiedserver HTTP/1.1 07:36:21.307482 Are-we-friendly question received 07:36:21.307502 Wrote request (93 bytes) input to log/1/server.input 07:36:21.307515 Identifying ourselves as friends 07:36:21.307570 Response sent (56 bytes) and written to log/1/server.response 07:36:21.307578 special request received, no persistency 07:36:21.307585 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 2065 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind2065 ==166630== ==166630== Process terminating with default action of signal 4 (SIGILL) ==166630== Illegal opcode at address 0x4003082 ==166630== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166630== by 0x4003082: main (tool_main.c:234) === End of file valgrind2065 test 2063...[HTTP with RFC7616 SHA-256 Digest authorization and userhash=true] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2063 ../src/curl -q --output log/19/curl2063.out --include --trace-ascii log/19/trace2063 --trace-config all --trace-time http://127.0.0.1:33487/2063 -u testuser:testpass --digest > log/19/stdout2063 2> log/19/stderr2063 2063: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 2063 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2063 ../src/curl -q --output log/19/curl2063.out --include --trace-ascii log/19/trace2063 --trace-config all --trace-time http://127.0.0.1:33487/2063 -u testuser:testpass --digest > log/19/stdout2063 2> log/19/stderr2063 === End of file commands.log === Start of file http_server.log 07:36:21.300842 ====> Client connect 07:36:21.300875 accept_connection 3 returned 4 07:36:21.300890 accept_connection 3 returned 0 07:36:21.300904 Read 93 bytes 07:36:21.300913 Process 93 bytes request 07:36:21.300926 Got request: GET /verifiedserver HTTP/1.1 07:36:21.300935 Are-we-friendly question received 07:36:21.300957 Wrote request (93 bytes) input to log/19/server.input 07:36:21.300973 Identifying ourselves as friends 07:36:21.301025 Response sent (56 bytes) and written to log/19/server.response 07:36:21.301034 special request received, no persistency 07:36:21.301043 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 2063 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind2063 ==166610== ==166610== Process terminating with default action of signal 4 (SIGILL) ==166610== Illegal opcode at address 0x4003082 ==166610== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166610== by 0x4003082: main (tool_main.c:234) === End of file valgrind2063 test 2066...[HTTP with RFC7616 Digest, bad password, SHA-256 and userhash] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2066 ../src/curl -q --output log/9/curl2066.out --include --trace-ascii log/9/trace2066 --trace-config all --trace-time http://127.0.0.1:34999/2066 -u testuser:test2pass --digest > log/9/stdout2066 2> log/9/stderr2066 2066: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 2066 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2066 ../src/curl -q --output log/9/curl2066.out --include --trace-ascii log/9/trace2066 --trace-config all --trace-time http://127.0.0.1:34999/2066 -u testuser:test2pass --digest > log/9/stdout2066 2> log/9/stderr2066 === End of file commands.log === Start of file http_server.log 07:36:21.316796 ====> Client connect 07:36:21.316839 accept_connection 3 returned 4 07:36:21.316857 accept_connection 3 returned 0 07:36:21.316873 Read 93 bytes 07:36:21.316883 Process 93 bytes request 07:36:21.316896 Got request: GET /verifiedserver HTTP/1.1 07:36:21.316905 Are-we-friendly question received 07:36:21.316931 Wrote request (93 bytes) input to log/9/server.input 07:36:21.316947 Identifying ourselves as friends 07:36:21.317000 Response sent (56 bytes) and written to log/9/server.response 07:36:21.317010 special request received, no persistency 07:36:21.317018 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34999... * Connected to 127.0.0.1 (127.0.0.1) port 34999 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34999 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73855 === End of file http_verify.out === Start of file server.cmd Testnum 2066 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73855 === End of file server.response === Start of file valgrind2066 ==166698== ==166698== Process terminating with default action of signal 4 (SIGILL) ==166698== Illegal opcode at address 0x4003082 ==166698== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166698== by 0x4003082: main (tool_main.c:234) === End of file valgrind2066 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 43499 --port2 39585 --nghttpx "nghttpx" --pidfile "log/14/server/http_v2_server.pid" --logfile "log/14/http_v2_server.log" --logdir "log/14" --connect 127.0.0.1:37963 startnew: child process has died, server might start up RUN: failed to start the HTTP/2 server test 1701 SKIPPED: failed starting HTTP/2 server startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 36235 --port2 46655 --nghttpx "nghttpx" --pidfile "log/23/server/http_v2_server.pid" --logfile "log/23/http_v2_server.log" --logdir "log/23" --connect 127.0.0.1:45701 startnew: child process has died, server might start up RUN: failed to start the HTTP/2 server test 1700 SKIPPED: failed starting HTTP/2 server CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2072 ../src/curl -q --output log/15/curl2072.out --trace-ascii log/15/trace2072 --trace-config all --trace-time file://///startdir/src/build-curl/tests/log/15/test2072.txt > log/15/stdout2072 2> log/15/stderr2072 test 2071...[basic file:// file with "127.0.0.1" hostname] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2071 ../src/curl -q --output log/12/curl2071.out --trace-ascii log/12/trace2071 --trace-config all --trace-time file://127.0.0.1/startdir/src/build-curl/tests/log/12/test2070.txt > log/12/stdout2071 2> log/12/stderr2071 2071: data FAILED: --- log/12/check-expected 2025-07-18 07:36:22.203780066 +0000 +++ log/12/check-generated 2025-07-18 07:36:22.203780066 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/12/ dir after test 2071 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2071 ../src/curl -q --output log/12/curl2071.out --trace-ascii log/12/trace2071 --trace-config all --trace-time file://127.0.0.1/startdir/src/build-curl/tests/log/12/test2070.txt > log/12/stdout2071 2> log/12/stderr2071 === End of file commands.log === Start of file server.cmd Testnum 2071 === End of file server.cmd === Start of file valgrind2071 ==166891== ==166891== Process terminating with default action of signal 4 (SIGILL) ==166891== Illegal opcode at address 0x4003082 ==166891== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166891== by 0x4003082: main (tool_main.c:234) === End of file valgrind2071 test 2068...[HTTP POST Digest with SHA-512-256, userhash and set Content-Length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2068 ../src/curl -q --output log/3/curl2068.out --include --trace-ascii log/3/trace2068 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:42345/2068 > log/3/stdout2068 2> log/3/stderr2068 2068: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 2068 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2068 ../src/curl -q --output log/3/curl2068.out --include --trace-ascii log/3/trace2068 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:42345/2068 > log/3/stdout2068 2> log/3/stderr2068 === End of file commands.log === Start of file http_server.log 07:36:21.428954 ====> Client connect 07:36:21.428991 accept_connection 3 returned 4 07:36:21.429007 accept_connection 3 returned 0 07:36:21.429021 Read 93 bytes 07:36:21.429033 Process 93 bytes request 07:36:21.429044 Got request: GET /verifiedserver HTTP/1.1 07:36:21.429053 Are-we-friendly question received 07:36:21.429079 Wrote request (93 bytes) input to log/3/server.input 07:36:21.429095 Identifying ourselves as friends 07:36:21.429163 Response sent (56 bytes) and written to log/3/server.response 07:36:21.429172 special request received, no persistency 07:36:21.429181 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 2068 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind2068 ==166928== ==166928== Process terminating with default action of signal 4 (SIGILL) ==166928== Illegal opcode at address 0x4003082 ==166928== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166928== by 0x4003082: main (tool_main.c:234) === End of file valgrind2068 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2069 ../src/curl -q --output log/20/curl2069.out --include --trace-ascii log/20/trace2069 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:37169/2069 > log/20/stdout2069 2> log/20/stderr2069 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2067 ../src/curl -q --output log/17/curl2067.out --include --trace-ascii log/17/trace2067 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:39089/2067 > log/17/stdout2067 2> log/17/stderr2067 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2073 ../src/curl -q --output log/8/curl2073.out --include --trace-ascii log/8/trace2073 --trace-config all --trace-time http://127.0.0.1:45261/2073 -F 'name=a;filename=a.pdf' --next http://127.0.0.1:45261/2073 -F 'name=b;filename=b.jpg' > log/8/stdout2073 2> log/8/stderr2073 prechecked /usr/bin/perl -e "print 'Test requires a Unix system' if($^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'dos' || $^O eq 'msys');" test 2072...[file:// with Unix path resolution behavior for the case of extra slashes] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2072 ../src/curl -q --output log/15/curl2072.out --trace-ascii log/15/trace2072 --trace-config all --trace-time file://///startdir/src/build-curl/tests/log/15/test2072.txt > log/15/stdout2072 2> log/15/stderr2072 2072: data FAILED: --- log/15/check-expected 2025-07-18 07:36:22.227113400 +0000 +++ log/15/check-generated 2025-07-18 07:36:22.227113400 +0000 @@ -1,5 +0,0 @@ -foo[LF] - bar[LF] -bar[LF] - foo[LF] -moo[LF] == Contents of files in the log/15/ dir after test 2072 === Start of file check-expected foo[LF] bar[LF] bar[LF] foo[LF] moo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2072 ../src/curl -q --output log/15/curl2072.out --trace-ascii log/15/trace2072 --trace-config all --trace-time file://///startdir/src/build-curl/tests/log/15/test2072.txt > log/15/stdout2072 2> log/15/stderr2072 === End of file commands.log === Start of file server.cmd Testnum 2072 === End of file server.cmd === Start of file test2072.txt foo bar bar foo moo === End of file test2072.txt === Start of file valgrind2072 ==166942== ==166942== Process terminating with default action of signal 4 (SIGILL) ==166942== Illegal opcode at address 0x4003082 ==166942== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166942== by 0x4003082: main (tool_main.c:234) === End of file valgrind2072 test 2069...[HTTP POST Digest with SHA-256, userhash and set Content-Length header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2069 ../src/curl -q --output log/20/curl2069.out --include --trace-ascii log/20/trace2069 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:37169/2069 > log/20/stdout2069 2> log/20/stderr2069 2069: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 2069 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2069 ../src/curl -q --output log/20/curl2069.out --include --trace-ascii log/20/trace2069 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:37169/2069 > log/20/stdout2069 2> log/20/stderr2069 === End of file commands.log === Start of file http_server.log 07:36:21.458895 ====> Client connect 07:36:21.458929 accept_connection 3 returned 4 07:36:21.458946 accept_connection 3 returned 0 07:36:21.458960 Read 93 bytes 07:36:21.458970 Process 93 bytes request 07:36:21.458984 Got request: GET /verifiedserver HTTP/1.1 07:36:21.458993 Are-we-friendly question received 07:36:21.459018 Wrote request (93 bytes) input to log/20/server.input 07:36:21.459035 Identifying ourselves as friends 07:36:21.459088 Response sent (56 bytes) and written to log/20/server.response 07:36:21.459098 special request received, no persistency 07:36:21.459107 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 2069 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind2069 ==167035== ==167035== Process terminating with default action of signal 4 (SIGILL) ==167035== Illegal opcode at address 0x4003082 ==167035== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167035== by 0x4003082: main (tool_main.c:234) === End of file valgrind2069 test 2067...[HTTP POST --digest with SHA256 and user-specified Content-Length header] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2067 ../src/curl -q --output log/17/curl2067.out --include --trace-ascii log/17/trace2067 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:39089/2067 > log/17/stdout2067 2> log/17/stderr2067 2067: protocol FAILED! There was no content at all in the file log/17/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/17/ dir after test 2067 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/17/valgrind2067 ../src/curl -q --output log/17/curl2067.out --include --trace-ascii log/17/trace2067 --trace-config all --trace-time -H "Content-Length: 11" -u auser:apasswd --digest -d "junkelijunk" http://127.0.0.1:39089/2067 > log/17/stdout2067 2> log/17/stderr2067 === End of file commands.log === Start of file http_server.log 07:36:21.428139 ====> Client connect 07:36:21.428173 accept_connection 3 returned 4 07:36:21.428189 accept_connection 3 returned 0 07:36:21.428202 Read 93 bytes 07:36:21.428211 Process 93 bytes request 07:36:21.428225 Got request: GET /verifiedserver HTTP/1.1 07:36:21.428233 Are-we-friendly question received 07:36:21.428254 Wrote request (93 bytes) input to log/17/server.input 07:36:21.428269 Identifying ourselves as friends 07:36:21.428317 Response sent (56 bytes) and written to log/17/server.response 07:36:21.428327 special request received, no persistency 07:36:21.428335 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:39089... * Connected to 127.0.0.1 (127.0.0.1) port 39089 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:39089 > User-Agent: curl/8.15.0 > Accept: */* > < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73845 === End of file http_verify.out === Start of file server.cmd Testnum 2067 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73845 === End of file server.response === Start of file valgrind2067 ==166918== ==166918== Process terminating with default action of signal 4 (SIGILL) ==166918== Illegal opcode at address 0x4003082 ==166918== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==166918== by 0x4003082: main (tool_main.c:234) === End of file valgrind2067 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 38833 --port2 43425 --nghttpx "nghttpx" --pidfile "log/6/server/http_v2_server.pid" --logfile "log/6/http_v2_server.log" --logdir "log/6" --connect 127.0.0.1:35775 startnew: child process has died, server might start up RUN: failed to start the HTTP/2 server test 1702 SKIPPED: failed starting HTTP/2 server test 2073...[HTTP form posts with handle reset] ../libtoCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2074 ../src/curl -q --output log/11/curl2074.out --include --trace-ascii log/11/trace2074 --trace-config all --trace-time http://127.0.0.1:40341/2074 --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout2074 2> log/11/stderr2074 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2075 ../src/curl -q --output log/10/curl2075.out --include --trace-ascii log/10/trace2075 --trace-config all --trace-time --disallow-username-in-url http://username:password@example.com/ > log/10/stdout2075 2> log/10/stderr2075 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2076 ../src/curl -q --output log/5/curl2076.out --include --trace-ascii log/5/trace2076 --trace-config all --trace-time "http://127.0.0.1:46675/2076?query" -u testuser:testpass --digest > log/5/stdout2076 2> log/5/stderr2076 ol --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2073 ../src/curl -q --output log/8/curl2073.out --include --trace-ascii log/8/trace2073 --trace-config all --trace-time http://127.0.0.1:45261/2073 -F 'name=a;filename=a.pdf' --next http://127.0.0.1:45261/2073 -F 'name=b;filename=b.jpg' > log/8/stdout2073 2> log/8/stderr2073 2073: protocol FAILED! There was no content at all in the file log/8/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/8/ dir after test 2073 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/8/valgrind2073 ../src/curl -q --output log/8/curl2073.out --include --trace-ascii log/8/trace2073 --trace-config all --trace-time http://127.0.0.1:45261/2073 -F 'name=a;filename=a.pdf' --next http://127.0.0.1:45261/2073 -F 'name=b;filename=b.jpg' > log/8/stdout2073 2> log/8/stderr2073 === End of file commands.log === Start of file http_server.log 07:36:21.498674 ====> Client connect 07:36:21.498722 accept_connection 3 returned 4 07:36:21.498744 accept_connection 3 returned 0 07:36:21.498761 Read 93 bytes 07:36:21.498772 Process 93 bytes request 07:36:21.498786 Got request: GET /verifiedserver HTTP/1.1 07:36:21.498796 Are-we-friendly question received 07:36:21.498832 Wrote request (93 bytes) input to log/8/server.input 07:36:21.498852 Identifying ourselves as friends 07:36:21.498924 Response sent (56 bytes) and written to log/8/server.response 07:36:21.498939 special request received, no persistency 07:36:21.498950 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45261... * Connected to 127.0.0.1 (127.0.0.1) port 45261 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45261 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73856 === End of file http_verify.out === Start of file server.cmd Testnum 2073 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73856 === End of file server.response === Start of file valgrind2073 ==167154== ==167154== Process terminating with default action of signal 4 (SIGILL) ==167154== Illegal opcode at address 0x4003082 ==167154== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167154== by 0x4003082: main (tool_main.c:234) === End of file valgrind2073 test 2074...[HTTP GET] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2074 ../src/curl -q --output log/11/curl2074.out --include --trace-ascii log/11/trace2074 --trace-config all --trace-time http://127.0.0.1:40341/2074 --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout2074 2> log/11/stderr2074 2074: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 2074 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2074 ../src/curl -q --output log/11/curl2074.out --include --trace-ascii log/11/trace2074 --trace-config all --trace-time http://127.0.0.1:40341/2074 --oauth2-bearer mF_9.B5f-4.1JqM > log/11/stdout2074 2> log/11/stderr2074 === End of file commands.log === Start of file http_server.log 07:36:21.530540 ====> Client connect 07:36:21.530613 accept_connection 3 returned 4 07:36:21.530632 accept_connection 3 returned 0 07:36:21.530646 Read 93 bytes 07:36:21.530656 Process 93 bytes request 07:36:21.530670 Got request: GET /verifiedserver HTTP/1.1 07:36:21.530679 Are-we-friendly question received 07:36:21.530705 Wrote request (93 bytes) input to log/11/server.input 07:36:21.530721 Identifying ourselves as friends 07:36:21.530776 Response sent (57 bytes) and written to log/11/server.response 07:36:21.530786 special request received, no persistency 07:36:21.530795 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40341... * Connected to 127.0.0.1 (127.0.0.1) port 40341 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40341 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 156367 === End of file http_verify.out === Start of file server.cmd Testnum 2074 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156367 === End of file server.response === Start of file valgrind2074 ==167212== ==167212== Process terminating with default action of signal 4 (SIGILL) ==167212== Illegal opcode at address 0x4003082 ==167212== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167212== by 0x4003082: main (tool_main.c:234) === End of file valgrind2074 * starts no server test 2075...[Verify usernames are not allowed in url] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2075 ../src/curl -q --output log/10/curl2075.out --include --trace-ascii log/10/trace2075 --trace-config all --trace-time --disallow-username-in-url http://username:password@example.com/ > log/10/stdout2075 2> log/10/stderr2075 curl returned 132, when expecting 67 2075: exit FAILED == Contents of files in the log/10/ dir after test 2075 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2075 ../src/curl -q --output log/10/curl2075.out --include --trace-ascii log/10/trace2075 --trace-config all --trace-time --disallow-username-in-url http://username:password@example.com/ > log/10/stdout2075 2> log/10/stderr2075 === End of file commands.log === Start of file server.cmd Testnum 2075 === End of file server.cmd === Start of file valgrind2075 ==167278== ==167278== Process terminating with default action of signal 4 (SIGILL) ==167278== Illegal opcode at address 0x4003082 ==167278== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167278== by 0x4003082: main (tool_main.c:234) === End of file valgrind2075 test 2076...[HTTP with digest auth and URI contains query] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2076 ../src/curl -q --output log/5/curl2076.out --include --trace-ascii log/5/trace2076 --trace-config all --trace-time "http://127.0.0.1:46675/2076?query" -u testuser:testpass --digest > log/5/stdout2076 2> log/5/stderr2076 2076: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 2076 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2076 ../src/curl -q --output log/5/curl2076.out --include --trace-ascii log/5/trace2076 --trace-config all --trace-time "http://127.0.0.1:46675/2076?query" -u testuser:testpass --digest > log/5/stdout2076 2> log/5/stderr2076 === End of file commCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2077 ../src/curl -q --output log/4/curl2077.out --include --trace-ascii log/4/trace2077 --trace-config all --trace-time http://127.0.0.1:33235/2077 --fail --negotiate > log/4/stdout2077 2> log/4/stderr2077 ands.log === Start of file http_server.log 07:36:21.794204 ====> Client connect 07:36:21.794237 accept_connection 3 returned 4 07:36:21.794253 accept_connection 3 returned 0 07:36:21.794267 Read 93 bytes 07:36:21.794276 Process 93 bytes request 07:36:21.794290 Got request: GET /verifiedserver HTTP/1.1 07:36:21.794299 Are-we-friendly question received 07:36:21.794321 Wrote request (93 bytes) input to log/5/server.input 07:36:21.794337 Identifying ourselves as friends 07:36:21.794385 Response sent (56 bytes) and written to log/5/server.response 07:36:21.794394 special request received, no persistency 07:36:21.794403 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 2076 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind2076 ==167382== ==167382== Process terminating with default action of signal 4 (SIGILL) ==167382== Illegal opcode at address 0x4003082 ==167382== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167382== by 0x4003082: main (tool_main.c:234) === End of file valgrind2076 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2080 ../src/curl -q --output log/13/curl2080.out --include --trace-ascii log/13/trace2080 --trace-config all --trace-time -K log/13/config2080 file://de\>v/null > log/13/stdout2080 2> log/13/stderr2080 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2078 ../src/curl -q --output log/2/curl2078.out --include --trace-ascii log/2/trace2078 --trace-config all --trace-time http://127.0.0.1:45457/2078 --negotiate --data name=value > log/2/stdout2078 2> log/2/stderr2078 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2081 ../src/curl -q --include --trace-ascii log/7/trace2081 --trace-config all --trace-time http://user:pass@127.0.0.1:43423/we/want/our/2081#anchor --location --referer ';auto' --write-out '%{referer}\n' > log/7/stdout2081 2> log/7/stderr2081 test 2077...[curl --fail --negotiate to unauthenticated service fails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2077 ../src/curl -q --output log/4/curl2077.out --include --trace-ascii log/4/trace2077 --trace-config all --trace-time http://127.0.0.1:33235/2077 --fail --negotiate > log/4/stdout2077 2> log/4/stderr2077 2077: data FAILED: --- log/4/check-expected 2025-07-18 07:36:22.553780073 +0000 +++ log/4/check-generated 2025-07-18 07:36:22.553780073 +0000 @@ -1,4 +0,0 @@ -HTTP/1.1 200 OK swsclose[CR][LF] -Content-Length: 23[CR][LF] -[CR][LF] -This IS the real page![LF] == Contents of files in the log/4/ dir after test 2077 === Start of file check-expected HTTP/1.1 200 OK swsclose[CR][LF] Content-Length: 23[CR][LF] [CR][LF] This IS the real page![LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2077 ../src/curl -q --output log/4/curl2077.out --include --trace-ascii log/4/trace2077 --trace-config all --trace-time http://127.0.0.1:33235/2077 --fail --negotiate > log/4/stdout2077 2> log/4/stderr2077 === End of file commands.log === Start of file http_server.log 07:36:21.800566 ====> Client connect 07:36:21.800601 accept_connection 3 returned 4 07:36:21.800618 accept_connection 3 returned 0 07:36:21.800632 Read 93 bytes 07:36:21.800641 Process 93 bytes request 07:36:21.800653 Got request: GET /verifiedserver HTTP/1.1 07:36:21.800662 Are-we-friendly question received 07:36:21.800686 Wrote request (93 bytes) input to log/4/server.input 07:36:21.800702 Identifying ourselves as friends 07:36:21.800753 Response sent (56 bytes) and written to log/4/server.response 07:36:21.800763 special request received, no persistency 07:36:21.800772 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 2077 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file valgrind2077 ==167384== ==167384== Process terminating with default action of signal 4 (SIGILL) ==167384== Illegal opcode at address 0x4003082 ==167384== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167384== by 0x4003082: main (tool_main.c:234) === End of file valgrind2077 test 2078...[curl --negotiate should not send empty POST request only] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2078 ../src/curl -q --output log/2/curl2078.out --include --trace-ascii log/2/trace2078 --trace-config all --trace-time http://127.0.0.1:45457/2078 --negotiate --data name=value > log/2/stdout2078 2> log/2/stderr2078 2078: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 2078 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind2078 ../src/curl -q --output log/2/curl2078.out --include --trace-ascii log/2/trace2078 --trace-config all --trace-time http://127.0.0.1:45457/2078 --negotiate --data name=value > log/2/stdout2078 2> log/2/stderr2078 === End of file commands.log === Start of file http_server.log 07:36:21.844564 ====> Client connect 07:36:21.844591 accept_connection 3 returned 4 07:36:21.844604 accept_connection 3 returned 0 07:36:21.844617 Read 93 bytes 07:36:21.844629 Process 93 bytes request 07:36:21.844642 Got request: GET /verifiedserver HTTP/1.1 07:36:21.844649 Are-we-friendly question received 07:36:21.844669 Wrote request (93 bytes) input to log/2/server.input 07:36:21.844682 Identifying ourselves as friends 07:36:21.844725 Response sent (56 bytes) and written to log/2/server.response 07:36:21.844736 special request received, no persistency 07:36:21.844745 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 2078 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind2078 ==167528== ==167528== Process terminating with default action of signal 4 (SIGILL) ==167528== Illegal opcode at address 0x4003082 ==167528== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167528== by 0x4003082: main (tool_main.c:234) === End of file valgrind2078 * starts no server test 2080...[config file with overly long option] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2080 ../src/curl -q --output log/13/curl2080.out --include --trace-ascii log/13/trace2080 --trace-config all --trace-time -K log/13/config2080 file://de\>v/null > log/13/stdout2080 2> log/13/stderr2080 curl returned 132, when expecting 26 2080: exit FAILED == Contents of files in the log/13/ dir after test 2080 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind2080 ../src/curl -q --output log/13/curl2080.out --include --trace-ascii log/13/trace2080 --trace-config all --trace-time -K log/13/config2080 file://de\>v/null > log/13/stdout2080 2> log/13/stderr2080 === End of file commands.log === Start of file config2080 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD === End of file config2080 === Start of file server.cmd Testnum 2080 === End of file server.cmd === Start of file valgrind2080 ==167443== ==167443== Process terminating with default action of signal 4 (SIGILL) ==167443== Illegal opcode at address 0x4003082 ==167443== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167443== by 0x4003082: main (tool_main.c:234) === End of file valgrind2080 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2205 ../src/curl -q --output log/12/curl2205.out --include --trace log/12/trace2205 --trace-config all --trace-time mqtt://127.0.0.1:33031/2205 -K log/12/input2205 > log/12/stdout2205 2> log/12/stderr2205 test 2081...[Automatic referrer credential and anchor stripping check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2081 ../src/curl -q --include --trace-ascii log/7/trace2081 --trace-config all --trace-time http://user:pass@127.0.0.1:43423/we/want/our/2081#anchor --location --referer ';auto' --write-out '%{referer}\n' > log/7/stdout2081 2> log/7/stderr2081 2081: stdout FAILED: --- log/7/check-expected 2025-07-18 07:36:22.563780073 +0000 +++ log/7/check-generated 2025-07-18 07:36:22.563780073 +0000 @@ -1,10 +0,0 @@ -HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] -Location: data/20810002.txt?coolsite=yes[CR][LF] -Content-Length: 62[CR][LF] -Connection: close[CR][LF] -[CR][LF] -HTTP/1.1 200 This is another weirdo text message swsclose[CR][LF] -Connection: close[CR][LF] -[CR][LF] -Thanks for following.[LF] -http://127.0.0.1:43423/we/want/our/2081[LF] == Contents of files in the log/7/ dir after test 2081 === Start of file check-expected HTTP/1.1 301 This is a weirdo text message swsclose[CR][LF] Location: data/20810002.txt?coolsite=yes[CR][LF] Content-Length: 62[CR][LF] Connection: close[CR][LF] [CR][LF] HTTP/1.1 200 This is another weirdo text message swsclose[CR][LF] Connection: close[CR][LF] [CR][LF] Thanks for following.[LF] http://127.0.0.1:43423/we/want/our/2081[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind2081 ../src/curl -q --include --trace-ascii log/7/trace2081 --trace-config all --trace-time http://user:pass@127.0.0.1:43423/we/want/our/2081#anchor --location --referer ';auto' --write-out '%{referer}\n' > log/7/stdout2081 2> log/7/stderr2081 === End of file commands.log === Start of file http_server.log 07:36:21.849830 ====> Client connect 07:36:21.849860 accept_connection 3 returned 4 07:36:21.849877 accept_connection 3 returned 0 07:36:21.849891 Read 93 bytes 07:36:21.849901 Process 93 bytes request 07:36:21.849912 Got request: GET /verifiedserver HTTP/1.1 07:36:21.849919 Are-we-friendly question received 07:36:21.849938 Wrote request (93 bytes) input to log/7/server.input 07:36:21.849951 Identifying ourselves as friends 07:36:21.849994 Response sent (57 bytes) and written to log/7/server.response 07:36:21.850003 special request received, no persistency 07:36:21.850012 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 2081 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind2081 ==167556== ==167556== Process terminating with default action of signal 4 (SIGILL) ==167556== Illegal opcode at address 0x4003082 ==167556== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167556== by 0x4003082: main (tool_main.c:234) === End of file valgrind2081 test 2205...[MQTT with very long user name] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2205 ../src/curl -q --output log/12/curl2205.out --include --trace log/12/trace2205 --trace-config all --trace-time mqtt://127.0.0.1:33031/2205 -K log/12/input2205 > log/12/stdout2205 2> log/12/stderr2205 curl returned 132, when expecting 8 2205: exit FAILED == Contents of files in the log/12/ dir after test 2205 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind2205 ../src/curl -q --output log/12/curl2205.out --include --trace log/12/trace2205 --trace-config all --trace-time mqtt://127.0.0.1:33031/2205 -K log/12/input2205 > log/12/stdout2205 2> log/12/stderr2205 === End of file commands.log === Start of file input2205 user = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2602 ./unit/units unit2602 - > log/10/stdout2602 2> log/10/stderr2602 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2601 ./unit/units unit2601 - > log/11/stdout2601 2> log/11/stderr2601 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:fakepasswd === End of file input2205 === Start of file server.cmd Testnum 2205 === End of file server.cmd === Start of file valgrind2205 ==167922== ==167922== Process terminating with default action of signal 4 (SIGILL) ==167922== Illegal opcode at address 0x4003082 ==167922== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==167922== by 0x4003082: main (tool_main.c:234) === End of file valgrind2205 * starts no server test 2602...[dynhds unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind2602 ./unit/units unit2602 - > log/10/stdout2602 2> log/10/stderr2602 -------e-v- OK (1654 out of 1707, remaining: 00:03, took 0.531s, duration: 01:34) * starts no server test 2601...[bufq unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2601 ./unit/units unit2601 - > log/11/stdout2601 2> log/11/stderr2601 units returned 132, when expecting 0 2601: exit FAILED == Contents of files in the log/11/ dir after test 2601 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind2601 ./unit/units unit2601 - > log/11/stdout2601 2> log/11/stderr2601 === End of file commands.log === Start of file server.cmd Testnum 2601 === End of file server.cmd === Start of file stderr2601 URL: - === End of file stderr2601 === Start of file valgrind2601 ==168242== ==168242== Process terminating with default action of signal 4 (SIGILL) ==168242== Illegal opcode at address 0x401E4A7 ==168242== at 0x401E4A7: UnknownInlinedFun (string_fortified.h:59) ==168242== by 0x401E4A7: UnknownInlinedFun (bufq.c:212) ==168242== by 0x401E4A7: UnknownInlinedFun (bufq.c:227) ==168242== by 0x401E4A7: test_unit2601.lto_priv.0 (unit2601.c:217) ==168242== by 0x400A15E: main (first.c:167) ==168242== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x532FFA5: __tsearch (tsearch.c:337) ==168242== by 0x532FFA5: tsearch (tsearch.c:290) ==168242== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168242== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168242== by 0x52423F0: add_alias (gconv_conf.c:178) ==168242== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168242== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168242== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== ==168242== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x532FFA5: __tsearch (tsearch.c:337) ==168242== by 0x532FFA5: tsearch (tsearch.c:290) ==168242== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142)CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2082 ./libtest/libtests lib2082 127.0.0.1:46761/2082 > log/22/stdout2082 2> log/22/stderr2082 ==168242== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168242== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== ==168242== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168242== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168242== by 0x52423F0: add_alias (gconv_conf.c:178) ==168242== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168242== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168242== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== ==168242== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168242== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168242== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== ==168242== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x532FFA5: __tsearch (tsearch.c:337) ==168242== by 0x532FFA5: tsearch (tsearch.c:290) ==168242== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168242== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168242== by 0x52423F0: add_alias (gconv_conf.c:178) ==168242== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168242== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168242== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== ==168242== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==168242== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168242== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168242== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168242== by 0x52423F0: add_alias (gconv_conf.c:178) ==168242== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168242== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168242== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168242== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168242== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168242== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168242== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168242== by 0x524D142: setlocale (setlocale.c:337) ==168242== by 0x400A0CB: main (first.c:123) ==168242== === End of file valgrind2601 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2084 ./libtest/libtests lib2082 127.0.0.1:45825/2084#err > log/18/stdout2084 2> log/18/stderr2084 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2083 ./libtest/libtests lib2082 ftp://127.0.0.1:40585/test-2083/ > log/16/stdout2083 2> log/16/stderr2083 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2085 ./libtest/libtests lib2082 127.0.0.1:41087/2085#redir > log/21/stdout2085 2> log/21/stderr2085 test 2082...[Pre-request callback for HTTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2082 ./libtest/libtests lib2082 127.0.0.1:46761/2082 > log/22/stdout2082 2> log/22/stderr2082 2082: stdout FAILED: --- log/22/check-expected 2025-07-18 07:36:22.927113415 +0000 +++ log/22/check-generated 2025-07-18 07:36:22.927113415 +0000 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 46761[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/22/ dir after test 2082 === Start of file check-expected Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 46761[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind2082 ./libtest/libtests lib2082 127.0.0.1:46761/2082 > log/22/stdout2082 2> log/22/stderr2082 === End of file commands.log === Start of file http_server.log 07:36:21.917197 ====> Client connect 07:36:21.918933 accept_connection 3 returned 4 07:36:21.919008 accept_connection 3 returned 0 07:36:21.919053 Read 93 bytes 07:36:21.925990 Process 93 bytes request 07:36:21.926019 Got request: GET /verifiedserver HTTP/1.1 07:36:21.926030 Are-we-friendly question received 07:36:21.926074 Wrote request (93 bytes) input to log/22/server.input 07:36:21.926095 Identifying ourselves as friends 07:36:21.926173 Response sent (56 bytes) and written to log/22/server.response 07:36:21.926184 special request received, no persistency 07:36:21.926193 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 2082 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file stderr2082 URL: 127.0.0.1:46761/2082 === End of file stderr2082 === Start of file valgrind2082 ==167721== ==167721== Process terminating with default action of signal 4 (SIGILL) ==167721== Illegal opcode at address 0x51C2DB3 ==167721== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==167721== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==167721== by 0x51C2DB3: Curl_open (url.c:541) ==167721== by 0x513D46F: curl_easy_init (easy.c:372) ==167721== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167721== by 0x4003443: main (first.c:167) ==167721== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x533CFA5: __tsearch (tsearch.c:337) ==167721== by 0x533CFA5: tsearch (tsearch.c:290) ==167721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167721== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167721== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== ==167721== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x533CFA5: __tsearch (tsearch.c:337) ==167721== by 0x533CFA5: tsearch (tsearch.c:290) ==167721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167721== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167721== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== ==167721== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167721== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167721== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== ==167721== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167721== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167721== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== ==167721== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==167721== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==167721== by 0x51C2D03: Curl_open (url.c:520) ==167721== by 0x513D46F: curl_easy_init (easy.c:372) ==167721== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167721== by 0x4003443: main (first.c:167) ==167721== ==167721== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x533CFA5: __tsearch (tsearch.c:337) ==167721== by 0x533CFA5: tsearch (tsearch.c:290) ==167721== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167721== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167721== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== ==167721== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==167721== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167721== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167721== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167721== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167721== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167721== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167721== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167721== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167721== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167721== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167721== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167721== by 0x525A142: setlocale (setlocale.c:337) ==167721== by 0x400336E: main (first.c:123) ==167721== === End of file valgrind2082 test 2083...[Pre-request callback for FTP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2083 ./libtest/libtests lib2082 ftp://127.0.0.1:40585/test-2083/ > log/16/stdout2083 2> log/16/stderr2083 2083: stdout FAILED: --- log/16/check-expected 2025-07-18 07:36:22.933780083 +0000 +++ log/16/check-generated 2025-07-18 07:36:22.933780083 +0000 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 40585[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/16/ dir after test 2083 === Start of file check-expected Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 40585[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind2083 ./libtest/libtests lib2082 ftp://127.0.0.1:40585/test-2083/ > log/16/stdout2083 2> log/16/stderr2083 === End of file commands.log === Start of file ftp_server.log 07:36:22.073812 ====> Client connect 07:36:22.073963 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.074238 < "USER anonymous" 07:36:22.074275 > "331 We are happy you popped in![CR][LF]" 07:36:22.074442 < "PASS ftp@example.com" 07:36:22.074472 > "230 Welcome you silly person[CR][LF]" 07:36:22.074628 < "PWD" 07:36:22.074657 > "257 "/" is current directory[CR][LF]" 07:36:22.074826 < "EPSV" 07:36:22.074853 ====> Passive DATA channel requested by client 07:36:22.074867 DATA sockfilt for passive data channel starting... 07:36:22.076609 DATA sockfilt for passive data channel started (pid 167690) 07:36:22.076948 DATA sockfilt for passive data channel listens on port 39029 07:36:22.077020 > "229 Entering Passive Mode (|||39029|)[LF]" 07:36:22.077038 Client has been notified that DATA conn will be accepted on port 39029 07:36:22.077345 Client connects to port 39029 07:36:22.077373 ====> Client established passive DATA connection on port 39029 07:36:22.077456 < "TYPE I" 07:36:22.077488 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:22.077647 < "SIZE verifiedserver" 07:36:22.077679 > "213 17[CR][LF]" 07:36:22.077834 < "RETR verifiedserver" 07:36:22.077870 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:22.077958 =====> Closing passive DATA connection... 07:36:22.077975 Server disconnects passive DATA connection 07:36:22.078228 Server disconnected passive DATA connection 07:36:22.078256 DATA sockfilt for passive data channel quits (pid 167690) 07:36:22.078561 DATA sockfilt for passive data channel quit (pid 167690) 07:36:22.078587 =====> Closed passive DATA connection 07:36:22.078615 > "226 File transfer complete[CR][LF]" 07:36:22.120524 < "QUIT" 07:36:22.120577 > "221 bye bye baby[CR][LF]" 07:36:22.121085 MAIN sockfilt said DISC 07:36:22.121110 ====> Client disconnected 07:36:22.121183 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:21.919678 ====> Client connect 07:36:21.919960 Received DATA (on stdin) 07:36:21.919976 > 160 bytes data, server => client 07:36:21.919988 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:21.919999 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:21.920010 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:21.920079 < 16 bytes data, client => server 07:36:21.920094 'USER anonymous\r\n' 07:36:21.920260 Received DATA (on stdin) 07:36:21.920274 > 33 bytes data, server => client 07:36:21.920285 '331 We are happy you popped in!\r\n' 07:36:21.920336 < 22 bytes data, client => server 07:36:21.920348 'PASS ftp@example.com\r\n' 07:36:21.920455 Received DATA (on stdin) 07:36:21.920467 > 30 bytes data, server => client 07:36:21.920478 '230 Welcome you silly person\r\n' 07:36:21.920526 < 5 bytes data, client => server 07:36:21.920539 'PWD\r\n' 07:36:21.920639 Received DATA (on stdin) 07:36:21.920651 > 30 bytes data, server => client 07:36:21.920662 '257 "/" is current directory\r\n' 07:36:21.920721 < 6 bytes data, client => server 07:36:21.920735 'EPSV\r\n' 07:36:21.923030 Received DATA (on stdin) 07:36:21.923049 > 38 bytes data, server => client 07:36:21.923061 '229 Entering Passive Mode (|||39029|)\n' 07:36:21.923241 < 8 bytes data, client => server 07:36:21.923258 'TYPE I\r\n' 07:36:21.923471 Received DATA (on stdin) 07:36:21.923484 > 33 bytes data, server => client 07:36:21.923495 '200 I modify TYPE as you wanted\r\n' 07:36:21.923545 < 21 bytes data, client => server 07:36:21.923557 'SIZE verifiedserver\r\n' 07:36:21.923663 Received DATA (on stdin) 07:36:21.923675 > 8 bytes data, server => client 07:36:21.923685 '213 17\r\n' 07:36:21.923733 < 21 bytes data, client => server 07:36:21.923746 'RETR verifiedserver\r\n' 07:36:21.923960 Received DATA (on stdin) 07:36:21.923972 > 29 bytes data, server => client 07:36:21.923983 '150 Binary junk (17 bytes).\r\n' 07:36:21.924599 Received DATA (on stdin) 07:36:21.924613 > 28 bytes data, server => client 07:36:21.924624 '226 File transfer complete\r\n' 07:36:21.966325 < 6 bytes data, client => server 07:36:21.966349 'QUIT\r\n' 07:36:21.966562 Received DATA (on stdin) 07:36:21.966574 > 18 bytes data, server => client 07:36:21.966585 '221 bye bye baby\r\n' 07:36:21.967017 ====> Client disconnect 07:36:21.967167 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:22.922310 Running IPv4 version 07:36:22.922361 Listening on port 39029 07:36:22.922399 Wrote pid 167690 to log/16/server/ftp_sockdata.pid 07:36:22.922528 Received PING (on stdin) 07:36:22.922768 Received PORT (on stdin) 07:36:22.923281 ====> Client connect 07:36:22.924038 Received DATA (on stdin) 07:36:22.924054 > 17 bytes data, server => client 07:36:22.924065 'WE ROOLZ: 79929\r\n' 07:36:22.924092 Received DISC (on stdin) 07:36:22.924104 ====> Client forcibly disconnected 07:36:22.924246 Received QUIT (on stdin) 07:36:22.924259 quits 07:36:22.924338 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd Testnum 2083 === End of file server.cmd === Start of file stderr2083 URL: ftp://127.0.0.1:40585/test-2083/ === End of file stderr2083 === Start of file valgrind2083 ==167822== ==167822== Process terminating with default action of signal 4 (SIGILL) ==167822== Illegal opcode at address 0x51C2DB3 ==167822== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==167822== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==167822== by 0x51C2DB3: Curl_open (url.c:541) ==167822== by 0x513D46F: curl_easy_init (easy.c:372) ==167822== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167822== by 0x4003443: main (first.c:167) ==167822== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x533CFA5: __tsearch (tsearch.c:337) ==167822== by 0x533CFA5: tsearch (tsearch.c:290) ==167822== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167822== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167822== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167822== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167822== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167822== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== ==167822== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x533CFA5: __tsearch (tsearch.c:337) ==167822== by 0x533CFA5: tsearch (tsearch.c:290) ==167822== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167822== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167822== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== ==167822== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167822== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167822== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167822== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167822== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167822== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== ==167822== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167822== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167822== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== ==167822== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==167822== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==167822== by 0x51C2D03: Curl_open (url.c:520) ==167822== by 0x513D46F: curl_easy_init (easy.c:372) ==167822== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167822== by 0x4003443: main (first.c:167) ==167822== ==167822== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x533CFA5: __tsearch (tsearch.c:337) ==167822== by 0x533CFA5: tsearch (tsearch.c:290) ==167822== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167822== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167822== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167822== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167822== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167822== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== ==167822== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==167822== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167822== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167822== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167822== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167822== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167822== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167822== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167822== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167822== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167822== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167822== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167822== by 0x525A142: setlocale (setlocale.c:337) ==167822== by 0x400336E: main (first.c:123) ==167822== === End of file valgrind2083 test 2084...[Pre-request callback for HTTP with callback terminating transfer] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2084 ./libtest/libtests lib2082 127.0.0.1:45825/2084#err > log/18/stdout2084 2> log/18/stderr2084 2084: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:22.940446750 +0000 +++ log/18/check-generated 2025-07-18 07:36:22.940446750 +0000 @@ -1,5 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 45825[LF] -Local port = stripped[LF] -Returning = 1[LF] == Contents of files in the log/18/ dir after test 2084 === Start of file check-expected Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 45825[LF] Local port = stripped[LF] Returning = 1[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind2084 ./libtest/libtests lib2082 127.0.0.1:45825/2084#err > log/18/stdout2084 2> log/18/stderr2084 === End of file commands.log === Start of file http_server.log 07:36:21.939632 ====> Client connect 07:36:21.939670 accept_connection 3 returned 4 07:36:21.939687 accept_connection 3 returned 0 07:36:21.939703 Read 93 bytes 07:36:21.939714 Process 93 bytes request 07:36:21.939728 Got request: GET /verifiedserver HTTP/1.1 07:36:21.939738 Are-we-friendly question received 07:36:21.939768 Wrote request (93 bytes) input to log/18/server.input 07:36:21.939786 Identifying ourselves as friends 07:36:21.939843 Response sent (56 bytes) and written to log/18/server.response 07:36:21.939854 special request received, no persistency 07:36:21.939863 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 2084 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr2084 URL: 127.0.0.1:45825/2084#err === End of file stderr2084 === Start of file valgrind2084 ==167741== ==167741== Process terminating with default action of signal 4 (SIGILL) ==167741== Illegal opcode at address 0x51C2DB3 ==167741== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==167741== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==167741== by 0x51C2DB3: Curl_open (url.c:541) ==167741== by 0x513D46F: curl_easy_init (easy.c:372) ==167741== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167741== by 0x4003443: main (first.c:167) ==167741== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x533CFA5: __tsearch (tsearch.c:337) ==167741== by 0x533CFA5: tsearch (tsearch.c:290) ==167741== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167741== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167741== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167741== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167741== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167741== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== ==167741== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x533CFA5: __tsearch (tsearch.c:337) ==167741== by 0x533CFA5: tsearch (tsearch.c:290) ==167741== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167741== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167741== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== ==167741== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167741== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167741== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167741== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167741== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167741== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== ==167741== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167741== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167741== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== ==167741== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==167741== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==167741== by 0x51C2D03: Curl_open (url.c:520) ==167741== by 0x513D46F: curl_easy_init (easy.c:372) ==167741== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167741== by 0x4003443: main (first.c:167) ==167741== ==167741== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x533CFA5: __tsearch (tsearch.c:337) ==167741== by 0x533CFA5: tsearch (tsearch.c:290) ==167741== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167741== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167741== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167741== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167741== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167741== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== ==167741== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==167741== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167741== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167741== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167741== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167741== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167741== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167741== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167741== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167741== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167741== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167741== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167741== by 0x525A142: setlocale (setlocale.c:337) ==167741== by 0x400336E: main (first.c:123) ==167741== === End of file valgrind2084 test 2085...[Pre-request callback for HTTP with location following] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2085 ./libtest/libtests lib2082 127.0.0.1:41087/2085#redir > log/21/stdout2085 2> log/21/stderr2085 2085: stdout FAILED: --- log/21/check-expected 2025-07-18 07:36:22.947113416 +0000 +++ log/21/check-generated 2025-07-18 07:36:22.947113416 +0000 @@ -1,10 +0,0 @@ -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 41087[LF] -Local port = stripped[LF] -Returning = 0[LF] -Connected to 127.0.0.1[LF] -Connected from 127.0.0.1[LF] -Remote port = 41087[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/21/ dir after test 2085 === Start of file check-expected Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 41087[LF] Local port = stripped[LF] Returning = 0[LF] Connected to 127.0.0.1[LF] Connected from 127.0.0.1[LF] Remote port = 41087[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind2085 ./libtest/libtests lib2082 127.0.0.1:41087/2085#redir > log/21/stdout2085 2> log/21/stderr2085 === End of file commands.log === Start of file http_server.log 07:36:21.942090 ====> Client connect 07:36:21.942128 accept_connection 3 returned 4 07:36:21.942145 accept_connection 3 returned 0 07:36:21.942160 Read 93 bytes 07:36:21.942170 Process 93 bytes request 07:36:21.942184 Got request: GET /verifiedserver HTTP/1.1 07:36:21.942195 Are-we-friendly question received 07:36:21.942223 Wrote request (93 bytes) input to log/21/server.input 07:36:21.942240 Identifying ourselves as friends 07:36:21.942298 Response sent (56 bytes) and written to log/21/server.response 07:36:21.942309 special request received, no persistency 07:36:21.942318 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 2085 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file stderr2085 URL: 127.0.0.1:41087/2085#redir === End of file stderr2085 === Start of file valgrind2085 ==167740== ==167740== Process terminating with default action of signal 4 (SIGILL) ==167740== Illegal opcode at address 0x51C2DB3 ==167740== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==167740== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==167740== by 0x51C2DB3: Curl_open (url.c:541) ==167740== by 0x513D46F: curl_easy_init (easy.c:372) ==167740== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167740== by 0x4003443: main (first.c:167) ==167740== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x533CFA5: __tsearch (tsearch.c:337) ==167740== by 0x533CFA5: tsearch (tsearch.c:290) ==167740== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167740== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167740== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167740== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167740== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167740== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== ==167740== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x533CFA5: __tsearch (tsearch.c:337) ==167740== by 0x533CFA5: tsearch (tsearch.c:290) ==167740== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167740== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167740== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== ==167740== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167740== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167740== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167740== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167740== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167740== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== ==167740== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167740== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167740== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== ==167740== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==167740== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==167740== by 0x51C2D03: Curl_open (url.c:520) ==167740== by 0x513D46F: curl_easy_init (easy.c:372) ==167740== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==167740== by 0x4003443: main (first.c:167) ==167740== ==167740== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x533CFA5: __tsearch (tsearch.c:337) ==167740== by 0x533CFA5: tsearch (tsearch.c:290) ==167740== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167740== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167740== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167740== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167740== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167740== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3004 ../src/curl -q --output log/7/curl3004.out --include --trace-ascii log/7/trace3004 --trace-config all --trace-time smtp://127.0.0.1:41121/3004 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/7/stdout3004 2> log/7/stderr3004 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2308 ./libtest/libtests lib2308 http://127.0.0.1:34881/2308 > log/15/stdout2308 2> log/15/stderr2308 pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== ==167740== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==167740== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167740== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167740== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167740== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167740== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167740== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167740== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167740== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167740== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167740== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167740== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167740== by 0x525A142: setlocale (setlocale.c:337) ==167740== by 0x400336E: main (first.c:123) ==167740== === End of file valgrind2085 test 3004...[SMTP multiple and invalid (middle) --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3004 ../src/curl -q --output log/7/curl3004.out --include --trace-ascii log/7/trace3004 --trace-config all --trace-time smtp://127.0.0.1:41121/3004 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/7/stdout3004 2> log/7/stderr3004 3004: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 3004 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3004 ../src/curl -q --output log/7/curl3004.out --include --trace-ascii log/7/trace3004 --trace-config all --trace-time smtp://127.0.0.1:41121/3004 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/7/stdout3004 2> log/7/stderr3004 === End of file commands.log === Start of file server.cmd Testnum 3004 === End of file server.cmd === Start of file smtp_server.log 07:36:22.593659 ====> Client connect 07:36:22.593828 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.594145 < "EHLO verifiedserver" 07:36:22.594183 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.594341 < "HELP" 07:36:22.594370 > "214 WE ROOLZ: 121044[CR][LF]" 07:36:22.594383 return proof we are we 07:36:22.594864 < "QUIT" 07:36:22.594896 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.595002 MAIN sockfilt said DISC 07:36:22.595023 ====> Client disconnected 07:36:22.595088 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.439535 ====> Client connect 07:36:22.439832 Received DATA (on stdin) 07:36:22.439870 > 160 bytes data, server => client 07:36:22.439883 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.439893 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.439903 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.440010 < 21 bytes data, client => server 07:36:22.440025 'EHLO verifiedserver\r\n' 07:36:22.440169 Received DATA (on stdin) 07:36:22.440185 > 53 bytes data, server => client 07:36:22.440197 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.440260 < 6 bytes data, client => server 07:36:22.440279 'HELP\r\n' 07:36:22.440365 Received DATA (on stdin) 07:36:22.440379 > 22 bytes data, server => client 07:36:22.440389 '214 WE ROOLZ: 121044\r\n' 07:36:22.440759 < 6 bytes data, client => server 07:36:22.440771 'QUIT\r\n' 07:36:22.440878 Received DATA (on stdin) 07:36:22.440890 > 35 bytes data, server => client 07:36:22.440901 '221 curl ESMTP server signing off\r\n' 07:36:22.440943 ====> Client disconnect 07:36:22.441067 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3004 From: different To: another body === End of file stdin-for-3004 === Start of file valgrind3004 ==168436== ==168436== Process terminating with default action of signal 4 (SIGILL) ==168436== Illegal opcode at address 0x4003082 ==168436== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168436== by 0x4003082: main (tool_main.c:234) === End of file valgrind3004 test 2308...[verify return code when write callback returns error] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2308 ./libtest/libtests lib2308 http://127.0.0.1:34881/2308 > log/15/stdout2308 2> log/15/stderr2308 2308: stdout FAILED: --- log/15/check-expected 2025-07-18 07:36:23.070446753 +0000 +++ log/15/check-generated 2025-07-18 07:36:23.070446753 +0000 @@ -1 +0,0 @@ -Returned 23, should be 23.[CR][LF] == Contents of files in the log/15/ dir after test 2308 === Start of file check-expected Returned 23, should be 23.[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind2308 ./libtest/libtests lib2308 http://127.0.0.1:34881/2308 > log/15/stdout2308 2> log/15/stderr2308 === End of file commands.log === Start of file http_server.log 07:36:22.107453 ====> Client connect 07:36:22.107486 accept_connection 3 returned 4 07:36:22.107503 accept_connection 3 returned 0 07:36:22.107514 Read 93 bytes 07:36:22.107522 Process 93 bytes request 07:36:22.107534 Got request: GET /verifiedserver HTTP/1.1 07:36:22.107541 Are-we-friendly question received 07:36:22.107563 Wrote request (93 bytes) input to log/15/server.input 07:36:22.107576 Identifying ourselves as friends 07:36:22.107622 Response sent (57 bytes) and written to log/15/server.response 07:36:22.107629 special request received, no persistency 07:36:22.107636 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34881... * Connected to 127.0.0.1 (127.0.0.1) port 34881 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34881 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 157411 === End of file http_verify.out === Start of file server.cmd Testnum 2308 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 157411 === End of file server.response === Start of file stderr2308 URL: http://127.0.0.1:34881/2308 === End of file stderr2308 === Start of file valgrind2308 ==168076== ==168076== Process terminating with default action of signal 4 (SIGILL) ==168076== Illegal opcode at address 0x51C2DB3 ==168076== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==168076== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==168076== by 0x51C2DB3: Curl_open (url.c:541) ==168076== by 0x513D46F: curl_easy_init (easy.c:372) ==168076== by 0x403A70A: UnknownInlinedFun (lib2308.c:41) ==168076== by 0x403A70A: test_lib2308.lto_priv.0 (lib2308.c:35) ==168076== by 0x4003443: main (first.c:167) ==168076== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x533CFA5: __tsearch (tsearch.c:337) ==168076== by 0x533CFA5: tsearch (tsearch.c:290) ==168076== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168076== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168076== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168076== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168076== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168076== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== ==168076== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x533CFA5: __tsearch (tsearch.c:337) ==168076== by 0x533CFA5: tsearch (tsearch.c:290) ==168076== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168076== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168076== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== ==168076== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168076== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168076== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168076== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168076== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168076== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== ==168076== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168076== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168076== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== ==168076== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==168076== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==168076== by 0x51C2D03: Curl_open (url.c:520) ==168076== by 0x513D46F: curl_easy_init (easy.c:372) ==168076== by 0x403A70A: UnknownInlinedFun (lib2308.c:41) ==168076== by 0x403A70A: test_lib2308.lto_priv.0 (lib2308.c:35) ==168076== by 0x4003443: main (first.c:167) ==168076== ==168076== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x533CFA5: __tsearch (tsearch.c:337) ==168076== by 0x533CFA5: tsearch (tsearch.c:290) ==168076== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168076== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168076== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168076== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168076== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168076== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== ==168076== 18,800 byteCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3003 ../src/curl -q --output log/2/curl3003.out --include --trace-ascii log/2/trace3003 --trace-config all --trace-time smtp://127.0.0.1:34307/3003 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt invalid.five --mail-from sender@example.com -T - log/2/stdout3003 2> log/2/stderr3003 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2306 ./libtest/libtests lib2306 http://127.0.0.1:42345/2306 http://127.0.0.1:42345/23060002 > log/3/stdout2306 2> log/3/stderr2306 s in 486 blocks are possibly lost in loss record 653 of 655 ==168076== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168076== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168076== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168076== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168076== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168076== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168076== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168076== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168076== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168076== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168076== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168076== by 0x525A142: setlocale (setlocale.c:337) ==168076== by 0x400336E: main (first.c:123) ==168076== === End of file valgrind2308 test 3003...[SMTP multiple and invalid (last) --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3003 ../src/curl -q --output log/2/curl3003.out --include --trace-ascii log/2/trace3003 --trace-config all --trace-time smtp://127.0.0.1:34307/3003 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt invalid.five --mail-from sender@example.com -T - log/2/stdout3003 2> log/2/stderr3003 3003: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 3003 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3003 ../src/curl -q --output log/2/curl3003.out --include --trace-ascii log/2/trace3003 --trace-config all --trace-time smtp://127.0.0.1:34307/3003 --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt invalid.five --mail-from sender@example.com -T - log/2/stdout3003 2> log/2/stderr3003 === End of file commands.log === Start of file server.cmd Testnum 3003 === End of file server.cmd === Start of file smtp_server.log 07:36:22.594921 ====> Client connect 07:36:22.595048 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.595315 < "EHLO verifiedserver" 07:36:22.595365 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.595531 < "HELP" 07:36:22.595560 > "214 WE ROOLZ: 120696[CR][LF]" 07:36:22.595572 return proof we are we 07:36:22.595775 < "QUIT" 07:36:22.595797 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.596442 MAIN sockfilt said DISC 07:36:22.596468 ====> Client disconnected 07:36:22.596532 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.440805 ====> Client connect 07:36:22.441041 Received DATA (on stdin) 07:36:22.441058 > 160 bytes data, server => client 07:36:22.441070 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.441083 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.441094 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.441166 < 21 bytes data, client => server 07:36:22.441183 'EHLO verifiedserver\r\n' 07:36:22.441355 Received DATA (on stdin) 07:36:22.441372 > 53 bytes data, server => client 07:36:22.441383 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.441452 < 6 bytes data, client => server 07:36:22.441468 'HELP\r\n' 07:36:22.441563 Received DATA (on stdin) 07:36:22.441577 > 22 bytes data, server => client 07:36:22.441586 '214 WE ROOLZ: 120696\r\n' 07:36:22.441677 < 6 bytes data, client => server 07:36:22.441691 'QUIT\r\n' 07:36:22.441776 Received DATA (on stdin) 07:36:22.441786 > 35 bytes data, server => client 07:36:22.441796 '221 curl ESMTP server signing off\r\n' 07:36:22.442376 ====> Client disconnect 07:36:22.442516 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3003 From: different To: another body === End of file stdin-for-3003 === Start of file valgrind3003 ==168437== ==168437== Process terminating with default action of signal 4 (SIGILL) ==168437== Illegal opcode at address 0x4003082 ==168437== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168437== by 0x4003082: main (tool_main.c:234) === End of file valgrind3003 test 2306...[HTTP GET reused handle with first header folded] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2306 ./libtest/libtests lib2306 http://127.0.0.1:42345/2306 http://127.0.0.1:42345/23060002 > log/3/stdout2306 2> log/3/stderr2306 2306: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 2306 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind2306 ./libtest/libtests lib2306 http://127.0.0.1:42345/2306 http://127.0.0.1:42345/23060002 > log/3/stdout2306 2> log/3/stderr2306 === End of file commands.log === Start of file http_server.log 07:36:22.084797 ====> Client connect 07:36:22.084834 accept_connection 3 returned 4 07:36:22.084851 accept_connection 3 returned 0 07:36:22.084865 Read 93 bytes 07:36:22.084875 Process 93 bytes request 07:36:22.084889 Got request: GET /verifiedserver HTTP/1.1 07:36:22.084899 Are-we-friendly question received 07:36:22.084927 Wrote request (93 bytes) input to log/3/server.input 07:36:22.084944 Identifying ourselves as friends 07:36:22.085006 Response sent (56 bytes) and written to log/3/server.response 07:36:22.085018 special request received, no persistency 07:36:22.085027 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 2306 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file stderr2306 URL: http://127.0.0.1:42345/2306 === End of file stderr2306 === Start of file valgrind2306 ==167988== ==167988== Process terminating with default action of signal 4 (SIGILL) ==167988== Illegal opcode at address 0x51C2DB3 ==167988== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==167988== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==167988== by 0x51C2DB3: Curl_open (url.c:541) ==167988== by 0x513D46F: curl_easy_init (easy.c:372) ==167988== by 0x403A1A8: UnknownInlinedFun (lib2306.c:34) ==167988== by 0x403A1A8: test_lib2306.lto_priv.0 (lib2306.c:26) ==167988== by 0x4003443: main (first.c:167) ==167988== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x533CFA5: __tsearch (tsearch.c:337CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2309 ./libtest/libtests lib2309 http://github.com log/20/netrc2309 http://127.0.0.1:37169/ > log/20/stdout2309 2> log/20/stderr2309 ) ==167988== by 0x533CFA5: tsearch (tsearch.c:290) ==167988== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167988== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167988== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167988== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167988== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167988== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== ==167988== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x533CFA5: __tsearch (tsearch.c:337) ==167988== by 0x533CFA5: tsearch (tsearch.c:290) ==167988== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167988== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167988== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== ==167988== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167988== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167988== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167988== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167988== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==167988== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== ==167988== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167988== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==167988== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== ==167988== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==167988== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==167988== by 0x51C2D03: Curl_open (url.c:520) ==167988== by 0x513D46F: curl_easy_init (easy.c:372) ==167988== by 0x403A1A8: UnknownInlinedFun (lib2306.c:34) ==167988== by 0x403A1A8: test_lib2306.lto_priv.0 (lib2306.c:26) ==167988== by 0x4003443: main (first.c:167) ==167988== ==167988== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x533CFA5: __tsearch (tsearch.c:337) ==167988== by 0x533CFA5: tsearch (tsearch.c:290) ==167988== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==167988== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167988== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167988== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167988== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167988== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== ==167988== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==167988== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==167988== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==167988== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==167988== by 0x524F3F0: add_alias (gconv_conf.c:178) ==167988== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==167988== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==167988== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==167988== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==167988== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==167988== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==167988== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==167988== by 0x525A142: setlocale (setlocale.c:337) ==167988== by 0x400336E: main (first.c:123) ==167988== === End of file valgrind2306 test 2309...[HTTP with .netrc using duped easy handle] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2309 ./libtest/libtests lib2309 http://github.com log/20/netrc2309 http://127.0.0.1:37169/ > log/20/stdout2309 2> log/20/stderr2309 2309: protocol FAILED! There was no content at all in the file log/20/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/20/ dir after test 2309 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind2309 ./libtest/libtests lib2309 http://github.com log/20/netrc2309 http://127.0.0.1:37169/ > log/20/stdout2309 2> log/20/stderr2309 === End of file commands.log === Start of file http_server.log 07:36:22.111327 ====> Client connect 07:36:22.111364 accept_connection 3 returned 4 07:36:22.111379 accept_connection 3 returned 0 07:36:22.111630 Read 93 bytes 07:36:22.111653 Process 93 bytes request 07:36:22.111665 Got request: GET /verifiedserver HTTP/1.1 07:36:22.111674 Are-we-friendly question received 07:36:22.111710 Wrote request (93 bytes) input to log/20/server.input 07:36:22.111726 Identifying ourselves as friends 07:36:22.111790 Response sent (56 bytes) and written to log/20/server.response 07:36:22.111801 special request received, no persistency 07:36:22.111809 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file netrc2309 machine github.com login daniel password $y$j9T$WUVjiVvDbRAWafDLs6cab1$01NX.oaZKf5lw8MR2Nk9Yaxv4CqbE0IaDF.GpGxPul1 === End of file netrc2309 === Start of file server.cmd Testnum 2309 ==CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3002 ../src/curl -q --output log/13/curl3002.out --include --trace-ascii log/13/trace3002 --trace-config all --trace-time smtp://127.0.0.1:38115/3002 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/13/stdout3002 2> log/13/stderr3002 = End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file stderr2309 URL: http://github.com === End of file stderr2309 === Start of file valgrind2309 ==168101== ==168101== Process terminating with default action of signal 4 (SIGILL) ==168101== Illegal opcode at address 0x51C2DB3 ==168101== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==168101== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==168101== by 0x51C2DB3: Curl_open (url.c:541) ==168101== by 0x513D46F: curl_easy_init (easy.c:372) ==168101== by 0x403A7EF: UnknownInlinedFun (lib2309.c:42) ==168101== by 0x403A7EF: test_lib2309.lto_priv.0 (lib2309.c:35) ==168101== by 0x4003443: main (first.c:167) ==168101== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x533CFA5: __tsearch (tsearch.c:337) ==168101== by 0x533CFA5: tsearch (tsearch.c:290) ==168101== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168101== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168101== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168101== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168101== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168101== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== ==168101== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x533CFA5: __tsearch (tsearch.c:337) ==168101== by 0x533CFA5: tsearch (tsearch.c:290) ==168101== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168101== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168101== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== ==168101== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168101== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168101== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168101== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168101== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168101== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== ==168101== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168101== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168101== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== ==168101== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==168101== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==168101== by 0x51C2D03: Curl_open (url.c:520) ==168101== by 0x513D46F: curl_easy_init (easy.c:372) ==168101== by 0x403A7EF: UnknownInlinedFun (lib2309.c:42) ==168101== by 0x403A7EF: test_lib2309.lto_priv.0 (lib2309.c:35) ==168101== by 0x4003443: main (first.c:167) ==168101== ==168101== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x533CFA5: __tsearch (tsearch.c:337) ==168101== by 0x533CFA5: tsearch (tsearch.c:290) ==168101== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168101== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168101== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168101== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168101== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168101== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== ==168101== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==168101== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168101== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168101== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168101== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168101== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168101== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168101== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168101== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168101== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168101== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168101== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168101== by 0x525A142: setlocale (setlocale.c:337) ==168101== by 0x400336E: main (first.c:123) ==168101== === End of file valgrind2309 test 3002...[SMTP multiple and invalid (first) --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3002 ../src/curl -q --output log/13/curl3002.out --include --trace-ascii log/13/trace3002 --trace-config all --trace-time smtp://127.0.0.1:38115/3002 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/13/stdout3002 2> log/13/stderr3002 3002: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 3002 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3002 ../src/curl -q --output log/13/curl3002.out --include --trace-ascii log/13/trace3002 --trace-config all --trace-time smtp://127.0.0.1:38115/3002 --mail-rcpt-allowfails --mail-rcpt invalid.oneCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2604 ./unit/units unit2604 - > log/4/stdout2604 2> log/4/stderr2604 --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - log/13/stdout3002 2> log/13/stderr3002 === End of file commands.log === Start of file server.cmd Testnum 3002 === End of file server.cmd === Start of file smtp_server.log 07:36:22.594230 ====> Client connect 07:36:22.594502 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.594824 < "EHLO verifiedserver" 07:36:22.594875 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.595072 < "HELP" 07:36:22.595104 > "214 WE ROOLZ: 108218[CR][LF]" 07:36:22.595122 return proof we are we 07:36:22.595342 < "QUIT" 07:36:22.595381 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.595544 MAIN sockfilt said DISC 07:36:22.595571 ====> Client disconnected 07:36:22.595640 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.440115 ====> Client connect 07:36:22.440505 Received DATA (on stdin) 07:36:22.440525 > 160 bytes data, server => client 07:36:22.440537 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.440547 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.440557 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.440637 < 21 bytes data, client => server 07:36:22.440657 'EHLO verifiedserver\r\n' 07:36:22.440864 Received DATA (on stdin) 07:36:22.440876 > 53 bytes data, server => client 07:36:22.440886 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.440947 < 6 bytes data, client => server 07:36:22.440965 'HELP\r\n' 07:36:22.441104 Received DATA (on stdin) 07:36:22.441117 > 22 bytes data, server => client 07:36:22.441128 '214 WE ROOLZ: 108218\r\n' 07:36:22.441209 < 6 bytes data, client => server 07:36:22.441222 'QUIT\r\n' 07:36:22.441369 Received DATA (on stdin) 07:36:22.441385 > 35 bytes data, server => client 07:36:22.441396 '221 curl ESMTP server signing off\r\n' 07:36:22.441485 ====> Client disconnect 07:36:22.441574 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3002 From: different To: another body === End of file stdin-for-3002 === Start of file valgrind3002 ==168439== ==168439== Process terminating with default action of signal 4 (SIGILL) ==168439== Illegal opcode at address 0x4003082 ==168439== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168439== by 0x4003082: main (tool_main.c:234) === End of file valgrind3002 * starts no server test 2604...[Curl_get_pathname unit test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2604 ./unit/units unit2604 - > log/4/stdout2604 2> log/4/stderr2604 units returned 132, when expecting 0 2604: exit FAILED == Contents of files in the log/4/ dir after test 2604 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind2604 ./unit/units unit2604 - > log/4/stdout2604 2> log/4/stderr2604 === End of file commands.log === Start of file server.cmd Testnum 2604 === End of file server.cmd === Start of file stderr2604 URL: - === End of file stderr2604 === Start of file valgrind2604 ==168335== ==168335== Process terminating with default action of signal 4 (SIGILL) ==168335== Illegal opcode at address 0x4020980 ==168335== at 0x4020980: test_unit2604.lto_priv.0 (unit2604.c:53) ==168335== by 0x400A15E: main (first.c:167) ==168335== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x532FFA5: __tsearch (tsearch.c:337) ==168335== by 0x532FFA5: tsearch (tsearch.c:290) ==168335== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168335== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168335== by 0x52423F0: add_alias (gconv_conf.c:178) ==168335== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168335== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168335== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== ==168335== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x532FFA5: __tsearch (tsearch.c:337) ==168335== by 0x532FFA5: tsearch (tsearch.c:290) ==168335== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168335== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168335== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== ==168335== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168335== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168335== by 0x52423F0: add_alias (gconv_conf.c:178) ==168335== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168335== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168335== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== ==168335== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168335== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168335== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== ==168335== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x532FFA5: __tsearch (tsearch.c:337) ==168335== by 0x532FFA5: tsearch (tsearch.c:290) ==168335== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168335== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168335== by 0x52423F0: add_alias (gconv_conf.c:178) ==168335== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168335== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168335== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_onceCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2603 ./unit/units unit2603 - > log/5/stdout2603 2> log/5/stderr2603 .c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== ==168335== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==168335== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168335== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168335== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168335== by 0x52423F0: add_alias (gconv_conf.c:178) ==168335== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168335== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168335== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168335== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168335== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168335== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168335== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168335== by 0x524D142: setlocale (setlocale.c:337) ==168335== by 0x400A0CB: main (first.c:123) ==168335== === End of file valgrind2604 * starts no server test 2603...[http1 parser unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2603 ./unit/units unit2603 - > log/5/stdout2603 2> log/5/stderr2603 units returned 132, when expecting 0 2603: exit FAILED == Contents of files in the log/5/ dir after test 2603 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind2603 ./unit/units unit2603 - > log/5/stdout2603 2> log/5/stderr2603 === End of file commands.log === Start of file server.cmd Testnum 2603 === End of file server.cmd === Start of file stderr2603 URL: - === End of file stderr2603 === Start of file valgrind2603 ==168322== ==168322== Process terminating with default action of signal 4 (SIGILL) ==168322== Illegal opcode at address 0x40201D3 ==168322== at 0x40201D3: UnknownInlinedFun (string_fortified.h:59) ==168322== by 0x40201D3: UnknownInlinedFun (http1.c:45) ==168322== by 0x40201D3: parse_success (unit2603.c:70) ==168322== by 0x4020833: test_unit2603.lto_priv.0 (unit2603.c:179) ==168322== by 0x400A15E: main (first.c:167) ==168322== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x532FFA5: __tsearch (tsearch.c:337) ==168322== by 0x532FFA5: tsearch (tsearch.c:290) ==168322== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168322== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168322== by 0x52423F0: add_alias (gconv_conf.c:178) ==168322== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168322== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168322== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (first.c:123) ==168322== ==168322== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x532FFA5: __tsearch (tsearch.c:337) ==168322== by 0x532FFA5: tsearch (tsearch.c:290) ==168322== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168322== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168322== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (first.c:123) ==168322== ==168322== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168322== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168322== by 0x52423F0: add_alias (gconv_conf.c:178) ==168322== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168322== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168322== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (first.c:123) ==168322== ==168322== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168322== by 0x524274A: add_alias2 (gconv_conf.c:105) ==168322== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (first.c:123) ==168322== ==168322== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x532FFA5: __tsearch (tsearch.c:337) ==168322== by 0x532FFA5: tsearch (tsearch.c:290) ==168322== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==168322== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168322== by 0x52423F0: add_alias (gconv_conf.c:178) ==168322== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168322== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168322== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (first.c:123) ==168322== ==168322== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==168322== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==168322== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==168322== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==168322== by 0x52423F0: add_alias (gconv_conf.c:178) ==168322== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168322== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168322== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==168322== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168322== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168322== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==168322== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==168322== by 0x524D142: setlocale (setlocale.c:337) ==168322== by 0x400A0CB: main (firCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3005 ../src/curl -q --output log/12/curl3005.out --include --trace-ascii log/12/trace3005 --trace-config all --trace-time smtp://127.0.0.1:41731/3005 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/12/stdout3005 2> log/12/stderr3005 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3007 ../src/curl -q --output log/11/curl3007.out --include --trace-ascii log/11/trace3007 --trace-config all --trace-time smtp://127.0.0.1:44025/3007 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - log/11/stdout3007 2> log/11/stderr3007 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind3011 ../src/curl -q --trace-ascii log/16/trace3011 --trace-config all --trace-time http://127.0.0.1:46739/this/is/the/3011 -O --output-dir /startdir/src/build-curl/tests/log/16/tmp --create-dirs > log/16/stdout3011 2> log/16/stderr3011 st.c:123) ==168322== === End of file valgrind2603 test 3005...[SMTP multiple invalid (all but one) --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3005 ../src/curl -q --output log/12/curl3005.out --include --trace-ascii log/12/trace3005 --trace-config all --trace-time smtp://127.0.0.1:41731/3005 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/12/stdout3005 2> log/12/stderr3005 3005: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 3005 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3005 ../src/curl -q --output log/12/curl3005.out --include --trace-ascii log/12/trace3005 --trace-config all --trace-time smtp://127.0.0.1:41731/3005 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/12/stdout3005 2> log/12/stderr3005 === End of file commands.log === Start of file server.cmd Testnum 3005 === End of file server.cmd === Start of file smtp_server.log 07:36:22.742995 ====> Client connect 07:36:22.743139 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.743384 < "EHLO verifiedserver" 07:36:22.743418 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.743534 < "HELP" 07:36:22.743556 > "214 WE ROOLZ: 121049[CR][LF]" 07:36:22.743566 return proof we are we 07:36:22.743717 < "QUIT" 07:36:22.743738 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.744427 MAIN sockfilt said DISC 07:36:22.744447 ====> Client disconnected 07:36:22.744499 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.588866 ====> Client connect 07:36:22.589127 Received DATA (on stdin) 07:36:22.589140 > 160 bytes data, server => client 07:36:22.589151 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.589161 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.589171 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.589233 < 21 bytes data, client => server 07:36:22.589245 'EHLO verifiedserver\r\n' 07:36:22.589398 Received DATA (on stdin) 07:36:22.589407 > 53 bytes data, server => client 07:36:22.589415 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.589458 < 6 bytes data, client => server 07:36:22.589470 'HELP\r\n' 07:36:22.589542 Received DATA (on stdin) 07:36:22.589550 > 22 bytes data, server => client 07:36:22.589558 '214 WE ROOLZ: 121049\r\n' 07:36:22.589625 < 6 bytes data, client => server 07:36:22.589636 'QUIT\r\n' 07:36:22.589714 Received DATA (on stdin) 07:36:22.589723 > 35 bytes data, server => client 07:36:22.589731 '221 curl ESMTP server signing off\r\n' 07:36:22.590367 ====> Client disconnect 07:36:22.591391 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3005 From: different To: another body === End of file stdin-for-3005 === Start of file valgrind3005 ==168631== ==168631== Process terminating with default action of signal 4 (SIGILL) ==168631== Illegal opcode at address 0x4003082 ==168631== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168631== by 0x4003082: main (tool_main.c:234) === End of file valgrind3005 test 3007...[SMTP with invalid --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3007 ../src/curl -q --output log/11/curl3007.out --include --trace-ascii log/11/trace3007 --trace-config all --trace-time smtp://127.0.0.1:44025/3007 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - log/11/stdout3007 2> log/11/stderr3007 3007: protocol FAILED! There was no content at all in the file log/11/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/11/ dir after test 3007 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3007 ../src/curl -q --output log/11/curl3007.out --include --trace-ascii log/11/trace3007 --trace-config all --trace-time smtp://127.0.0.1:44025/3007 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - log/11/stdout3007 2> log/11/stderr3007 === End of file commands.log === Start of file server.cmd Testnum 3007 === End of file server.cmd === Start of file smtp_server.log 07:36:22.940061 ====> Client connect 07:36:22.940197 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.940584 < "EHLO verifiedserver" 07:36:22.940621 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.940814 < "HELP" 07:36:22.940853 > "214 WE ROOLZ: 120674[CR][LF]" 07:36:22.940866 return proof we are we 07:36:22.941028 < "QUIT" 07:36:22.941055 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.941160 MAIN sockfilt said DISC 07:36:22.941190 ====> Client disconnected 07:36:22.941323 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.785916 ====> Client connect 07:36:22.786161 Received DATA (on stdin) 07:36:22.786186 > 160 bytes data, server => client 07:36:22.786210 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.786220 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.786234 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.786432 < 21 bytes data, client => server 07:36:22.786447 'EHLO verifiedserver\r\n' 07:36:22.786604 Received DATA (on stdin) 07:36:22.786616 > 53 bytes data, server => client 07:36:22.786627 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.786688 < 6 bytes data, client => server 07:36:22.786703 'HELP\r\n' 07:36:22.786819 Received DATA (on stdin) 07:36:22.786839 > 22 bytes data, server => client 07:36:22.786850 '214 WE ROOLZ: 120674\r\n' 07:36:22.786928 < 6 bytes data, client => server 07:36:22.786940 'QUIT\r\n' 07:36:22.787035 Received DATA (on stdin) 07:36:22.787045 > 35 bytes data, server => client 07:36:22.787055 '221 curl ESMTP server signing off\r\n' 07:36:22.787088 ====> Client disconnect 07:36:22.787169 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3007 From: different To: another body === End of file stdin-for-3007 === Start of file valgrind3007 ==168801== ==168801== Process terminating with default action of signal 4 (SIGILL) ==168801== Illegal opcode at address 0x4003082 ==168801== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168801== by 0x4003082: main (tool_main.c:234) === End of file valgrind3007 test 3011...[--output-dir with --create-dirs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind3011 ../src/curl -q --trace-ascii log/16/trace3011 --trace-config all --trace-time http://127.0.0.1:46739/this/is/the/3011 -O --output-dir /startdir/src/build-curCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3008 ../src/curl -q --trace-ascii log/22/trace3008 --trace-config all --trace-time http://127.0.0.1:46761/this/is/the/3008 -O --output-dir /startdir/src/build-curl/tests/log/22 > log/22/stdout3008 2> log/22/stderr3008 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3009 ../src/curl -q --trace-ascii log/21/trace3009 --trace-config all --trace-time http://127.0.0.1:41087/this/is/the/3009 -O --output-dir /startdir/src/build-curl/tests/not-there > log/21/stdout3009 2> log/21/stderr3009 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3006 ../src/curl -q --output log/10/curl3006.out --include --trace-ascii log/10/trace3006 --trace-config all --trace-time smtp://127.0.0.1:41595/3006 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt invalid.two --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/10/stdout3006 2> log/10/stderr3006 l/tests/log/16/tmp --create-dirs > log/16/stdout3011 2> log/16/stderr3011 3011: protocol FAILED! There was no content at all in the file log/16/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/16/ dir after test 3011 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind3011 ../src/curl -q --trace-ascii log/16/trace3011 --trace-config all --trace-time http://127.0.0.1:46739/this/is/the/3011 -O --output-dir /startdir/src/build-curl/tests/log/16/tmp --create-dirs > log/16/stdout3011 2> log/16/stderr3011 === End of file commands.log === Start of file http_server.log 07:36:22.822664 ====> Client connect 07:36:22.822694 accept_connection 3 returned 4 07:36:22.822708 accept_connection 3 returned 0 07:36:22.822720 Read 93 bytes 07:36:22.822729 Process 93 bytes request 07:36:22.822739 Got request: GET /verifiedserver HTTP/1.1 07:36:22.822748 Are-we-friendly question received 07:36:22.822771 Wrote request (93 bytes) input to log/16/server.input 07:36:22.822786 Identifying ourselves as friends 07:36:22.822833 Response sent (56 bytes) and written to log/16/server.response 07:36:22.822841 special request received, no persistency 07:36:22.822848 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46739... * Connected to 127.0.0.1 (127.0.0.1) port 46739 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46739 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73859 === End of file http_verify.out === Start of file server.cmd Testnum 3011 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73859 === End of file server.response === Start of file valgrind3011 ==168902== ==168902== Process terminating with default action of signal 4 (SIGILL) ==168902== Illegal opcode at address 0x4003082 ==168902== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168902== by 0x4003082: main (tool_main.c:234) === End of file valgrind3011 test 3008...[--output-dir] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3008 ../src/curl -q --trace-ascii log/22/trace3008 --trace-config all --trace-time http://127.0.0.1:46761/this/is/the/3008 -O --output-dir /startdir/src/build-curl/tests/log/22 > log/22/stdout3008 2> log/22/stderr3008 3008: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 3008 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3008 ../src/curl -q --trace-ascii log/22/trace3008 --trace-config all --trace-time http://127.0.0.1:46761/this/is/the/3008 -O --output-dir /startdir/src/build-curl/tests/log/22 > log/22/stdout3008 2> log/22/stderr3008 === End of file commands.log === Start of file http_server.log 07:36:22.804713 ====> Client connect 07:36:22.804747 accept_connection 3 returned 4 07:36:22.804763 accept_connection 3 returned 0 07:36:22.804778 Read 93 bytes 07:36:22.804788 Process 93 bytes request 07:36:22.804801 Got request: GET /verifiedserver HTTP/1.1 07:36:22.804810 Are-we-friendly question received 07:36:22.804843 Wrote request (93 bytes) input to log/22/server.input 07:36:22.804859 Identifying ourselves as friends 07:36:22.804911 Response sent (56 bytes) and written to log/22/server.response 07:36:22.804920 special request received, no persistency 07:36:22.804928 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46761... * Connected to 127.0.0.1 (127.0.0.1) port 46761 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46761 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73850 === End of file http_verify.out === Start of file server.cmd Testnum 3008 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73850 === End of file server.response === Start of file valgrind3008 ==168850== ==168850== Process terminating with default action of signal 4 (SIGILL) ==168850== Illegal opcode at address 0x4003082 ==168850== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168850== by 0x4003082: main (tool_main.c:234) === End of file valgrind3008 test 3009...[--output-dir a non-existing directory] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3009 ../src/curl -q --trace-ascii log/21/trace3009 --trace-config all --trace-time http://127.0.0.1:41087/this/is/the/3009 -O --output-dir /startdir/src/build-curl/tests/not-there > log/21/stdout3009 2> log/21/stderr3009 3009: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 3009 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3009 ../src/curl -q --trace-ascii log/21/trace3009 --trace-config all --trace-time http://127.0.0.1:41087/this/is/the/3009 -O --output-dir /startdir/src/build-curl/tests/not-there > log/21/stdout3009 2> log/21/stderr3009 === End of file commands.log === Start of file http_server.log 07:36:22.821510 ====> Client connect 07:36:22.821539 accept_connection 3 returned 4 07:36:22.821551 accept_connection 3 returned 0 07:36:22.821563 Read 93 bytes 07:36:22.821571 Process 93 bytes request 07:36:22.821581 Got request: GET /verifiedserver HTTP/1.1 07:36:22.821588 Are-we-friendly question received 07:36:22.821610 Wrote request (93 bytes) input to log/21/server.input 07:36:22.821623 Identifying ourselves as friends 07:36:22.821668 Response sent (56 bytes) and written to log/21/server.response 07:36:22.821676 special request received, no persistency 07:36:22.821683 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file server.cmd Testnum 3009 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind3009 ==168891== ==168891== Process terminating with default action of signal 4 (SIGILL) ==168891== Illegal opcode at address 0x4003082 ==168891== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168891== by 0x4003082: main (tool_main.c:234) === End of file valgrind3009 test 3006...[SMTP with multiple invalid (all) --mail-rcpt and --mail-rcpt-allowfails] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/srCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3015 ../src/curl -q --include --trace-ascii log/3/trace3015 --trace-config all --trace-time http://127.0.0.1:42345/3015 -w "%{num_headers}\n" -L -o/dev/null > log/3/stdout3015 2> log/3/stderr3015 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3016 ../src/curl -q --output log/20/curl3016.out --include --trace-ascii log/20/trace3016 --trace-config all --trace-time file:///startdir/src/build-curl/tests/ > log/20/stdout3016 2> log/20/stderr3016 c/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3006 ../src/curl -q --output log/10/curl3006.out --include --trace-ascii log/10/trace3006 --trace-config all --trace-time smtp://127.0.0.1:41595/3006 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt invalid.two --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/10/stdout3006 2> log/10/stderr3006 3006: protocol FAILED! There was no content at all in the file log/10/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/10/ dir after test 3006 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3006 ../src/curl -q --output log/10/curl3006.out --include --trace-ascii log/10/trace3006 --trace-config all --trace-time smtp://127.0.0.1:41595/3006 --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt invalid.two --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - log/10/stdout3006 2> log/10/stderr3006 === End of file commands.log === Start of file server.cmd Testnum 3006 === End of file server.cmd === Start of file smtp_server.log 07:36:22.900710 ====> Client connect 07:36:22.900834 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:22.901076 < "EHLO verifiedserver" 07:36:22.901113 > "250 ESMTP pingpong test server Hello verifiedserver[CR][LF]" 07:36:22.901229 < "HELP" 07:36:22.901255 > "214 WE ROOLZ: 120706[CR][LF]" 07:36:22.901265 return proof we are we 07:36:22.901428 < "QUIT" 07:36:22.901448 > "221 curl ESMTP server signing off[CR][LF]" 07:36:22.901865 MAIN sockfilt said DISC 07:36:22.901884 ====> Client disconnected 07:36:22.901935 Awaiting input === End of file smtp_server.log === Start of file smtp_sockfilt.log 07:36:22.746539 ====> Client connect 07:36:22.746798 Received DATA (on stdin) 07:36:22.746822 > 160 bytes data, server => client 07:36:22.746833 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:22.746843 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:22.746851 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:22.746921 < 21 bytes data, client => server 07:36:22.746931 'EHLO verifiedserver\r\n' 07:36:22.747083 Received DATA (on stdin) 07:36:22.747099 > 53 bytes data, server => client 07:36:22.747109 '250 ESMTP pingpong test server Hello verifiedserver\r\n' 07:36:22.747152 < 6 bytes data, client => server 07:36:22.747163 'HELP\r\n' 07:36:22.747241 Received DATA (on stdin) 07:36:22.747250 > 22 bytes data, server => client 07:36:22.747258 '214 WE ROOLZ: 120706\r\n' 07:36:22.747330 < 6 bytes data, client => server 07:36:22.747343 'QUIT\r\n' 07:36:22.747424 Received DATA (on stdin) 07:36:22.747433 > 35 bytes data, server => client 07:36:22.747441 '221 curl ESMTP server signing off\r\n' 07:36:22.747806 ====> Client disconnect 07:36:22.747911 Received ACKD (on stdin) === End of file smtp_sockfilt.log === Start of file stdin-for-3006 From: different To: another body === End of file stdin-for-3006 === Start of file valgrind3006 ==168705== ==168705== Process terminating with default action of signal 4 (SIGILL) ==168705== Illegal opcode at address 0x4003082 ==168705== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==168705== by 0x4003082: main (tool_main.c:234) === End of file valgrind3006 test 3016...[GET a directory using file://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3016 ../src/curl -q --output log/20/curl3016.out --include --trace-ascii log/20/trace3016 --trace-config all --trace-time file:///startdir/src/build-curl/tests/ > log/20/stdout3016 2> log/20/stderr3016 curl returned 132, when expecting 0 3016: exit FAILED == Contents of files in the log/20/ dir after test 3016 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3016 ../src/curl -q --output log/20/curl3016.out --include --trace-ascii log/20/trace3016 --trace-config all --trace-time file:///startdir/src/build-curl/tests/ > log/20/stdout3016 2> log/20/stderr3016 === End of file commands.log === Start of file server.cmd Testnum 3016 === End of file server.cmd === Start of file valgrind3016 ==169170== ==169170== Process terminating with default action of signal 4 (SIGILL) ==169170== Illegal opcode at address 0x4003082 ==169170== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169170== by 0x4003082: main (tool_main.c:234) === End of file valgrind3016 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2204 ../src/curl -q --output log/23/curl2204.out --include --trace log/23/trace2204 --trace-config all --trace-time mqtt://127.0.0.1:34421/2204 -u testuser:testpasswd > log/23/stdout2204 2> log/23/stderr2204 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3019 ../src/curl -q --output log/5/curl3019.out --include --trace-ascii log/5/trace3019 --trace-config all --trace-time --resolve 46675:example.com:127.0.0.1 http://example.com:46675/3019 > log/5/stdout3019 2> log/5/stderr3019 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3020 ../src/curl -q --output log/12/curl3020.out --include --trace-ascii log/12/trace3020 --trace-config all --trace-time --connect-to ::example.com:example.com http://example.com:37285/3020 > log/12/stdout3020 2> log/12/stderr3020 test 3015...[HTTP GET -w num_headers with redirected fetch (2 connects)] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3015 ../src/curl -q --include --trace-ascii log/3/trace3015 --trace-config all --trace-time http://127.0.0.1:42345/3015 -w "%{num_headers}\n" -L -o/dev/null > log/3/stdout3015 2> log/3/stderr3015 3015: stdout FAILED: --- log/3/check-expected 2025-07-18 07:36:23.590446764 +0000 +++ log/3/check-generated 2025-07-18 07:36:23.590446764 +0000 @@ -1 +0,0 @@ -4[CR][LF] == Contents of files in the log/3/ dir after test 3015 === Start of file check-expected 4[CR][LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3015 ../src/curl -q --include --trace-ascii log/3/trace3015 --trace-config all --trace-time http://127.0.0.1:42345/3015 -w "%{num_headers}\n" -L -o/dev/null > log/3/stdout3015 2> log/3/stderr3015 === End of file commands.log === Start of file http_server.log 07:36:22.961209 ====> Client connect 07:36:22.961238 accept_connection 3 returned 4 07:36:22.961250 accept_connection 3 returned 0 07:36:22.961262 Read 93 bytes 07:36:22.961272 Process 93 bytes request 07:36:22.961284 Got request: GET /verifiedserver HTTP/1.1 07:36:22.961292 Are-we-friendly question received 07:36:22.961316 Wrote request (93 bytes) input to log/3/server.input 07:36:22.961330 Identifying ourselves as friends 07:36:22.961380 Response sent (56 bytes) and written to log/3/server.response 07:36:22.961389 special request received, no persistency 07:36:22.961396 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 3015 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind3015 ==169356== ==169356== Process terminating with default action of signal 4 (SIGILL) ==169356== Illegal opcode at address 0x4003082 ==169356== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169356== by 0x4003082: main (tool_main.c:234) === End of file valgrind3015 startnew: ./server/servers mqttd --port 0 --pidfile log/23/server/mqtt_server.pid --portfile log/23/server/mqtt_server.port --config log/23/server.cmd --logfile log/23/mqtt_server.log --logdir log/23 RUN: MQTT server is now running PID 167870 on PORT 34421 * pid mqtt => 167870 167870 test 2204...[MQTT SUBSCRIBE with user and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2204 ../src/curl -q --output log/23/curl2204.out --include --trace log/23/trace2204 --trace-config all --trace-time mqtt://127.0.0.1:34421/2204 -u testuser:testpasswd > log/23/stdout2204 2> log/23/stderr2204 2204: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 2204 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind2204 ../src/curl -q --output log/23/curl2204.out --include --trace log/23/trace2204 --trace-config all --trace-time mqtt://127.0.0.1:34421/2204 -u testuser:testpasswd > log/23/stdout2204 2> log/23/stderr2204 === End of file commands.log === Start of file mqtt_server.log 07:36:22.992534 Running IPv4 version 07:36:22.992596 Listening on port 34421 07:36:22.992977 Wrote pid 167870 to log/23/server/mqtt_server.pid 07:36:22.993029 Wrote port 34421 to log/23/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 2204 === End of file server.cmd === Start of file valgrind2204 ==169637== ==169637== Process terminating with default action of signal 4 (SIGILL) ==169637== Illegal opcode at address 0x4003082 ==169637== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169637== by 0x4003082: main (tool_main.c:234) === End of file valgrind2204 test 3019...[HTTP with invalid --resolve syntax] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3019 ../src/curl -q --output log/5/curl3019.out --include --trace-ascii log/5/trace3019 --trace-config all --trace-time --resolve 46675:example.com:127.0.0.1 http://example.com:46675/3019 > log/5/stdout3019 2> log/5/stderr3019 curl returned 132, when expecting 49 3019: exit FAILED == Contents of files in the log/5/ dir after test 3019 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3019 ../src/curl -q --output log/5/curl3019.out --include --trace-ascii log/5/trace3019 --trace-config all --trace-time --resolve 46675:example.com:127.0.0.1 http://example.com:46675/3019 > log/5/stdout3019 2> log/5/stderr3019 === End of file commands.log === Start of file http_server.log 07:36:22.987230 ====> Client connect 07:36:22.987262 accept_connection 3 returned 4 07:36:22.987279 accept_connection 3 returned 0 07:36:22.987293 Read 93 bytes 07:36:22.987302 Process 93 bytes request 07:36:22.987316 Got request: GET /verifiedserver HTTP/1.1 07:36:22.987324 Are-we-friendly question received 07:36:22.987346 Wrote request (93 bytes) input to log/5/server.input 07:36:22.987361 Identifying ourselves as friends 07:36:22.987414 Response sent (56 bytes) and written to log/5/server.response 07:36:22.987422 special request received, no persistency 07:36:22.987430 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:46675... * Connected to 127.0.0.1 (127.0.0.1) port 46675 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:46675 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [1 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75120 === End of file http_verify.out === Start of file server.cmd Testnum 3019 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75120 === End of file server.response === Start of file valgrind3019 ==169616== ==169616== Process terminating with default action of signal 4 (SIGILL) ==169616== Illegal opcode at address 0x4003082 ==169616== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169616== by 0x4003082: main (tool_main.c:234) === End of file valgrind3019 test 3020...[HTTP with invalid --connect-to syntax] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3020 ../src/curl -q --output log/12/curl3020.out --include --trace-ascii log/12/trace3020 --trace-config all --trace-time --connect-to ::example.com:example.com http://example.com:37285/3020 > log/12/stdout3020 2> log/12/stderr3020 curl returned 132, when expecting 49 3020: exit FAILED == Contents of files in the log/1CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3012 ../src/curl -q --trace-ascii log/7/trace3012 --trace-config all --trace-time http://127.0.0.1:43423/this/is/the/3012 -OJR --output-dir /startdir/src/build-curl/tests/log/7 > log/7/stdout3012 2> log/7/stderr3012 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3018 ../src/curl -q --output log/4/curl3018.out --include --trace log/4/trace3018 --trace-config all --trace-time mqtt://127.0.0.1:42315/3018 --max-filesize 11 > log/4/stdout3018 2> log/4/stderr3018 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind2203 ../src/curl -q --output log/14/curl2203.out --include --trace log/14/trace2203 --trace-config all --trace-time mqtt://127.0.0.1:33097/2203 > log/14/stdout2203 2> log/14/stderr2203 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2202 ../src/curl -q --output log/9/curl2202.out --include --trace log/9/trace2202 --trace-config all --trace-time mqtt://127.0.0.1:35923/2202 -d something -u fakeuser:fakepasswd > log/9/stdout2202 2> log/9/stderr2202 2/ dir after test 3020 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3020 ../src/curl -q --output log/12/curl3020.out --include --trace-ascii log/12/trace3020 --trace-config all --trace-time --connect-to ::example.com:example.com http://example.com:37285/3020 > log/12/stdout3020 2> log/12/stderr3020 === End of file commands.log === Start of file http_server.log 07:36:23.032871 ====> Client connect 07:36:23.032902 accept_connection 3 returned 4 07:36:23.032915 accept_connection 3 returned 0 07:36:23.032927 Read 93 bytes 07:36:23.032935 Process 93 bytes request 07:36:23.032945 Got request: GET /verifiedserver HTTP/1.1 07:36:23.032953 Are-we-friendly question received 07:36:23.032973 Wrote request (93 bytes) input to log/12/server.input 07:36:23.032985 Identifying ourselves as friends 07:36:23.033026 Response sent (56 bytes) and written to log/12/server.response 07:36:23.033033 special request received, no persistency 07:36:23.033040 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 3020 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file valgrind3020 ==169811== ==169811== Process terminating with default action of signal 4 (SIGILL) ==169811== Illegal opcode at address 0x4003082 ==169811== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169811== by 0x4003082: main (tool_main.c:234) === End of file valgrind3020 test 3012...[--output-dir with -J and -R] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3012 ../src/curl -q --trace-ascii log/7/trace3012 --trace-config all --trace-time http://127.0.0.1:43423/this/is/the/3012 -OJR --output-dir /startdir/src/build-curl/tests/log/7 > log/7/stdout3012 2> log/7/stderr3012 3012: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 3012 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3012 ../src/curl -q --trace-ascii log/7/trace3012 --trace-config all --trace-time http://127.0.0.1:43423/this/is/the/3012 -OJR --output-dir /startdir/src/build-curl/tests/log/7 > log/7/stdout3012 2> log/7/stderr3012 === End of file commands.log === Start of file http_server.log 07:36:22.925361 ====> Client connect 07:36:22.925391 accept_connection 3 returned 4 07:36:22.925407 accept_connection 3 returned 0 07:36:22.925433 Read 93 bytes 07:36:22.925450 Process 93 bytes request 07:36:22.925461 Got request: GET /verifiedserver HTTP/1.1 07:36:22.925468 Are-we-friendly question received 07:36:22.925498 Wrote request (93 bytes) input to log/7/server.input 07:36:22.925511 Identifying ourselves as friends 07:36:22.925557 Response sent (57 bytes) and written to log/7/server.response 07:36:22.925564 special request received, no persistency 07:36:22.925571 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 3012 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file valgrind3012 ==169114== ==169114== Process terminating with default action of signal 4 (SIGILL) ==169114== Illegal opcode at address 0x4003082 ==169114== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169114== by 0x4003082: main (tool_main.c:234) === End of file valgrind3012 test 3018...[MQTT SUBSCRIBE with PUBLISH larger than --max-filesize] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3018 ../src/curl -q --output log/4/curl3018.out --include --trace log/4/trace3018 --trace-config all --trace-time mqtt://127.0.0.1:42315/3018 --max-filesize 11 > log/4/stdout3018 2> log/4/stderr3018 3018: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 3018 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3018 ../src/curl -q --output log/4/curl3018.out --include --trace log/4/trace3018 --trace-config all --trace-time mqtt://127.0.0.1:42315/3018 --max-filesize 11 > log/4/stdout3018 2> log/4/stderr3018 === End of file commands.log === Start of file server.cmd Testnum 3018 === End of file server.cmd === Start of file valgrind3018 ==169221== ==169221== Process terminating with default action of signal 4 (SIGILL) ==169221== Illegal opcode at address 0x4003082 ==169221== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169221== by 0x4003082: main (tool_main.c:234) === End of file valgrind3018 startnew: ./server/servers mqttd --port 0 --pidfile log/14/server/mqtt_server.pid --portfile log/14/server/mqtt_server.port --config log/14/server.cmd --logfile log/14/mqtt_server.log --logdir log/14 RUN: MQTT server is now running PID 167754 on PORT 33097 * pid mqtt => 167754 167754 test 2203...[MQTT with error in CONNACK] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind2203 ../src/curl -q --output log/14/curl2203.out --include --trace log/14/trace2203 --trace-config all --trace-time mqtt://127.0.0.1:33097/2203 > log/14/stdout2203 2> log/14/stderr2203 2203: protocol FAILED! There was no content at all in the file log/14/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/14/ dir after test 2203 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind2203 ../src/curl -q --output log/14/curl2203.out --include --trace log/14/trace2203 --trace-config all --trace-time mqtt://127.0.0.1:33097/2203 > log/14/stdout2203 2> log/14/stderr2203 === End of file commands.log === Start of file mqtt_server.log 07:36:22.965161 Running IPv4 version 07:36:22.965214 Listening on port 33097 07:36:22.965248 Wrote pid 167754 to log/14/server/mqtt_server.pid 07:36:22.965271 Wrote port 33097 to log/14/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd error-CONNACK 5 Testnum 2203 === End of file server.cmd === Start of file valgrind2203 ==169363== ==169363== Process terminating with CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2200 ../src/curl -q --output log/19/curl2200.out --include --trace log/19/trace2200 --trace-config all --trace-time mqtt://127.0.0.1:45867/2200 -u fakeuser:fakepasswd > log/19/stdout2200 2> log/19/stderr2200 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2201 ../src/curl -q --output log/1/curl2201.out --include --trace log/1/trace2201 --trace-config all --trace-time mqtt://127.0.0.1:44701/2201 -d something -u testuser:testpasswd > log/1/stdout2201 2> log/1/stderr2201 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3014 ../src/curl -q --include --trace-ascii log/2/trace3014 --trace-config all --trace-time http://127.0.0.1:45457/1439 --write-out '%{num_headers}' > log/2/stdout3014 2> log/2/stderr3014 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3013 ../src/curl -q --trace-ascii log/15/trace3013 --trace-config all --trace-time http://127.0.0.1:34881/this/is/the/3013 -O --output-dir /startdir/src/build-curl/tests/log/15 http://127.0.0.1:34881/another/3013 -o second3013 --output-dir /startdir/src/build-curl/tests/log/15 > log/15/stdout3013 2> log/15/stderr3013 default action of signal 4 (SIGILL) ==169363== Illegal opcode at address 0x4003082 ==169363== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169363== by 0x4003082: main (tool_main.c:234) === End of file valgrind2203 startnew: ./server/servers mqttd --port 0 --pidfile log/9/server/mqtt_server.pid --portfile log/9/server/mqtt_server.port --config log/9/server.cmd --logfile log/9/mqtt_server.log --logdir log/9 RUN: MQTT server is now running PID 167739 on PORT 35923 * pid mqtt => 167739 167739 test 2202...[MQTT PUBLISH with invalid user and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2202 ../src/curl -q --output log/9/curl2202.out --include --trace log/9/trace2202 --trace-config all --trace-time mqtt://127.0.0.1:35923/2202 -d something -u fakeuser:fakepasswd > log/9/stdout2202 2> log/9/stderr2202 2202: protocol FAILED! There was no content at all in the file log/9/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/9/ dir after test 2202 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind2202 ../src/curl -q --output log/9/curl2202.out --include --trace log/9/trace2202 --trace-config all --trace-time mqtt://127.0.0.1:35923/2202 -d something -u fakeuser:fakepasswd > log/9/stdout2202 2> log/9/stderr2202 === End of file commands.log === Start of file mqtt_server.log 07:36:22.959559 Running IPv4 version 07:36:22.959606 Listening on port 35923 07:36:22.959640 Wrote pid 167739 to log/9/server/mqtt_server.pid 07:36:22.959670 Wrote port 35923 to log/9/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd error-CONNACK 5 Testnum 2202 === End of file server.cmd === Start of file valgrind2202 ==169261== ==169261== Process terminating with default action of signal 4 (SIGILL) ==169261== Illegal opcode at address 0x4003082 ==169261== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169261== by 0x4003082: main (tool_main.c:234) === End of file valgrind2202 startnew: ./server/servers mqttd --port 0 --pidfile log/19/server/mqtt_server.pid --portfile log/19/server/mqtt_server.port --config log/19/server.cmd --logfile log/19/mqtt_server.log --logdir log/19 RUN: MQTT server is now running PID 167726 on PORT 45867 * pid mqtt => 167726 167726 test 2200...[MQTT SUBSCRIBE with user and password] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2200 ../src/curl -q --output log/19/curl2200.out --include --trace log/19/trace2200 --trace-config all --trace-time mqtt://127.0.0.1:45867/2200 -u fakeuser:fakepasswd > log/19/stdout2200 2> log/19/stderr2200 2200: protocol FAILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 2200 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind2200 ../src/curl -q --output log/19/curl2200.out --include --trace log/19/trace2200 --trace-config all --trace-time mqtt://127.0.0.1:45867/2200 -u fakeuser:fakepasswd > log/19/stdout2200 2> log/19/stderr2200 === End of file commands.log === Start of file mqtt_server.log 07:36:22.955909 Running IPv4 version 07:36:22.955963 Listening on port 45867 07:36:22.956004 Wrote pid 167726 to log/19/server/mqtt_server.pid 07:36:22.956035 Wrote port 45867 to log/19/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd error-CONNACK 5 Testnum 2200 === End of file server.cmd === Start of file valgrind2200 ==169226== ==169226== Process terminating with default action of signal 4 (SIGILL) ==169226== Illegal opcode at address 0x4003082 ==169226== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169226== by 0x4003082: main (tool_main.c:234) === End of file valgrind2200 startnew: ./server/servers mqttd --port 0 --pidfile log/1/server/mqtt_server.pid --portfile log/1/server/mqtt_server.port --config log/1/server.cmd --logfile log/1/mqtt_server.log --logdir log/1 RUN: MQTT server is now running PID 167730 on PORT 44701 * pid mqtt => 167730 167730 test 2201...[MQTT PUBLISH with user and password valid] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2201 ../src/curl -q --output log/1/curl2201.out --include --trace log/1/trace2201 --trace-config all --trace-time mqtt://127.0.0.1:44701/2201 -d something -u testuser:testpasswd > log/1/stdout2201 2> log/1/stderr2201 2201: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 2201 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind2201 ../src/curl -q --output log/1/curl2201.out --include --trace log/1/trace2201 --trace-config all --trace-time mqtt://127.0.0.1:44701/2201 -d something -u testuser:testpasswd > log/1/stdout2201 2> log/1/stderr2201 === End of file commands.log === Start of file mqtt_server.log 07:36:22.955284 Running IPv4 version 07:36:22.955343 Listening on port 44701 07:36:22.955378 Wrote pid 167730 to log/1/server/mqtt_server.pid 07:36:22.955406 Wrote port 44701 to log/1/server/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd Testnum 2201 === End of file server.cmd === Start of file valgrind2201 ==169219== ==169219== Process terminating with default action of signal 4 (SIGILL) ==169219== Illegal opcode at address 0x4003082 ==169219== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169219== by 0x4003082: main (tool_main.c:234) === End of file valgrind2201 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind3010 ./libtest/libtests lib3010 127.0.0.1:45825/3010 > log/18/stdout3010 2> log/18/stderr3010 test 3014...[Check if %{num_headers} returns correct number of headers] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3014 ../src/curl -q --include --trace-ascii log/2/trace3014 --trace-config all --trace-time http://127.0.0.1:45457/1439 --write-out '%{num_headers}' > log/2/stdout3014 2> log/2/stderr3014 3014: stdout FAILED: --- log/2/check-expected 2025-07-18 07:36:23.673780099 +0000 +++ log/2/check-generated 2025-07-18 07:36:23.673780099 +0000 @@ -1,8 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 9[LF] -Connection: close[LF] -Content-Type: text/plain[LF] -[LF] -testdata[LF] -4 == Contents of files in the log/2/ dir after test 3014 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 9[LF] Connection: close[LF] Content-Type: text/plain[LF] [LF] testdata[LF] 4 === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3014 ../src/curl -q --include --trace-ascii log/2/trace3014 --trace-config all --trace-time http://127.0.0.1:45457/1439 --write-out '%{num_headers}' > log/2/stdout3014 2> log/2/stderr3014 === End of file commands.log === Start of file http_server.log 07:36:22.958646 ====> Client connect 07:36:22.958683 accept_connection 3 returned 4 07:36:22.958699 accept_connection 3 returned 0 07:36:22.958713 Read 93 bytes 07:36:22.958722 Process 93 bytes request 07:36:22.958734 Got request: GET /verifiedserver HTTP/1.1 07:36:22.958743 Are-we-friendly question received 07:36:22.958765 Wrote request (93 bytes) input to log/2/server.input 07:36:22.958779 Identifying ourselves as friends 07:36:22.958830 Response sent (56 bytes) and written to log/2/server.response 07:36:22.958840 special request received, no persistency 07:36:22.958848 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45457... * Connected to 127.0.0.1 (127.0.0.1) port 45457 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45457 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73858 === End of file http_verify.out === Start of file server.cmd Testnum 3014 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73858 === End of file server.response === Start of file valgrind3014 ==169293== ==169293== Process terminating with default action of signal 4 (SIGILL) ==169293== Illegal opcode at address 0x4003082 ==169293== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169293== by 0x4003082: main (tool_main.c:234) === End of file valgrind3014 test 3013...[Two --output-dir with --next in between] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3013 ../src/curl -q --trace-ascii log/15/trace3013 --trace-config all --trace-time http://127.0.0.1:34881/this/is/the/3013 -O --output-dir /startdir/src/build-curl/tests/log/15 http://127.0.0.1:34881/another/3013 -o second3013 --output-dir /startdir/src/build-curl/tests/log/15 > log/15/stdout3013 2> log/15/stderr3013 3013: protocol FAILED! There was no content at all in the file log/15/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/15/ dir after test 3013 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3013 ../src/curl -q --trace-ascii log/15/trace3013 --trace-config all --trace-time http://127.0.0.1:34881/this/is/the/3013 -O --output-dir /startdir/src/build-curl/tests/log/15 http://127.0.0.1:34881/another/3013 -o second3013 --output-dir /startdir/src/build-curl/tests/log/15 > log/15/stdout3013 2> log/15/stderr3013 === End of file commands.log === Start of file http_server.log 07:36:22.945559 ====> Client connect 07:36:22.945597 accept_connection 3 returned 4 07:36:22.945614 accept_connection 3 returned 0 07:36:22.945630 Read 93 bytes 07:36:22.945640 Process 93 bytes request 07:36:22.945652 Got request: GET /verifiedserver HTTP/1.1 07:36:22.945663 Are-we-friendly question received 07:36:22.945694 Wrote request (93 bytes) input to log/15/server.input 07:36:22.945711 Identifying ourselves as friends 07:36:22.945788 Response sent (57 bytes) and written to log/15/server.response 07:36:22.945799 special request received, no persistency 07:36:22.945808 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34881... * Connected to 127.0.0.1 (127.0.0.1) port 34881 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34881 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 157411 === End of file http_verify.out === Start of file server.cmd Testnum 3013 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 157411 === End of file server.response === Start of file valgrind3013 ==169195== ==169195== Process terminating with default action of signal 4 (SIGILL) ==169195== Illegal opcode at address 0x4003082 ==169195== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==169195== by 0x4003082: main (tool_main.c:234) === End of file valgrind3013 test 3010...[HTTP retry-after reset] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind3010 ./libtest/libtests lib3010 127.0.0.1:45825/3010 > log/18/stdout3010 2> log/18/stderr3010 3010: stdout FAILED: --- log/18/check-expected 2025-07-18 07:36:23.863780105 +0000 +++ log/18/check-generated 2025-07-18 07:36:23.863780105 +0000 @@ -1,2 +0,0 @@ -Retry-After 2[LF] -Retry-After 0[LF] == Contents of files in the log/18/ dir after test 3010 === Start of file check-expected Retry-After 2[LF] Retry-After 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind3010 ./libtest/libtests lib3010 127.0.0.1:45825/3010 > log/18/stdout3010 2> log/18/stderr3010 === End of file commands.log === Start of file http_server.log 07:36:22.821463 ====> Client connect 07:36:22.821499 accept_connection 3 returned 4 07:36:22.821517 accept_connection 3 returned 0 07:36:22.821534 Read 93 bytes 07:36:22.821544 Process 93 bytes request 07:36:22.821555 Got request: GET /verifiedserver HTTP/1.1 07:36:22.821564 Are-we-friendly question received 07:36:22.821591 Wrote request (93 bytes) input to log/18/server.input 07:36:22.821607 Identifying ourselves as friends 07:36:22.821685 Response sent (56 bytes) and written to log/18/server.response 07:36:22.821696 special request received, no persistency 07:36:22.821705 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45825... * Connected to 127.0.0.1 (127.0.0.1) port 45825 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45825 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73854 === End of file http_verify.out === Start of file server.cmd Testnum 3010 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73854 === End of file server.response === Start of file stderr3010 URL: 127.0.0.1:45825/3010 === End of file stderr3010 === Start of file valgrind3010 ==168900== ==168900== Process terminating with default action of signal 4 (SIGILL) ==168900== Illegal opcode at address 0x51C2DB3 ==168900== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==168900== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==168900== by 0x51C2DB3: Curl_open (url.c:541) ==168900== by 0x513D46F: curl_easy_init (easy.c:372) ==168900== by 0x403E399: test_lib3010.lto_priv.0 (lib3010.c:36) ==168900== by 0x4003443: main (first.c:167) ==168900== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x533CFA5: __tsearch (tsearch.c:337) ==168900== by 0x533CFA5: tsearch (tsearch.c:290) ==168900== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168900== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168900== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168900== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168900== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168900== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== ==168900== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x533CFA5: __tsearch (tsearch.c:337) ==168900== by 0x533CFA5: tsearch (tsearch.c:290) ==168900== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168900== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168900== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== ==168900== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168900== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168900== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168900== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168900== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==168900== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== ==168900== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==168900== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==168900== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== ==168900== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==168900== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==168900== by 0x51C2D03: Curl_open (url.c:520) ==168900== by 0x513D46F: curl_easy_init (easy.c:372) ==168900== by 0x403E399: test_lib3010.lto_priv.0 (lib3010.c:36) ==168900== by 0x4003443: main (first.c:167) ==168900== ==168900== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x533CFA5: __tsearch (tsearch.c:337) ==168900== by 0x533CFA5: tsearch (tsearch.c:290) ==168900== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==168900== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168900== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168900== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168900== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168900== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== ==168900== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==168900== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==168900== by 0x524F0A9: add_alias2.part.0 (gCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2086 ./libtest/libtests lib2082 [::1]:41357/2086#ipv6 > log/24/stdout2086 2> log/24/stderr2086 conv_conf.c:132) ==168900== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==168900== by 0x524F3F0: add_alias (gconv_conf.c:178) ==168900== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==168900== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==168900== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==168900== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==168900== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==168900== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==168900== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==168900== by 0x525A142: setlocale (setlocale.c:337) ==168900== by 0x400336E: main (first.c:123) ==168900== === End of file valgrind3010 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3029 ../src/curl -q --output log/10/curl3029.out --include --trace-ascii log/10/trace3029 --trace-config all --trace-time -D log/10/heads3029 http://127.0.0.1:34851/3029 http://127.0.0.1:34851/3029 --next -D log/10/heads3029 http://127.0.0.1:34851/3029 > log/10/stdout3029 2> log/10/stderr3029 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3028 ../src/curl -q --output log/21/curl3028.out --include --trace-ascii log/21/trace3028 --trace-config all --trace-time --haproxy-protocol http://127.0.0.1:41087/page --proxytunnel -x 127.0.0.1:40643 > log/21/stdout3028 2> log/21/stderr3028 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/24/server/http_ipv6_server.pid" --logfile "log/24/http_ipv6_server.log" --logdir "log/24" --portfile log/24/server/http_ipv6_server.port --config log/24/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 167719 port 41357 * pid http-ipv6 => 167719 167719 setenv MSYS2_ARG_CONV_EXCL = * test 2086...[Pre-request callback for HTTP IPv6] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2086 ./libtest/libtests lib2082 [::1]:41357/2086#ipv6 > log/24/stdout2086 2> log/24/stderr2086 2086: stdout FAILED: --- log/24/check-expected 2025-07-18 07:36:24.067113443 +0000 +++ log/24/check-generated 2025-07-18 07:36:24.067113443 +0000 @@ -1,5 +0,0 @@ -Connected to [::1][LF] -Connected from [::1][LF] -Remote port = 41357[LF] -Local port = stripped[LF] -Returning = 0[LF] == Contents of files in the log/24/ dir after test 2086 === Start of file check-expected Connected to [::1][LF] Connected from [::1][LF] Remote port = 41357[LF] Local port = stripped[LF] Returning = 0[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind2086 ./libtest/libtests lib2082 [::1]:41357/2086#ipv6 > log/24/stdout2086 2> log/24/stderr2086 === End of file commands.log === Start of file http_ipv6_server.log 07:36:22.961822 Running HTTP IPv6 version on port 41357 07:36:22.961900 Wrote pid 167719 to log/24/server/http_ipv6_server.pid 07:36:22.961933 Wrote port 41357 to log/24/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 2086 === End of file server.cmd === Start of file stderr2086 URL: [::1]:41357/2086#ipv6 === End of file stderr2086 === Start of file valgrind2086 ==169147== ==169147== Process terminating with default action of signal 4 (SIGILL) ==169147== Illegal opcode at address 0x51C2DB3 ==169147== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==169147== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==169147== by 0x51C2DB3: Curl_open (url.c:541) ==169147== by 0x513D46F: curl_easy_init (easy.c:372) ==169147== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==169147== by 0x4003443: main (first.c:167) ==169147== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x533CFA5: __tsearch (tsearch.c:337) ==169147== by 0x533CFA5: tsearch (tsearch.c:290) ==169147== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169147== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169147== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169147== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169147== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==169147== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== ==169147== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x533CFA5: __tsearch (tsearch.c:337) ==169147== by 0x533CFA5: tsearch (tsearch.c:290) ==169147== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169147== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==169147== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== ==169147== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169147== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169147== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169147== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169147== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==169147== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== ==169147== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169147== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==169147== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== ==169147== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==169147== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==169147== by 0x51C2D03: Curl_open (url.c:520) ==169147== by 0x513D46F: curl_easy_init (easy.c:372) ==169147== by 0x403979C: test_lib2082.lto_priv.0 (lib2082.c:64) ==169147== by 0x4003443: main (first.c:167) ==169147== ==169147== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x533CFA5: __tsearch (tsearch.c:337) ==169147== by 0x533CFA5: tsearch (tsearch.c:290) ==169147== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169147== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169147== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169147== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169147== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==169147== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== ==169147== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==169147== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169147== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169147== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169147== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169147== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169147== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==169147== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==169147== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169147== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169147== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169147== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169147== by 0x525A142: setlocale (setlocale.c:337) ==169147== by 0x400336E: main (first.c:123) ==169147== === End of file valgrind2086 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3030 ../src/curl -q --output log/20/curl3030.out --include --trace-ascii log/20/trace3030 --trace-config all --trace-time -D log/20/heads3030 http://127.0.0.1:37169/3030 http://127.0.0.1:37169/3030 > log/20/stdout3030 2> log/20/stderr3030 test 3029...[HTTP with multiple -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3029 ../src/curl -q --output log/10/curl3029.out --include --trace-ascii log/10/trace3029 --trace-config all --trace-time -D log/10/heads3029 http://127.0.0.1:34851/3029 http://127.0.0.1:34851/3029 --next -D log/10/heads3029 http://127.0.0.1:34851/3029 > log/10/stdout3029 2> log/10/stderr3029 3029: data FAILED: --- log/10/check-expected 2025-07-18 07:36:24.087113444 +0000 +++ log/10/check-generated 2025-07-18 07:36:24.087113444 +0000 @@ -1,5 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 6[LF] -[LF] --foo-[LF] == Contents of files in the log/10/ dir after test 3029 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 6[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3029 ../src/curl -q --output log/10/curl3029.out --include --trace-ascii log/10/trace3029 --trace-config all --trace-time -D log/10/heads3029 http://127.0.0.1:34851/3029 http://127.0.0.1:34851/3029 --next -D log/10/heads3029 http://127.0.0.1:34851/3029 > log/10/stdout3029 2> log/10/stderr3029 === End of file commands.log === Start of file http_server.log 07:36:23.380476 ====> Client connect 07:36:23.380512 accept_connection 3 returned 4 07:36:23.380532 accept_connection 3 returned 0 07:36:23.380545 Read 93 bytes 07:36:23.380554 Process 93 bytes request 07:36:23.380567 Got request: GET /verifiedserver HTTP/1.1 07:36:23.380576 Are-we-friendly question received 07:36:23.380605 Wrote request (93 bytes) input to log/10/server.input 07:36:23.380621 Identifying ourselves as friends 07:36:23.380677 Response sent (56 bytes) and written to log/10/server.response 07:36:23.380686 special request received, no persistency 07:36:23.380695 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:34851... * Connected to 127.0.0.1 (127.0.0.1) port 34851 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:34851 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73848 === End of file http_verify.out === Start of file server.cmd Testnum 3029 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73848 === End of file server.response === Start of file valgrind3029 ==170003== ==170003== Process terminating with default action of signal 4 (SIGILL) ==170003== Illegal opcode at address 0x4003082 ==170003== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170003== by 0x4003082: main (tool_main.c:234) === End of file valgrind3029 test 3028...[HTTP GET when PROXY Protocol enabled behind a proxy] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3028 ../src/curl -q --output log/21/curl3028.out --include --trace-ascii log/21/trace3028 --trace-config all --trace-time --haproxy-protocol http://127.0.0.1:41087/page --proxytunnel -x 127.0.0.1:40643 > log/21/stdout3028 2> log/21/stderr3028 3028: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 3028 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3028 ../src/curl -q --output log/21/curl3028.out --include --trace-ascii log/21/trace3028 --trace-config all --trace-time --haproxy-protocol http://127.0.0.1:41087/page --proxytunnel -x 127.0.0.1:40643 > log/21/stdout3028 2> log/21/stderr3028 === End of file commands.log === Start of file http2_server.log 07:36:23.403873 ====> Client connect 07:36:23.403913 accept_connection 3 returned 4 07:36:23.403929 accept_connection 3 returned 0 07:36:23.403945 Read 93 bytes 07:36:23.403954 Process 93 bytes request 07:36:23.403967 Got request: GET /verifiedserver HTTP/1.1 07:36:23.403976 Are-we-friendly question received 07:36:23.403999 Wrote request (93 bytes) input to log/21/proxy.input 07:36:23.404018 Identifying ourselves as friends 07:36:23.404098 Response sent (56 bytes) and written to log/21/proxy.response 07:36:23.404112 special request received, no persistency 07:36:23.404120 ====> Client disconnect 0 === End of file http2_server.log === Start of file http2_verify.log * Trying 127.0.0.1:40643... * Connected to 127.0.0.1 (127.0.0.1) port 40643 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40643 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http2_verify.log === Start of file http2_verify.out WE ROOLZ: 90296 === End of file http2_verify.out === Start of file http_server.log 07:36:23.380477 ====> Client connect 07:36:23.380520 accept_connection 3 returned 4 07:36:23.380538 accept_connection 3 returned 0 07:36:23.380551 Read 93 bytes 07:36:23.380560 Process 93 bytes request 07:36:23.380571 Got request: GET /verifiedserver HTTP/1.1 07:36:23.380580 Are-we-friendly question received 07:36:23.380608 Wrote request (93 bytes) input to log/21/server.input 07:36:23.380624 Identifying ourselves as friends 07:36:23.380681 Response sent (56 bytes) and written to log/21/server.response 07:36:23.380691 special request received, no persistency 07:36:23.380700 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:41087... * Connected to 127.0.0.1 (127.0.0.1) port 41087 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:41087 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73842 === End of file http_verify.out === Start of file proxy.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 90296 === End of file proxy.response === Start of file server.cmd Testnum 3028 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73842 === End of file server.response === Start of file valgrind3028 ==170077== ==170077== Process terminating with default action of signal 4 (SIGILL) ==170077== Illegal opcode at address 0x4003082 ==170077== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170077== by 0x4003082: main (tool_main.c:234) === End of file valgrind3028 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3031 ../src/curl -q --output log/3/curl3031.out --include --trace-ascii log/3/trace3031 --trace-config all --trace-time http://127.0.0.1:42345/this/is/the/3031 --dump-header /startdir/src/build-curl/tests/log/3/tmp/out.txt --create-dirs > log/3/stdout3031 2> log/3/stderr3031 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3203 ../src/curl -q --trace-ascii log/15/trace3203 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/15/test3203.dir/ > log/15/stdout3203 2> log/15/stderr3203 test 3030...[HTTP with multiple transfers in one -D] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3030 ../src/curl -q --output log/20/curl3030.out --include --trace-ascii log/20/trace3030 --trace-config all --trace-time -D log/20/heads3030 http://127.0.0.1:37169/3030 http://127.0.0.1:37169/3030 > log/20/stdout3030 2> log/20/stderr3030 3030: data FAILED: --- log/20/check-expected 2025-07-18 07:36:24.210446780 +0000 +++ log/20/check-generated 2025-07-18 07:36:24.210446780 +0000 @@ -1,5 +0,0 @@ -HTTP/1.1 200 OK[LF] -Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] -Content-Length: 6[LF] -[LF] --foo-[LF] == Contents of files in the log/20/ dir after test 3030 === Start of file check-expected HTTP/1.1 200 OK[LF] Date: Tue, 09 Nov 2010 14:49:00 GMT[LF] Content-Length: 6[LF] [LF] -foo-[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3030 ../src/curl -q --output log/20/curl3030.out --include --trace-ascii log/20/trace3030 --trace-config all --trace-time -D log/20/heads3030 http://127.0.0.1:37169/3030 http://127.0.0.1:37169/3030 > log/20/stdout3030 2> log/20/stderr3030 === End of file commands.log === Start of file http_server.log 07:36:23.462581 ====> Client connect 07:36:23.462661 accept_connection 3 returned 4 07:36:23.462685 accept_connection 3 returned 0 07:36:23.462699 Read 93 bytes 07:36:23.462708 Process 93 bytes request 07:36:23.462722 Got request: GET /verifiedserver HTTP/1.1 07:36:23.462731 Are-we-friendly question received 07:36:23.462756 Wrote request (93 bytes) input to log/20/server.input 07:36:23.462773 Identifying ourselves as friends 07:36:23.462832 Response sent (56 bytes) and written to log/20/server.response 07:36:23.462840 special request received, no persistency 07:36:23.462847 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37169... * Connected to 127.0.0.1 (127.0.0.1) port 37169 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37169 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73849 === End of file http_verify.out === Start of file server.cmd Testnum 3030 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73849 === End of file server.response === Start of file valgrind3030 ==170243== ==170243== Process terminating with default action of signal 4 (SIGILL) ==170243== Illegal opcode at address 0x4003082 ==170243== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170243== by 0x4003082: main (tool_main.c:234) === End of file valgrind3030 test 3031...[--output-dir with --create-dirs] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3031 ../src/curl -q --output log/3/curl3031.out --include --trace-ascii log/3/trace3031 --trace-config all --trace-time http://127.0.0.1:42345/this/is/the/3031 --dump-header /startdir/src/build-curl/tests/log/3/tmp/out.txt --create-dirs > log/3/stdout3031 2> log/3/stderr3031 3031: protocol FAILED! There was no content at all in the file log/3/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/3/ dir after test 3031 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3031 ../src/curl -q --output log/3/curl3031.out --include --trace-ascii log/3/trace3031 --trace-config all --trace-time http://127.0.0.1:42345/this/is/the/3031 --dump-header /startdir/src/build-curl/tests/log/3/tmp/out.txt --create-dirs > log/3/stdout3031 2> log/3/stderr3031 === End of file commands.log === Start of file http_server.log 07:36:23.468669 ====> Client connect 07:36:23.468706 accept_connection 3 returned 4 07:36:23.468721 accept_connection 3 returned 0 07:36:23.468734 Read 93 bytes 07:36:23.468743 Process 93 bytes request 07:36:23.468756 Got request: GET /verifiedserver HTTP/1.1 07:36:23.468765 Are-we-friendly question received 07:36:23.468789 Wrote request (93 bytes) input to log/3/server.input 07:36:23.468804 Identifying ourselves as friends 07:36:23.468857 Response sent (56 bytes) and written to log/3/server.response 07:36:23.468867 special request received, no persistency 07:36:23.468876 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:42345... * Connected to 127.0.0.1 (127.0.0.1) port 42345 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:42345 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73861 === End of file http_verify.out === Start of file server.cmd Testnum 3031 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73861 === End of file server.response === Start of file valgrind3031 ==170258== ==170258== Process terminating with default action of signal 4 (SIGILL) ==170258== Illegal opcode at address 0x4003082 ==170258== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170258== by 0x4003082: main (tool_main.c:234) === End of file valgrind3031 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind3204 ../src/curl -q --output log/1/curl3204.out --include --trace-ascii log/1/trace3204 --trace-config all --trace-time http://127.0.0.1:38941/3204 --etag-compare log/1/etag3204 --etag-save log/1/etag3204 > log/1/stdout3204 2> log/1/stderr3204 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind3032 ../src/curl -q --output log/23/curl3032.out --include --trace-ascii log/23/trace3032 --trace-config all --trace-time --location http://127.0.0.1:45701/3032 > log/23/stdout3032 2> log/23/stderr3032 CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind3200 ./unit/units unit3200 log/9/curl_get_line3200 > log/9/stdout3200 2> log/9/stderr3200 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind3201 ../src/curl -q --output log/19/curl3201.out --include --trace-ascii log/19/trace3201 --trace-config all --trace-time http://127.0.0.1:33487/3201 --haproxy-clientip "192.168.1.1" -H "Testno: 3201" > log/19/stdout3201 2> log/19/stderr3201 test 3203...[GET a directory using file://] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3203 ../src/curl -q --trace-ascii log/15/trace3203 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/15/test3203.dir/ > log/15/stdout3203 2> log/15/stderr3203 3203: stdout FAILED: --- log/15/check-expected 2025-07-18 07:36:24.363780115 +0000 +++ log/15/check-generated 2025-07-18 07:36:24.363780115 +0000 @@ -1 +0,0 @@ -dir-listing-test.txt[LF] == Contents of files in the log/15/ dir after test 3203 === Start of file check-expected dir-listing-test.txt[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3203 ../src/curl -q --trace-ascii log/15/trace3203 --trace-config all --trace-time file://localhost/startdir/src/build-curl/tests/log/15/test3203.dir/ > log/15/stdout3203 2> log/15/stderr3203 === End of file commands.log === Start of file server.cmd Testnum 3203 === End of file server.cmd === Start of file valgrind3203 ==170522== ==170522== Process terminating with default action of signal 4 (SIGILL) ==170522== Illegal opcode at address 0x4003082 ==170522== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170522== by 0x4003082: main (tool_main.c:234) === End of file valgrind3203 test 3204...[Use --etag-compare and --etag-save on an existing file] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind3204 ../src/curl -q --output log/1/curl3204.out --include --trace-ascii log/1/trace3204 --trace-config all --trace-time http://127.0.0.1:38941/3204 --etag-compare log/1/etag3204 --etag-save log/1/etag3204 > log/1/stdout3204 2> log/1/stderr3204 3204: protocol FAILED! There was no content at all in the file log/1/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/1/ dir after test 3204 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/1/valgrind3204 ../src/curl -q --output log/1/curl3204.out --include --trace-ascii log/1/trace3204 --trace-config all --trace-time http://127.0.0.1:38941/3204 --etag-compare log/1/etag3204 --etag-save log/1/etag3204 > log/1/stdout3204 2> log/1/stderr3204 === End of file commands.log === Start of file etag3204 "21025-dc7-39462498" === End of file etag3204 === Start of file http_server.log 07:36:23.557582 ====> Client connect 07:36:23.557611 accept_connection 3 returned 4 07:36:23.557627 accept_connection 3 returned 0 07:36:23.557641 Read 93 bytes 07:36:23.557650 Process 93 bytes request 07:36:23.557662 Got request: GET /verifiedserver HTTP/1.1 07:36:23.557671 Are-we-friendly question received 07:36:23.557696 Wrote request (93 bytes) input to log/1/server.input 07:36:23.557712 Identifying ourselves as friends 07:36:23.557773 Response sent (56 bytes) and written to log/1/server.response 07:36:23.557782 special request received, no persistency 07:36:23.557790 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:38941... * Connected to 127.0.0.1 (127.0.0.1) port 38941 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:38941 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73863 === End of file http_verify.out === Start of file server.cmd Testnum 3204 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73863 === End of file server.response === Start of file valgrind3204 ==170711== ==170711== Process terminating with default action of signal 4 (SIGILL) ==170711== Illegal opcode at address 0x4003082 ==170711== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170711== by 0x4003082: main (tool_main.c:234) === End of file valgrind3204 test 3032...[HTTP redirect loop 3x swsbounce test] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind3032 ../src/curl -q --output log/23/curl3032.out --include --trace-ascii log/23/trace3032 --trace-config all --trace-time --location http://127.0.0.1:45701/3032 > log/23/stdout3032 2> log/23/stderr3032 3032: protocol FAILED! There was no content at all in the file log/23/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/23/ dir after test 3032 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/23/valgrind3032 ../src/curl -q --output log/23/curl3032.out --include --trace-ascii log/23/trace3032 --trace-config all --trace-time --location http://127.0.0.1:45701/3032 > log/23/stdout3032 2> log/23/stderr3032 === End of file commands.log === Start of file http_server.log 07:36:23.477249 ====> Client connect 07:36:23.477280 accept_connection 3 returned 4 07:36:23.477296 accept_connection 3 returned 0 07:36:23.477309 Read 93 bytes 07:36:23.477319 Process 93 bytes request 07:36:23.477330 Got request: GET /verifiedserver HTTP/1.1 07:36:23.477339 Are-we-friendly question received 07:36:23.477362 Wrote request (93 bytes) input to log/23/server.input 07:36:23.477377 Identifying ourselves as friends 07:36:23.477459 Response sent (56 bytes) and written to log/23/server.response 07:36:23.477472 special request received, no persistency 07:36:23.477482 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:45701... * Connected to 127.0.0.1 (127.0.0.1) port 45701 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:45701 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73847 === End of file http_verify.out === Start of file server.cmd Testnum 3032 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73847 === End of file server.response === Start of file valgrind3032 ==170289== ==170289== Process terminating with default action of signal 4 (SIGILL) ==170289== Illegal opcode at address 0x4003082 ==170289== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170289== by 0x4003082: main (tool_main.c:234) === End of file valgrind3032 * starts no server test 3200...[curl_get_line unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/9/valgrind3200 ./unit/units unit3200 log/9/curl_get_line3200 > log/9/stdout3200 2> log/9/stderr3200 -------e-v- OK (1694 out of 1707, remaining: 00:00, took 0.798s, duration: 01:35) test 3201...[HTTP GET when PROXY Protocol enabled and spoofed client IP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind3201 ../src/curl -q --output log/19/curl3201.out --include --trace-ascii log/19/trace3201 --trace-config all --trace-time http://127.0.0.1:33487/3201 --haproxy-clientip "192.168.1.1" -H "Testno: 3201" > log/19/stdout3201 2> log/19/stderr3201 3201: protocol FCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3025 ./libtest/libtests lib3025 http://127.0.0.1:40341/3025 > log/11/stdout3025 2> log/11/stderr3025 AILED! There was no content at all in the file log/19/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/19/ dir after test 3201 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/19/valgrind3201 ../src/curl -q --output log/19/curl3201.out --include --trace-ascii log/19/trace3201 --trace-config all --trace-time http://127.0.0.1:33487/3201 --haproxy-clientip "192.168.1.1" -H "Testno: 3201" > log/19/stdout3201 2> log/19/stderr3201 === End of file commands.log === Start of file http_server.log 07:36:23.544262 ====> Client connect 07:36:23.544309 accept_connection 3 returned 4 07:36:23.544327 accept_connection 3 returned 0 07:36:23.544342 Read 93 bytes 07:36:23.544352 Process 93 bytes request 07:36:23.544365 Got request: GET /verifiedserver HTTP/1.1 07:36:23.544375 Are-we-friendly question received 07:36:23.544400 Wrote request (93 bytes) input to log/19/server.input 07:36:23.544418 Identifying ourselves as friends 07:36:23.544483 Response sent (56 bytes) and written to log/19/server.response 07:36:23.544494 special request received, no persistency 07:36:23.544503 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33487... * Connected to 127.0.0.1 (127.0.0.1) port 33487 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33487 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73844 === End of file http_verify.out === Start of file server.cmd Testnum 3201 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73844 === End of file server.response === Start of file valgrind3201 ==170628== ==170628== Process terminating with default action of signal 4 (SIGILL) ==170628== Illegal opcode at address 0x4003082 ==170628== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170628== by 0x4003082: main (tool_main.c:234) === End of file valgrind3201 test 3025...[CURLOPT_HTTP200ALIASES] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3025 ./libtest/libtests lib3025 http://127.0.0.1:40341/3025 > log/11/stdout3025 2> log/11/stderr3025 3025: data FAILED: --- log/11/check-expected 2025-07-18 07:36:24.847113460 +0000 +++ log/11/check-generated 2025-07-18 07:36:24.847113460 +0000 @@ -1,4 +0,0 @@ -ICY 200 OK[LF] -Content-Length: 7[LF] -[LF] -MooMoo[LF] == Contents of files in the log/11/ dir after test 3025 === Start of file check-expected ICY 200 OK[LF] Content-Length: 7[LF] [LF] MooMoo[LF] === End of file check-expected === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/11/valgrind3025 ./libtest/libtests lib3025 http://127.0.0.1:40341/3025 > log/11/stdout3025 2> log/11/stderr3025 === End of file commands.log === Start of file http_server.log 07:36:23.371199 ====> Client connect 07:36:23.371239 accept_connection 3 returned 4 07:36:23.371258 accept_connection 3 returned 0 07:36:23.371273 Read 93 bytes 07:36:23.371283 Process 93 bytes request 07:36:23.371296 Got request: GET /verifiedserver HTTP/1.1 07:36:23.371306 Are-we-friendly question received 07:36:23.371331 Wrote request (93 bytes) input to log/11/server.input 07:36:23.371348 Identifying ourselves as friends 07:36:23.371425 Response sent (57 bytes) and written to log/11/server.response 07:36:23.371437 special request received, no persistency 07:36:23.371446 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:40341... * Connected to 127.0.0.1 (127.0.0.1) port 40341 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:40341 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 156367 === End of file http_verify.out === Start of file server.cmd Testnum 3025 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 156367 === End of file server.response === Start of file stderr3025 URL: http://127.0.0.1:40341/3025 === End of file stderr3025 === Start of file valgrind3025 ==169969== ==169969== Process terminating with default action of signal 4 (SIGILL) ==169969== Illegal opcode at address 0x51C2DB3 ==169969== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==169969== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==169969== by 0x51C2DB3: Curl_open (url.c:541) ==169969== by 0x513D46F: curl_easy_init (easy.c:372) ==169969== by 0x403ABEC: test_lib3025.lto_priv.0 (lib3025.c:39) ==169969== by 0x4003443: main (first.c:167) ==169969== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169969== by 0x533CFA5: __tsearch (tsearch.c:337) ==169969== by 0x533CFA5: tsearch (tsearch.c:290) ==169969== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169969== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169969== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169969== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169969== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==169969== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== ==169969== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169969== by 0x533CFA5: __tsearch (tsearch.c:337) ==169969== by 0x533CFA5: tsearch (tsearch.c:290) ==169969== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169969== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==169969== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== ==169969== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169969== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169969== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169969== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169969== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169969== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==169969== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== ==169969== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169969== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169969== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==169969== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== ==169969== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==169969== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==169969== by 0x51C2D03: Curl_open (url.c:520) ==169969== by 0x513D46F: curl_easy_init (easy.c:372) ==169969== by 0x403ABEC: test_lib3025.lto_priv.0 (lib3025.c:39) ==169969== by 0x4003443: main (first.c:167) ==169969== ==169969== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==169969== by 0x533CFA5: __tsearch (tsearch.c:337) ==169969== by 0x533CFA5: tsearch (tsearch.c:290) ==169969== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==169969== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169969== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169969== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169969== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==169969== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== ==169969== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==169969== at 0x50F17A8: malloc (vg_replace_mallCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind3205 ./unit/units unit3205 - > log/18/stdout3205 2> log/18/stderr3205 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3104 ./libtest/libtests lib3104 http://127.0.0.1:33235/3104 > log/4/stdout3104 2> log/4/stderr3104 oc.c:446) ==169969== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==169969== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==169969== by 0x524F3F0: add_alias (gconv_conf.c:178) ==169969== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==169969== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==169969== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==169969== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==169969== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==169969== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==169969== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==169969== by 0x525A142: setlocale (setlocale.c:337) ==169969== by 0x400336E: main (first.c:123) ==169969== === End of file valgrind3025 * starts no server test 3205...[cipher suite name lookup] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/18/valgrind3205 ./unit/units unit3205 - > log/18/stdout3205 2> log/18/stderr3205 -------e-v- OK (1699 out of 1707, remaining: 00:00, took 1.081s, duration: 01:36) test 3104...[CURLOPT_COOKIELIST with Netscape format] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3104 ./libtest/libtests lib3104 http://127.0.0.1:33235/3104 > log/4/stdout3104 2> log/4/stderr3104 3104: protocol FAILED! There was no content at all in the file log/4/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/4/ dir after test 3104 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/4/valgrind3104 ./libtest/libtests lib3104 http://127.0.0.1:33235/3104 > log/4/stdout3104 2> log/4/stderr3104 === End of file commands.log === Start of file http_server.log 07:36:23.532954 ====> Client connect 07:36:23.532987 accept_connection 3 returned 4 07:36:23.533003 accept_connection 3 returned 0 07:36:23.533017 Read 93 bytes 07:36:23.533027 Process 93 bytes request 07:36:23.533040 Got request: GET /verifiedserver HTTP/1.1 07:36:23.533049 Are-we-friendly question received 07:36:23.533072 Wrote request (93 bytes) input to log/4/server.input 07:36:23.533087 Identifying ourselves as friends 07:36:23.533139 Response sent (56 bytes) and written to log/4/server.response 07:36:23.533149 special request received, no persistency 07:36:23.533157 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:33235... * Connected to 127.0.0.1 (127.0.0.1) port 33235 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:33235 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 75679 === End of file http_verify.out === Start of file server.cmd Testnum 3104 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 75679 === End of file server.response === Start of file stderr3104 URL: http://127.0.0.1:33235/3104 === End of file stderr3104 === Start of file valgrind3104 ==170529== ==170529== Process terminating with default action of signal 4 (SIGILL) ==170529== Illegal opcode at address 0x51C2DB3 ==170529== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==170529== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==170529== by 0x51C2DB3: Curl_open (url.c:541) ==170529== by 0x513D46F: curl_easy_init (easy.c:372) ==170529== by 0x51B0981: curl_share_init (share.c:50) ==170529== by 0x403EC62: test_lib3104.lto_priv.0 (lib3104.c:36) ==170529== by 0x4003443: main (first.c:167) ==170529== 408 bytes in 17 blocks are possibly lost in loss record 605 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x533CFA5: __tsearch (tsearch.c:337) ==170529== by 0x533CFA5: tsearch (tsearch.c:290) ==170529== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170529== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170529== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170529== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170529== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170529== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== ==170529== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x533CFA5: __tsearch (tsearch.c:337) ==170529== by 0x533CFA5: tsearch (tsearch.c:290) ==170529== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170529== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170529== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== ==170529== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170529== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170529== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170529== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170529== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170529== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== ==170529== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170529== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170529== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== ==170529== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==170529== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==170529== by 0x51C2D03: Curl_open (url.c:520) ==170529== by 0x513D46F: curl_easy_init (easy.c:372) ==170529== by 0x51B0981: curl_share_init (share.c:50) ==170529== by 0x403EC62: test_lib3104.lto_priv.0 (lib3104.c:36) ==170529== by 0x4003443: main (first.c:167) ==170529== ==170529== 11,664 bytes in 486 blocks CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3027 ./libtest/libtests lib3027 ftp://127.0.0.1:42651/3027 > log/22/stdout3027 2> log/22/stderr3027 are possibly lost in loss record 652 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x533CFA5: __tsearch (tsearch.c:337) ==170529== by 0x533CFA5: tsearch (tsearch.c:290) ==170529== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170529== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170529== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170529== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170529== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170529== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== ==170529== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==170529== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170529== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170529== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170529== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170529== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170529== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170529== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170529== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170529== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170529== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170529== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170529== by 0x525A142: setlocale (setlocale.c:337) ==170529== by 0x400336E: main (first.c:123) ==170529== === End of file valgrind3104 test 3027...[Get a file via FTP but 550 after MDTM command] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3027 ./libtest/libtests lib3027 ftp://127.0.0.1:42651/3027 > log/22/stdout3027 2> log/22/stderr3027 3027: protocol FAILED! There was no content at all in the file log/22/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/22/ dir after test 3027 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/22/valgrind3027 ./libtest/libtests lib3027 ftp://127.0.0.1:42651/3027 > log/22/stdout3027 2> log/22/stderr3027 === End of file commands.log === Start of file ftp_server.log 07:36:23.532758 ====> Client connect 07:36:23.532865 > "220- _ _ ____ _ [CR][LF]220- ___| | | | _ \| | [CR][LF]220- / __| | | | |_) | | [CR][LF]220- | (__| |_| | _ {| |___ [CR][LF]220 \___|\___/|_| \_\_____|[CR][LF]" 07:36:23.533098 < "USER anonymous" 07:36:23.533129 > "331 We are happy you popped in![CR][LF]" 07:36:23.533269 < "PASS ftp@example.com" 07:36:23.533295 > "230 Welcome you silly person[CR][LF]" 07:36:23.533438 < "PWD" 07:36:23.533468 > "257 "/" is current directory[CR][LF]" 07:36:23.533598 < "EPSV" 07:36:23.533623 ====> Passive DATA channel requested by client 07:36:23.533634 DATA sockfilt for passive data channel starting... 07:36:23.534853 DATA sockfilt for passive data channel started (pid 169964) 07:36:23.534933 DATA sockfilt for passive data channel listens on port 45921 07:36:23.534960 > "229 Entering Passive Mode (|||45921|)[LF]" 07:36:23.534973 Client has been notified that DATA conn will be accepted on port 45921 07:36:23.535123 Client connects to port 45921 07:36:23.535147 ====> Client established passive DATA connection on port 45921 07:36:23.535198 < "TYPE I" 07:36:23.535217 > "200 I modify TYPE as you wanted[CR][LF]" 07:36:23.535325 < "SIZE verifiedserver" 07:36:23.535353 > "213 17[CR][LF]" 07:36:23.535455 < "RETR verifiedserver" 07:36:23.535481 > "150 Binary junk (17 bytes).[CR][LF]" 07:36:23.535538 =====> Closing passive DATA connection... 07:36:23.535549 Server disconnects passive DATA connection 07:36:23.535750 Server disconnected passive DATA connection 07:36:23.535780 DATA sockfilt for passive data channel quits (pid 169964) 07:36:23.536360 DATA sockfilt for passive data channel quit (pid 169964) 07:36:23.536387 =====> Closed passive DATA connection 07:36:23.536413 > "226 File transfer complete[CR][LF]" 07:36:23.580345 < "QUIT" 07:36:23.580385 > "221 bye bye baby[CR][LF]" 07:36:23.581097 MAIN sockfilt said DISC 07:36:23.581121 ====> Client disconnected 07:36:23.581182 Awaiting input === End of file ftp_server.log === Start of file ftp_sockctrl.log 07:36:23.378648 ====> Client connect 07:36:23.378850 Received DATA (on stdin) 07:36:23.378861 > 160 bytes data, server => client 07:36:23.378871 '220- _ _ ____ _ \r\n220- ___| | | | _ \| | ' 07:36:23.378879 ' \r\n220- / __| | | | |_) | | \r\n220- | (__| |_| | ' 07:36:23.378887 '_ {| |___ \r\n220 \___|\___/|_| \_\_____|\r\n' 07:36:23.378947 < 16 bytes data, client => server 07:36:23.378961 'USER anonymous\r\n' 07:36:23.379112 Received DATA (on stdin) 07:36:23.379123 > 33 bytes data, server => client 07:36:23.379133 '331 We are happy you popped in!\r\n' 07:36:23.379189 < 22 bytes data, client => server 07:36:23.379208 'PASS ftp@example.com\r\n' 07:36:23.379276 Received DATA (on stdin) 07:36:23.379298 > 30 bytes data, server => client 07:36:23.379308 '230 Welcome you silly person\r\n' 07:36:23.379355 < 5 bytes data, client => server 07:36:23.379366 'PWD\r\n' 07:36:23.379432 Received DATA (on stdin) 07:36:23.379443 > 30 bytes data, server => client 07:36:23.379453 '257 "/" is current directory\r\n' 07:36:23.379500 < 6 bytes data, client => server 07:36:23.379510 'EPSV\r\n' 07:36:23.380953 Received DATA (on stdin) 07:36:23.380963 > 38 bytes data, server => client 07:36:23.380972 '229 Entering Passive Mode (|||45921|)\n' 07:36:23.381056 < 8 bytes data, client => server 07:36:23.381070 'TYPE I\r\n' 07:36:23.381194 Received DATA (on stdin) 07:36:23.381204 > 33 bytes data, server => client 07:36:23.381212 '200 I modify TYPE as you wanted\r\n' 07:36:23.381252 < 21 bytes data, client => server 07:36:23.381264 'SIZE verifiedserver\r\n' 07:36:23.381330 Received DATA (on stdin) 07:36:23.381338 > 8 bytes data, server => client 07:36:23.381346 '213 17\r\n' 07:36:23.381384 < 21 bytes data, client => server 07:36:23.381396 'RETR verifiedserver\r\n' 07:36:23.381606 Received DATA (on stdin) 07:36:23.381619 > 29 bytes data, server => client 07:36:23.381629 '150 Binary junk (17 bytes).\r\n' 07:36:23.382397 Received DATA (on stdin) 07:36:23.382409 > 28 bytes data, server => client 07:36:23.382420 '226 File transfer complete\r\n' 07:36:23.426163 < 6 bytes data, client => server 07:36:23.426185 'QUIT\r\n' 07:36:23.426364 Received DATA (on stdin) 07:36:23.426373 > 18 bytes data, server => client 07:36:23.426380 '221 bye bye baby\r\n' 07:36:23.427038 ====> Client disconnect 07:36:23.427159 Received ACKD (on stdin) === End of file ftp_sockctrl.log === Start of file ftp_sockdata.log 07:36:23.380674 Running IPv4 version 07:36:23.380724 Listening on port 45921 07:36:23.380771 Wrote pid 169964 to log/22/server/ftp_sockdata.pid 07:36:23.380786 Received PING (on stdin) 07:36:23.380849 Received PORT (on stdin) 07:36:23.381058 ====> Client connect 07:36:23.381528 Received DATA (on stdin) 07:36:23.381541 > 17 bytes data, server => client 07:36:23.381551 'WE ROOLZ: 79849\r\n' 07:36:23.381575 Received DISC (on stdin) 07:36:23.381586 ====> Client forcibly disconnected 07:36:23.381770 Received QUIT (on stdin) 07:36:23.381783 quits 07:36:23.382207 ============> sockfilt quits === End of file ftp_sockdata.log === Start of file server.cmd REPLY MDTM 550 Permission denied Testnum 3027 === End of fCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3017 ../src/curl -q --output log/13/curl3017.out --include --trace log/13/trace3017 --trace-config all --trace-time mqtt://127.0.0.1:33829/3017 -m 3 > log/13/stdout3017 2> log/13/stderr3017 ile server.cmd === Start of file stderr3027 URL: ftp://127.0.0.1:42651/3027 === End of file stderr3027 === Start of file valgrind3027 ==170128== ==170128== Process terminating with default action of signal 4 (SIGILL) ==170128== Illegal opcode at address 0x51C2DB3 ==170128== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==170128== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==170128== by 0x51C2DB3: Curl_open (url.c:541) ==170128== by 0x513D46F: curl_easy_init (easy.c:372) ==170128== by 0x403E279: test_lib3027.lto_priv.0 (lib3027.c:36) ==170128== by 0x4003443: main (first.c:167) ==170128== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x533CFA5: __tsearch (tsearch.c:337) ==170128== by 0x533CFA5: tsearch (tsearch.c:290) ==170128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== ==170128== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x533CFA5: __tsearch (tsearch.c:337) ==170128== by 0x533CFA5: tsearch (tsearch.c:290) ==170128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== ==170128== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170128== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170128== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== ==170128== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170128== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170128== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== ==170128== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==170128== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==170128== by 0x51C2D03: Curl_open (url.c:520) ==170128== by 0x513D46F: curl_easy_init (easy.c:372) ==170128== by 0x403E279: test_lib3027.lto_priv.0 (lib3027.c:36) ==170128== by 0x4003443: main (first.c:167) ==170128== ==170128== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x533CFA5: __tsearch (tsearch.c:337) ==170128== by 0x533CFA5: tsearch (tsearch.c:290) ==170128== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== ==170128== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==170128== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170128== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170128== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170128== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170128== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170128== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170128== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170128== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170128== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170128== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170128== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170128== by 0x525A142: setlocale (setlocale.c:337) ==170128== by 0x400336E: main (first.c:123) ==170128== === End of file valgrind3027 startnew: ./server/servers mqttd --port 0 --pidfile log/13/server/mqtt_server.pid --portfile log/13/server/mqtt_server.port --config log/13/server.cmd --logfile log/13/mqtt_server.log --logdir log/13 RUN: MQTT server is now running PID 169149 on PORT 33829 * pid mqtt => 169149 169149 test 3017...[MQTT SUBSCRIBE with pathological PUBLISH length] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3017 ../src/curl -q --output log/13/curl3017.out --include --trace log/13/trace3017 --trace-config all --trace-time mqtt://127.0.0.1:33829/3017 -m 3 > log/13/stdout3017 2> log/13/stderr3017 3017: protocol FAILED! There was no content at all in the file log/13/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/13/ dir after test 3017 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/13/valgrind3017 ../src/curl -q --output log/13/curl3017.out --include --trace log/13/trace3017 --trace-config all --trace-time mqtt://127.0.0.1:33829/3017 -m 3 > log/13/stdout3017 2> log/13/stderr3017 === End of file commands.log === Start of file mqtt_server.log 07:36:23.950820 Running IPv4 version 07:36:23.950894 Listening on port 33829 07:36:23.950928 Wrote pid 169149 to log/13/server/mqtt_server.pid 07:36:23.950958 Wrote port 33829 to log/13/sCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind3105 ./libtest/libtests lib3105 - > log/14/stdout3105 2> log/14/stderr3105 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3101 ./libtest/libtests lib3101 http://127.0.0.1:37285/3101 > log/12/stdout3101 2> log/12/stderr3101 erver/mqtt_server.port === End of file mqtt_server.log === Start of file server.cmd excessive-remaining TRUE Testnum 3017 === End of file server.cmd === Start of file valgrind3017 ==170907== ==170907== Process terminating with default action of signal 4 (SIGILL) ==170907== Illegal opcode at address 0x4003082 ==170907== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==170907== by 0x4003082: main (tool_main.c:234) === End of file valgrind3017 * starts no server test 3105...[curl_multi_remove_handle twice] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind3105 ./libtest/libtests lib3105 - > log/14/stdout3105 2> log/14/stderr3105 libtests returned 132, when expecting 0 3105: exit FAILED == Contents of files in the log/14/ dir after test 3105 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/14/valgrind3105 ./libtest/libtests lib3105 - > log/14/stdout3105 2> log/14/stderr3105 === End of file commands.log === Start of file server.cmd Testnum 3105 === End of file server.cmd === Start of file stderr3105 URL: - === End of file stderr3105 === Start of file valgrind3105 ==170471== ==170471== Process terminating with default action of signal 4 (SIGILL) ==170471== Illegal opcode at address 0x518AA97 ==170471== at 0x518AA97: UnknownInlinedFun (string_fortified.h:59) ==170471== by 0x518AA97: UnknownInlinedFun (uint-table.c:43) ==170471== by 0x518AA97: Curl_multi_handle (multi.c:236) ==170471== by 0x403A96E: UnknownInlinedFun (lib3105.c:38) ==170471== by 0x403A96E: test_lib3105.lto_priv.0 (lib3105.c:28) ==170471== by 0x4003443: main (first.c:167) ==170471== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x533CFA5: __tsearch (tsearch.c:337) ==170471== by 0x533CFA5: tsearch (tsearch.c:290) ==170471== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170471== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170471== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170471== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170471== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170471== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== ==170471== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x533CFA5: __tsearch (tsearch.c:337) ==170471== by 0x533CFA5: tsearch (tsearch.c:290) ==170471== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170471== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170471== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== ==170471== 648 bytes in 1 blocks are possibly lost in loss record 614 of 655 ==170471== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==170471== by 0x518A9F4: Curl_multi_handle (multi.c:227) ==170471== by 0x403A96E: UnknownInlinedFun (lib3105.c:38) ==170471== by 0x403A96E: test_lib3105.lto_priv.0 (lib3105.c:28) ==170471== by 0x4003443: main (first.c:167) ==170471== ==170471== 681 bytes in 17 blocks are possibly lost in loss record 615 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170471== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170471== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170471== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170471== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170471== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== ==170471== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170471== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170471== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== ==170471== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x533CFA5: __tsearch (tsearch.c:337) ==170471== by 0x533CFA5: tsearch (tsearch.c:290) ==170471== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170471== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170471== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170471== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170471== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170471== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== ==170471== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==170471== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170471== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170471== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170471== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170471== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170471== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170471== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170471== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170471== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170471== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170471== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170471== by 0x525A142: setlocale (setlocale.c:337) ==170471== by 0x400336E: main (first.c:123) ==170471== === End of file valgrind3105 test 3101...[HTTP auth without redirection protocols] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3101 ./libtest/libtests lib3101 http://127.0.0.1:37285/3101 > log/12/stdout3101 2> log/12/stderr3101 3101: protocol FAILED! There was no content at all in the file log/12/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/12/ dir after test 3101 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/12/valgrind3101 ./libtest/libtests lib3101 http://127.0.0.1:37285/3101 > log/12/stdout3101 2> log/12/stderr3101 === End of file commands.log === Start of file http_server.log 07:36:23.509538 ====> Client connect 07:36:23.509570 accept_connection 3 returned 4 07:36:23.509585 accept_connection 3 returned 0 07:36:23.509599 Read 93 bytes 07:36:23.509608 Process 93 bytes request 07:36:23.509621 Got request: GET /verifiedserver HTTP/1.1 07:36:23.509640 Are-we-friendly question received 07:36:23.509668 Wrote request (93 bytes) input to log/12/server.input 07:36:23.509686 Identifying ourselves as friends 07:36:23.509738 Response sent (56 bytes) and written to log/12/server.response 07:36:23.509748 special request received, no persistency 07:36:23.509756 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:37285... * Connected to 127.0.0.1 (127.0.0.1) port 37285 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:37285 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 17 < { [17 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 73851 === End of file http_verify.out === Start of file server.cmd Testnum 3101 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 17 WE ROOLZ: 73851 === End of file server.response === Start of file stderr3101 URL: http://127.0.0.1:37285/3101 === End of file stderr3101 === Start of file valgrind3101 ==170428== ==170428== Process terminating with default action of signal 4 (SIGILL) ==170428== Illegal opcode at address 0x51C2DB3 ==170428== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==170428== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==170428== by 0x51C2DB3: Curl_open (url.c:541) ==170428== by 0x513D46F: curl_easy_init (easy.c:372) ==170428== by 0x403A56A: test_lib3101.lto_priv.0 (lib3101.c:38) ==170428== by 0x4003443: main (first.c:167) ==170428== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x533CFA5: __tsearch (tsearch.c:337) ==170428== by 0x533CFA5: tsearch (tsearch.c:290) ==170428== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170428== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170428== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170428== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170428== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170428== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== ==170428== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x533CFA5: __tsearch (tsearch.c:337) ==170428== by 0x533CFA5: tsearch (tsearch.c:290) ==170428== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170428== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170428== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== ==170428== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170428== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170428== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170428== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170428== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170428== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== ==170428== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170428== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170428== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== ==170428== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==170428== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==170428== by 0x51C2D03: Curl_open (url.c:520) ==170428== by 0x513D46F: curl_easy_init (easy.c:372) ==170428== by 0x403A56A: test_lib3101.lto_priv.0 (lib3101.c:38) ==170428== by 0x4003443: main (first.c:167) ==170428== ==170428== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x533CFA5: __tsearch (tsearch.c:337) ==170428== by 0x533CFA5: tsearch (tsearch.c:290) ==170428== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170428== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170428== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170428== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170428== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170428== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== ==170428== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==170428== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170428== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170428== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170428== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170428== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170428== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170428== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170428== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3103 ./libtest/libtests lib3103 http://127.0.0.1:43423/3103 > log/7/stdout3103 2> log/7/stderr3103 once.c:116) ==170428== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170428== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170428== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170428== by 0x525A142: setlocale (setlocale.c:337) ==170428== by 0x400336E: main (first.c:123) ==170428== === End of file valgrind3101 test 3103...[CURLOPT_COOKIELIST without expiry] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3103 ./libtest/libtests lib3103 http://127.0.0.1:43423/3103 > log/7/stdout3103 2> log/7/stderr3103 3103: protocol FAILED! There was no content at all in the file log/7/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/7/ dir after test 3103 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/7/valgrind3103 ./libtest/libtests lib3103 http://127.0.0.1:43423/3103 > log/7/stdout3103 2> log/7/stderr3103 === End of file commands.log === Start of file http_server.log 07:36:23.521721 ====> Client connect 07:36:23.521757 accept_connection 3 returned 4 07:36:23.521774 accept_connection 3 returned 0 07:36:23.521789 Read 93 bytes 07:36:23.521799 Process 93 bytes request 07:36:23.521817 Got request: GET /verifiedserver HTTP/1.1 07:36:23.521826 Are-we-friendly question received 07:36:23.521851 Wrote request (93 bytes) input to log/7/server.input 07:36:23.521867 Identifying ourselves as friends 07:36:23.521924 Response sent (57 bytes) and written to log/7/server.response 07:36:23.521936 special request received, no persistency 07:36:23.521945 ====> Client disconnect 0 === End of file http_server.log === Start of file http_verify.log * Trying 127.0.0.1:43423... * Connected to 127.0.0.1 (127.0.0.1) port 43423 * using HTTP/1.x > GET /verifiedserver HTTP/1.1 > Host: 127.0.0.1:43423 > User-Agent: curl/8.15.0 > Accept: */* > * Request completely sent off < HTTP/1.1 200 OK < Content-Length: 18 < { [18 bytes data] * Connection #0 to host 127.0.0.1 left intact === End of file http_verify.log === Start of file http_verify.out WE ROOLZ: 144614 === End of file http_verify.out === Start of file server.cmd Testnum 3103 === End of file server.cmd === Start of file server.response HTTP/1.1 200 OK Content-Length: 18 WE ROOLZ: 144614 === End of file server.response === Start of file stderr3103 URL: http://127.0.0.1:43423/3103 === End of file stderr3103 === Start of file valgrind3103 ==170480== ==170480== Process terminating with default action of signal 4 (SIGILL) ==170480== Illegal opcode at address 0x51C2DB3 ==170480== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==170480== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==170480== by 0x51C2DB3: Curl_open (url.c:541) ==170480== by 0x513D46F: curl_easy_init (easy.c:372) ==170480== by 0x51B0981: curl_share_init (share.c:50) ==170480== by 0x403EAE2: test_lib3103.lto_priv.0 (lib3103.c:36) ==170480== by 0x4003443: main (first.c:167) ==170480== 408 bytes in 17 blocks are possibly lost in loss record 605 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x533CFA5: __tsearch (tsearch.c:337) ==170480== by 0x533CFA5: tsearch (tsearch.c:290) ==170480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170480== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170480== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== ==170480== 552 bytes in 23 blocks are possibly lost in loss record 609 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x533CFA5: __tsearch (tsearch.c:337) ==170480== by 0x533CFA5: tsearch (tsearch.c:290) ==170480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170480== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170480== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== ==170480== 681 bytes in 17 blocks are possibly lost in loss record 615 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170480== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170480== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== ==170480== 1,018 bytes in 23 blocks are possibly lost in loss record 630 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170480== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==170480== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== ==170480== 5,480 bytes in 1 blocks are definitely lost in loss record 649 of 656 ==170480== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==170480== by 0x51C2D03: Curl_open (url.c:520) ==170480== by 0x513D46F: curl_easy_init (easy.c:372) ==170480== by 0x51B0981: curl_share_init (share.c:50) ==170480== by 0x403EAE2: test_lib3103.lto_priv.0 (lib3103.c:36) ==170480== by 0x4003443: main (first.c:167) ==170480== ==170480== 11,664 bytes in 486 blocks are possibly lost in loss record 652 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x533CFA5: __tsearch (tsearch.c:337) ==170480== by 0x533CFA5: tsearch (tsearch.c:290) ==170480== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==170480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170480== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170480== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_findCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind3209 ../src/curl -q --output log/24/curl3209.out --include --trace-ascii log/24/trace3209 --trace-config all --trace-time imap://127.0.0.1:38951/3209 -T log/24/upload3209 -u user:secret --upload-flags answered,deleted,draft,flagged,seen > log/24/stdout3209 2> log/24/stderr3209 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3210 ../src/curl -q --output log/21/curl3210.out --include --trace-ascii log/21/trace3210 --trace-config all --trace-time imap://127.0.0.1:41463/3210 -T log/21/upload3210 -u user:secret --upload-flags -seen > log/21/stdout3210 2> log/21/stderr3210 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3211 ./unit/units unit3211 - > log/10/stdout3211 2> log/10/stderr3211 _locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== ==170480== 18,800 bytes in 486 blocks are possibly lost in loss record 654 of 656 ==170480== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==170480== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==170480== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==170480== by 0x524F3F0: add_alias (gconv_conf.c:178) ==170480== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170480== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170480== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==170480== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170480== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170480== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==170480== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==170480== by 0x525A142: setlocale (setlocale.c:337) ==170480== by 0x400336E: main (first.c:123) ==170480== === End of file valgrind3103 test 3209...[Upload message via IMAP with upload flags] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind3209 ../src/curl -q --output log/24/curl3209.out --include --trace-ascii log/24/trace3209 --trace-config all --trace-time imap://127.0.0.1:38951/3209 -T log/24/upload3209 -u user:secret --upload-flags answered,deleted,draft,flagged,seen > log/24/stdout3209 2> log/24/stderr3209 3209: protocol FAILED! There was no content at all in the file log/24/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/24/ dir after test 3209 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/24/valgrind3209 ../src/curl -q --output log/24/curl3209.out --include --trace-ascii log/24/trace3209 --trace-config all --trace-time imap://127.0.0.1:38951/3209 -T log/24/upload3209 -u user:secret --upload-flags answered,deleted,draft,flagged,seen > log/24/stdout3209 2> log/24/stderr3209 === End of file commands.log === Start of file imap_server.log 07:36:24.197170 ====> Client connect 07:36:24.197356 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:24.197632 < "A001 CAPABILITY" 07:36:24.197666 > "A001 BAD Command[CR][LF]" 07:36:24.198380 < "A002 LIST "verifiedserver" *" 07:36:24.198406 LIST_imap got "verifiedserver" * 07:36:24.198428 > "* LIST () "/" "WE ROOLZ: 115313"[CR][LF]" 07:36:24.198444 > "A002 OK LIST Completed[CR][LF]" 07:36:24.198456 return proof we are we 07:36:24.248589 < "A003 LOGOUT" 07:36:24.248683 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:24.248705 > "A003 OK LOGOUT completed[CR][LF]" 07:36:24.249905 MAIN sockfilt said DISC 07:36:24.249941 ====> Client disconnected 07:36:24.250022 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:24.042747 ====> Client connect 07:36:24.043349 Received DATA (on stdin) 07:36:24.043364 > 178 bytes data, server => client 07:36:24.043375 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:24.043385 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:24.043394 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:24.043403 'rve\r\n' 07:36:24.043470 < 17 bytes data, client => server 07:36:24.043481 'A001 CAPABILITY\r\n' 07:36:24.043971 Received DATA (on stdin) 07:36:24.043984 > 18 bytes data, server => client 07:36:24.043994 'A001 BAD Command\r\n' 07:36:24.044269 < 30 bytes data, client => server 07:36:24.044282 'A002 LIST "verifiedserver" *\r\n' 07:36:24.044436 Received DATA (on stdin) 07:36:24.044446 > 34 bytes data, server => client 07:36:24.044457 '* LIST () "/" "WE ROOLZ: 115313"\r\n' 07:36:24.044476 Received DATA (on stdin) 07:36:24.044485 > 24 bytes data, server => client 07:36:24.044494 'A002 OK LIST Completed\r\n' 07:36:24.094318 < 13 bytes data, client => server 07:36:24.094336 'A003 LOGOUT\r\n' 07:36:24.094937 Received DATA (on stdin) 07:36:24.094950 > 36 bytes data, server => client 07:36:24.094962 '* BYE curl IMAP server signing off\r\n' 07:36:24.094992 Received DATA (on stdin) 07:36:24.095002 > 26 bytes data, server => client 07:36:24.095012 'A003 OK LOGOUT completed\r\n' 07:36:24.095809 ====> Client disconnect 07:36:24.096009 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 3209 === End of file server.cmd === Start of file upload3209 Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) From: Fred Foobar Subject: afternoon meeting To: joe@example.com Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Hello Joe, do you think we can meet at 3:30 tomorrow? === End of file upload3209 === Start of file valgrind3209 ==171022== ==171022== Process terminating with default action of signal 4 (SIGILL) ==171022== Illegal opcode at address 0x4003082 ==171022== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==171022== by 0x4003082: main (tool_main.c:234) === End of file valgrind3209 test 3210...[Upload message unread via IMAP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3210 ../src/curl -q --output log/21/curl3210.out --include --trace-ascii log/21/trace3210 --trace-config all --trace-time imap://127.0.0.1:41463/3210 -T log/21/upload3210 -u user:secret --upload-flags -seen > log/21/stdout3210 2> log/21/stderr3210 3210: protocol FAILED! There was no content at all in the file log/21/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/21/ dir after test 3210 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/21/valgrind3210 ../src/curl -q --output log/21/curl3210.out --include --trace-ascii log/21/trace3210 --trace-config all --trace-time imap://127.0.0.1:41463/3210 -T log/21/upload3210 -u user:secret --upload-flags -seen > log/21/stdout3210 2> log/21/stderr3210 === End of file commands.log === Start of file imap_server.log 07:36:24.196858 ====> Client connect 07:36:24.197009 > " _ _ ____ _ [CR][LF] ___| | | | _ \| | [CR][LF] / __| | | | |_) | | [CR][LF] | (__| |_| | _ {| |___ [CR][LF] \___|\___/|_| \_\_____|[CR][LF]* OK curl IMAP server ready to serve[CR][LF]" 07:36:24.197854 < "A001 CAPABILITY" 07:36:24.197889 > "A001 BAD Command[CR][LF]" 07:36:24.198090 < "A002 LIST "verifiedserver" *" 07:36:24.198117 LIST_imap got "verifiedserver" * 07:36:24.198139 > "* LIST () "/" "WE ROOLZ: 115291"[CR][LF]" 07:36:24.198155 > "A002 OK LIST Completed[CR][LF]" 07:36:24.198167 return proof we are we 07:36:24.246965 < "A003 LOGOUT" 07:36:24.247052 > "* BYE curl IMAP server signing off[CR][LF]" 07:36:24.247075 > "A003 OK LOGOUT completed[CR][LF]" 07:36:24.248752 MAIN sockfilt said DISC 07:36:24.248817 ====> Client disconnected 07:36:24.248946 Awaiting input === End of file imap_server.log === Start of file imap_sockfilt.log 07:36:24.042654 ====> Client connect 07:36:24.043005 Received DATA (on stdin) 07:36:24.043020 > 178 bytes data, server => client 07:36:24.043032 ' _ _ ____ _ \r\n ___| | | | _ \| | \r\n ' 07:36:24.043042 ' / __| | | | |_) | | \r\n | (__| |_| | _ {| |___ \r\n ' 07:36:24.043052 ' \___|\___/|_| \_\_____|\r\n* OK curl IMAP server ready to se' 07:36:24.043061 'rve\r\n' 07:36:24.043692 < 17 bytes data, client => server 07:36:24.043706 'A001 CAPABILITY\r\n' 07:36:24.043871 Received DATA (on stdin) 07:36:24.043882 > 18 bytes data, server => client 07:36:24.043892 'A001 BAD Command\r\n' 07:36:24.043944 < 30 bytes data, client => server 07:36:24.043956 'A002 LIST "verifiedserver" *\r\n' 07:36:24.044146 Received DATA (on stdin) 07:36:24.044157 > 34 bytes data, server => client 07:36:24.044167 '* LIST () "/" "WE ROOLZ: 115291"\r\n' 07:36:24.044186 Received DATA (on stdin) 07:36:24.044195 > 24 bytes data, server => client 07:36:24.044205 'A002 OK LIST Completed\r\n' 07:36:24.092680 < 13 bytes data, client => server 07:36:24.092730 'A003 LOGOUT\r\n' 07:36:24.093062 Received DATA (on stdin) 07:36:24.093075 > 36 bytes data, server => client 07:36:24.093087 '* BYE curl IMAP server signing off\r\n' 07:36:24.093117 Received DATA (on stdin) 07:36:24.093129 > 26 bytes data, server => client 07:36:24.093139 'A003 OK LOGOUT completed\r\n' 07:36:24.094273 ====> Client disconnect 07:36:24.095835 Received ACKD (on stdin) === End of file imap_sockfilt.log === Start of file server.cmd Testnum 3210 === End of file server.cmd === Start of file upload3210 Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) From: Fred Foobar Subject: afternoon meeting To: joe@example.com Message-Id: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. === End of file upload3210 === Start of file valgrind3210 ==171051== ==171051== Process terminating with default action of signal 4 (SIGILL) ==171051== Illegal opcode at address 0x4003082 ==171051== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==171051== by 0x4003082: main (tool_main.c:234) === End of file valgrind3210 * starts no server test 3211...[uint_bset unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3211 ./unit/units unit3211 - > log/10/stdout3211 2> log/10/stderr3211 units returned 132, when expecting 0 3211: exit FAILED == Contents of files in the log/10/ dir after test 3211 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/10/valgrind3211 ./unit/units unit3211 - > log/10/stdout3211 2> log/10/stderr3211 === End of file commands.log === Start of file server.cmd Testnum 3211 === End of file server.cmd === Start of file stderr3211 URL: - test s1, capacity=100, 10 numbers === End of file stderr3211 === Start of file valgrind3211 ==170925== ==170925== Process terminating with default action of signal 4 (SIGILL) ==170925== Illegal opcode at address 0x4021FA5 ==170925== at 0x4021FA5: UnknownInlinedFun (string_fortified.h:59) ==170925== by 0x4021FA5: UnknownInlinedFun (uint-bset.c:109) ==170925== by 0x4021FA5: UnknownInlinedFun (unit3211.c:44) ==170925== by 0x4021FA5: test_unit3211 (unit3211.c:142) ==170925== by 0x400A15E: main (first.c:167) ==170925== 16 bytes in 1 blocks are definitely lost in loss record 2 of 30 ==170925== at 0x498DC13: calloc (vg_replace_malloc.c:1675) ==170925== by 0x4021F87: UnknownInlinedFun (uint-bset.c:53) ==170925== by 0x4021F87: UnknownInlinedFun (unit3211.c:40) ==170925== by 0x4021F87: test_unit3211 (unit3211.c:142) ==170925== by 0x400A15E: main (first.c:167) ==170925== ==170925== 408 bytes in 17 blocks are possibly lost in loss record 10 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x532FFA5: __tsearch (tsearch.c:337) ==170925== by 0x532FFA5: tsearch (tsearch.c:290) ==170925== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170925== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170925== by 0x52423F0: add_alias (gconv_conf.c:178) ==170925== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170925== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170925== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0x400A0CB: main (first.c:123) ==170925== ==170925== 552 bytes in 23 blocks are possibly lost in loss record 12 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x532FFA5: __tsearch (tsearch.c:337) ==170925== by 0x532FFA5: tsearch (tsearch.c:290) ==170925== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170925== by 0x524274A: add_alias2 (gconv_conf.c:105) ==170925== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0x400A0CB: main (first.c:123) ==170925== ==170925== 681 bytes in 17 blocks are possibly lost in loss record 15 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170925== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170925== by 0x52423F0: add_alias (gconv_conf.c:178) ==170925== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170925== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170925== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0x400A0CB: main (first.c:123) ==170925== ==170925== 1,018 bytes in 23 blocks are possibly lost in loss record 20 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170925== by 0x524274A: add_alias2 (gconv_conf.c:105) ==170925== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0x400A0CB: main (first.c:123) ==170925== ==170925== 11,664 bytes in 486 blocks are possibly lost in loss record 27 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x532FFA5: __tsearch (tsearch.c:337) ==170925== by 0x532FFA5: tsearch (tsearch.c:290) ==170925== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170925== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170925== by 0x52423F0: add_alias (gconv_conf.c:178) ==170925== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170925== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170925== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3212 ./unit/units unit3212 - > log/20/stdout3212 2> log/20/stderr3212 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3213 ./unit/units unit3213 - > log/3/stdout3213 2> log/3/stderr3213 x400A0CB: main (first.c:123) ==170925== ==170925== 18,800 bytes in 486 blocks are possibly lost in loss record 29 of 30 ==170925== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170925== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170925== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170925== by 0x52423F0: add_alias (gconv_conf.c:178) ==170925== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170925== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170925== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==170925== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170925== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170925== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170925== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170925== by 0x524D142: setlocale (setlocale.c:337) ==170925== by 0x400A0CB: main (first.c:123) ==170925== === End of file valgrind3211 * starts no server test 3212...[uint_bset unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3212 ./unit/units unit3212 - > log/20/stdout3212 2> log/20/stderr3212 units returned 132, when expecting 0 3212: exit FAILED == Contents of files in the log/20/ dir after test 3212 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/20/valgrind3212 ./unit/units unit3212 - > log/20/stdout3212 2> log/20/stderr3212 === End of file commands.log === Start of file server.cmd Testnum 3212 === End of file server.cmd === Start of file stderr3212 URL: - === End of file stderr3212 === Start of file valgrind3212 ==170996== ==170996== Process terminating with default action of signal 4 (SIGILL) ==170996== Illegal opcode at address 0x40251B5 ==170996== at 0x40251B5: UnknownInlinedFun (string_fortified.h:59) ==170996== by 0x40251B5: UnknownInlinedFun (uint-table.c:43) ==170996== by 0x40251B5: UnknownInlinedFun (unit3212.c:35) ==170996== by 0x40251B5: test_unit3212 (unit3212.c:49) ==170996== by 0x400A15E: main (first.c:167) ==170996== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x532FFA5: __tsearch (tsearch.c:337) ==170996== by 0x532FFA5: tsearch (tsearch.c:290) ==170996== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170996== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170996== by 0x52423F0: add_alias (gconv_conf.c:178) ==170996== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170996== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170996== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== ==170996== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x532FFA5: __tsearch (tsearch.c:337) ==170996== by 0x532FFA5: tsearch (tsearch.c:290) ==170996== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170996== by 0x524274A: add_alias2 (gconv_conf.c:105) ==170996== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== ==170996== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170996== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170996== by 0x52423F0: add_alias (gconv_conf.c:178) ==170996== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170996== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==170996== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== ==170996== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170996== by 0x524274A: add_alias2 (gconv_conf.c:105) ==170996== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== ==170996== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x532FFA5: __tsearch (tsearch.c:337) ==170996== by 0x532FFA5: tsearch (tsearch.c:290) ==170996== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==170996== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170996== by 0x52423F0: add_alias (gconv_conf.c:178) ==170996== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170996== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170996== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== ==170996== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==170996== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==170996== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==170996== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==170996== by 0x52423F0: add_alias (gconv_conf.c:178) ==170996== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==170996== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==170996== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==170996== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==170996== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==170996== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==170996== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==170996== by 0x524D142: setlocale (setlocale.c:337) ==170996== by 0x400A0CB: main (first.c:123) ==170996== === End of file valgrind3212 * starts no server test 3213...[uint_spbset unit tests] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3CMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3214 ./unit/units unit3214 - > log/15/stdout3214 2> log/15/stderr3214 CMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3202 ../src/curl -q --output log/2/curl3202.out --include --trace-ascii log/2/trace3202 --trace-config all --trace-time -g "http://[::1]:34845/3202" --haproxy-clientip "2001:db8::" > log/2/stdout3202 2> log/2/stderr3202 213 ./unit/units unit3213 - > log/3/stdout3213 2> log/3/stderr3213 units returned 132, when expecting 0 3213: exit FAILED == Contents of files in the log/3/ dir after test 3213 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/3/valgrind3213 ./unit/units unit3213 - > log/3/stdout3213 2> log/3/stderr3213 === End of file commands.log === Start of file server.cmd Testnum 3213 === End of file server.cmd === Start of file stderr3213 URL: - test s1, 10 numbers === End of file stderr3213 === Start of file valgrind3213 ==171011== ==171011== Process terminating with default action of signal 4 (SIGILL) ==171011== Illegal opcode at address 0x402A537 ==171011== at 0x402A537: UnknownInlinedFun (string_fortified.h:59) ==171011== by 0x402A537: UnknownInlinedFun (uint-spbset.c:43) ==171011== by 0x402A537: UnknownInlinedFun (unit3213.c:39) ==171011== by 0x402A537: test_unit3213 (unit3213.c:116) ==171011== by 0x400A15E: main (first.c:167) ==171011== 408 bytes in 17 blocks are possibly lost in loss record 9 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x532FFA5: __tsearch (tsearch.c:337) ==171011== by 0x532FFA5: tsearch (tsearch.c:290) ==171011== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==171011== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==171011== by 0x52423F0: add_alias (gconv_conf.c:178) ==171011== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171011== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==171011== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== ==171011== 552 bytes in 23 blocks are possibly lost in loss record 11 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x532FFA5: __tsearch (tsearch.c:337) ==171011== by 0x532FFA5: tsearch (tsearch.c:290) ==171011== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==171011== by 0x524274A: add_alias2 (gconv_conf.c:105) ==171011== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== ==171011== 681 bytes in 17 blocks are possibly lost in loss record 14 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==171011== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==171011== by 0x52423F0: add_alias (gconv_conf.c:178) ==171011== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171011== by 0x5242555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==171011== by 0x5242555: __gconv_read_conf (gconv_conf.c:480) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== ==171011== 1,018 bytes in 23 blocks are possibly lost in loss record 19 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==171011== by 0x524274A: add_alias2 (gconv_conf.c:105) ==171011== by 0x524274A: __gconv_read_conf (gconv_conf.c:508) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== ==171011== 11,664 bytes in 486 blocks are possibly lost in loss record 26 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x532FFA5: __tsearch (tsearch.c:337) ==171011== by 0x532FFA5: tsearch (tsearch.c:290) ==171011== by 0x52420F4: add_alias2.part.0 (gconv_conf.c:142) ==171011== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==171011== by 0x52423F0: add_alias (gconv_conf.c:178) ==171011== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171011== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==171011== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== ==171011== 18,800 bytes in 486 blocks are possibly lost in loss record 28 of 29 ==171011== at 0x49867A8: malloc (vg_replace_malloc.c:446) ==171011== by 0x52420A9: add_alias2.part.0 (gconv_conf.c:132) ==171011== by 0x52423F0: add_alias2 (gconv_conf.c:176) ==171011== by 0x52423F0: add_alias (gconv_conf.c:178) ==171011== by 0x52423F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171011== by 0x5242775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==171011== by 0x5242775: __gconv_read_conf (gconv_conf.c:480) ==171011== by 0x52B2CB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171011== by 0x52B2D28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171011== by 0x5241246: __gconv_compare_alias (gconv_db.c:692) ==171011== by 0x524AA3D: _nl_find_locale (findlocale.c:298) ==171011== by 0x524D142: setlocale (setlocale.c:337) ==171011== by 0x400A0CB: main (first.c:123) ==171011== === End of file valgrind3213 * starts no server test 3214...[struct size checks] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/15/valgrind3214 ./unit/units unit3214 - > log/15/stdout3214 2> log/15/stderr3214 -------e-v- OK (1707 out of 1707, remaining: 00:00, took 0.948s, duration: 01:36) startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http-server.pl --keepalive 30 --pidfile "log/2/server/http_ipv6_server.pid" --logfile "log/2/http_ipv6_server.log" --logdir "log/2" --portfile log/2/server/http_ipv6_server.port --config log/2/server.cmd --ipv6 --port 0 --srcdir "/startdir/src/curl/tests" RUN: HTTP-IPv6 server is on PID 170464 port 34845 * pid http-ipv6 => 170464 170464 test 3202...[HTTP-IPv6 GET with PROXY protocol with spoofed client IP] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3202 ../src/curl -q --output log/2/curl3202.out --include --trace-ascii log/2/trace3202 --trace-config all --trace-time -g "http://[::1]:34845/3202" --haproxy-clientip "2001:db8::" > log/2/stdout3202 2> log/2/stderr3202 3202: protocol FAILED! There was no content at all in the file log/2/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/2/ dir after test 3202 === StaCMD (33792): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3100 ./libtest/libtests lib3100 rtsp://127.0.0.1:38007/3100 > log/5/stdout3100 2> log/5/stderr3100 rt of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/2/valgrind3202 ../src/curl -q --output log/2/curl3202.out --include --trace-ascii log/2/trace3202 --trace-config all --trace-time -g "http://[::1]:34845/3202" --haproxy-clientip "2001:db8::" > log/2/stdout3202 2> log/2/stderr3202 === End of file commands.log === Start of file http_ipv6_server.log 07:36:23.554229 Running HTTP IPv6 version on port 34845 07:36:23.554297 Wrote pid 170464 to log/2/server/http_ipv6_server.pid 07:36:23.554322 Wrote port 34845 to log/2/server/http_ipv6_server.port === End of file http_ipv6_server.log === Start of file server.cmd Testnum 3202 === End of file server.cmd === Start of file valgrind3202 ==171269== ==171269== Process terminating with default action of signal 4 (SIGILL) ==171269== Illegal opcode at address 0x4003082 ==171269== at 0x4003082: UnknownInlinedFun (string_fortified.h:59) ==171269== by 0x4003082: main (tool_main.c:234) === End of file valgrind3202 startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/rtspserver.pl --pidfile "log/5/server/rtsp_server.pid" --portfile "log/5/server/rtsp_server.port" --logfile "log/5/rtsp_server.log" --logdir "log/5" --ipv4 --port 0 --srcdir "/startdir/src/curl/tests" RUN: RTSP server PID 170205 port 38007 * pid rtsp => 170205 170205 test 3100...[RTSP Authentication check] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3100 ./libtest/libtests lib3100 rtsp://127.0.0.1:38007/3100 > log/5/stdout3100 2> log/5/stderr3100 3100: protocol FAILED! There was no content at all in the file log/5/server.input. Server glitch? Total curl failure? Returned: 132 == Contents of files in the log/5/ dir after test 3100 === Start of file commands.log ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/5/valgrind3100 ./libtest/libtests lib3100 rtsp://127.0.0.1:38007/3100 > log/5/stdout3100 2> log/5/stderr3100 === End of file commands.log === Start of file rtsp_server.log 07:36:23.478329 Running IPv4 version on port 38007 07:36:23.478395 Wrote pid 170205 to log/5/server/rtsp_server.pid 07:36:23.478419 Wrote port 38007 to log/5/server/rtsp_server.port === End of file rtsp_server.log === Start of file server.cmd Testnum 3100 === End of file server.cmd === Start of file stderr3100 URL: rtsp://127.0.0.1:38007/3100 === End of file stderr3100 === Start of file valgrind3100 ==171248== ==171248== Process terminating with default action of signal 4 (SIGILL) ==171248== Illegal opcode at address 0x51C2DB3 ==171248== at 0x51C2DB3: UnknownInlinedFun (string_fortified.h:59) ==171248== by 0x51C2DB3: UnknownInlinedFun (request.c:46) ==171248== by 0x51C2DB3: Curl_open (url.c:541) ==171248== by 0x513D46F: curl_easy_init (easy.c:372) ==171248== by 0x403A3AA: test_lib3100.lto_priv.0 (lib3100.c:38) ==171248== by 0x4003443: main (first.c:167) ==171248== 408 bytes in 17 blocks are possibly lost in loss record 604 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x533CFA5: __tsearch (tsearch.c:337) ==171248== by 0x533CFA5: tsearch (tsearch.c:290) ==171248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==171248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==171248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==171248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171248== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==171248== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (setlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== ==171248== 552 bytes in 23 blocks are possibly lost in loss record 608 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x533CFA5: __tsearch (tsearch.c:337) ==171248== by 0x533CFA5: tsearch (tsearch.c:290) ==171248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==171248== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==171248== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (setlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== ==171248== 681 bytes in 17 blocks are possibly lost in loss record 614 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==171248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==171248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==171248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171248== by 0x524F555: gconv_parseconfdir (gconv_parseconfdir.h:139) ==171248== by 0x524F555: __gconv_read_conf (gconv_conf.c:480) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (setlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== ==171248== 1,018 bytes in 23 blocks are possibly lost in loss record 629 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==171248== by 0x524F74A: add_alias2 (gconv_conf.c:105) ==171248== by 0x524F74A: __gconv_read_conf (gconv_conf.c:508) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (setlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== ==171248== 5,480 bytes in 1 blocks are definitely lost in loss record 648 of 655 ==171248== at 0x50F8C13: calloc (vg_replace_malloc.c:1675) ==171248== by 0x51C2D03: Curl_open (url.c:520) ==171248== by 0x513D46F: curl_easy_init (easy.c:372) ==171248== by 0x403A3AA: test_lib3100.lto_priv.0 (lib3100.c:38) ==171248== by 0x4003443: main (first.c:167) ==171248== ==171248== 11,664 bytes in 486 blocks are possibly lost in loss record 651 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x533CFA5: __tsearch (tsearch.c:337) ==171248== by 0x533CFA5: tsearch (tsearch.c:290) ==171248== by 0x524F0F4: add_alias2.part.0 (gconv_conf.c:142) ==171248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==171248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==171248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171248== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==171248== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (sCMD (0): ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind3026 ./libtest/libtests lib3026 none > log/16/stdout3026 2> log/16/stderr3026 * kill pid for ftp-ctrl => 94157 * kill pid for ftp-ctrl => 133183 * kill pid for ftp-ctrl => 81098 * kill pid for ftp-ctrl => 80126 * kill pid for ftp-ctrl => 87691 * kill pid for ftp-ctrl => 79840 * kill pid for ftp-ctrl => 164400 * kill pid for ftp-ctrl => 80153 * kill pid for ftp-ctrl => 79839 * kill pid for ftp-ctrl => 81376 * kill pid for ftp-ctrl => 80152 * kill pid for ftp-ctrl => 79848 * kill pid for ftp-ctrl => 81946 * kill pid for ftp-ctrl => 79850 * kill pid for ftp-ctrl => 79838 * kill pid for ftp-ctrl => 82064 * kill pid for ftp-ctrl => 79841 * kill pid for ftp-ctrl => 81450 * kill pid for ftp-ctrl => 81659 * kill pid for ftp-ctrl => 79842 * kill pid for ftp-ctrl => 82344 * kill pid for ftp-ctrl => 79846 * kill pid for ftp-ctrl => 88721 * kill pid for ftp-ctrl => 82005 * kill pid for ftp-ipv6-ctrl => 89035 * kill pid for imap-filt => 115221 * kill pid for imap-filt => 115107 * kill pid for ftp-ipv6-ctrl => 89054 * kill pid for imap-filt => 115384 * kill pid for pop3-filt => 118214 * kill pid for imap-filt => 115165 * kill pid for imap-filt => 115382 * kill pid for imap-filt => 157586 * kill pid for imap-filt => 115381 * kill pid for ftp-ipv6-ctrl => 89070 * kill pid for imap-filt => 115369 * kill pid for imap-filt => 115315 * kill pid for ftp-ipv6-ctrl => 89030 * kill pid for imap-filt => 115388 * kill pid for imap-filt => 115317 * kill pid for smtp-filt => 120750 * kill pid for imap-filt => 115319 * kill pid for imap-filt => 115297 * kill pid for imap-filt => 115389 * kill pid for ftp-ipv6-ctrl => 129212 * kill pid for imap-filt => 115320 * kill pid for pop3-filt => 118149 * kill pid for pop3-filt => 118215 * kill pid for smtp-filt => 120761 RUN: Process with pid 73848 signalled to die RUN: Process with pid 89462 signalled to die RUN: Process with pid 105797 signalled to die RUN: Process with pid 111058 signalled to die RUN: Process with pid 114987 signalled to die RUN: Process with pid 118208 signalled to die RUN: Process with pid 120706 signalled to die RUN: Process with pid 133133 signalled to die RUN: Process with pid 137386 signalled to die RUN: Process with pid 151107 signalled to die RUN: Process with pid 164404 signalled to die * kill pid for pop3-filt => 118144 * kill pid for pop3-filt => 118069 * kill pid for imap-filt => 115329 * kill pid for imap-filt => 115316 * kill pid for pop3-filt => 118145 * kill pid for pop3-filt => 118199 * kill pid for pop3-filt => 118211 * kill pid for imap-filt => 116471 * kill pid for imap-filt => 108216 * kill pid for smtp-filt => 121048 * kill pid for imap-filt => 115200 * kill pid for imap-filt => 115383 * kill pid for pop3-filt => 118000 * kill pid for smtp-filt => 108220 * kill pid for smtp-filt => 121050 RUN: Process with pid 79835 signalled to die RUN: Process with pid 89987 signalled to die RUN: Process with pid 102097 signalled to die RUN: Process with pid 111420 signalled to die RUN: Process with pid 115387 signalled to die RUN: Process with pid 117855 signalled to die RUN: Process with pid 121042 signalled to die RUN: Process with pid 130875 signalled to die RUN: Process with pid 157411 signalled to die * kill pid for pop3-filt => 117978 * kill pid for pop3-filt => 118148 * kill pid for pop3-filt => 117839 * kill pid for smtp-filt => 121052 * kill pid for smtp-filt => 120985 * kill pid for smtp-filt => 121041 * kill pid for pop3-filt => 118146 * kill pid for imap-filt => 109799 * kill pid for imap-filt => 108695 * kill pid for smtp-filt => 121037 RUN: Process with pid 73844 signalled to die RUN: Process with pid 88548 signalled to die RUN: Process with pid 93871 signalled to die RUN: Process with pid 111582 signalled to die RUN: Process with pid 115166 signalled to die RUN: Process with pid 117679 signalled to die RUN: Process with pid 121045 signalled to die RUN: Process with pid 144721 signalled to die RUN: Process with pid 167726 signalled to die RUN: Process with pid 73855 signalled to die RUN: Process with pid 80150 signalled to die RUN: Process with pid 106018 signalled to die RUN: Process with pid 112504 signalled to die RUN: Process with pid 115314 signalled to die RUN: Process with pid 118132 signalled to die RUN: Process with pid 121012 signalled to die RUN: Process with pid 152448 signalled to die RUN: Process with pid 167739 signalled to die RUN: Process with pid 73852 signalled to die RUN: Process with pid 81588 signalled to die RUN: Process with pid 110276 signalled to die RUN: Process with pid 112502 signalled to die RUN: Process with pid 115313 signalled to die RUN: Process with pid 118142 signalled to die RUN: Process with pid 120943 signalled to die RUN: Process with pid 137427 signalled to die RUN: Process with pid 156284 signalled to die RUN: Process with pid 167719 signalled to die RUN: Process with pid 73858 signalled to die RUN: Process with pid 75679 signalled to die RUN: Process with pid 79845 signalled to die RUN: Process with pid 78735 signalled to die RUN: Process with pid 111472 signalled to die RUN: Process with pid 79844 signalled to die RUN: Process with pid 88544 signalled to die RUN: Process with pid 115183 signalled to die RUN: Process with pid 118206 signalled to die RUN: Process with pid 106004 signalled to die RUN: Process with pid 120696 signalled to die RUN: Process with pid 111327 signalled to die RUN: Process with pid 126608 signalled to die RUN: Process with pid 115304 signalled to die RUN: Process with pid 170464 signalled to die RUN: Process with pid 118121 signalled to die RUN: Process with pid 121040 signalled to die RUN: Process with pid 137388 signalled to die * kill pid for pop3-filt => 118213 * kill pid for pop3-filt => 118210 * kill pid for smtp-filt => 108320 * kill pid for pop3-filt => 118209 * kill pid for pop3-filt => 118285 * kill pid for pop3-filt => 118072 * kill pid for imap-filt => 115285 * kill pid for pop3-filt => 118147 * kill pid for pop3-filt => 118212 * kill pid for pop3-filt => 118233 * kill pid for smtp-filt => 120891 * kill pid for smtp-filt => 121055 * kill pid for smtp-filt => 121053 * kill pid for smtp-filt => 121047 * kill pid for pop3-filt => 118127 * kill pid for smtp-filt => 121051 * kill pid for pop3-filt => 100687 * kill pid for smtp-filt => 120888 RUN: Process with pid 73845 signalled to die RUN: Process with pid 79834 signalled to die RUN: Process with pid 88967 signalled to die RUN: Process with pid 111419 signalled to die RUN: Process with pid 118068 signalled to die RUN: Process with pid 120885 signalled to die RUN: Process with pid 157531 signalled to die * kill pid for pop3-filt => 118067 * kill pid for smtp-filt => 120887 RUN: Process with pid 73854 signalled to die RUN: Process with pid 82311 signalled to die RUN: Process with pid 111583 signalled to die RUN: Process with pid 115283 signalled to die RUN: Process with pid 118066 signalled to die RUN: Process with pid 120879 signalled to die RUN: Process with pid 129176 signalled to die RUN: Process with pid 141738 signalled to die RUN: Process with pid 152892 signalled to die RUN: Process with pid 163037 signalled to die * kill pid for smtp-filt => 120726 RUN: Process with pid 73846 signalled to die RUN: Process with pid 87629 signalled to die RUN: Process with pid 106029 signalled to die RUN: Process with pid 108218 signalled to die RUN: Process with pid 111416 signalled to die RUN: Process with pid 115380 signalled to die RUN: Process with pid 118202 signalled to die RUN: Process with pid 137445 signalled to die RUN: Process with pid 140296 signalled to die RUN: Process with pid 155377 signalled to die RUN: Process with pid 169149 signalled to die * kill pid for smtp-filt => 120976 RUN: Process with pid 73842 signalled to die RUN: Process with pid 81322 signalled to die RUN: Process with pid 90296 signalled to die RUN: Process with pid 111319 signalled to die RUN: Process with pid 115291 signalled to die RUN: Process with pid 118070 signalled to die RUN: Process with pid 120913 signalled to die * kill pid for smtp-filt => 120755 * kill pid for smtp-filt => 108219 RUN: Process with pid 73849 signalled to die RUN: Process with pid 78734 signalled to die RUN: Process with pid 88588 signalled to die RUN: Process with pid 111418 signalled to die RUN: Process with pid 115386 signalled to die RUN: Process with pid 117829 signalled to die RUN: Process with pid 121046 signalled to die RUN: Process with pid 137383 signalled to die RUN: Process with pid 73861 signalled to die RUN: Process with pid 81974 signalled to die RUN: Process with pid 90756 signalled to die RUN: Process with pid 108217 signalled to die RUN: Process with pid 111417 signalled to die RUN: Process with pid 115379 signalled to die RUN: Process with pid 118204 signalled to die RUN: Process with pid 137392 signalled to die RUN: Process with pid 144578 signalled to die RUN: Process with pid 153010 signalled to die RUN: Process with pid 73851 signalled to die RUN: Process with pid 81035 signalled to die RUN: Process with pid 88980 signalled to die RUN: Process with pid 115376 signalled to die RUN: Process with pid 118200 signalled to die RUN: Process with pid 121049 signalled to die RUN: Process with pid 137405 signalled to die RUN: Process with pid 156336 signalled to die RUN: Process with pid 73863 signalled to die RUN: Process with pid 80151 signalled to die RUN: Process with pid 111284 signalled to die RUN: Process with pid 115310 signalled to die RUN: Process with pid 118115 signalled to die RUN: Process with pid 121032 signalled to die RUN: Process with pid 144771 signalled to die RUN: Process with pid 151358 signalled to die RUN: Process with pid 167730 signalled to die RUN: Process with pid 81417 signalled to die RUN: Process with pid 111325 signalled to die RUN: Process with pid 115309 signalled to die RUN: Process with pid 118126 signalled to die RUN: Process with pid 121044 signalled to die RUN: Process with pid 144614 signalled to die RUN: Process with pid 156442 signalled to die * kill pid for smtp-filt => 120996 RUN: Process with pid 73856 signalled to die RUN: Process with pid 81995 signalled to die RUN: Process with pid 89013 signalled to die RUN: Process with pid 106006 signalled to die RUN: Process with pid 108619 signalled to die RUN: Process with pid 118073 signalled to die RUN: Process with pid 120960 signalled to die RUN: Process with pid 129436 signalled to die RUN: Process with pid 139040 signalled to die RUN: Process with pid 164361 signalled to die RUN: Process with pid 73847 signalled to die RUN: Process with pid 81897 signalled to die RUN: Process with pid 111051 signalled to die RUN: Process with pid 116309 signalled to die RUN: Process with pid 118217 signalled to die RUN: Process with pid 120889 signalled to die RUN: Process with pid 129187 signalled to die RUN: Process with pid 137441 signalled to die RUN: Process with pid 151367 signalled to die RUN: Process with pid 167870 signalled to die * kill pid for smtp-filt => 108212 RUN: Process with pid 77685 signalled to die RUN: Process with pid 79833 signalled to die RUN: Process with pid 90921 signalled to die RUN: Process with pid 111503 signalled to die RUN: Process with pid 115318 signalled to die RUN: Process with pid 118131 signalled to die RUN: Process with pid 121039 signalled to die RUN: Process with pid 137180 signalled to die RUN: Process with pid 144515 signalled to die RUN: Process with pid 75120 signalled to die RUN: Process with pid 79836 signalled to die RUN: Process with pid 88968 signalled to die RUN: Process with pid 108210 signalled to die RUN: Process with pid 109769 signalled to die RUN: Process with pid 118284 signalled to die RUN: Process with pid 129143 signalled to die RUN: Process with pid 137438 signalled to die RUN: Process with pid 170205 signalled to die RUN: Process with pid 73850 signalled to die RUN: Process with pid 73859 signalled to die RUN: Process with pid 79849 signalled to die RUN: Process with pid 90955 signalled to die RUN: Process with pid 79520 signalled to die RUN: Process with pid 106222 signalled to die RUN: Process with pid 79929 signalled to die RUN: Process with pid 92679 signalled to die RUN: Process with pid 108298 signalled to die RUN: Process with pid 111423 signalled to die RUN: Process with pid 106005 signalled to die RUN: Process with pid 112611 signalled to die RUN: Process with pid 111035 signalled to die RUN: Process with pid 115327 signalled to die RUN: Process with pid 115100 signalled to die RUN: Process with pid 118162 signalled to die RUN: Process with pid 118207 signalled to die RUN: Process with pid 120701 signalled to die RUN: Process with pid 137241 signalled to die RUN: Process with pid 137451 signalled to die RUN: Process with pid 88527 signalled to die RUN: Process with pid 111036 signalled to die RUN: Process with pid 115377 signalled to die RUN: Process with pid 118201 signalled to die RUN: Process with pid 120674 signalled to die RUN: Process with pid 132109 signalled to die RUN: Process with pid 137252 signalled to die RUN: Process with pid 156367 signalled to die RUN: Process with pid 157446 signalled to die RUN: Process with pid 164383 signalled to die * kill pid for smtp-filt => 120911 RUN: Process with pid 73860 signalled to die RUN: Process with pid 79837 signalled to die RUN: Process with pid 90960 signalled to die RUN: Process with pid 100636 signalled to die RUN: Process with pid 108215 signalled to die RUN: Process with pid 111324 signalled to die RUN: Process with pid 120894 signalled to die RUN: Process with pid 167754 signalled to die RUN: Process with pid 93871 gracefully died RUN: Process with pid 115314 gracefully died RUN: Process with pid 81588 gracefully died RUN: Process with pid 115183 gracefully died RUN: Process with pid 79844 gracefully died RUN: Process with pid 79834 gracefully died RUN: Process with pid 82311 gracefully died RUN: Process with pid 87629 gracefully died RUN: Process with pid 81322 gracefully died RUN: Process with pid 88588 gracefully died RUN: Process with pid 81974 gracefully died RUN: Process with pid 81035 gracefully died RUN: Process with pid 80151 gracefully died RUN: Process with pid 81417 gracefully died RUN: Process with pid 81995 gracefully died RUN: Process with pid 81897 gracefully died RUN: Process with pid 79833 gracefully died RUN: Process with pid 79836 gracefully died RUN: Process with pid 79849 gracefully died RUN: Process with pid 79929 gracefully died RUN: Process with pid 115377 gracefully died RUN: Process with pid 79837 gracefully died RUN: Process with pid 73848 gracefully died RUN: Process with pid 79835 gracefully died RUN: Process with pid 73844 gracefully died RUN: Process with pid 73855 gracefully died RUN: Process with pid 73852 gracefully died RUN: Process with pid 73858 gracefully died RUN: Process with pid 75679 gracefully died RUN: Process with pid 73845 gracefully died RUN: Process with pid 73854 gracefully died RUN: Process with pid 73846 gracefully died RUN: Process with pid 73842 gracefully died RUN: Process with pid 73849 gracefully died RUN: Process with pid 73861 gracefully died RUN: Process with pid 73851 gracefully died RUN: Process with pid 73863 gracefully died RUN: Process with pid 111325 gracefully died RUN: Process with pid 73856 gracefully died RUN: Process with pid 73847 gracefully died RUN: Process with pid 77685 gracefully died RUN: Process with pid 75120 gracefully died RUN: Process with pid 73850 gracefully died RUN: Process with pid 73859 gracefully died RUN: Process with pid 88527 gracefully died RUN: Process with pid 73860 gracefully died RUN: Process with pid 89462 gracefully died RUN: Process with pid 102097 gracefully died RUN: Process with pid 88548 gracefully died RUN: Process with pid 80150 gracefully died RUN: Process with pid 112502 gracefully died RUN: Process with pid 79845 gracefully died RUN: Process with pid 78735 gracefully died RUN: Process with pid 88967 gracefully died RUN: Process with pid 111583 gracefully died RUN: Process with pid 108218 gracefully died RUN: Process with pid 90296 gracefully died RUN: Process with pid 78734 gracefully died RUN: Process with pid 108217 gracefully died RUN: Process with pid 88980 gracefully died RUN: Process with pid 111284 gracefully died RUN: Process with pid 115309 gracefully died RUN: Process with pid 89013 gracefully died RUN: Process with pid 111051 gracefully died RUN: Process with pid 111503 gracefully died RUN: Process with pid 88968 gracefully died RUN: Process with pid 108298 gracefully died RUN: Process with pid 79520 gracefully died RUN: Process with pid 111036 gracefully died RUN: Process with pid 100636 gracefully died RUN: Process with pid 111058 gracefully died RUN: Process with pid 111420 gracefully died RUN: Process with pid 112504 gracefully died RUN: Process with pid 111582 gracefully died RUN: Process with pid 115313 gracefully died RUN: Process with pid 111472 gracefully died RUN: Process with pid 88544 gracefully died RUN: Process with pid 115283 gracefully died RUN: Process with pid 111419 gracefully died RUN: Process with pid 111416 gracefully died RUN: Process with pid 111319 gracefully died RUN: Process with pid 111418 gracefully died RUN: Process with pid 111417 gracefully died RUN: Process with pid 115376 gracefully died RUN: Process with pid 115310 gracefully died RUN: Process with pid 118126 gracefully died RUN: Process with pid 108619 gracefully died RUN: Process with pid 116309 gracefully died RUN: Process with pid 115318 gracefully died RUN: Process with pid 108210 gracefully died RUN: Process with pid 111423 gracefully died RUN: Process with pid 111035 gracefully died RUN: Process with pid 118201 gracefully died RUN: Process with pid 108215 gracefully died RUN: Process with pid 114987 gracefully died RUN: Process with pid 115387 gracefully died RUN: Process with pid 118132 gracefully died RUN: Process with pid 115166 gracefully died RUN: Process with pid 118142 gracefully died RUN: Process with pid 118206 gracefully died RUN: Process with pid 111327 gracefully died RUN: Process with pid 118066 gracefully died RUN: Process with pid 118068 gracefully died RUN: Process with pid 115380 gracefully died RUN: Process with pid 115291 gracefully died RUN: Process with pid 115386 gracefully died RUN: Process with pid 115379 gracefully died RUN: Process with pid 118200 gracefully died RUN: Process with pid 118115 gracefully died RUN: Process with pid 121044 gracefully died RUN: Process with pid 118073 gracefully died RUN: Process with pid 118217 gracefully died RUN: Process with pid 118131 gracefully died RUN: Process with pid 109769 gracefully died RUN: Process with pid 112611 gracefully died RUN: Process with pid 115100 gracefully died RUN: Process with pid 120674 gracefully died RUN: Process with pid 111324 gracefully died RUN: Process with pid 118208 gracefully died RUN: Process with pid 117855 gracefully died RUN: Process with pid 121012 gracefully died RUN: Process with pid 117679 gracefully died RUN: Process with pid 120943 gracefully died RUN: Process with pid 120696 gracefully died RUN: Process with pid 115304 gracefully died RUN: Process with pid 120879 gracefully died RUN: Process with pid 120885 gracefully died RUN: Process with pid 118202 gracefully died RUN: Process with pid 118070 gracefully died RUN: Process with pid 117829 gracefully died RUN: Process with pid 118204 gracefully died RUN: Process with pid 121049 gracefully died RUN: Process with pid 121032 gracefully died RUN: Process with pid 144614 gracefully died RUN: Process with pid 120960 gracefully died RUN: Process with pid 120889 gracefully died RUN: Process with pid 121039 gracefully died RUN: Process with pid 118284 gracefully died RUN: Process with pid 115327 gracefully died RUN: Process with pid 118207 gracefully died RUN: Process with pid 137252 gracefully died RUN: Process with pid 120894 gracefully died RUN: Process with pid 120706 gracefully died RUN: Process with pid 121042 gracefully died RUN: Process with pid 152448 gracefully died RUN: Process with pid 121045 gracefully died RUN: Process with pid 137427 gracefully died RUN: Process with pid 170464 gracefully died RUN: Process with pid 118121 gracefully died RUN: Process with pid 129176 gracefully died RUN: Process with pid 157531 gracefully died RUN: Process with pid 137445 gracefully died RUN: Process with pid 120913 gracefully died RUN: Process with pid 121046 gracefully died RUN: Process with pid 137392 gracefully died RUN: Process with pid 137405 gracefully died RUN: Process with pid 144771 gracefully died RUN: Process with pid 156442 gracefully died RUN: Process with pid 129436 gracefully died RUN: Process with pid 137441 gracefully died RUN: Process with pid 137180 gracefully died RUN: Process with pid 129143 gracefully died RUN: Process with pid 118162 gracefully died RUN: Process with pid 120701 gracefully died RUN: Process with pid 156367 gracefully died RUN: Process with pid 167754 gracefully died RUN: Process with pid 133133 gracefully died RUN: Process with pid 130875 gracefully died RUN: Process with pid 167739 gracefully died RUN: Process with pid 144721 gracefully died RUN: Process with pid 156284 gracefully died RUN: Process with pid 121040 gracefully died RUN: Process with pid 141738 gracefully died RUN: Process with pid 155377 gracefully died RUN: Process with pid 137383 gracefully died RUN: Process with pid 144578 gracefully died RUN: Process with pid 156336 gracefully died RUN: Process with pid 151358 gracefully died RUN: Process with pid 139040 gracefully died RUN: Process with pid 151367 gracefully died RUN: Process with pid 144515 gracefully died RUN: Process with pid 137438 gracefully died RUN: Process with pid 137241 gracefully died RUN: Process with pid 137451 gracefully died RUN: Process with pid 157446 gracefully died RUN: Process with pid 137386 gracefully died RUN: Process with pid 157411 gracefully died RUN: Process with pid 167726 gracefully died RUN: Process with pid 167719 gracefully died RUN: Process with pid 137388 gracefully died RUN: Process with pid 152892 gracefully died RUN: Process with pid 169149 gracefully died RUN: Process with pid 153010 gracefully died RUN: Process with pid 167730 gracefully died RUN: Process with pid 167870 gracefully died RUN: Process with pid 164383 gracefully died RUN: Process with pid 151107 gracefully died RUN: Process with pid 163037 gracefully died RUN: Process with pid 105797 forced to die with SIGKILL RUN: Process with pid 164404 forced to die with SIGKILL RUN: Process with pid 89987 forced to die with SIGKILL RUN: Process with pid 126608 forced to die with SIGKILL RUN: Process with pid 110276 forced to die with SIGKILL RUN: Process with pid 106018 forced to die with SIGKILL RUN: Process with pid 106004 forced to die with SIGKILL RUN: Process with pid 106029 forced to die with SIGKILL RUN: Process with pid 140296 forced to die with SIGKILL RUN: Process with pid 90756 forced to die with SIGKILL RUN: Process with pid 90921 forced to die with SIGKILL RUN: Process with pid 106006 forced to die with SIGKILL RUN: Process with pid 164361 forced to die with SIGKILL RUN: Process with pid 90955 forced to die with SIGKILL RUN: Process with pid 106222 forced to die with SIGKILL RUN: Process with pid 129187 forced to die with SIGKILL RUN: Process with pid 170205 forced to die with SIGKILL RUN: Process with pid 92679 forced to die with SIGKILL RUN: Process with pid 106005 forced to die with SIGKILL RUN: Process with pid 132109 forced to die with SIGKILL RUN: Process with pid 90960 forced to die with SIGKILL etlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== ==171248== 18,800 bytes in 486 blocks are possibly lost in loss record 653 of 655 ==171248== at 0x50F17A8: malloc (vg_replace_malloc.c:446) ==171248== by 0x524F0A9: add_alias2.part.0 (gconv_conf.c:132) ==171248== by 0x524F3F0: add_alias2 (gconv_conf.c:176) ==171248== by 0x524F3F0: add_alias (gconv_conf.c:178) ==171248== by 0x524F3F0: read_conf_file.isra.0 (gconv_parseconfdir.h:101) ==171248== by 0x524F775: gconv_parseconfdir (gconv_parseconfdir.h:170) ==171248== by 0x524F775: __gconv_read_conf (gconv_conf.c:480) ==171248== by 0x52BFCB3: __pthread_once_slow.isra.0 (pthread_once.c:116) ==171248== by 0x52BFD28: pthread_once@@GLIBC_2.34 (pthread_once.c:143) ==171248== by 0x524E246: __gconv_compare_alias (gconv_db.c:692) ==171248== by 0x5257A3D: _nl_find_locale (findlocale.c:298) ==171248== by 0x525A142: setlocale (setlocale.c:337) ==171248== by 0x400336E: main (first.c:123) ==171248== === End of file valgrind3100 * starts no server test 3026...[curl_global_init thread-safety] ../libtool --mode=execute /usr/bin/valgrind --tool=memcheck --quiet --leak-check=yes --suppressions=/startdir/src/curl/tests/valgrind.supp --num-callers=16 --log-file=log/16/valgrind3026 ./libtest/libtests lib3026 none > log/16/stdout3026 2> log/16/stderr3026 -------e-v- OK (1681 out of 1707, remaining: 00:01, took 3.389s, duration: 01:38) startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 38623 --port2 32781 --nghttpx "nghttpx" --pidfile "log/17/server/http_v2_server.pid" --logfile "log/17/http_v2_server.log" --logdir "log/17" --connect 127.0.0.1:39089 startnew: child process has died, server might start up RUN: failed to start the HTTP/2 server startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http2-server.pl --port 35649 --port2 43353 --nghttpx "nghttpx" --pidfile "log/8/server/http_v2_server.pid" --logfile "log/8/http_v2_server.log" --logdir "log/8" --connect 127.0.0.1:45261 startnew: child process has died, server might start up RUN: failed to start the HTTP/2 server startnew: /usr/bin/perl -I. -I/startdir/src/curl/tests /startdir/src/curl/tests/http3-server.pl --port 44147 --nghttpx "nghttpx" --pidfile "log/6/server/http_v3_server.pid" --logfile "log/6/http_v3_server.log" --logdir "log/6" --connect 127.0.0.1:35775 startnew: child process has died, server might start up RUN: failed to start the HTTP/3 server test 2502 SKIPPED: failed starting HTTP/3 server * kill pid for smtp => 121045 * kill pid for pop3 => 117679 * kill pid for ftp => 93871 * kill pid for http => 73844 * kill pid for http-proxy => 144721 * kill pid for imap => 115166 * kill pid for http-ipv6 => 88548 * kill pid for mqtt => 167726 * kill pid for socks => 111582 * kill pid for pop3 => 118208 * kill pid for smtp => 120706 * kill pid for http-proxy => 151107 * kill pid for tftp => 164404 * kill pid for http => 73848 * kill pid for ftp => 133133 * kill pid for mqtt => 137386 * kill pid for http-ipv6 => 89462 * kill pid for imap => 114987 * kill pid for socks => 111058 * kill pid for rtsp => 105797 * kill pid for gopher => 137438 * kill pid for ftp => 79836 * kill pid for http => 75120 * kill pid for pop3 => 118284 * kill pid for smtp => 108210 * kill pid for ftp-ipv6 => 88968 * kill pid for rtsp => 170205 * kill pid for http-ipv6 => 129143 * kill pid for imap => 109769 * kill pid for ftp => 79929 * kill pid for http => 73859 * kill pid for tftp => 92679 * kill pid for http-proxy => 79520 * kill pid for smtp => 120701 * kill pid for pop3 => 118207 * kill pid for rtsp => 106005 * kill pid for socks => 111035 * kill pid for gopher-ipv6 => 137451 * kill pid for imap => 115100 * kill pid for pop3 => 118201 * kill pid for smtp => 120674 * kill pid for tftp => 132109 * kill pid for http-proxy => 157446 * kill pid for ftp => 164383 * kill pid for http => 156367 * kill pid for http-ipv6 => 88527 * kill pid for mqtt => 137252 * kill pid for imap => 115377 * kill pid for socks => 111036 * kill pid for pop3 => 118202 * kill pid for smtp => 108218 * kill pid for tftp => 140296 * kill pid for gopher => 137445 * kill pid for http-proxy => 155377 * kill pid for ftp => 87629 * kill pid for http => 73846 * kill pid for mqtt => 169149 * kill pid for imap => 115380 * kill pid for rtsp => 106029 * kill pid for socks => 111416 * kill pid for smtp => 121032 * kill pid for pop3 => 118115 * kill pid for http => 73863 * kill pid for ftp => 80151 * kill pid for http-proxy => 144771 * kill pid for imap => 115310 * kill pid for http-unix => 151358 * kill pid for mqtt => 167730 * kill pid for socks => 111284 * kill pid for imap => 115376 * kill pid for mqtt => 137405 * kill pid for ftp-ipv6 => 88980 * kill pid for smtp => 121049 * kill pid for pop3 => 118200 * kill pid for http => 73851 * kill pid for ftp => 81035 * kill pid for http-proxy => 156336 * kill pid for http-proxy => 156284 * kill pid for ftp => 81588 * kill pid for http => 73852 * kill pid for pop3 => 118142 * kill pid for smtp => 120943 * kill pid for rtsp => 110276 * kill pid for socks => 112502 * kill pid for http-ipv6 => 167719 * kill pid for mqtt => 137427 * kill pid for imap => 115313 * kill pid for smtp => 120885 * kill pid for imap => 157531 * kill pid for pop3 => 118068 * kill pid for ftp => 79834 * kill pid for http => 73845 * kill pid for http-proxy => 111419 * kill pid for ftp-ipv6 => 88967 * kill pid for ftp => 80150 * kill pid for http => 73855 * kill pid for pop3 => 118132 * kill pid for smtp => 121012 * kill pid for rtsp => 106018 * kill pid for socks => 112504 * kill pid for http-ipv6 => 152448 * kill pid for mqtt => 167739 * kill pid for imap => 115314 * kill pid for mqtt => 137241 * kill pid for imap => 115327 * kill pid for rtsp => 106222 * kill pid for socks => 112611 * kill pid for pop3 => 118162 * kill pid for smtp => 108298 * kill pid for tftp => 90955 * kill pid for http-proxy => 111423 * kill pid for ftp => 79849 * kill pid for http => 73850 * kill pid for mqtt => 167754 * kill pid for imap => 108215 * kill pid for socks => 111324 * kill pid for pop3 => 100636 * kill pid for smtp => 120894 * kill pid for tftp => 90960 * kill pid for http => 73860 * kill pid for ftp => 79837 * kill pid for socks => 111503 * kill pid for http-ipv6 => 144515 * kill pid for mqtt => 137180 * kill pid for imap => 115318 * kill pid for tftp => 90921 * kill pid for ftp => 79833 * kill pid for http => 77685 * kill pid for pop3 => 118131 * kill pid for smtp => 121039 * kill pid for ftp => 79845 * kill pid for socks => 111472 * kill pid for http => 73858 * kill pid for tftp => 126608 * kill pid for smtp => 120696 * kill pid for imap => 115183 * kill pid for http-ipv6 => 170464 * kill pid for pop3 => 118206 * kill pid for rtsp => 106006 * kill pid for ftp-ipv6 => 89013 * kill pid for imap => 108619 * kill pid for http-ipv6 => 129436 * kill pid for http => 73856 * kill pid for ftp => 81995 * kill pid for http-proxy => 139040 * kill pid for tftp => 164361 * kill pid for smtp => 120960 * kill pid for pop3 => 118073 * kill pid for smtp => 120889 * kill pid for pop3 => 118217 * kill pid for http => 73847 * kill pid for ftp => 81897 * kill pid for tftp => 129187 * kill pid for gopher => 137441 * kill pid for imap => 116309 * kill pid for http-unix => 151367 * kill pid for mqtt => 167870 * kill pid for socks => 111051 * kill pid for smtp => 120913 * kill pid for imap => 115291 * kill pid for pop3 => 118070 * kill pid for ftp => 81322 * kill pid for socks => 111319 * kill pid for http => 73842 * kill pid for http-proxy => 90296 * kill pid for tftp => 89987 * kill pid for http-proxy => 102097 * kill pid for ftp => 79835 * kill pid for socks => 111420 * kill pid for http => 157411 * kill pid for http-ipv6 => 130875 * kill pid for pop3 => 117855 * kill pid for smtp => 121042 * kill pid for imap => 115387 * kill pid for http-proxy => 156442 * kill pid for ftp => 81417 * kill pid for http => 144614 * kill pid for socks => 111325 * kill pid for pop3 => 118126 * kill pid for smtp => 121044 * kill pid for imap => 115309 * kill pid for smtp => 108217 * kill pid for pop3 => 1Runner 73836 exiting Runner 73827 exiting Runner 73822 exiting Runner 73833 exiting Runner 73828 exiting Runner 73830 exiting Runner 73818 exiting Runner 73829 exiting Runner 73841 exiting Runner 73834 exiting Runner 73826 exiting Runner 73839 exiting Runner 73831 exiting Runner 73823 exiting Runner 73819 exiting Runner 73825 exiting Runner 73840 exiting Runner 73838 exiting Runner 73832 exiting Runner 73824 exiting Runner 73820 exiting Runner 73837 exiting Runner 73835 exiting Runner 73821 exiting 18204 * kill pid for ftp => 81974 * kill pid for http => 73861 * kill pid for tftp => 90756 * kill pid for http-proxy => 144578 * kill pid for imap => 115379 * kill pid for mqtt => 137392 * kill pid for socks5unix => 153010 * kill pid for socks => 111417 * kill pid for mqtt => 137383 * kill pid for imap => 115386 * kill pid for socks => 111418 * kill pid for pop3 => 117829 * kill pid for smtp => 121046 * kill pid for http-proxy => 78734 * kill pid for http => 73849 * kill pid for ftp => 88588 * kill pid for pop3 => 118066 * kill pid for smtp => 120879 * kill pid for http => 73854 * kill pid for ftp => 82311 * kill pid for mqtt => 163037 * kill pid for http-ipv6 => 141738 * kill pid for imap => 115283 * kill pid for ftp-ipv6 => 129176 * kill pid for socks => 111583 * kill pid for socks5unix => 152892 * kill pid for imap => 115304 * kill pid for mqtt => 137388 * kill pid for http-ipv6 => 88544 * kill pid for socks => 111327 * kill pid for rtsp => 106004 * kill pid for smtp => 121040 * kill pid for pop3 => 118121 * kill pid for http => 75679 * kill pid for ftp => 79844 * kill pid for http-proxy => 78735 TESTDONE: 1849 tests were considered during 98 seconds. TESTINFO: 273 tests were skipped due to these restraints: TESTINFO: "curl lacks Debug support" 96 times (159, 356, 358, 359, 363, 412, 413, 437, 438 and 87 more) TESTINFO: "no stunnel" 58 times (300, 301, 302, 303, 304, 305, 306, 307, 308 and 49 more) TESTINFO: "failed starting SSH server" 52 times (582, 583, 600, 601, 602, 603, 604, 605, 606 and 43 more) TESTINFO: "configured as DISABLED" 15 times (323, 433, 594, 836, 882, 938, 1182, 1184, 1209 and 6 more) TESTINFO: "curl lacks manual support" 7 times (1026, 1179, 1461, 1707, 1708, 1709, 1710) TESTINFO: "failed starting HTTP/2 server" 7 times (1700, 1701, 1702, 2402, 2403, 2404, 2405) TESTINFO: "curl lacks Schannel support" 6 times (2033, 2070, 2079, 2087, 3023, 3024) TESTINFO: "no gnutls-serv (with SRP support)" 4 times (320, 321, 322, 324) TESTINFO: "precheck command error" 4 times (518, 537, 1517, 1960) TESTINFO: "curl has IDN support" 3 times (959, 960, 961) TESTINFO: "curl lacks TrackMemory support" 3 times (96, 558, 1330) TESTINFO: "curl lacks ECH support" 2 times (4000, 4001) TESTINFO: "curl lacks ldap support" 2 times (445, 1560) TESTINFO: "curl lacks nghttpx-h3 support" 2 times (2500, 2503) TESTINFO: "curl lacks override-dns support" 2 times (2102, 2103) TESTINFO: "Resolving IPv6 'ip6-localhost' didn't work" 2 times (241, 1083) TESTINFO: "curl has IPv6 support" 1 time (1454) TESTINFO: "curl has proxy support" 1 time (375) TESTINFO: "curl has threaded-resolver support" 1 time (506) TESTINFO: "curl lacks Unicode support" 1 time (1703) TESTINFO: "failed starting DICT server" 1 time (1450) TESTINFO: "failed starting HTTP/3 server" 1 time (2502) TESTINFO: "failed starting neg TELNET server" 1 time (1452) TESTINFO: "failed starting SMB server" 1 time (1451) FAIL-IGNORED 573: 'verify connect time with multi interface' HTTP, multi, flaky FAIL-IGNORED 587: 'HTTP multi-part formpost with aborted read callback' HTTP, HTTP POST, FORM, flaky FAIL-IGNORED 1086: 'FTP download with strict timeout and slow data transfer' FTP, EPSV, RETR, timeout, FAILURE, SLOWDOWNDATA, flaky, timing-dependent FAIL-IGNORED 1113: 'FTP wildcard download - changed fnmatch, 2x perform (DOS LIST response)' FTP, RETR, LIST, wildcardmatch, ftplistparser, flaky FAIL-IGNORED 1162: 'FTP wildcard with crazy pattern' FTP, RETR, LIST, wildcardmatch, ftplistparser, flaky FAIL-IGNORED 1163: 'FTP wildcard with pattern ending with an open-bracket' FTP, RETR, LIST, wildcardmatch, ftplistparser, flaky FAIL-IGNORED 1208: 'FTP PORT download, no data conn and no transient negative reply' FTP, PORT, RETR, NODATACONN150, timeout, FAILURE, flaky, timing-dependent FAIL-IGNORED 1510: 'HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)' HTTP, verbose logs, flaky FAIL-IGNORED 1592: 'HTTP request, remove handle while resolving, don't block' HTTP, multi, resolve, speedcheck, flaky, timing-dependent FAIL-IGNORED 2032: 'NTLM connection mapping' HTTP, HTTP GET, HTTP Basic auth, HTTP NTLM auth, NTLM, flaky, timing-dependent IGNORED: failed tests: 573 587 1086 1113 1162 1163 1208 1510 1592 2032 TESTDONE: 61 tests out of 1576 reported OK: 3% FAIL 1: 'HTTP GET' HTTP, HTTP GET FAIL 2: 'HTTP GET with user and password' HTTP, HTTP GET, HTTP Basic auth FAIL 3: 'HTTP POST with auth and contents but with content-length set to 0' HTTP, HTTP POST, HTTP Basic auth FAIL 4: 'Replaced internal and added custom HTTP headers' HTTP, HTTP GET, HTTP added headers, HTTP replaced headers FAIL 5: 'HTTP over proxy' HTTP, HTTP GET, HTTP proxy FAIL 6: 'HTTP with simple cookie send' HTTP, HTTP GET, HTTP set cookie, cookies FAIL 7: 'HTTP with cookie parser and header recording' HTTP, HTTP GET, cookies, header dump FAIL 8: 'HTTP with cookie parsing from header file' HTTP, HTTP GET, cookies FAIL 9: 'HTTP RFC1867-type formposting' HTTP, HTTP FORMPOST, HTTP file upload FAIL 10: 'simple HTTP PUT from file' HTTP, HTTP PUT FAIL 11: 'simple HTTP Location: following' HTTP, HTTP GET, followlocation FAIL 12: 'HTTP range support' HTTP, HTTP GET, Content-Range FAIL 13: 'HTTP custom request 'DELETE'' HTTP, HTTP custom request FAIL 14: 'HTTP HEAD with Connection: close' HTTP, HTTP HEAD FAIL 15: '--write-out test' HTTP, HTTP GET, --write-out FAIL 16: 'HTTP with proxy authorization' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth FAIL 17: 'HTTP with config file on stdin' HTTP, HTTP custom request, config file FAIL 18: 'multiple requests using {} in URL' HTTP, HTTP GET, globbing, {} list FAIL 19: 'attempt connect to non-listening socket' HTTP, connect to non-listen, FAILURE FAIL 20: 'attempt connect to non-existing host name' HTTP, FAILURE, non-existing host FAIL 21: 'use curl with multiple request methods' FAILURE, multiple HTTP requests FAIL 22: 'get HTTP with URL > 10000 bytes' HTTP, long URL FAIL 23: 'unsupported protocol:// URL' unsupported scheme, FAILURE FAIL 24: 'HTTP GET fail silently on HTTP error return' HTTP, HTTP GET, --fail FAIL 25: 'looping HTTP Location: following with --max-redirs' HTTP, HTTP GET, followlocation, --max-redirs FAIL 26: 'specify more -o than URLs' HTTP, HTTP GET FAIL 27: 'Get same cookie page several times' HTTP, HTTP GET, cookies FAIL 28: 'HTTP Location: following with extra spaces in header' HTTP, HTTP GET FAIL 29: 'HTTP with 2 secs timeout' HTTP, HTTP GET, timeout, FAILURE FAIL 30: 'HTTP with no data in server reply' HTTP, HTTP GET, FAILURE FAIL 31: 'HTTP with weirdly formatted cookies and cookiejar storage' HTTP, HTTP GET, cookies, cookiejar FAIL 32: 'HTTP with -d and -G' HTTP, HTTP GET, -G FAIL 33: 'HTTP PUT with resume' HTTP, HTTP PUT, Resume, Content-Range FAIL 34: 'HTTP GET with chunked Transfer-Encoding' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 35: 'HTTP POST binary data with embedded NUL' HTTP, HTTP POST, --data-binary FAIL 36: 'HTTP GET with bad chunked Transfer-Encoding' HTTP, HTTP GET, chunked Transfer-Encoding, FAILURE FAIL 37: 'HTTP GET with nothing returned from server' HTTP, HTTP GET, FAILURE FAIL 38: 'HTTP resume request without server supporting it' HTTP, HTTP GET, Resume, FAILURE FAIL 39: 'HTTP RFC1867-type formposting with filename= and type=' HTTP, HTTP FORMPOST FAIL 40: 'HTTP redirect with whitespace after ? (and conversion)' HTTP, HTTP GET, followlocation FAIL 41: 'HTTP formpost with missing file' HTTP, HTTP FORMPOST, FAILURE FAIL 42: 'HTTP redirect with whitespace in path (and conversion)' HTTP, HTTP GET, followlocation FAIL 43: 'HTTP Location: following over HTTP proxy' HTTP, HTTP GET, followlocation, HTTP proxy FAIL 44: 'HTTP RFC1867-type formposting without Expect: header' HTTP, HTTP FORMPOST, HTTP replaced headers FAIL 45: 'simple HTTP Location: without protocol in initial URL' HTTP, HTTP GET, followlocation FAIL 46: 'HTTP with bad domain name, get cookies and store in cookie jar' HTTP, HTTP GET, cookies, cookiejar, --resolve FAIL 47: 'simple HTTP 1.0 GET' HTTP, HTTP GET, HTTP/1.0 FAIL 48: 'HTTP with -d and -G and -I' HTTP, HTTP HEAD, -G FAIL 49: 'HTTP follow redirect with ../' HTTP, HTTP GET, followlocation FAIL 50: 'HTTP follow redirect with ../../' HTTP, HTTP GET, followlocation FAIL 51: 'HTTP follow redirect with excessive ../' HTTP, HTTP GET, followlocation FAIL 52: 'HTTP follow redirect with ./-prefix' HTTP, HTTP GET, followlocation FAIL 53: 'HTTP, junk session cookies' HTTP, HTTP GET, cookies FAIL 54: 'HTTP with blank Location:' HTTP, HTTP GET, followlocation FAIL 55: 'HTTP follow redirect with single slash in path' HTTP, HTTP GET, followlocation FAIL 56: 'HTTP POST with *HUGE* request and chunked transfer-encoding' HTTP, HTTP POST, chunked Transfer-Encoding, config file, -A FAIL 57: 'HTTP content-type with spaces in' HTTP, HTTP GET, --write-out FAIL 58: 'HTTP PUT from file with weird letters' HTTP, HTTP PUT FAIL 59: 'HTTP URL with slash but with "parameter"' HTTP, HTTP GET FAIL 60: 'HTTP PUT from stdin with wrong content-length' HTTP, HTTP PUT, chunked Transfer-Encoding FAIL 61: 'HTTP with various cookies and custom Host:' HTTP, HTTP GET, cookies, cookiejar, HTTP replaced headers, httponly FAIL 62: 'HTTP, send cookies when using custom Host:' HTTP, HTTP GET, HTTP replaced headers, cookies, httponly FAIL 63: 'HTTP with proxy authorization set in environment' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth, http_proxy FAIL 64: 'HTTP with Digest authorization' HTTP, HTTP GET, HTTP Digest auth FAIL 65: 'HTTP with Digest authorization with bad password' HTTP, HTTP GET, HTTP Digest auth FAIL 66: 'HTTP GET without headers in the response' HTTP, HTTP GET, HTTP/0.9 FAIL 67: 'HTTP with NTLM authorization' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 68: 'HTTP with NTLM authorization and wrong password' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 69: 'HTTP with NTLM, Basic or Wild-and-crazy authorization' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 70: 'HTTP with Digest *OR* NTLM authorization' HTTP, HTTP GET, HTTP Digest auth, --anyauth FAIL 71: 'HTTP and -F upload in config file' HTTP, HTTP FORMPOST, config file FAIL 72: 'HTTP with Digest *OR* Basic authorization' HTTP, HTTP GET, HTTP Digest auth FAIL 73: 'HTTP, receive cookies when using custom Host:, domain using only two dots' HTTP, HTTP GET, cookies, cookiejar FAIL 74: 'HTTP, urlglob {}-retrieval and -o #[num] usage' HTTP, HTTP GET, globbing, {} list FAIL 75: 'HTTP, urlglob retrieval with bad range' HTTP, HTTP GET, globbing, FAILURE FAIL 76: 'HTTP with comma-separated WWW-Authenticate header' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 77: 'HTTP with -z "older date"' HTTP, HTTP GET, If-Modified-Since, -z FAIL 78: 'HTTP with -z "newer date"' HTTP, HTTP GET, If-Modified-Since, -z FAIL 79: 'FTP over HTTP proxy' FTP, HTTP, HTTP GET, HTTP proxy FAIL 80: 'HTTP 1.0 CONNECT with proxytunnel and proxy+host Basic authentication' HTTP, HTTP GET, HTTP CONNECT, HTTP Basic auth, HTTP proxy, HTTP proxy Basic auth, proxytunnel FAIL 81: 'HTTP with proxy using NTLM authorization' HTTP, HTTP GET, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 82: 'HTTP with proxy requiring NTLM, but we send Basic' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth, HTTP proxy NTLM auth FAIL 83: 'HTTP over proxy-tunnel with site authentication' HTTP, HTTP GET, HTTP CONNECT, HTTP Basic auth, proxytunnel FAIL 84: 'HTTP over proxy with site authentication' HTTP, HTTP GET, HTTP Basic auth, HTTP proxy FAIL 85: 'HTTP over proxy with site and proxy authentication' HTTP, HTTP GET, HTTP Basic auth, HTTP proxy, HTTP proxy Basic auth FAIL 86: 'HTTP, urlglob []-retrieval and -o #[num] usage' HTTP, HTTP GET, globbing, [] range FAIL 87: 'urlglob with out of range -o #[num] usage' HTTP, HTTP GET, globbing, [] range, FAILURE FAIL 88: 'HTTP PUT with Digest authorization' HTTP, HTTP PUT, HTTP Digest auth FAIL 89: 'HTTP with NTLM and follow-location' HTTP, HTTP GET, HTTP NTLM auth, followlocation, NTLM FAIL 90: 'HTTP with NTLM via --anyauth, and then follow-location with NTLM again' HTTP, HTTP GET, HTTP NTLM auth, --anyauth, followlocation, NTLM FAIL 91: 'HTTP with NTLM/Negotiate/Basic, anyauth and user with domain, with size 0' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 92: 'HTTP resume transfer with the whole file already downloaded' HTTP, HTTP GET, Content-Range, Resume FAIL 93: 'HTTP GET with failed proxy auth' HTTP, HTTP GET, HTTP proxy FAIL 94: 'HTTPS GET with failed proxy auth (CONNECT 1.0)' HTTPS, HTTP GET, HTTP CONNECT, HTTP proxy, FAILURE FAIL 95: 'HTTP over proxytunnel using POST' HTTP, HTTP POST, HTTP CONNECT, proxytunnel FAIL 97: 'HTTP POST with custom content-type' HTTP, HTTP POST, HTTP replaced headers FAIL 98: 'HTTP PUT from stdin with set size, disabling chunked transfer-encoding' HTTP, HTTP PUT, chunked Transfer-Encoding FAIL 99: 'HTTP GET with large-file resume point and failed resume' HTTP, HTTP GET, Resume, Largefile, FAILURE FAIL 100: 'FTP dir list PASV' FTP, PASV, LIST FAIL 101: 'FTP dir list, PORT with specified IP' FTP, PORT, LIST FAIL 102: 'FTP RETR PASV' FTP, PASV, RETR FAIL 103: 'FTP RETR PORT with CWD' FTP, PORT, RETR FAIL 104: 'FTP --head to get file size only' FTP, NOBODY FAIL 105: 'FTP user+password in URL and ASCII transfer' FTP, PASV, TYPE A, RETR FAIL 106: 'FTP GET with type=A style ASCII URL using %20 codes' FTP, EPSV, TYPE A, RETR, type= FAIL 107: 'FTP PASV upload file' FTP, EPSV, STOR FAIL 108: 'FTP PORT upload with CWD' FTP, PORT, STOR FAIL 109: 'FTP PASV upload append' FTP, EPSV, APPE FAIL 110: 'FTP download resume with set limit' FTP, PASV, RETR, Resume FAIL 111: 'FTP download resume beyond file size' FTP, EPSV, Resume, FAILURE FAIL 112: 'FTP PASV upload resume' FTP, EPSV, APPE, Resume FAIL 113: 'FTP download, failed login: USER not valid' FTP, FAILURE FAIL 114: 'FTP download, failed login: PASS not valid' FTP, FAILURE FAIL 115: 'FTP download, failed PASV' FTP, PASV, FAILURE FAIL 116: 'FTP download, failed PORT' FTP, EPRT, PORT, FAILURE, EPRT refused FAIL 117: 'FTP download, failed TYPE' FTP, FAILURE FAIL 118: 'FTP download, failed RETR' FTP, PASV, RETR, FAILURE FAIL 119: 'FTP download, failed RETR with PORT' FTP, PORT, RETR, FAILURE FAIL 120: 'ftp download with post-quote delete operation' FTP, PASV, RETR, post-quote FAIL 121: 'ftp download with post- and pre-transfer delete operations' FTP, EPSV, RETR, post-quote, pre-quote FAIL 122: 'FTP download resume with whole file already downloaded' FTP, PASV, Resume FAIL 123: 'FTP upload resume with whole file already downloaded' FTP, EPSV, Resume FAIL 124: 'FTP download, failed PWD' FTP, PASV, RETR FAIL 125: 'FTP download, failed CWD' FTP, FAILURE FAIL 126: 'FTP download with multiple replies at once in RETR' FTP, EPSV, RETR, RETRWEIRDO FAIL 127: 'FTP --disable-epsv' FTP, PASV, RETR, --disable-epsv FAIL 128: 'FTP upload with --crlf' FTP, EPSV, STOR, --crlf FAIL 129: 'HTTP/1.2 is rejected' HTTP, HTTP GET FAIL 130: 'FTP (optional .netrc; no user/pass) dir list PASV' FTP, EPSV, LIST, netrc FAIL 131: 'FTP (optional .netrc; user/no pass) dir list PASV' FTP, EPSV, LIST, netrc FAIL 132: 'FTP (optional .netrc; user/passwd supplied) dir list PASV' FTP, EPSV, LIST, netrc FAIL 133: 'FTP compulsory .netrc; ignore passwd in URL' FTP, EPSV, LIST, netrc FAIL 134: 'FTP (optional .netrc; programmatic user/passwd) dir list PASV' FTP, EPSV, LIST, netrc FAIL 135: 'FTP retrieve a byte-range' FTP, EPSV, RETR, Range FAIL 136: 'FTP with user and no password' FTP, EPSV, RETR FAIL 137: 'FTP download without size in RETR string' FTP, RETR, --data-binary FAIL 138: 'FTP download without size in RETR string and no SIZE command' FTP, RETR FAIL 139: 'FTP download a newer file with -z' FTP, RETR, -z FAIL 140: 'FTP download file with -z, expected to not transfer' FTP, -z, --data-binary FAIL 141: 'FTP download info with -I' FTP, NOBODY FAIL 142: 'FTP URL with 150 dir levels' FTP FAIL 143: 'FTP URL with type=a' FTP, RETR, type= FAIL 144: 'FTP NLST dir list without contents, using PORT' FTP, PORT, NLST, --data-binary FAIL 145: 'FTP NLST dir list with weird reply code, using PORT' FTP, NLST, PORT FAIL 146: 'persistent FTP with different paths' FTP, RETR, persistent connection FAIL 147: 'FTP with --ftp-create-dirs (failing CWD)' FTP FAIL 148: 'FTP with --ftp-create-dirs (failing MKD)' FTP FAIL 149: 'FTP with multiple uploads' FTP FAIL 150: 'HTTP with NTLM authorization and --fail' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 151: 'HTTP GET with an error code that might trick authentication' HTTP, HTTP GET FAIL 152: 'HTTP GET with an error code that might trick authentication and --fail' HTTP, HTTP GET, --fail FAIL 153: 'HTTP with Digest authorization with stale=true' HTTP, HTTP GET, HTTP Digest auth FAIL 154: 'HTTP PUT with --anyauth authorization (picking Digest)' HTTP, HTTP PUT, HTTP Digest auth, --anyauth FAIL 155: 'HTTP PUT with --anyauth authorization (picking NTLM)' HTTP, HTTP PUT, HTTP NTLM auth, NTLM FAIL 156: 'HTTP PUT with --anyauth (when the server requires none)' HTTP, HTTP PUT, --anyauth FAIL 157: 'HTTP GET with --anyauth (when the server requires none)' HTTP, HTTP GET, --anyauth FAIL 158: 'HTTP multipart formpost with only a 100 reply' HTTP, HTTP POST FAIL 160: 'HTTP with delayed close, conn reuse, connection reset and retry' HTTP, HTTP GET, DELAY FAIL 161: 'FTP RETR PASV' FTP, CURLE_PARTIAL_FILE, RETR, PASV FAIL 162: 'HTTP GET asking for --proxy-ntlm when some other authentication is required' HTTP, HTTP GET, HTTP proxy, HTTP proxy NTLM auth, FAILURE FAIL 163: 'HTTP multipart formpost with contents from a file' HTTP, HTTP POST FAIL 164: 'HTTP range with multiple ranges' HTTP, HTTP GET FAIL 165: 'HTTP over proxy with IDN host name' HTTP, HTTP GET, HTTP proxy, IDN FAIL 166: 'HTTP formpost a file with spaces in name' HTTP, HTTP POST FAIL 167: 'HTTP with proxy-requiring-Basic to site-requiring-Digest' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth, HTTP Digest auth FAIL 168: 'HTTP with proxy-requiring-Digest to site-requiring-Digest' HTTP, HTTP GET, HTTP proxy, HTTP proxy Digest auth, HTTP Digest auth FAIL 169: 'HTTP with proxy-requiring-NTLM to site-requiring-Digest' HTTP, HTTP GET, HTTP proxy, HTTP proxy NTLM auth, HTTP Digest auth, NTLM FAIL 170: 'HTTP POST with --proxy-ntlm and no SSL with no response' HTTP, HTTP POST, HTTP proxy, HTTP proxy NTLM auth FAIL 171: 'HTTP, get cookie with dot prefixed full domain' HTTP, HTTP GET, HTTP proxy, cookies FAIL 172: 'HTTP with cookies file and custom added cookie' HTTP, HTTP GET, cookies FAIL 173: 'HTTP RFC1867-formpost a file from stdin with "faked" filename' HTTP, HTTP POST FAIL 174: 'HTTP POST --anyauth to server not requiring any auth at all' HTTP, HTTP POST FAIL 175: 'HTTP POST --digest to server not requiring any auth at all' HTTP, HTTP POST, HTTP Digest auth FAIL 176: 'HTTP POST --ntlm to server not requiring any auth at all' HTTP, HTTP POST, HTTP NTLM auth FAIL 177: 'HTTP POST --digest to server doing a 302-location response' HTTP, HTTP POST, HTTP Digest auth, followlocation FAIL 178: 'HTTP response with negative Content-Length' HTTP, HTTP GET FAIL 179: 'HTTP using proxy and cookies with path checks' HTTP, HTTP GET, HTTP proxy, cookies FAIL 180: 'HTTP 1.0 PUT' HTTP, HTTP PUT, HTTP/1.0 FAIL 181: 'HTTP 1.0 POST' HTTP, HTTP POST, HTTP/1.0 FAIL 182: 'FTP download an empty file' FTP FAIL 183: 'HTTP GET two URLs over a single proxy with persistent connection' HTTP, HTTP GET, HTTP proxy, persistent connection FAIL 184: 'HTTP replace Host: when following Location: to new host' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 185: 'HTTP replace Host: when following Location: on the same host' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 186: 'HTTP RFC1867-type formposting with types on text fields' HTTP, HTTP POST FAIL 187: 'HTTP redirect with bad host name separation and slash in parameters' HTTP, HTTP GET, followlocation FAIL 188: 'HTTP GET with resume and redirect' HTTP, HTTP GET, Content-Range, Resume, followlocation FAIL 189: 'HTTP GET with resume and redirect (to a page that doesn't resume)' HTTP, HTTP GET FAIL 190: 'FTP download with strict timeout and slow CWD' FTP, timeout, FAILURE, DELAY FAIL 191: 'FTP URL with ?-letters in username and password' FTP FAIL 192: 'HTTP GET -w num_connects with one simple connect' HTTP, HTTP GET FAIL 193: 'HTTP GET -w num_connects with redirected fetch (2 connects)' HTTP, HTTP GET, followlocation, --write-out FAIL 194: 'HTTP resume transfer with the whole file already downloaded and --fail' HTTP, HTTP GET, Content-Range, Resume FAIL 195: 'FTP response 530 after PASS, temporarily not allowed access' FTP FAIL 196: 'FTP transient error, retry request once' FTP, retry FAIL 197: 'HTTP GET --retry on 503 error with output to stdout' HTTP, HTTP GET, retry FAIL 198: 'HTTP GET --retry on 503 error with output to file' HTTP, HTTP GET, retry FAIL 199: 'HTTP with -d, -G and {}' HTTP, HTTP GET, globbing FAIL 200: 'basic file:// file' FILE FAIL 201: 'missing file:// file' FILE, FAILURE FAIL 202: 'two file:// URLs to stdout' FILE FAIL 203: 'file:/path URL with a single slash' FILE FAIL 204: '"upload" with file://' FILE FAIL 205: '"upload" nonexisting with file://' FILE, FAILURE FAIL 206: 'HTTP proxy CONNECT auth Digest' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, HTTP proxy Digest auth FAIL 207: 'HTTP GET with chunked Transfer-Encoding closed prematurely' HTTP, HTTP GET, CURLE_PARTIAL_FILE, FAILURE, chunked Transfer-Encoding FAIL 208: 'HTTP PUT to an FTP URL with username+password - over HTTP proxy' FTP, HTTP, HTTP PUT, HTTP proxy FAIL 209: 'HTTP proxy CONNECT auth NTLM' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 210: 'Get two FTP files from the same remote dir: no second CWD' FTP FAIL 211: 'Get two FTP files with no remote EPSV support' FTP FAIL 212: 'Get two FTP files with no remote EPRT support' FTP, EPRT FAIL 213: 'HTTP 1.0 proxy CONNECT auth NTLM and then POST' HTTP, HTTP POST, HTTP CONNECT, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 214: 'HTTP URL with escaped { and }' HTTP, HTTP GET FAIL 215: 'Get two FTP dir listings from the same remote dir: no second CWD' FTP FAIL 216: 'FTP upload two files to the same dir' FTP FAIL 217: 'HTTP proxy CONNECT to proxy returning 405' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, followlocation, --write-out FAIL 218: 'HTTP PUT from a file but enforce chunked transfer-encoding' HTTP, HTTP PUT, chunked Transfer-Encoding FAIL 219: 'try using proxy with unsupported scheme' proxy, unsupported scheme FAIL 220: 'HTTP GET gzip compressed content' HTTP, HTTP GET, compressed FAIL 221: 'HTTP GET gzip compressed content with broken gzip header' HTTP, HTTP GET, compressed, FAILURE FAIL 222: 'HTTP GET deflate compressed content' HTTP, HTTP GET, compressed FAIL 223: 'HTTP GET deflate compressed content with broken deflate header' HTTP, HTTP GET, compressed, FAILURE FAIL 224: 'HTTP GET gzip compressed content with huge comment and extra field' HTTP, HTTP GET, compressed FAIL 225: 'FTP %0a-code in URL's name part' FTP, FAILURE FAIL 226: 'FTP %0d-code in URL's CWD part' FTP, FAILURE FAIL 227: 'FTP with quote ops' FTP, post-quote, pre-quote FAIL 228: 'FTP RETR with ACCT' FTP, ACCT FAIL 229: 'FTP RETR with bad ACCT' FTP, ACCT, FAILURE FAIL 230: 'HTTP GET multiply compressed content' HTTP, HTTP GET, compressed FAIL 231: 'file:// with resume' FILE FAIL 232: 'HTTP GET deflate raw-compressed content' HTTP, HTTP GET, compressed FAIL 233: 'HTTP, proxy, site+proxy auth and Location: to new host' HTTP, HTTP proxy, HTTP Basic auth, HTTP proxy Basic auth, followlocation FAIL 234: 'HTTP, proxy, site+proxy auth and Location: to new host location-trusted' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth, followlocation, --location-trusted FAIL 235: 'FTP resumed upload but no file present remotely' FTP, STOR FAIL 236: 'FTP resume upload but denied access to remote file' FTP FAIL 237: 'FTP getting bad host in 227-response to PASV' FTP FAIL 238: 'FTP getting bad port in response to EPSV' FTP FAIL 239: 'HTTP proxy-auth NTLM and then POST' HTTP, HTTP POST, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 240: 'HTTP-IPv6 GET' HTTP, HTTP GET, IPv6 FAIL 242: 'HTTP-IPv6 GET with username+password in URL' HTTP, HTTP GET, IPv6, HTTP Basic auth FAIL 243: 'HTTP POST with --proxy-anyauth, picking NTLM' HTTP, HTTP GET, HTTP proxy, HTTP proxy NTLM auth, --proxy-anyauth, NTLM FAIL 244: 'FTP dir listing with nocwd and URL encoded path' FTP, PASV, CWD, --ftp-method, nocwd FAIL 245: 'HTTP POST --digest' HTTP, HTTP POST, HTTP Digest auth FAIL 246: 'HTTP POST --digest with server doing a 100 before 401 response' HTTP, HTTP POST, HTTP Digest auth FAIL 247: 'FTP upload time condition evaluates TRUE => skip upload' FTP, MDTM FAIL 248: 'FTP upload time condition evaluates FALSE => upload anyway' FTP, STOR, MDTM FAIL 249: 'HTTP 304 response with "illegal" Content-Length: header' HTTP, HTTP GET, -z FAIL 250: 'FTP dir list PASV with slow response' FTP, SLOWDOWN FAIL 251: 'FTP dir list, PORT with specified IP and slow response' FTP, SLOWDOWN FAIL 252: 'FTP IPv6 dir list PASV' FTP, FTP-ipv6, IPv6, EPSV FAIL 253: 'FTP IPv6 dir list with EPRT' FTP, FTP-ipv6, IPv6, EPRT FAIL 254: 'FTP IPv6 dir list PASV and --disable-epsv' FTP, FTP-ipv6, IPv6, EPSV, --disable-epsv FAIL 255: 'FTP IPv6 dir list with EPRT and --disable-eprt' FTP, FTP-ipv6, IPv6, EPRT, --disable-eprt FAIL 256: 'HTTP resume request over proxy with auth without server supporting it' HTTP, HTTP GET, HTTP proxy, Resume, FAILURE FAIL 257: 'HTTP Location: following with --netrc-optional' HTTP, HTTP GET, HTTP proxy, HTTP Basic auth, followlocation, netrc FAIL 258: 'HTTP POST multipart without Expect: header using proxy anyauth (Digest)' HTTP, HTTP FORMPOST, HTTP replaced headers, HTTP proxy, HTTP proxy Digest auth, --proxy-anyauth FAIL 259: 'HTTP POST multipart with Expect: header using proxy anyauth (Digest)' HTTP, HTTP FORMPOST, HTTP proxy, HTTP proxy Digest auth, --proxy-anyauth FAIL 260: 'HTTP GET URL without slash but with question mark' HTTP, HTTP GET FAIL 261: 'FTP RETR with 226 response code to TYPE' FTP, EPSV, RETR FAIL 262: 'Reject HTTP response with binary zero in header' HTTP, HTTP GET FAIL 263: 'HTTP-IPv6 GET with proxy specified using IPv6-numerical address' HTTP, HTTP GET, IPv6, HTTP proxy FAIL 264: 'HTTP with proxy string including http:// and user+password' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth FAIL 265: 'HTTP proxy CONNECT auth NTLM and then POST, response-body in the 407' HTTP, HTTP POST, HTTP CONNECT, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 266: 'HTTP GET with chunked Transfer-Encoding and chunked trailer' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 267: 'HTTP POST with NTLM authorization and added custom headers' HTTP, HTTP POST, HTTP NTLM auth, NTLM FAIL 268: 'JSON encoding of Unicode string' HTTP, variables FAIL 269: 'HTTP --ignore-content-length' HTTP, HTTP GET FAIL 270: 'FTP RETR PASV --ftp-skip-pasv-ip' FTP, PASV, RETR FAIL 271: 'TFTP retrieve' TFTP, TFTP RRQ FAIL 272: 'FTP timed conditioned get file with identical time stamp' FTP, PASV, RETR FAIL 273: 'HTTP with two Digest authorization headers' HTTP, HTTP GET, HTTP Digest auth FAIL 274: 'HTTP Location: following with --max-redirs 0' HTTP, HTTP GET, followlocation, --max-redirs FAIL 275: 'HTTP CONNECT with proxytunnel getting two URLs from the same host' HTTP, HTTP GET, HTTP CONNECT, HTTP Basic auth, HTTP proxy, HTTP proxy Basic auth, proxytunnel FAIL 276: 'HTTP Location: following with multiple question marks in URLs' HTTP, HTTP GET, followlocation FAIL 277: 'HTTP RFC1867-type formposting with custom Content-Type' HTTP, HTTP FORMPOST FAIL 278: 'HTTP with proxy string including http:// and user+empty password' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth FAIL 279: 'HTTP with proxy string including http:// and user only' HTTP, HTTP GET, HTTP proxy, HTTP proxy Basic auth FAIL 280: 'FTP --ftp-alternative-to-user on USER failure' FTP, PASV, LIST, --ftp-alternative-to-user FAIL 281: 'HTTP PUT from file with 100 + 401 responses and -f without auth given' HTTP, HTTP PUT FAIL 282: 'HTTP GET with no response body or headers' HTTP, HTTP GET FAIL 283: 'TFTP retrieve on invalid file' TFTP, TFTP RRQ, FAILURE FAIL 284: 'TFTP retrieve of boundary case 512 byte file' TFTP, TFTP RRQ FAIL 285: 'TFTP send' TFTP, TFTP WRQ FAIL 286: 'TFTP send of boundary case 512 byte file' TFTP, TFTP WRQ FAIL 287: 'HTTP proxy CONNECT with custom User-Agent header' HTTP, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 288: 'file:// with (unsupported) proxy, authentication and range' FILE FAIL 289: 'FTP resume upload but denied access to local file' FTP, STOR, Resume, FAILURE FAIL 290: 'FTP download maximum filesize exceeded' FTP, --max-filesize FAIL 291: 'FTP download maximum filesize not exceeded' FTP, RETR, --max-filesize FAIL 292: 'HTTP GET with maximum filesize not exceeded' HTTP, HTTP GET, --max-filesize FAIL 293: 'HTTP GET with maximum filesize exceeded' HTTP, HTTP GET, --max-filesize, FAILURE FAIL 294: 'FTP --ftp-account on ACCT request' FTP, PASV, LIST, ACCT, --ftp-account FAIL 295: 'FTP ACCT request without --ftp-account' FTP, PASV, LIST, ACCT, FAILURE FAIL 296: 'FTP CWD with --ftp-method multicwd' FTP, PASV, CWD, --ftp-method, multicwd FAIL 297: 'FTP CWD with --ftp-method singlecwd' FTP, PASV, CWD, --ftp-method, singlecwd FAIL 298: 'FTP CWD with --ftp-method nocwd' FTP, PASV, CWD, --ftp-method, nocwd FAIL 299: 'FTP over HTTP proxy with user:pass not in url' FTP, HTTP, CURLOPT_USERPWD, HTTP proxy FAIL 314: 'HTTP GET brotli compressed content' HTTP, HTTP GET, compressed FAIL 315: 'HTTP GET brotli compressed content with broken header' HTTP, HTTP GET, compressed, FAILURE FAIL 316: 'HTTP GET brotli compressed content of size more than CURL_MAX_WRITE_SIZE' HTTP, HTTP GET, compressed FAIL 317: 'HTTP with custom Authorization: and redirect to new host' HTTP, HTTP proxy, HTTP Basic auth, HTTP proxy Basic auth, followlocation FAIL 318: 'HTTP with custom Authorization: and redirect to new host' HTTP, HTTP proxy, HTTP Basic auth, HTTP proxy Basic auth, followlocation FAIL 319: 'HTTP GET gobbledigook transfer-encoded data in raw mode' HTTP, HTTP GET, Transfer-Encoding, --raw FAIL 326: 'HTTP GET chunked data in raw mode' HTTP, HTTP GET FAIL 327: 'HTTP with cookiejar without cookies left' HTTP, HTTP GET, cookies, header dump FAIL 328: 'HTTP with "Content-Encoding: none' HTTP, HTTP GET, Content-Encoding FAIL 329: 'HTTP cookie with Max-Age=0' HTTP, HTTP GET, cookies FAIL 330: 'HTTP with custom Cookie: and redirect to new host' HTTP, HTTP proxy, followlocation, cookies FAIL 331: 'HTTP with cookie using host name 'moo'' HTTP, HTTP GET, HTTP proxy, cookies FAIL 332: 'TFTP retrieve with blksize 400' TFTP, TFTP RRQ, FAILURE FAIL 333: 'Try a non-boolean command line option with --no-' cmdline FAIL 334: 'HTTP 204 No content with chunked header' HTTP, 204 FAIL 335: 'HTTP with proxy Digest and site Digest with creds in URLs' HTTP, HTTP GET, HTTP proxy, HTTP proxy Digest auth, HTTP Digest auth, HTTP auth in URL FAIL 336: 'FTP range download when SIZE doesn't work' FTP, PASV, TYPE A, RETR FAIL 337: 'FTP range download with SIZE returning extra crap' FTP, PASV, TYPE A, RETR FAIL 338: 'ANYAUTH connection reuse of non-authed connection' HTTP, HTTP GET FAIL 339: 'Check if --etag-save saved correct etag to a file' HTTP, HTTP GET FAIL 340: 'FTP using %00 in path with singlecwd' FTP, PASV, CWD, --ftp-method, singlecwd FAIL 341: 'A non existing file with --etag-compare is just a blank' HTTP, HTTP GET FAIL 342: 'Check if --etag-compare set correct etag in header' HTTP, HTTP GET FAIL 343: 'Both --etag-compare and --etag-save to save new Etag' HTTP, HTTP GET FAIL 344: 'Both --etag-compare and -save store new Etag using non-existing file' HTTP, HTTP GET FAIL 345: 'Both --etag-compare and -save store new Etag using one pre-existing file' HTTP, HTTP GET FAIL 346: 'HTTP GET over proxy with credentials using blank passwords' HTTP, proxy FAIL 347: '--etag-save with blank incoming header' HTTP, HTTP GET FAIL 348: 'FTP upload file with 552 disk full response' FTP, EPSV, STOR FAIL 349: 'HTTP GET --fail-with-body on HTTP error return' HTTP, HTTP GET, --fail-with-body FAIL 350: 'FTP root dir list multicwd' FTP, PASV, LIST FAIL 351: 'FTP root dir list nocwd' FTP, PASV, LIST FAIL 352: 'FTP root dir list singlecwd' FTP, PASV, LIST FAIL 353: 'FTP home dir list singlecwd' FTP, PASV, LIST FAIL 354: 'FTP without password' FTP, PASV, RETR FAIL 355: 'load Alt-Svc from file and use' HTTP, Alt-Svc FAIL 357: 'HTTP PUT with Expect: 100-continue and 417 response' HTTP, HTTP PUT, Expect: 100-continue FAIL 360: 'Error on both --fail-with-body and --fail' --fail, --fail-with-body FAIL 361: 'HTTP GET --fail-with-body on HTTP error return - twice' HTTP, HTTP GET, --fail-with-body FAIL 362: 'FTP resume upload file with nothing to start from' FTP, EPSV, STOR FAIL 365: 'HTTP/1.1 with chunked AND Content-Length headers' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 366: 'HTTP --retry-max-time with too long Retry-After' HTTP, HTTP GET, retry FAIL 367: 'Empty user name provided in URL' HTTP, HTTP GET, HTTP Basic auth FAIL 368: 'Append dash if -r range specified without one' HTTP, HTTP GET, Range FAIL 369: '--etag-save with bad path then working transfer' HTTP, HTTP GET, etag FAIL 370: '--etag-save with bad path - no transfer' HTTP, HTTP GET, etag FAIL 371: 'using more -o than URLs in the command line' HTTP, HTTP GET FAIL 372: 'Binary zero in data element.' HTTP, HTTP GET FAIL 373: 'Chunked transfer encoding - Multiple valid chunks with binary zeros.' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 374: 'Valid gif with two frames. No new line in data section.' HTTP, HTTP GET, gif data FAIL 376: '--remove-on-error' HTTP, HTTP GET FAIL 378: 'Reject using -T and -d at once' HTTP PUT, HTTP POST FAIL 379: '--remove-on-error with --no-clobber and an added number' HTTP, HTTP GET FAIL 380: 'pick netrc password based on user name in URL' FTP, EPSV, LIST, netrc FAIL 381: 'netrc-optional lets URL creds override netrc' FTP, EPSV, LIST, netrc FAIL 383: 'HTTP with --json' HTTP, HTTP POST, --json FAIL 384: 'HTTP with --json from stdin' HTTP, HTTP POST, --json FAIL 385: 'HTTP with --json x 2' HTTP, HTTP POST, --json FAIL 386: 'HTTP with --json + --next' HTTP, HTTP POST, --json FAIL 387: 'Response with overly long compression chain' HTTP, gzip FAIL 388: 'HTTP with Digest and multiple qop values with leading space' HTTP, HTTP GET, HTTP Digest auth FAIL 389: '*.localhost is a local host' HTTP, .localhost FAIL 390: 'curl HTTP, FILE and FTP in parallel' HTTP, FTP, parallel FAIL 391: '--path-as-is with redirect, keeping dotdots' HTTP, HTTP GET, --path-as-is FAIL 392: 'HTTP secure cookies over localhost' HTTP, HTTP GET, cookies, secure FAIL 393: 'HTTP max-filesize and out-of-range Content-Length' HTTP, HTTP GET, --max-filesize, FAILURE FAIL 394: 'HTTP with rubbish in Content-Length' HTTP, HTTP GET, FAILURE FAIL 395: 'HTTP and out-of-range Content-Length' HTTP, HTTP GET FAIL 396: 'HTTP GET zstd compressed content' HTTP, HTTP GET, compressed FAIL 397: 'HTTP GET zstd compressed content of size more than CURL_MAX_WRITE_SIZE' HTTP, HTTP GET, compressed FAIL 398: 'Reject HTTP/1.1 response with colon-less header' HTTP, HTTP GET FAIL 399: '65536 bytes long host name in URL' URL FAIL 402: 'FTP SSL required on non-SSL server' FTP, FTPS, FAILURE FAIL 405: 'FTPS operation to FTP port' FTP, FTPS, FAILURE FAIL 411: '-K with missing file causes error' -K FAIL 415: 'HTTP response with control code then negative Content-Length' HTTP, HTTP GET FAIL 416: 'FTP growing file support' FTP, EPSV, RETR, Range FAIL 418: 'Response with multiple Transfer-Encoding headers' HTTP, gzip FAIL 419: '--dump-header to file that cannot be created' --dump-header, FAILURE FAIL 420: 'Setting cookies set with expired dates that were loaded from jar' HTTP, HTTP GET, cookies FAIL 421: 'HTTP GET multiple headers and %{header_json}' header_json FAIL 422: 'use --next with missing URL before it' cmdline, --next FAIL 423: '-w with url.* variables' -w, --write-out FAIL 424: '-w with urle.* variables' -w, --write-out FAIL 425: 'HTTP PUT with path ending with slash + query' HTTP, HTTP PUT FAIL 426: 'try --data with --continue-at' Resume, error detection FAIL 427: 'Keep Cookie: header within 8190 bytes' HTTP, HTTP GET, cookies FAIL 428: 'Expand environment variables within config file' HTTP, variables, --config FAIL 429: 'Expand environment variable in config file - too long name' HTTP, HTTP POST, variables FAIL 430: 'Three -K uses with --next and --data in each' --next, --config, POST FAIL 431: 'Two -K uses with --next and then one on cmdline' --next, --config, POST FAIL 432: 'Use -K with --next and --config from within' --next, --config, POST FAIL 434: '-K with a single line without newline' HTTP, --config FAIL 435: 'verify -w local/remote port+ip after connection reuse' HTTP, HTTP GET FAIL 436: 'Find .curlrc in .config/curlrc via CURL_HOME' --config FAIL 440: 'HSTS with trailing-dot host name in URL but none in hsts file' HTTP, HTTP proxy, HSTS, trailing-dot FAIL 441: 'HSTS with no t-dot host name in URL but t-dot in file' HTTP, HTTP proxy, HSTS, trailing-dot FAIL 442: 'Send capped huge number of matching cookies' HTTP, cookies, --resolve FAIL 443: 'Cookie header in request no longer than 8K' HTTP, cookies, --resolve FAIL 444: 'Many Set-Cookie response headers' HTTP, cookies, --resolve FAIL 448: 'Environment variables within config file, unbalanced braces' HTTP, variables, --config FAIL 449: 'Environment variables in config file w/o [expand]' HTTP, variables, --config FAIL 450: 'Variable from file that is trimmed and URL encoded' HTTP, variables FAIL 451: 'Variable from file that is JSON and URL encoded (with null byte)' HTTP, variables FAIL 452: 'Variable using illegal function in expansion' variables FAIL 453: 'Variable output containing null byte' HTTP, variables FAIL 454: 'Variable using illegal function separator' variables FAIL 455: 'Variable using base64' variables FAIL 456: 'Variable output starting with null byte' HTTP, variables FAIL 457: 'chunked Transfer-Encoding with --max-filesize' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 458: 'variable expand the file name with --expand-output' HTTP, variables FAIL 459: 'config file with argument using whitespace missing quotes' HTTP, --config FAIL 460: 'try --expand without an argument' variables, expand FAIL 461: 'disable Host: when specified as lower case' HTTP, HTTP GET, --header FAIL 462: 'Missing environment variables in config file' variables, --config FAIL 463: 'HTTP with -d @file with file containing CR, LF and null byte' HTTP, HTTP POST, -d FAIL 467: 'use a bad short option letter that does not exist (after one does exist)' cmdline FAIL 468: 'set -w in config, then reset -w to blank on cmdline' HTTP, --write-out, --config FAIL 469: 'warn about Unicode quote character' HTTP FAIL 470: 'warn about Unicode quote character read from config file' HTTP FAIL 471: 'Reject HTTP/1.1 to HTTP/2 switch on the same connection' HTTP, HTTP GET, globbing, {} list FAIL 473: 'Check if --etag-save saved correct etag to a file on 301' HTTP, HTTP GET FAIL 475: 'FTP PASV upload ASCII file' FTP, EPSV, STOR, TYPE A FAIL 476: 'FTP PASV upload ASCII file already using CRLF' FTP, EPSV, STOR, TYPE A FAIL 477: 'HTTP GET with maximum filesize with a redirect sending data' HTTP, HTTP GET, --max-filesize FAIL 478: '.netrc with multiple accounts for same host' netrc, HTTP FAIL 479: '.netrc with redirect and default without password' netrc, HTTP FAIL 480: 'Reject .netrc with credentials using CRLF for POP3' netrc, POP3 FAIL 481: '--no-clobber with --continue-at' HTTP, HTTP GET, --no-clobber, --continue-at FAIL 482: '--remove-on-error with --continue-at' HTTP, --remove-on-error, --continue-at FAIL 483: 'HTTP cookies with long expire dates' HTTP, HTTP GET, cookies FAIL 484: 'Use --etag-compare and -save with more than one URL' HTTP, etag FAIL 485: 'Use --etag-compare and -save with more than one URL, URLs specified first' HTTP, etag FAIL 486: '.netrc with redirect and "default" with no password or login' netrc, HTTP FAIL 487: 'Variable using 64dec with bad base64' variables FAIL 488: 'Download two URLs provided on stdin' HTTP, HTTP GET, --url FAIL 489: 'Download two URLs provided in a file' HTTP, HTTP GET, --url FAIL 490: 'Two globbed HTTP PUTs' HTTP, HTTP PUT FAIL 491: 'Two globbed HTTP PUTs, the second upload file is missing' HTTP, HTTP PUT FAIL 492: 'Two globbed HTTP PUTs to two globbed URLs' HTTP, HTTP PUT FAIL 493: 'HSTS and %{url_effective} after upgrade' HTTP, HTTP proxy, HSTS, url_effective FAIL 494: 'skip 'macdef' when parsing netrc' FTP, EPSV, netrc, macdef FAIL 495: 'user+password in URL with optional netrc' HTTP, netrc FAIL 496: 'parallel upload missing file' curl tool, cmdline, parallel FAIL 497: 'Reject too large accumulated HTTP response headers' HTTP, HTTP GET FAIL 498: 'Reject too large HTTP response headers on endless redirects' HTTP, HTTP GET FAIL 499: 'HTTP HEAD to server still sending a body' HTTP, HTTP GET FAIL 500: 'simple libcurl HTTP GET tool' HTTP, HTTP GET FAIL 501: 'simple libcurl attempt operation without URL set' missing URL FAIL 502: 'simple multi file:// get' FILE FAIL 503: 'simple multi http:// through proxytunnel with authentication info' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, HTTP proxy Basic auth, proxytunnel, multi FAIL 504: 'simple multi through local proxy without listener' HTTP, HTTP GET, HTTP proxy, multi, FAILURE, connect to non-listen FAIL 505: 'FTP upload with rename after transfer' FTP, STOR FAIL 507: 'multi interface get with non-existing host name' HTTP, multi, FAILURE, non-existing host FAIL 508: 'send HTTP POST using read callback' HTTP, POST, POST callback FAIL 509: 'initialization with memory callbacks and actual usage' memory callbacks FAIL 510: 'send HTTP POST using read callback, using chunked transfer-encoding' HTTP, HTTP POST, chunked Transfer-Encoding FAIL 511: 'FTP with FILETIME and NOBODY but missing file' FTP FAIL 512: 'simple curl_easy_duplicate() test' HTTP, HTTP GET FAIL 513: 'send HTTP POST using read callback that returns CURL_READFUNC_ABORT' HTTP, HTTP POST FAIL 514: 'First set options to POST and then to make HEAD' HTTP, HTTP HEAD FAIL 515: 'make a POSTFIELDS set to NULL with POSTFIELDSIZE set to zero' HTTP, HTTP POST FAIL 516: 'make an HTTPPOST set to NULL' HTTP, HTTP POST, FORM FAIL 519: 'GET same URL twice with different users' HTTP, HTTP GET FAIL 520: 'FTP RETR with FILETIME' FTP FAIL 521: 'FTP dir list PASV with CURLOPT_PORT' FTP, PASV, CURLOPT_PORT FAIL 522: 'HTTP GET with CURLOPT_PORT' HTTP, HTTP GET, CURLOPT_PORT FAIL 523: 'HTTP GET with proxy and CURLOPT_PORT' HTTP, HTTP GET, HTTP proxy, CURLOPT_PORT, CURLOPT_PROXY FAIL 524: 'FTP upload with target URL ending with slash' FTP, UPLOAD FAIL 525: 'FTP PORT upload using multi interface' FTP, PORT, STOR, multi FAIL 526: 'FTP RETR same file using different handles but same connection' FTP, PASV, RETR, multi FAIL 527: 'FTP RETR same file using different handles but same connection' FTP, PASV, RETR, multi FAIL 528: 'HTTP GET same file using different handles but same connection' HTTP, HTTP GET, multi FAIL 529: 'FTP PORT upload using multi interface (weird cleanup function sequence)' FTP, PORT, STOR, multi FAIL 530: 'multi_socket interface transfer with callbacks returning error' multi, HTTP FAIL 531: 'FTP PORT upload using multi interface and get 425 response' FTP, PORT, STOR, multi FAIL 532: 'FTP RETR same file using reset handles between each transfer' FTP, PASV, RETR, multi FAIL 533: 'FTP RETR a non-existing file twice using the multi interface' FTP, PASV, RETR, multi FAIL 534: 'FTP RETR twice using multi: non-existing host and non-existing file' FTP, PASV, RETR, multi, non-existing host FAIL 535: 'HTTP GET multi two files with FAILONERROR' HTTP, HTTP GET, multi FAIL 536: 'CURLINFO_USED_PROXY' HTTP, HTTP GET, HTTP proxy, CURLOPT_PROXY, CURLOPT_NOBODY, CURLINFO_USED_PROXY FAIL 538: 'FTP multi-interface download, failed login: PASS not valid' FTP, FAILURE, multi FAIL 539: 'Two FTP fetches using different CURLOPT_FTP_FILEMETHOD' FTP FAIL 540: 'HTTP proxy auth Digest multi API re-using connection' HTTP, HTTP GET, HTTP proxy, HTTP proxy Digest auth, multi FAIL 541: 'FTP upload and upload same file again without rewind' FTP, STOR FAIL 542: 'FTP a file with NOBODY yes and HEADER no' FTP, PASV, RETR FAIL 543: 'curl_easy_escape' curl_easy_escape FAIL 544: 'HTTP POST text data using CURLOPT_COPYPOSTFIELDS' HTTP, HTTP POST FAIL 545: 'HTTP POST binary with embedded zero and no trailing zero' HTTP, HTTP POST FAIL 546: 'FTP RETR a non-existing file then a found one using the multi interface' FTP, PASV, RETR, multi FAIL 547: 'HTTP proxy auth NTLM with POST data from read callback' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 548: 'HTTP proxy auth NTLM with POST data from CURLOPT_POSTFIELDS' HTTP, HTTP POST, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 549: 'FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE' FTP, CURLOPT_PROXY_TRANSFER_MODE, CURLOPT_PROXY, HTTP proxy FAIL 550: 'FTP RETR over proxy with CURLOPT_PROXY_TRANSFER_MODE and ASCII transfer' FTP, HTTP proxy, CURLOPT_PROXY_TRANSFER_MODE, CURLOPT_PROXY FAIL 551: 'HTTP proxy auth Digest with POST data from read callback' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy Digest auth FAIL 552: 'HTTP proxy auth Digest with 70K POST data from read callback' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy Digest auth FAIL 553: 'HTTP post with huge request headers and post data from callback' HTTP, HTTP POST, POST callback, huge request header FAIL 554: 'HTTP multi-part formpost using read callback for the file part' HTTP, HTTP POST, FORM FAIL 555: 'HTTP proxy auth NTLM with POST data from read callback multi-if' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy NTLM auth, multi, NTLM FAIL 556: 'send and recv HTTP' HTTP, HTTP GET FAIL 557: 'curl_mprintf() testing' printf, unittest FAIL 559: 'use tiny CURLOPT_BUFFERSIZE' CURLOPT_BUFFERSIZE, HTTP FAIL 561: 'FTP RETR with CURLOPT_PROXY_TRANSFER_MODE, ASCII transfer and type=i' FTP, HTTP proxy, CURLOPT_PROXY_TRANSFER_MODE, CURLOPT_PROXY, type= FAIL 562: 'FTP a type=A URL and CURLOPT_PORT set' FTP, PASV, RETR FAIL 563: 'FTP type=A URL and CURLOPT_PORT set and proxy' FTP, CURLOPT_PORT, HTTP proxy FAIL 564: 'FTP RETR a file over a SOCKS proxy using the multi interface' FTP, PASV, RETR, multi, SOCKS4 FAIL 565: 'send HTTP POST using read callback, chunked transfer-encoding and Digest' HTTP, HTTP POST, HTTP Digest auth, chunked Transfer-Encoding FAIL 566: 'HTTP GET with CURLINFO_CONTENT_LENGTH_DOWNLOAD and 0 bytes transfer' HTTP, HTTP GET FAIL 567: 'simple RTSP OPTIONS command' RTSP, OPTIONS FAIL 568: 'RTSP Announce (PUT and POST style) test' RTSP, ANNOUNCE FAIL 569: 'RTSP Session ID parsing' RTSP, SESSION_ID FAIL 570: 'RTSP CSeq and Session Mismatch checks' RTSP, Mismatch checking FAIL 571: 'RTSP RTP Interleaving Test' RTSP, RTP FAIL 572: 'RTSP GET_PARAMETER (Put/Heartbeat/Post)' RTSP, GET_PARAMETER FAIL 574: 'FTP wildcard download - changed fnmatch, 2x perform (Unix LIST response)' FTP, LIST, RETR, wildcardmatch, ftplistparser FAIL 575: 'FTP wildcard download - dup_handle and multi interface' FTP, RETR, multi, wildcardmatch, ftplistparser FAIL 576: 'FTP wildcard - skip/parser_correctness/CURLOPT_FNMATCH_FUNCTION (Unix)' FTP, wildcardmatch, ftplistparser FAIL 577: 'Funny RTSP version in response' RTSP, OPTIONS FAIL 578: 'HTTP POST lower than MAX_INITIAL_POST_SIZE with progress callback' HTTP, HTTP POST FAIL 579: 'small chunked HTTP POSTs with digest auth. and progress callback' HTTP, HTTP POST, HTTP Digest auth FAIL 580: 'multi interface, multiple Location: headers' HTTP, HTTP GET, multi, Duplicate-header FAIL 581: 'multi interface, multiple Content-Type: headers' HTTP, HTTP GET, multi, Duplicate-header FAIL 584: 'CURLOPT_MIMEPOST first set then set to NULL' HTTP, HTTP POST, HTTP MIME FAIL 585: 'socket open/close callbacks' HTTP, HTTP GET, multi, CURLOPT_OPENSOCKETFUNCTION, CURLOPT_CLOSESOCKETFUNCTION FAIL 586: 'FTP and open/close socket callbacks' FTP, PASV, CURLOPT_PORT FAIL 588: 'FTP PORT upload using multi interface, EPRT doesn't work' FTP, PORT, STOR, multi, EPRT refused FAIL 589: 'make an HTTP MIME POST set to NULL' HTTP, HTTP POST, HTTP MIME FAIL 590: 'HTTP proxy offers Negotiate+NTLM, use only NTLM' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 591: 'FTP multi PORT and 425 on upload' FTP, PORT, STOR, multi, EPRT refused, NODATACONN425 FAIL 592: 'FTP multi PORT and 421 on upload' FTP, PORT, STOR, multi, EPRT refused, NODATACONN421 FAIL 593: 'FTP multi PORT upload, no data conn and no transient neg. reply' FTP, PORT, STOR, multi, EPRT refused, NODATACONN150 FAIL 595: 'verify close callbacks with passive FTP' FTP FAIL 596: 'verify close callbacks with active FTP' FTP FAIL 597: 'FTP connect only option' FTP, CONNECT_ONLY FAIL 598: 'curl_easy_reset with referer and other strings set' HTTP, HTTP GET, HTTP set cookie, cookies, CURLOPT_REFERER, curl_easy_reset FAIL 599: 'HTTP GET with progress callback and redirects changing content sizes' HTTP, HTTP POST, chunked Transfer-Encoding FAIL 632: 'SFTP syntactically invalid host key' SFTP, FAILURE, server key check FAIL 643: 'HTTP multi-part mimepost using read callback for the file part' HTTP, HTTP POST, HTTP MIME POST FAIL 645: 'HTTP multi-part chunked mimepost using read callback for the file part' HTTP, HTTP POST, HTTP MIME POST FAIL 646: 'SMTP multipart using mime API' SMTP, MULTIPART FAIL 647: 'IMAP APPEND multipart using mime API' IMAP, APPEND, UPLOAD, MULTIPART FAIL 648: 'SMTP multipart with transfer content encoders' SMTP, MULTIPART FAIL 649: 'SMTP multipart with 7bit encoder error' SMTP, MULTIPART FAIL 650: 'HTTP formpost using form API - with redirect and re-POST' HTTP, HTTP POST, FORM FAIL 651: 'curl_formadd with huge COPYCONTENTS' HTTP, HTTP POST, FORM FAIL 652: 'SMTP with encoded huge mime data contents' SMTP, MIME FAIL 653: 'Reuse of handle after altering mime data' HTTP, HTTP POST, MIME FAIL 654: 'HTTP duplicate easy handle with mime data' HTTP, HTTP POST, HTTP MIME POST FAIL 655: 'resolver start callback' HTTP FAIL 658: 'Pass URL to libcurl with CURLOPT_CURLU' HTTP, HTTP GET, CURLOPT_CURLU FAIL 659: 'CURLOPT_CURLU without the path set - over proxy' HTTP, HTTP GET, CURLOPT_CURLU, proxy FAIL 660: 'IMAP CONNECT_ONLY option' IMAP, CONNECT_ONLY FAIL 661: 'Avoid redundant CWDs' FTP FAIL 662: 'HTTP redirect with whitespace in absolute Location: URL' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 663: 'HTTP redirect with dotdots and whitespaces in absolute Location: URL' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 666: 'HTTP mime post with binary-encoded huge data contents' HTTP, HTTP POST, HTTP MIME POST, MIME FAIL 667: 'HTTP chunked mimepost using single-byte read callback with encoder' HTTP, HTTP POST, HTTP MIME POST FAIL 668: 'HTTP mimepost early end of data detection' HTTP, HTTP POST, HTTP MIME POST FAIL 669: 'HTTP custom Content-Type with parameter' HTTP, HTTP POST, HTTP MIME POST, HTTP FORMPOST FAIL 670: 'Request pause from mime read callback: multi' HTTP, HTTP POST, MIME FAIL 671: 'Request pause from mime read callback: easy' HTTP, HTTP POST, MIME FAIL 672: 'Request pause from form read callback: multi' HTTP, HTTP POST, FORM FAIL 673: 'Request pause from form read callback: easy' HTTP, HTTP POST, FORM FAIL 674: 'Set CURLOPT_CURLU and dupe the handle' HTTP, HTTP GET, CURLOPT_CURLU, curl_easy_duphandle FAIL 675: 'HTTP connection reuse and different credentials' HTTP, HTTP GET, HTTP Basic auth FAIL 676: 'verify setting CURLOPT_COOKIEFILE to NULL again' HTTP, HTTP GET, HTTP set cookie, cookies, CURLOPT_REFERER, curl_easy_reset FAIL 677: 'IMAP with CONNECT_ONLY, custom command then exit' IMAP, CONNECT_ONLY FAIL 679: 'netrc with quoted password' HTTP, netrc FAIL 680: 'netrc with quoted password but missing end quote' HTTP, netrc FAIL 681: '--remote-name-all with --no-remote-name' HTTP, HTTP GET FAIL 682: 'netrc with multiple logins - pick first' HTTP, netrc FAIL 683: 'netrc with multiple logins - pick second' HTTP, netrc FAIL 684: 'netrc with no login' HTTP, netrc FAIL 685: 'netrc with no login - provided user' HTTP, netrc FAIL 686: 'verify return code for missing URL after --next' errorcode FAIL 689: 'fuzzing crash issue #12701' RTSP, OPTIONS FAIL 690: '-O with URL without path using trailing slash' HTTP, HTTP GET FAIL 691: '-O with URL with path using trailing slash' HTTP, HTTP GET FAIL 692: '-JO with URL without path using trailing slash' HTTP, HTTP GET FAIL 693: '--etag-save with --create-dirs' HTTP, HTTP GET, etag FAIL 694: 'HTTP with NTLM twice, verify CURLINFO_HTTPAUTH_USED' HTTP, HTTP POST, POST callback, HTTP proxy, HTTP proxy NTLM auth, NTLM FAIL 695: 'MIME parts reuse as a child part' MIME FAIL 696: 'CONNECT_ONLY and doing a second curl_easy_perform' HTTP, HTTP GET FAIL 697: 'netrc with missing netrc file' HTTP, netrc FAIL 698: 'FTP with ACCT and connection reuse' FTP, ACCT FAIL 699: '--config with single-letter options plus one that is cleared' HTTP, --config FAIL 700: 'HTTP GET via SOCKS4 proxy' HTTP, HTTP GET, SOCKS4 FAIL 701: 'HTTP GET via SOCKS5 proxy' HTTP, HTTP GET, SOCKS5 FAIL 702: 'Attempt connect to non-listening HTTP server via SOCKS4 proxy' HTTP, SOCKS4, connect to non-listen, FAILURE FAIL 703: 'Attempt connect to non-listening HTTP server via SOCKS5 proxy' HTTP, SOCKS5, connect to non-listen, FAILURE FAIL 704: 'Attempt connect to non-listening SOCKS4 proxy' HTTP, SOCKS4, connect to non-listen, FAILURE FAIL 705: 'Attempt connect to non-listening SOCKS5 proxy' HTTP, SOCKS5, connect to non-listen, FAILURE FAIL 706: 'FTP dir list PASV via SOCKS4' FTP, PASV, LIST, SOCKS4 FAIL 707: 'FTP dir list PASV via SOCKS5' FTP, PASV, LIST, SOCKS5 FAIL 708: 'HTTP GET via SOCKS4 proxy' HTTP, HTTP GET, SOCKS4 FAIL 709: 'HTTP GET via SOCKS5 set in http_proxy environment variable' HTTP, HTTP GET, SOCKS5, http_proxy FAIL 710: 'HTTP GET via SOCKS5 set with --proxy' HTTP, HTTP GET, SOCKS5 FAIL 711: 'FTP fetch with all_proxy set to socks5' FTP, PASV, RETR, SOCKS5, all_proxy FAIL 712: 'FTP fetch with --proxy set to socks5://' FTP, PASV, RETR, SOCKS5 FAIL 713: 'FTP fetch with --proxy set to socks5:// and with --connect-to' FTP, PASV, RETR, SOCKS5, CURLOPT_CONNECT_TO FAIL 714: 'FTP fetch with --proxy set to http:// and with --connect-to' FTP, PASV, RETR, HTTP, HTTP CONNECT, proxytunnel, CURLOPT_CONNECT_TO FAIL 715: 'FTP fetch with --preproxy, --proxy and --connect-to' FTP, PASV, RETR, HTTP, HTTP CONNECT, proxytunnel, SOCKS5, CURLOPT_CONNECT_TO FAIL 716: 'SOCKS5 proxy with too long user name' HTTP, SOCKS5, all_proxy FAIL 717: 'SOCKS5 proxy auth' HTTP, SOCKS5, all_proxy FAIL 718: 'HTTP proxy CONNECT (no auth) with proxy returning 407 and closing' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, HTTP proxy Digest auth FAIL 719: 'HTTP GET with IPv6 numerical via SOCKS5h' HTTP, HTTP GET, SOCKS5, SOCKS5h FAIL 720: 'HTTP GET with IPv4 numerical via SOCKS5h' HTTP, HTTP GET, SOCKS5, SOCKS5h FAIL 721: 'HTTP GET with host name using SOCKS5h' HTTP, HTTP GET, SOCKS5, SOCKS5h FAIL 722: 'IPFS' IPFS FAIL 723: 'IPFS with malformed gateway URL (bad function argument error)' IPFS FAIL 724: 'IPFS with gateway URL from gateway file' IPFS FAIL 725: 'IPFS with malformed gateway URL from gateway file' IPFS FAIL 726: 'IPFS with no gateway URL (no environment or home file either)' IPFS FAIL 727: 'IPNS' IPNS FAIL 728: 'SOCKS5h with HTTP redirect to hostname too long' HTTP, HTTP GET, SOCKS5, SOCKS5h, followlocation FAIL 729: 'SOCKS4 with very long proxy user name' HTTP, HTTP GET, SOCKS4 FAIL 730: 'IPFS arg gateway with path' IPFS FAIL 731: 'IPFS with gateway URL and path from gateway file' IPFS FAIL 732: 'IPFS with path' IPFS FAIL 733: 'IPFS with path and query args' IPFS FAIL 734: 'IPFS with path, query args and gateway with path' IPFS FAIL 735: 'IPNS with path, query args and gateway with path' IPFS FAIL 736: 'IPFS with IPFS_PATH set, no trailing slash' IPFS FAIL 737: 'IPFS with IPFS_PATH set, with trailing slash' IPFS FAIL 738: 'IPFS with IPFS_PATH, no gateway file' IPFS FAIL 739: 'IPNS path and query args for gateway and IPFS url (malformed gateway url)' IPFS FAIL 740: 'IPFS with gateway URL from multiline gateway file' IPFS FAIL 741: 'IPFS malformed gw URL from multiline gateway file, first line no url' IPFS FAIL 742: 'SOCKS5-hostname with max length credentials and max host name length' HTTP, SOCKS5, all_proxy FAIL 743: '--config with a 127 byte line' HTTP, --config FAIL 744: '--netrc-file with a 127 byte line' HTTP, --netrc-file, netrc FAIL 746: 'too large numerical value passed to -m' cmdline FAIL 747: 'Reject too many HTTP response headers' HTTP, HTTP GET FAIL 748: 'A --config file that uses -h and no URL' --config FAIL 749: 'HTTP CONNECT with proxy returning 400 and closing' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 750: 'HTTP CONNECT with proxy returning just HTML and closing' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 751: 'multi - add many easy handles' MULTI FAIL 752: '--retry and -f on a HTTP 404 response' HTTP, HTTP GET, -f, --retry FAIL 754: 'FTP list with quote ops' FTP, list, post-quote, pre-quote FAIL 784: '--variable with a file byte range' HTTP, --variable FAIL 785: '--variable with a file byte range without end' HTTP, --variable FAIL 786: '--variable with a file byte range, reading from stdin' HTTP, --variable FAIL 787: '--variable with a file byte range, bad range' HTTP, --variable FAIL 788: '--variable with a file and single-byte byte range' HTTP, --variable FAIL 789: '--variable with a file and byte range out of file' HTTP, --variable FAIL 790: '--variable with a byte range using plain assign' HTTP, --variable FAIL 791: '--variable with a byte range using plain assign, out of range' HTTP, --variable FAIL 792: '.netrc with embedded NULL byte' netrc, FTP FAIL 793: '.netrc with embedded NULL byte, with quoted token' netrc, FTP FAIL 799: 'IMAP with --login-options 'AUTH=+LOGIN'' IMAP, Clear Text, SASL AUTH +LOGIN FAIL 800: 'IMAP FETCH message' IMAP, Clear Text, FETCH FAIL 801: 'IMAP FETCH message by MAILINDEX and SECTION' IMAP, Clear Text, FETCH FAIL 802: 'IMAP SELECT UIDVALIDITY Success' IMAP, Clear Text, SELECT, UIDVALIDITY FAIL 803: 'IMAP SELECT UIDVALIDITY Failure' IMAP, Clear Text, SELECT, UIDVALIDITY, FAILURE FAIL 804: 'IMAP doesn't perform SELECT if re-using the same mailbox' IMAP, Clear Text, SELECT FAIL 805: 'IMAP APPEND message' IMAP, Clear Text, APPEND, UPLOAD FAIL 806: 'IMAP LIST mailbox' IMAP, Clear Text, LIST FAIL 807: 'IMAP LSUB mailbox' IMAP, Clear Text, LSUB, CUSTOMREQUEST FAIL 808: 'IMAP EXAMINE mailbox (CUSTOMREQUEST)' IMAP, Clear Text, EXAMINE, CUSTOMREQUEST FAIL 809: 'IMAP mailbox STATUS (CUSTOMREQUEST)' IMAP, Clear Text, STATUS, CUSTOMREQUEST FAIL 810: 'IMAP SEARCH for NEW messages' IMAP, Clear Text, SEARCH FAIL 811: 'IMAP CREATE mailbox (CUSTOMREQUEST)' IMAP, Clear Text, CREATE, CUSTOMREQUEST FAIL 812: 'IMAP DELETE mailbox (CUSTOMREQUEST)' IMAP, Clear Text, DELETE, CUSTOMREQUEST FAIL 813: 'IMAP RENAME mailbox (CUSTOMREQUEST)' IMAP, Clear Text, RENAME, CUSTOMREQUEST FAIL 814: 'IMAP CHECK mailbox (CUSTOMREQUEST)' IMAP, Clear Text, CHECK, CUSTOMREQUEST FAIL 815: 'IMAP STORE - delete message (CUSTOMREQUEST)' IMAP, Clear Text, STORE, CLOSE, CUSTOMREQUEST FAIL 816: 'IMAP STORE - delete message with confirmation (CUSTOMREQUEST)' IMAP, Clear Text, STORE, EXPUNGE, CUSTOMREQUEST FAIL 817: 'IMAP COPY message to mailbox (CUSTOMREQUEST)' IMAP, Clear Text, COPY, CUSTOMREQUEST FAIL 818: 'IMAP NOOP (CUSTOMREQUEST)' IMAP, Clear Text, NOOP, CUSTOMREQUEST FAIL 819: 'IMAP plain authentication' IMAP, SASL, SASL AUTH PLAIN, RFC4616 FAIL 820: 'IMAP login authentication' IMAP, SASL, SASL AUTH LOGIN FAIL 821: 'IMAP CRAM-MD5 authentication' IMAP, SASL, SASL AUTH CRAM-MD5, RFC2195 FAIL 822: 'IMAP NTLM authentication' IMAP, SASL, SASL AUTH NTLM, NTLM FAIL 824: 'IMAP OAuth 2.0 (XOAUTH2) authentication' IMAP, SASL, SASL AUTH OAUTH2, RFC6749 FAIL 825: 'IMAP plain authentication with initial response' IMAP, SASL, SASL AUTH PLAIN, SASL-IR, RFC4616 FAIL 826: 'IMAP login authentication with initial response' IMAP, SASL, SASL AUTH LOGIN, SASL-IR FAIL 827: 'IMAP NTLM authentication with initial response' IMAP, SASL, SASL AUTH NTLM, SASL-IR, NTLM FAIL 828: 'IMAP OAuth 2.0 (XOAUTH2) authentication with initial response' IMAP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC6749 FAIL 829: 'IMAP with URL-encoded CR LF in the URL' IMAP, CRLF-in-URL FAIL 830: 'IMAP CRAM-MD5 graceful cancellation' IMAP, SASL, SASL AUTH CRAM-MD5, SASL CANCELLATION, RFC2195 FAIL 831: 'IMAP NTLM graceful cancellation' IMAP, SASL, SASL AUTH NTLM, SASL CANCELLATION FAIL 833: 'IMAP CRAM-MD5 authentication with SASL downgrade' IMAP, SASL, SASL AUTH CRAM-MD5, SASL AUTH PLAIN, SASL DOWNGRADE, RFC2195 FAIL 834: 'IMAP NTLM authentication with SASL downgrade' IMAP, SASL, SASL AUTH NTLM, SASL AUTH PLAIN, SASL DOWNGRADE FAIL 837: 'IMAP external authentication' IMAP, SASL, SASL AUTH EXTERNAL, RFC4422 FAIL 838: 'IMAP external authentication without credentials' IMAP, SASL, SASL AUTH EXTERNAL, RFC4422 FAIL 839: 'IMAP external authentication with initial response' IMAP, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC4422 FAIL 840: 'IMAP external authentication with initial response without credentials' IMAP, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC4422 FAIL 841: 'IMAP custom request doesn't check continuation data' IMAP, Clear Text, FETCH, CUSTOMREQUEST FAIL 842: 'IMAP OAuth 2.0 (OAUTHBEARER) authentication' IMAP, SASL, SASL AUTH OAUTH2, RFC6749, RFC7628 FAIL 843: 'IMAP OAuth 2.0 (OAUTHBEARER) authentication with initial response' IMAP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC6749, RFC7628 FAIL 844: 'IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation' IMAP, SASL, SASL AUTH OAUTH2, RFC6749, RFC7628 FAIL 845: 'IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response' IMAP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC6749, RFC7628 FAIL 846: 'IMAP PREAUTH response' IMAP FAIL 847: 'IMAP FETCH message' IMAP, Clear Text, FETCH FAIL 848: 'IMAP plain authentication with alternative authorization identity' IMAP, SASL, SASL AUTH PLAIN, RFC4616 FAIL 849: 'IMAP plain auth with alt authorization identity (Not authorized)' IMAP, SASL, SASL AUTH PLAIN, RFC4616 FAIL 850: 'POP3 RETR message' POP3, Clear Text, RETR FAIL 851: 'POP3 LIST one message' POP3, Clear Text, LIST FAIL 852: 'POP3 LIST invalid message' POP3, Clear Text, LIST, FAILURE FAIL 853: 'POP3 LIST messages from *SLOW* server' POP3, Clear Text, LIST, SLOWDOWN FAIL 854: 'POP3 LIST no messages available' POP3, Clear Text, LIST FAIL 855: 'POP3 RETR invalid message' POP3, Clear Text, RETR, FAILURE FAIL 856: 'POP3 invalid login' POP3, Clear Text, FAILURE FAIL 857: 'POP3 RETR message with dot-prefixed line' POP3, Clear Text, RETR FAIL 858: 'POP3 DELE message (CUSTOMREQUEST)' POP3, Clear Text, DELE, CUSTOMREQUEST FAIL 859: 'POP3 STAT (CUSTOMREQUEST)' POP3, Clear Text, STAT, CUSTOMREQUEST FAIL 860: 'POP3 NOOP (CUSTOMREQUEST)' POP3, Clear Text, NOOP, CUSTOMREQUEST FAIL 861: 'POP3 UIDL (CUSTOMREQUEST)' POP3, Clear Text, UIDL, CUSTOMREQUEST, RFC2449 FAIL 862: 'POP3 retrieve message header (CUSTOMREQUEST)' POP3, Clear Text, TOP, CUSTOMREQUEST, RFC2449 FAIL 863: 'POP3 RSET (CUSTOMREQUEST)' POP3, Clear Text, RSET, CUSTOMREQUEST FAIL 864: 'POP3 APOP authentication' POP3, APOP FAIL 865: 'POP3 plain authentication' POP3, SASL, SASL AUTH PLAIN, RFC1734, RFC4616, RFC5034 FAIL 866: 'POP3 login authentication' POP3, SASL, SASL AUTH LOGIN, RFC1734, RFC5034 FAIL 867: 'POP3 CRAM-MD5 authentication' POP3, SASL, SASL AUTH CRAM-MD5, RFC1734, RFC2195, RFC5034 FAIL 868: 'POP3 NTLM authentication' POP3, SASL, SASL AUTH NTLM, RFC1734, RFC5034, NTLM FAIL 870: 'POP3 OAuth 2.0 (XOAUTH2) authentication' POP3, SASL, SASL AUTH OAUTH2, RFC1734, RFC5034, RFC6749 FAIL 871: 'POP3 plain authentication with initial response' POP3, SASL, SASL AUTH PLAIN, SASL-IR, RFC1734, RFC4616, RFC5034 FAIL 872: 'POP3 login authentication with initial response' POP3, SASL, SASL AUTH LOGIN, SASL-IR, RFC1734, RFC5034 FAIL 873: 'POP3 NTLM authentication with initial response' POP3, SASL, SASL AUTH NTLM, SASL-IR, RFC1734, RFC5034, NTLM FAIL 874: 'POP3 OAuth 2.0 (XOAUTH2) authentication with initial response' POP3, SASL, SASL AUTH OAUTH2, SASL-IR, RFC1734, RFC5034, RFC6749 FAIL 875: 'POP3 with URL-encoded CR LF in the URL' POP3, CRLF-in-URL FAIL 876: 'POP3 CRAM-MD5 graceful cancellation' POP3, SASL, SASL AUTH CRAM-MD5, SASL CANCELLATION, RFC1734, RFC2195, RFC5034 FAIL 877: 'POP3 NTLM graceful cancellation' POP3, SASL, SASL AUTH NTLM, SASL CANCELLATION, RFC1734, RFC5034 FAIL 879: 'POP3 CRAM-MD5 authentication with SASL downgrade' POP3, SASL, SASL AUTH CRAM-MD5, SASL AUTH PLAIN, SASL DOWNGRADE, RFC1734, RFC2195, RFC5034 FAIL 880: 'POP3 NTLM authentication with SASL downgrade' POP3, SASL, SASL AUTH NTLM, SASL AUTH PLAIN, SASL DOWNGRADE, RFC1734, RFC5034 FAIL 883: 'POP3 external authentication' POP3, SASL, SASL AUTH EXTERNAL, RFC1734, RFC4422, RFC5034 FAIL 884: 'POP3 external authentication without credentials' POP3, SASL, SASL AUTH EXTERNAL, RFC1734, RFC4422, RFC5034 FAIL 885: 'POP3 external authentication with initial response' POP3, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC1734, RFC4422, RFC5034 FAIL 886: 'POP3 external authentication with initial response without credentials' POP3, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC1734, RFC4422, RFC5034 FAIL 887: 'POP3 OAuth 2.0 (OAUTHBEARER) authentication' POP3, SASL, SASL AUTH OAUTH2, RFC1734, RFC5034, RFC6749, RFC7628 FAIL 888: 'POP3 OAuth 2.0 (OAUTHBEARER) authentication with initial response' POP3, SASL, SASL AUTH OAUTH2, SASL-IR, RFC1734, RFC5034, RFC6749, RFC7628 FAIL 889: 'POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation' POP3, SASL, SASL AUTH OAUTH2, RFC1734, RFC5034, RFC6749, RFC7628 FAIL 890: 'POP3 OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response' POP3, SASL, SASL AUTH OAUTH2, SASL-IR, RFC1734, RFC5034, RFC6749, RFC7628 FAIL 891: 'POP3 with short authentication response' POP3 FAIL 892: 'POP3 plain authentication with alternative authorization identity' POP3, SASL, SASL AUTH PLAIN, RFC1734, RFC4616, RFC5034 FAIL 893: 'POP3 plain auth with alt authorization identity (Not authorized)' POP3, SASL, SASL AUTH PLAIN, RFC1734, RFC4616, RFC5034 FAIL 894: 'POP3 with CR in username' POP3, Clear Text, RETR FAIL 895: 'IMAP with --login-options 'AUTH=*'' IMAP, Clear Text, FETCH, --login-options FAIL 896: 'IMAP with --login-options 'AUTH=dummy' (failing)' IMAP, Clear Text, FETCH, --login-options FAIL 897: 'IMAP and envelope meta data after body transfer' IMAP, Clear Text, FETCH FAIL 898: 'HTTP with custom auth and cookies redirected to HTTP on a diff port' HTTP, HTTP proxy, --location, Authorization, cookies FAIL 899: 'URL with credentials redirects to URL with different credentials' HTTP, HTTP GET, HTTP Basic auth FAIL 900: 'SMTP' SMTP FAIL 901: 'SMTP with CRLF-dot-CRLF in data' SMTP FAIL 902: 'RFC821-only SMTP server (EHLO not supported)' SMTP, SMTP HELO, RFC821 FAIL 903: 'SMTP plain authentication' SMTP, SASL, SASL AUTH PLAIN, RFC4616, RFC4954 FAIL 904: 'SMTP login authentication' SMTP, SASL, SASL AUTH LOGIN, RFC4954 FAIL 905: 'SMTP CRAM-MD5 authentication' SMTP, SASL, SASL AUTH CRAM-MD5, RFC2195, RFC4954 FAIL 906: 'SMTP NTLM authentication' SMTP, SASL, SASL AUTH NTLM, RFC4954, NTLM FAIL 908: 'SMTP OAuth 2.0 (XOAUTH2) authentication' SMTP, SASL, SASL AUTH OAUTH2, RFC4954, RFC6749 FAIL 909: 'SMTP without SIZE support' SMTP FAIL 910: 'SMTP without terminating CRLF' SMTP FAIL 911: 'SMTP with no mail data' SMTP FAIL 912: 'SMTP with SIZE support' SMTP, SIZE FAIL 913: 'SMTP with large message SIZE' SMTP, SIZE FAIL 914: 'SMTP invalid --mail-from' SMTP FAIL 915: 'SMTP without --mail-from' SMTP FAIL 916: 'SMTP with invalid --mail-rcpt' SMTP FAIL 917: 'SMTP with multiple --mail-rcpt' SMTP FAIL 918: 'SMTP with multiple and invalid --mail-rcpt' SMTP FAIL 919: 'SMTP plain authentication with initial response' SMTP, SASL, SASL AUTH PLAIN, SASL-IR, RFC4616, RFC4954 FAIL 920: 'SMTP login authentication with initial response' SMTP, SASL, SASL AUTH LOGIN, SASL-IR, RFC4954 FAIL 921: 'SMTP NTLM authentication with initial response' SMTP, SASL, SASL AUTH NTLM, SASL-IR, RFC4954, NTLM FAIL 922: 'SMTP OAuth 2.0 (XOAUTH2) authentication with initial response' SMTP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC4954, RFC6749 FAIL 923: 'SMTP VRFY' SMTP, VRFY FAIL 924: 'SMTP ambiguous VRFY' SMTP, VRFY FAIL 925: 'SMTP external VRFY' SMTP, VRFY FAIL 926: 'SMTP unknown user VRFY' SMTP, VRFY FAIL 927: 'SMTP mailing list EXPN (CUSTOMREQUEST)' SMTP, EXPN, CUSTOMREQUEST FAIL 928: 'SMTP HELP' SMTP, HELP FAIL 929: 'SMTP NOOP (CUSTOMREQUEST)' SMTP, NOOP, CUSTOMREQUEST FAIL 930: 'SMTP RSET (CUSTOMREQUEST)' SMTP, RSET, CUSTOMREQUEST FAIL 931: 'SMTP with URL-encoded CR LF in the URL' SMTP, CRLF-in-URL FAIL 932: 'SMTP CRAM-MD5 graceful cancellation' SMTP, SASL, SASL AUTH CRAM-MD5, SASL CANCELLATION, RFC2195, RFC4954 FAIL 933: 'SMTP NTLM graceful cancellation' SMTP, SASL, SASL AUTH NTLM, SASL CANCELLATION, RFC4954 FAIL 935: 'SMTP CRAM-MD5 authentication with SASL downgrade' SMTP, SASL, SASL AUTH CRAM-MD5, SASL AUTH PLAIN, SASL DOWNGRADE, RFC2195, RFC4954 FAIL 936: 'SMTP NTLM authentication with SASL downgrade' SMTP, SASL, SASL AUTH NTLM, SASL AUTH PLAIN, SASL DOWNGRADE, RFC4954 FAIL 939: 'RFC821-only SMTP with username and password' SMTP, RFC821 FAIL 940: 'SMTP with username and password but no AUTH capability' SMTP FAIL 941: 'SMTP with --crlf' SMTP, --crlf FAIL 942: 'SMTP external authentication' SMTP, SASL, SASL AUTH EXTERNAL, RFC4422, RFC4954 FAIL 943: 'SMTP external authentication without credentials' SMTP, SASL, SASL AUTH EXTERNAL, RFC4422, RFC4954 FAIL 944: 'SMTP external authentication with initial response' SMTP, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC4422, RFC4954 FAIL 945: 'SMTP external authentication with initial response without credentials' SMTP, SASL, SASL AUTH EXTERNAL, SASL-IR, RFC4422, RFC4954 FAIL 946: 'SMTP OAuth 2.0 (OAUTHBEARER) authentication' SMTP, SASL, SASL AUTH OAUTH2, RFC4954, RFC6749, RFC7628 FAIL 947: 'SMTP OAuth 2.0 (OAUTHBEARER) authentication with initial response' SMTP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC4954, RFC6749, RFC7628 FAIL 948: 'SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation' SMTP, SASL, SASL AUTH OAUTH2, RFC4954, RFC6749, RFC7628 FAIL 949: 'SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response' SMTP, SASL, SASL AUTH OAUTH2, SASL-IR, RFC4954, RFC6749, RFC7628 FAIL 950: 'SMTP VRFY with custom request' SMTP, VRFY, --request FAIL 951: 'SMTP data with dot as first character' SMTP FAIL 952: 'SMTP data with single dot-only line' SMTP FAIL 953: 'SMTP plain authentication with alternative authorization identity' SMTP, SASL, SASL AUTH PLAIN, RFC4616, RFC4954 FAIL 954: 'SMTP plain auth with alt authorization identity (Not authorized)' SMTP, SASL, SASL AUTH PLAIN, RFC4616, RFC4954 FAIL 955: 'SMTP without SMTPUTF8 support - UTF-8 based sender (local part only)' SMTP FAIL 956: 'SMTP without SMTPUTF8 support - UTF-8 based recipient (local part only)' SMTP FAIL 957: 'SMTP VRFY without SMTPUTF8 support - UTF-8 recipient (local part only)' SMTP, VRFY FAIL 958: 'SMTP external VRFY without SMTPUTF8 - UTF-8 recipient (local part only)' SMTP, VRFY FAIL 962: 'SMTP without SMTPUTF8 support - UTF-8 based sender (host part only)' SMTP, IDN FAIL 963: 'SMTP without SMTPUTF8 support (IDN) - UTF-8 recipient (host part only)' SMTP, IDN FAIL 964: 'SMTP external VRFY without SMTPUTF8 (IDN) - UTF-8 recipient (host part)' SMTP, VRFY, IDN FAIL 965: 'SMTP with SMTPUTF8 support - UTF-8 based sender' SMTP, IDN FAIL 966: 'SMTP with SMTPUTF8 support - UTF-8 based recipient' SMTP, IDN FAIL 967: 'SMTP external VRFY with SMTPUTF8 support' SMTP, VRFY, IDN FAIL 968: 'SMTP VRFY with SMTPUTF8 support' SMTP, VRFY, IDN FAIL 969: 'SMTP mailing list EXPN (CUSTOMREQUEST) with SMTPUTF8 support' SMTP, EXPN, CUSTOMREQUEST, IDN FAIL 973: 'HTTP with auth redirected to FTP w/o auth' HTTP, FTP, --location FAIL 974: 'HTTP with auth redirected to HTTP on a diff port w/o auth' HTTP, HTTP proxy, --location FAIL 975: 'HTTP with auth redirected to FTP allowing auth to continue' HTTP, FTP, --location-trusted FAIL 976: 'HTTP with auth redirected to HTTP on a diff port --location-trusted' HTTP, HTTP proxy, --location-trusted FAIL 977: 'URL with trailing dot and receiving a cookie for the TLD with dot' HTTP, HTTP proxy, cookies FAIL 978: 'verify that --stderr works for -w's stderr as well' HTTP, --stderr FAIL 979: '-u with redirect to absolute URL using same origin and auth' HTTP, HTTP GET, HTTP Basic auth FAIL 980: 'SMTP STARTTLS pipelined server response' SMTP, STARTTLS FAIL 981: 'IMAP STARTTLS pipelined server response' IMAP, STARTTLS FAIL 982: 'POP3 STARTTLS pipelined server response' POP3, STARTTLS FAIL 983: 'FTP STARTTLS pipelined server response' FTP, STARTTLS FAIL 984: 'IMAP require STARTTLS with failing capabilities' IMAP, STARTTLS FAIL 985: 'POP3 require STARTTLS with failing capabilities' POP3, STARTTLS FAIL 986: 'FTP require STARTTLS while preauthenticated' FTP, STARTTLS FAIL 990: 'use -w %output{}' HTTP, HTTP GET, -w FAIL 991: 'use -w %output{} append' HTTP, HTTP GET, -w FAIL 992: 'SASL verify default mechanisms are reset by login options' SMTP, SASL, UPLOAD FAIL 993: 'POP3 LIST 1000 messages' POP3, Clear Text, LIST FAIL 994: '--skip-existing with globbing' HTTP, HTTP GET FAIL 995: '--skip-existing without file present' HTTP, HTTP GET FAIL 996: '--skip-existing with file present' HTTP, HTTP GET FAIL 997: 'POP3 retrieve STAT (CUSTOMREQUEST)' POP3, Clear Text, STAT, CUSTOMREQUEST, RFC2449 FAIL 998: 'HTTP with auth in URL redirected to another host' HTTP, --location-trusted FAIL 999: 'HTTP with auth in first URL but not second' HTTP, --location-trusted FAIL 1000: 'FTP dir list PASV with -I' FTP, PASV, LIST, NOBODY FAIL 1001: 'HTTP POST --digest with PUT and resumed upload and modified method' HTTP, HTTP PUT, HTTP proxy, HTTP Digest auth, Resume, Content-Range, CUSTOMREQUEST FAIL 1002: 'HTTP PUT with Digest auth, resumed upload and modified method, twice' HTTP, HTTP PUT, HTTP proxy, HTTP Digest auth, Resume, Content-Range, CUSTOMREQUEST FAIL 1003: 'FTP with excessively large server command response line' FTP, RETR, huge response FAIL 1004: 'HTTP GET with empty proxy' HTTP, HTTP GET, HTTP proxy FAIL 1005: 'FTP with excessively large number of server command response lines' FTP, RETR, huge response FAIL 1006: 'FTP with large number of command response lines (boundary condition)' FTP, RETR, huge response FAIL 1007: 'TFTP send with invalid permission on server' TFTP, TFTP WRQ, FAILURE FAIL 1008: 'HTTP proxy CONNECT auth NTLM with chunked-encoded 407 response' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, HTTP proxy NTLM auth, chunked Transfer-Encoding, NTLM FAIL 1009: 'TFTP retrieve with --local-port' TFTP, TFTP RRQ, --local-port FAIL 1010: 'FTP dir list nocwd' FTP, PASV, LIST FAIL 1011: 'HTTP POST with 301 redirect' HTTP, HTTP POST, followlocation FAIL 1012: 'HTTP POST with 301 redirect and --post301' HTTP, HTTP POST, followlocation FAIL 1013: 'Compare curl --version with curl-config --protocols' curl-config FAIL 1014: 'Compare curl --version with curl-config --features' curl-config FAIL 1015: '--data-urlencode' HTTP, HTTP POST, --data-urlencode FAIL 1016: 'X-Y range on a file:// URL to stdout' FILE, Range FAIL 1017: '0-Y range on a file:// URL to stdout' FILE, Range FAIL 1018: 'X-X range on a file:// URL to stdout' FILE, Range FAIL 1019: 'X- range on a file:// URL to stdout' FILE, Range FAIL 1020: '-Y range on a file:// URL to stdout' FILE, Range FAIL 1021: 'HTTP proxy CONNECT with any proxyauth and proxy offers NTLM and close' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, HTTP proxy NTLM auth, --proxy-anyauth, NTLM FAIL 1022: 'Compare curl --version with curl-config --version' curl-config FAIL 1023: 'Compare curl --version with curl-config --vernum' curl-config FAIL 1024: 'HTTP Location: following with cookies' HTTP, HTTP GET, followlocation, cookies FAIL 1025: 'HTTP Location: following with command-line and server cookies' HTTP, HTTP GET, followlocation, cookies FAIL 1027: 'curl --help' --help FAIL 1028: 'HTTP Location: redirect to FTP URL' HTTP, HTTP GET, followlocation, FTP, PASV, FILE FAIL 1029: 'HTTP Location: and 'redirect_url' check' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1030: 'HTTP PUT with --anyauth authorization (picking Digest)' HTTP, HTTP PUT, HTTP Digest auth, --anyauth FAIL 1031: 'HTTP Location: following to a query string' HTTP, HTTP GET, followlocation FAIL 1032: 'HTTP HEAD with --range' HTTP, HTTP HEAD, Range FAIL 1033: 'HTTP GET with 102 response!' HTTP, HTTP GET FAIL 1034: 'HTTP over proxy with malformatted IDN host name' HTTP, HTTP GET, HTTP proxy, IDN, FAILURE, config file FAIL 1035: 'HTTP over proxy with too long IDN host name' HTTP, HTTP GET, HTTP proxy, IDN, FAILURE FAIL 1036: 'FTP download resume from end of file' FTP, PASV, RETR, Resume FAIL 1037: 'FTP download resume from end of empty file' FTP, PASV, RETR, Resume FAIL 1038: 'FTP PASV upload resume from end of file' FTP, EPSV, APPE, Resume FAIL 1039: 'FTP PASV upload resume from end of empty file' FTP, EPSV, APPE, Resume FAIL 1040: 'HTTP GET with resume from end of entirely-downloaded file' HTTP, HTTP GET, Resume FAIL 1041: 'HTTP PUT with resume from end of already-uploaded file' HTTP, HTTP PUT, Resume, Content-Range FAIL 1042: 'HTTP GET beyond end of entirely-downloaded file, no server resume' HTTP, HTTP GET, Resume, FAILURE FAIL 1043: 'HTTP GET with resume from end of file' HTTP, HTTP GET, Resume FAIL 1044: 'FTP download large file info with -I' FTP, NOBODY, Largefile FAIL 1045: 'HTTP GET with numeric localhost --interface' HTTP, HTTP GET, --interface FAIL 1046: 'HTTP-IPv6 GET with numeric localhost --interface' HTTP, HTTP GET, --interface, IPv6 FAIL 1047: 'FTP dir list PASV with localhost --interface' FTP, PASV, LIST, --interface FAIL 1048: 'FTP-IPv6 dir list PASV with localhost --interface' FTP, FTP-ipv6, IPv6, PASV, LIST, --interface FAIL 1049: 'TFTP retrieve with localhost --interface' TFTP, TFTP RRQ, --interface FAIL 1050: 'FTP-IPv6 dir list, EPRT with specified IP' FTP, FTP-ipv6, IPv6, EPRT FAIL 1051: 'HTTP PUT with Location: following' HTTP, HTTP PUT, followlocation FAIL 1052: 'HTTP 1.0 PUT with Location: following' HTTP, HTTP PUT, followlocation FAIL 1053: 'HTTP RFC1867-type formposting from file with Location: following' HTTP, HTTP FORMPOST, HTTP file upload, followlocation FAIL 1054: 'HTTP POST from file with 301 redirect and --post301' HTTP, HTTP POST, followlocation FAIL 1055: 'HTTP PUT Location: redirect to FTP URL' HTTP, HTTP PUT, followlocation, FTP, EPSV, STOR FAIL 1056: 'HTTP follow redirect from IPv4 to IPv6 with scope' HTTP, HTTP GET, followlocation, IPv6 FAIL 1057: 'FTP retrieve a byte-range relative to end of file' FTP, EPSV, RETR, Range FAIL 1058: 'HTTP range relative to end of file' HTTP, HTTP GET, Content-Range FAIL 1059: 'HTTP CONNECT with proxytunnel to unsupported FTP URL' HTTP, HTTP CONNECT, proxytunnel, FTP, FAILURE FAIL 1060: 'HTTP proxy CONNECT auth Digest, large headers and data' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, HTTP proxy Digest auth FAIL 1061: 'HTTP proxy CONNECT auth Digest, large headers and chunked data' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, chunked Transfer-Encoding, proxytunnel, HTTP proxy Digest auth FAIL 1062: 'FTP with excessively long server command response lines, boundary condition' FTP, RETR, huge response FAIL 1063: 'Invalid large X- range on a file://' FILE, Range, FAILURE FAIL 1064: 'HTTP PUT twice' HTTP, HTTP PUT FAIL 1065: 'HTTP PUT with one file but two URLs' HTTP, HTTP PUT, HTTP GET FAIL 1066: 'HTTP --dump-header - with two URLs' HTTP, HTTP GET FAIL 1067: 'HTTP Location: following with auto-referer' HTTP, HTTP GET, followlocation FAIL 1068: 'HTTP PUT from stdin' HTTP, HTTP PUT, chunked Transfer-Encoding FAIL 1069: 'HTTP 1.0 PUT from stdin with no content length' HTTP, HTTP PUT, HTTP/1.0 FAIL 1070: 'HTTP POST with server closing connection before (all) data is received' HTTP, HTTP POST FAIL 1071: 'Downgraded HTTP PUT to HTTP 1.0 with authorization' HTTP, HTTP PUT, HTTP Digest auth, --anyauth, HTTP/1.0 FAIL 1072: 'HTTP chunked PUT to HTTP 1.0 server with authorization' HTTP, HTTP PUT, HTTP Digest auth, --anyauth, HTTP/1.0, chunked Transfer-Encoding FAIL 1073: 'HTTP chunked PUT to HTTP 1.0 server with redirect' HTTP, HTTP PUT, HTTP/1.0, followlocation, chunked Transfer-Encoding FAIL 1074: 'HTTP downgrade to HTTP/1.0 on second request' HTTP, HTTP GET, HTTP/1.0, DELAY FAIL 1075: 'HTTP PUT with --anyauth authorization (picking Basic)' HTTP, HTTP PUT, HTTP Basic auth, --anyauth FAIL 1076: 'HTTP POST with 302 redirect and --post302' HTTP, HTTP POST, followlocation FAIL 1077: 'FTP over HTTP proxy with downgrade to HTTP 1.0' FTP, HTTP, HTTP/1.0, HTTP GET, HTTP proxy FAIL 1078: 'HTTP 1.0 CONNECT with proxytunnel and downgrade GET to HTTP/1.0' HTTP, HTTP/1.0, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1079: 'HTTP retry after closed connection and empty response' HTTP, HTTP GET, HTTP Digest auth FAIL 1080: 'HTTP Location: on two URLs 'redirect_url' check' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1081: 'HTTP no Location: on second URL 'redirect_url' check' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1082: 'HTTP GET with localhost --interface' HTTP, HTTP GET, --interface FAIL 1084: 'HTTP GET with invalid --interface' HTTP, HTTP GET, --interface, FAILURE, non-existing host FAIL 1085: 'HTTP-IPv6 GET with invalid --interface' HTTP, HTTP GET, --interface, IPv6, FAILURE, non-existing host FAIL 1087: 'HTTP, proxy with --anyauth and Location: to new host' HTTP, HTTP proxy, HTTP Basic auth, HTTP proxy Basic auth, followlocation, --anyauth FAIL 1088: 'HTTP, proxy with --anyauth and Location: to new host using location-trusted' HTTP, HTTP proxy, HTTP Basic auth, HTTP proxy Basic auth, followlocation, --anyauth, --location-trusted FAIL 1089: 'HTTP GET --write-out with redirected fetch' HTTP, HTTP GET, followlocation, --write-out FAIL 1090: 'HTTP GET --write-out with redirected fetch and chunked reply' HTTP, HTTP GET, followlocation, chunked Transfer-Encoding, --write-out FAIL 1091: 'FTP URL with type=i' FTP, RETR, type= FAIL 1092: 'FTP with type=i over HTTP proxy' FTP, HTTP, HTTP GET, HTTP proxy, type= FAIL 1093: 'TFTP retrieve with mode=i' TFTP, TFTP RRQ, mode= FAIL 1094: 'TFTP retrieve with mode=netascii' TFTP, TFTP RRQ, mode= FAIL 1095: 'HTTP with Digest and realm with quoted quotes' HTTP, HTTP GET, HTTP Digest auth FAIL 1096: 'Two FTP downloads, with failed RETR but reused control connection' FTP, PASV, RETR, FAILURE FAIL 1098: 'FTP RETR twice over proxy confirming persistent connection' FTP, HTTP proxy, CURLOPT_PROXY FAIL 1099: 'TFTP get first a non-existing file then an existing' TFTP, TFTP RRQ, FAILURE FAIL 1101: 'NO_PROXY test, with user name in URL' HTTP, HTTP GET, HTTP Basic auth, HTTP proxy, http_proxy, NO_PROXY FAIL 1102: 'FTP OS/400 server name format check' FTP, SYST, SITE, OS400 FAIL 1103: 'FTP non-OS/400 server' FTP, SYST, SITE, OS400 FAIL 1104: 'HTTP cookie expiry date at Jan 1 00:00:00 GMT 1970' HTTP, HTTP GET, HTTP proxy, cookies FAIL 1105: 'HTTP with cookie parser and header recording' HTTP, HTTP POST, cookies, cookiejar FAIL 1106: 'FTP URL and with ftp_proxy environment variable set' FTP, CURLOPT_PORT, HTTP proxy FAIL 1107: 'FTP RETR PASV with PRET' FTP, PASV, RETR, PRET FAIL 1108: 'FTP RETR PASV with PRET not supported' FTP, PASV, RETR, PRET FAIL 1109: 'HTTP GET with URL that contains fragment after the path' HTTP, CURLOPT_URL FAIL 1110: 'HTTP GET with URL that contains a fragment after the query part' HTTP, CURLOPT_URL FAIL 1111: 'HTTP GET with URL whose fragment contains a # (which is illegal)' HTTP, CURLOPT_URL FAIL 1114: 'FTP wildcard download - skip/correctness/FNMATCH_FUNCTION (DOS)' FTP, wildcardmatch, ftplistparser FAIL 1115: 'HTTP GET with unexpected 1xx response' HTTP, HTTP 1xx response code FAIL 1116: 'HTTP GET with chunked trailer without Trailer:' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1117: 'HTTP with invalid range then another URL' HTTP, HTTP GET, Range, DELAY FAIL 1118: 'URL without slash and @-letter in query' HTTP, HTTP GET FAIL 1120: 'FTP with 421 timeout response' FTP, PORT, RETR, 421, timeout, FAILURE FAIL 1121: 'HTTP multiple provided Host: headers' HTTP FAIL 1122: 'HTTP GET gzip transfer-encoded content' HTTP, HTTP GET, compressed, Transfer-Encoding FAIL 1123: 'HTTP GET deflate transfer-encoded content' HTTP, HTTP GET, compressed, Transfer-Encoding FAIL 1124: 'HTTP GET gzip+chunked transfer-encoded content' HTTP, HTTP GET, compressed, Transfer-Encoding, chunked Transfer-Encoding FAIL 1125: 'HTTP GET transfer-encoding with custom Connection:' HTTP, HTTP GET, compressed, Transfer-Encoding FAIL 1126: 'HTTP 200 If-Modified-Since with newer document' HTTP, HTTP GET, If-Modified-Since FAIL 1127: 'HTTP 200 If-Modified-Since with older document' HTTP, HTTP GET, If-Modified-Since FAIL 1128: 'HTTP 200 If-Modified-Since with old+new documents' HTTP, HTTP GET, If-Modified-Since FAIL 1129: 'HTTP POST expect 100-continue with a 404' HTTP, HTTP POST, Expect: 100-continue FAIL 1130: 'HTTP POST forced expect 100-continue with a 404' HTTP, HTTP POST, Expect: 100-continue FAIL 1131: 'HTTP PUT expect 100-continue with a 400' HTTP, HTTP PUT, Expect: 100-continue FAIL 1133: 'HTTP RFC1867-type formposting with filename/data contains ',', ';', '"'' HTTP, HTTP FORMPOST FAIL 1134: 'HTTP connection reuse with different credentials' HTTP, HTTP HEAD, -G FAIL 1136: 'Check cookies against PSL' HTTP, HTTP GET, HTTP proxy, cookies, cookiejar, PSL FAIL 1137: 'FTP RETR --ignore-content-length' FTP, PASV, RETR, --ignore-content-length FAIL 1138: 'HTTP redirect with UTF-8 characters' HTTP, HTTP GET, followlocation FAIL 1141: 'HTTP redirect to http:/// (three slashes!)' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 1142: 'HTTP redirect to http://// (four slashes!)' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 1143: 'HTTP URL with http:/ (one slash!)' HTTP, HTTP GET, followlocation FAIL 1144: 'HTTP HEAD, receive no headers only body' HTTP, HTTP HEAD, HTTP/0.9 FAIL 1145: 'file:// bad host' FILE FAIL 1146: '--proto-default file' FILE, --proto-default FAIL 1147: 'Get -H headers from a file' HTTP, HTTP GET, -H FAIL 1148: 'progress-bar' HTTP, progressbar FAIL 1149: 'FTP dir list multicwd then again nocwd' FTP, PASV, LIST FAIL 1150: 'HTTP proxy with URLs using different ports' HTTP, HTTP GET, HTTP proxy FAIL 1151: 'HTTP with too long cookies' HTTP, HTTP GET, cookies FAIL 1152: 'FTP with uneven quote in PWD response' FTP, PASV, LIST FAIL 1153: 'FTP with quoted double quotes' FTP, PASV, LIST FAIL 1154: 'HTTP GET with 100K (too long) response header' HTTP, HTTP GET FAIL 1155: 'HTTP cookie with parameter word as name' HTTP, HTTP GET, cookies FAIL 1156: 'HTTP resume/range fail range-error content-range combinations' HTTP, HTTP GET, Content-Range, Resume, Range FAIL 1157: 'Get -H headers from empty file' HTTP, HTTP GET, -H FAIL 1158: 'HTTP RFC1867-type formposting with filename containing '"'' HTTP, HTTP FORMPOST FAIL 1159: 'HTTP Location: and 'redirect_url' with non-supported scheme' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1160: 'HTTP with long funny format cookie' HTTP, HTTP GET, cookies FAIL 1161: 'HTTP cookie with path set twice' HTTP, HTTP GET, cookies FAIL 1164: 'HTTP/0.9 GET and all zeroes' HTTP, HTTP GET FAIL 1166: 'HTTP response with cookies but not receiving!' HTTP, HTTP GET, followlocation, cookies FAIL 1168: 'HTTP redirect with credentials using # in user and password' HTTP, HTTP GET, followlocation FAIL 1170: 'HTTP GET transfer-encoding with removed Connection:' HTTP, HTTP GET, compressed, Transfer-Encoding FAIL 1171: 'HTTP GET transfer-encoding with blanked Connection:' HTTP, HTTP GET, compressed, Transfer-Encoding FAIL 1172: 'HTTP/0.9 GET response denied' HTTP, HTTP/0.9 FAIL 1174: 'HTTP/0.9 GET response denied by default' HTTP, HTTP/0.9 FAIL 1176: '--output using #0' globbing FAIL 1178: 'HTTP proxy auth with credentials longer than 256 bytes' HTTP, HTTP GET, HTTP proxy FAIL 1180: 'HTTP GET request with proxy and -H "Proxy-Connection: keep-alive"' HTTP, HTTP proxy FAIL 1181: 'HTTP GET request with proxy and "Proxy-Connection: Keep-Alive"' HTTP, HTTP proxy FAIL 1183: '%TESTNUMBER used instead of actual test number' HTTP, HTTP GET FAIL 1186: 'Multipart formposting with backslash-escaping filename containing '"'' HTTP, HTTP FORMPOST FAIL 1187: 'SMTP multipart with file name escaping' SMTP, MULTIPART FAIL 1188: '--write-out with %{onerror} and %{urlnum} to stderr' HTTP, HTTP GET, --write-out FAIL 1189: 'Multipart formposting with backslash-escaping of name= and filename=' HTTP, HTTP FORMPOST FAIL 1190: 'MQTT SUBSCRIBE' MQTT, MQTT SUBSCRIBE FAIL 1191: 'MQTT PUBLISH' MQTT, MQTT PUBLISH FAIL 1192: 'MQTT SUBSCRIBE 2k topic' MQTT, MQTT SUBSCRIBE FAIL 1193: 'MQTT PUBLISH 2k payload' MQTT, MQTT PUBLISH FAIL 1194: 'MQTT SUBSCRIBE with PUBLISH before SUBACK' MQTT, MQTT SUBSCRIBE FAIL 1195: 'MQTT SUBSCRIBE with short PUBLISH' MQTT, MQTT SUBSCRIBE FAIL 1196: 'MQTT with error in CONNACK' MQTT, MQTT SUBSCRIBE FAIL 1197: 'HTTP POST redirected to GET and --write-out method' HTTP, HTTP GET, followlocation, --write-out FAIL 1198: 'MQTT PUBLISH empty payload, single space topic' MQTT, MQTT SUBSCRIBE FAIL 1199: 'MQTT PUBLISH empty payload, no topic' MQTT, MQTT SUBSCRIBE FAIL 1200: 'Gopher index' GOPHER, INDEX FAIL 1201: 'Gopher selector' GOPHER, SELECTOR FAIL 1202: 'Gopher query' GOPHER, QUERY FAIL 1203: 'Gopher IPv6 index' GOPHER-ipv6, IPv6, INDEX FAIL 1204: 'HTTP with WWW-Authenticate and multiple auths in a single line' HTTP, HTTP GET, HTTP Basic auth, --anyauth FAIL 1205: 'HTTP GET with 18K HTTP header' HTTP, HTTP GET FAIL 1206: 'FTP PORT and 425 on download' FTP, PORT, RETR, NODATACONN425 FAIL 1207: 'FTP PORT and 421 on download' FTP, PORT, RETR, NODATACONN421 FAIL 1210: 'HTTP GET with -J without Content-Disposition' HTTP, HTTP GET, -J FAIL 1212: 'noproxy setting together with socks proxy' HTTP, SOCKS5, NO_PROXY, noproxy FAIL 1213: 'HTTP with proxy and host-only URL' HTTP, HTTP GET, HTTP proxy FAIL 1214: 'HTTP with proxy and URL with ? and no slash separator' HTTP, HTTP GET, HTTP proxy FAIL 1215: 'HTTP with server NTLM authorization using a proxy' HTTP, HTTP GET, HTTP NTLM auth, HTTP proxy, NTLM FAIL 1216: 'HTTP cookie domains tailmatching the host name' HTTP, HTTP GET, HTTP proxy, cookies FAIL 1217: 'FTP with rubbish before name in 257-response' FTP, PORT, NLST, --data-binary FAIL 1218: 'HTTP cookies and domains with same prefix' HTTP, HTTP GET, HTTP proxy, cookies FAIL 1219: 'FTP with no user+password required (230 response)' FTP, PASV, RETR FAIL 1220: 'file:// URLs with query string' FILE, URL FAIL 1221: '--url-query with --data-urlencode' HTTP, HTTP POST, --data-urlencode, --url-query FAIL 1223: 'HTTP GET -w remote_ip and -w remote_port' HTTP, HTTP GET FAIL 1224: 'FTP fetch a file from the root directory' FTP, PASV, RETR FAIL 1225: 'FTP fetch two files using absolute paths' FTP, PASV, RETR FAIL 1226: 'FTP fetch a file from the root directory with singlecwd' FTP, PASV, RETR FAIL 1227: 'FTP fetch a file from the root directory with nocwd' FTP, PASV, RETR FAIL 1228: 'HTTP cookie path match' HTTP, HTTP GET, HTTP proxy, cookies, cookie path FAIL 1229: 'HTTP with Digest authorization with user name needing escape' HTTP, HTTP GET, HTTP Digest auth FAIL 1230: 'HTTP CONNECT to IPv6 numerical address' HTTP, HTTP CONNECT, HTTP proxy, IPv6 FAIL 1231: 'HTTP URL with dotdot removal from path' HTTP, HTTP GET, dotdot removal FAIL 1232: 'HTTP URL with dotdot removal from path using an HTTP proxy' HTTP, HTTP GET, HTTP proxy, dotdot removal FAIL 1233: 'FTP failing to connect to EPSV port, switching to PASV' FTP, connect to non-listen FAIL 1234: 'abusing {}-globbing' globbing, {} list, FAILURE FAIL 1235: 'multiple requests using {}{} in the URL' HTTP, HTTP GET, globbing, {} list FAIL 1236: '[] globbing overflowing the range counter' globbing, FAILURE FAIL 1237: 'URL with 1000+ letter user name + password' HTTP, HTTP Basic auth FAIL 1238: 'slow TFTP retrieve cancel due to -Y and -y' TFTP, TFTP RRQ, timeout, FAILURE, DELAY FAIL 1239: 'HTTP with -z + -w response_code and simulated 304' HTTP, HTTP GET, -z FAIL 1240: 'glob [0-1] with stuff after range (7.33.0 regression)' globbing, HTTP FAIL 1241: 'HTTP _without_ dotdot removal' HTTP, HTTP GET, HTTP proxy FAIL 1242: 'TFTP retrieve without TFTP options requests' TFTP, TFTP RRQ FAIL 1243: 'TFTP send without TFTP options requests' TFTP, TFTP WRQ FAIL 1245: '--proto deny must override --proto-redir allow' FTP, HTTP, HTTP GET, --proto, --proto-redir, followlocation FAIL 1246: 'URL with '#' at end of host name instead of '/'' HTTP, HTTP GET, HTTP proxy FAIL 1247: '--fail-early' HTTP, --fail-early FAIL 1248: 'Non-proxied host plus --proxy option and --noproxy option' HTTP, HTTP proxy, noproxy FAIL 1249: 'Non-proxied plus --proxy option and NO_PROXY env var' HTTP, HTTP proxy, NO_PROXY FAIL 1250: 'Non-proxied host plus http_proxy env var and --noproxy option' HTTP, HTTP proxy, http_proxy, noproxy FAIL 1251: 'Non-proxied host plus http_proxy env var and NO_PROXY env var' HTTP, HTTP proxy, http_proxy, NO_PROXY FAIL 1252: '--proxy, override NO_PROXY by --noproxy and access target URL directly' HTTP, HTTP proxy, NO_PROXY, noproxy FAIL 1253: '--proxy, override NO_PROXY by --noproxy and access target URL through proxy' HTTP, HTTP proxy, NO_PROXY, noproxy FAIL 1254: 'override NO_PROXY by --noproxy and access target URL through proxy' HTTP, HTTP proxy, NO_PROXY, noproxy FAIL 1255: 'http_proxy, override NO_PROXY by --noproxy and access target URL directly' HTTP, HTTP proxy, http_proxy, NO_PROXY, noproxy FAIL 1256: 'http_proxy, override NO_PROXY by --noproxy and target URL through proxy' HTTP, HTTP proxy, http_proxy, NO_PROXY, noproxy FAIL 1257: 'http_proxy, override NO_PROXY by --noproxy and target URL through proxy' HTTP, HTTP proxy, http_proxy, NO_PROXY, noproxy FAIL 1258: 'HTTP, use cookies with localhost' HTTP, HTTP GET, HTTP replaced headers, cookies, httponly FAIL 1259: 'HTTP URL with semicolon in password' HTTP, HTTP GET FAIL 1260: 'HTTP URL with rubbish after port number' HTTP, HTTP GET FAIL 1261: ''redirect_url' with --location and --max-redirs' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1262: 'FTP request and denied to download an older file with -z' FTP, RETR, -z FAIL 1263: 'HTTP URL with rubbish after IPv6 bracket' HTTP, HTTP GET FAIL 1264: 'HTTP URL with space in host name' HTTP, HTTP GET FAIL 1265: 'NO_PROXY with IPv6 numerical address' HTTP, HTTP proxy, http_proxy, NO_PROXY, noproxy, IPv6 FAIL 1266: 'HTTP GET with a single-byte HTTP/0.9 response' HTTP/0.9 FAIL 1267: 'HTTP GET with an invalid HTTP/1 response line start' HTTP/0.9 FAIL 1268: 'filename argument looks like a flag' warning FAIL 1269: 'too large --retry-delay value' --retry-delay FAIL 1270: 'Basic 'redirect_url'' HTTP, HTTP GET, redirect_url, followlocation, --write-out FAIL 1271: '--write-out from file with empty file' HTTP, HTTP GET, --write-out FAIL 1273: '-f and resume transfer of an entirely-downloaded file' HTTP, HTTP GET, Resume FAIL 1274: 'HTTP header line folding' HTTP, HTTP GET, header line folding FAIL 1277: 'HTTP GET with both content and transfer encoding' HTTP, HTTP GET, compressed, Transfer-Encoding, Content-Encoding FAIL 1278: 'verify extra --no-remote-name' --no-remote-name FAIL 1280: 'simple [a-d] globbing' globbing FAIL 1281: 'reject non-numerical port number in URL' URL FAIL 1282: 'FTP with 633 response before gss initialized' FTP, PASV, RETR FAIL 1283: 'globbing range with same start and stop' HTTP, HTTP GET, globbing, [] range FAIL 1284: 'HTTP POST --digest with user-specified Content-Length header' HTTP, HTTP POST, HTTP Digest auth FAIL 1285: 'HTTP PUT --digest with user-specified Content-Length header' HTTP, HTTP PUT, HTTP Digest auth FAIL 1286: 'HTTP GET --digest increasing nonce-count' HTTP, HTTP GET, HTTP Digest auth, followlocation FAIL 1287: 'HTTP over proxy-tunnel ignore TE and CL in CONNECT 2xx responses' HTTP, HTTP GET, HTTP CONNECT, proxytunnel, verbose logs FAIL 1288: 'Suppress proxy CONNECT response headers' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1289: 'globbing with overflow and bad syntax' HTTP, HTTP GET, globbing FAIL 1290: 'Verify URL globbing ignores []' HTTP, HTTP GET, globbing FAIL 1291: 'Attempt to upload 1000 files but fail immediately' HTTP, HTTP PUT FAIL 1292: 'Replaced internal headers with a blank one' HTTP, HTTP GET, HTTP added headers, HTTP replaced headers FAIL 1293: 'Multipart formpost to two URLs, the first failing' HTTP, HTTP GET, -F FAIL 1296: 'HTTP URL with %0a in name part' HTTP, HTTP Basic FAIL 1297: 'CONNECT to peer that returns nothing' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1298: 'HTTP GET special path with --request-target' HTTP, HTTP GET, --request-target FAIL 1299: 'Send "OPTIONS *" with --request-target' HTTP, --request-target FAIL 1300: 'llist unit tests' unittest, llist FAIL 1302: 'base64 encode/decode unit tests' unittest, base64 FAIL 1303: 'Curl_timeleft unit tests' unittest, Curl_timeleft FAIL 1308: 'formpost tests' curl_formadd, curl_formget, FORM FAIL 1309: 'splay unit tests' unittest, splay FAIL 1310: 'HTTP GET with -J + --show-headers' HTTP, HTTP GET, -J, --show-headers FAIL 1311: 'HTTP GET with -J and Content-Disposition' HTTP, HTTP GET, -J FAIL 1312: 'HTTP GET with -J, Content-Disposition and ; in filename' HTTP, HTTP GET, -J FAIL 1313: 'HTTP GET with -J, Content-Disposition, uneven quotes' HTTP, HTTP GET, -J FAIL 1314: 'HTTP Location: following a // prefixed url' HTTP, HTTP GET, HTTP proxy, followlocation FAIL 1315: 'HTTP RFC1867-type formposting - -F with three files, one with explicit type' HTTP, HTTP FORMPOST, HTTP file upload FAIL 1317: 'HTTP with --resolve' HTTP, HTTP GET, --resolve FAIL 1318: 'HTTP with --resolve and same host name using different cases' HTTP, HTTP GET, --resolve FAIL 1319: 'POP3 fetch tunneled through HTTP proxy' POP3, RETR, HTTP, HTTP CONNECT, HTTP proxy FAIL 1320: 'SMTP send tunneled through HTTP proxy' SMTP, HTTP, HTTP CONNECT, HTTP proxy FAIL 1321: 'IMAP FETCH tunneled through HTTP proxy' IMAP, FETCH, HTTP, HTTP CONNECT, HTTP proxy FAIL 1322: 'HTTP with --resolve and hostname with trailing dot' HTTP, HTTP GET, --resolve, trailing-dot FAIL 1324: 'HTTP with --resolve and [ipv6address]' HTTP, HTTP GET, IPv6, --resolve FAIL 1325: 'HTTP 308-redirect with POST' HTTP, HTTP GET, 308, followlocation FAIL 1326: 'TELNET to HTTP server' TELNET, UPLOAD FAIL 1327: 'TELNET check of upload with stdout redirected' TELNET, UPLOAD FAIL 1328: 'HTTP GET a globbed range with -f' HTTP, HTTP GET, globbing, --fail FAIL 1329: '/-prefixed proxy name' HTTP proxy FAIL 1331: 'HTTP --proxy-anyauth and 407 with cookies' HTTP, HTTP GET, HTTP proxy, cookies FAIL 1332: 'HTTP POST with 303 redirect and --post303' HTTP, HTTP POST, followlocation FAIL 1333: 'HTTP POST zero length, chunked-encoded' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 1334: 'HTTP GET with -O without Content-Disposition, -D file' HTTP, HTTP GET FAIL 1335: 'HTTP GET with -O without Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1336: 'HTTP GET with -O and Content-Disposition, -D file' HTTP, HTTP GET FAIL 1337: 'HTTP GET with -O and Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1338: 'HTTP GET with -O -J without Content-Disposition, -D file' HTTP, HTTP GET, -J FAIL 1339: 'HTTP GET with -O -J without Content-Disposition, -D stdout' HTTP, HTTP GET, -J FAIL 1340: 'HTTP GET with -O -J and Content-Disposition, -D file' HTTP, HTTP GET, -J FAIL 1341: 'HTTP GET with -O -J and Content-Disposition, -D stdout' HTTP, HTTP GET, -J FAIL 1342: 'HTTP GET with -O -i without Content-Disposition, -D file' HTTP, HTTP GET FAIL 1343: 'HTTP GET with -O -i without Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1344: 'HTTP GET with -O -i and Content-Disposition, -D file' HTTP, HTTP GET FAIL 1345: 'HTTP GET with -O -i and Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1346: 'HTTP GET with -O -i without Content-Disposition, without -D' HTTP, HTTP GET FAIL 1347: 'HTTP GET with -O -i and Content-Disposition, without -D' HTTP, HTTP GET FAIL 1348: 'FTP download, file without Content-Disposition inside, using -O' FTP, RETR FAIL 1349: 'FTP download, file without C-D inside, using -O -D file' FTP, RETR FAIL 1350: 'FTP download, file without C-D inside, using -O -D stdout' FTP, RETR FAIL 1351: 'FTP download, file without C-D inside, using -O -J -D file' FTP, RETR, -J FAIL 1352: 'FTP download, file without C-D inside, using -O -J -D stdout' FTP, RETR, -J FAIL 1353: 'FTP download, file without C-D inside, using -O -i -D file' FTP, RETR FAIL 1354: 'FTP download, file without C-D inside, using -O -i -D stdout' FTP, RETR FAIL 1355: 'FTP download, file without C-D inside, using -O -i, without -D' FTP, RETR FAIL 1356: 'FTP download, file with Content-Disposition inside, using -O' FTP, RETR FAIL 1357: 'FTP download, file with C-D inside, using -O -D file' FTP, RETR FAIL 1358: 'FTP download, file with C-D inside, using -O -D stdout' FTP, RETR FAIL 1359: 'FTP download, file with C-D inside, using -O -J -D file' FTP, RETR, -J FAIL 1360: 'FTP download, file with C-D inside, using -O -J -D stdout' FTP, RETR, -J FAIL 1361: 'FTP download, file with C-D inside, using -O -i -D file' FTP, RETR FAIL 1362: 'FTP download, file with C-D inside, using -O -i -D stdout' FTP, RETR FAIL 1363: 'FTP download, file with C-D inside, using -O -i, without -D' FTP, RETR FAIL 1364: 'HTTP GET -o fname without Content-Disposition, -D file' HTTP, HTTP GET FAIL 1365: 'HTTP GET -o fname without Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1366: 'HTTP GET -o fname and Content-Disposition, -D file' HTTP, HTTP GET FAIL 1367: 'HTTP GET -o fname and Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1368: 'HTTP GET -o fname -J without Content-Disposition, -D file' HTTP, HTTP GET, -J FAIL 1369: 'HTTP GET -o fname -J without Content-Disposition, -D stdout' HTTP, HTTP GET, -J FAIL 1370: 'HTTP GET -o fname -J and Content-Disposition, -D file' HTTP, HTTP GET, -J FAIL 1371: 'HTTP GET -o fname -J and Content-Disposition, -D stdout' HTTP, HTTP GET, -J FAIL 1372: 'HTTP GET -o fname -i without Content-Disposition, -D file' HTTP, HTTP GET FAIL 1373: 'HTTP GET -o fname -i without Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1374: 'HTTP GET -o fname -i and Content-Disposition, -D file' HTTP, HTTP GET FAIL 1375: 'HTTP GET -o fname -i and Content-Disposition, -D stdout' HTTP, HTTP GET FAIL 1376: 'HTTP GET -o fname -i without Content-Disposition, without -D' HTTP, HTTP GET FAIL 1377: 'HTTP GET -o fname -i and Content-Disposition, without -D' HTTP, HTTP GET FAIL 1378: 'FTP DL, file without Content-Disposition inside, using -o fname' FTP, RETR FAIL 1379: 'FTP DL, file without C-D inside, using -o fname -D file' FTP, RETR FAIL 1380: 'FTP DL, file without C-D inside, using -o fname -D stdout' FTP, RETR FAIL 1381: 'FTP DL, file without C-D inside, using -o fname -J -D file' FTP, RETR, -J FAIL 1382: 'FTP DL, file without C-D inside, using -o fname -J -D stdout' FTP, RETR, -J FAIL 1383: 'FTP DL, file without C-D inside, using -o fname -i -D file' FTP, RETR FAIL 1384: 'FTP DL, file without C-D inside, using -o fname -i -D stdout' FTP, RETR FAIL 1385: 'FTP DL, file without C-D inside, using -o fname -i, without -D' FTP, RETR FAIL 1386: 'FTP DL, file with Content-Disposition inside, using -o fname' FTP, RETR FAIL 1387: 'FTP DL, file with C-D inside, using -o fname -D file' FTP, RETR FAIL 1388: 'FTP DL, file with C-D inside, using -o fname -D stdout' FTP, RETR FAIL 1389: 'FTP DL, file with C-D inside, using -o fname -J -D file' FTP, RETR, -J FAIL 1390: 'FTP DL, file with C-D inside, using -o fname -J -D stdout' FTP, RETR, -J FAIL 1391: 'FTP DL, file with C-D inside, using -o fname -i -D file' FTP, RETR FAIL 1392: 'FTP DL, file with C-D inside, using -o fname -i -D stdout' FTP, RETR FAIL 1393: 'FTP DL, file with C-D inside, using -o fname -i, without -D' FTP, RETR FAIL 1396: 'curl_easy_escape and curl_easy_unescape' unittest, curl_easy_escape, curl_easy_unescape FAIL 1398: 'curl_msnprintf unit tests' unittest, curl_msnprintf FAIL 1400: '--libcurl for simple HTTP GET' HTTP, HTTP GET, --libcurl FAIL 1401: '--libcurl for GET with various options' HTTP, HTTP GET, HTTP Basic auth, HTTP set cookie, cookies, --libcurl FAIL 1402: '--libcurl for simple POST' HTTP, HTTP POST, --libcurl FAIL 1403: '--libcurl for GET with query' HTTP, HTTP GET, --libcurl FAIL 1404: '--libcurl plus -F with 3 files, one with explicit type & encoder' HTTP, HTTP FORMPOST, HTTP file upload, --libcurl FAIL 1405: '--libcurl for FTP with quote ops' FTP, post-quote, pre-quote, --libcurl FAIL 1406: '--libcurl for SMTP' SMTP, --libcurl FAIL 1407: '--libcurl for POP3 LIST one message' POP3, Clear Text , LIST, --libcurl FAIL 1408: 'HTTP receive cookies over IPV6' HTTP, HTTP GET, IPv6, cookies, cookiejar FAIL 1409: 'Pass in string to -C' cmdline, FAILURE FAIL 1410: 'Pass in negative number to --max-time' cmdline, FAILURE FAIL 1411: 'HTTP with zero size file PUT' HTTP, HTTP PUT FAIL 1412: 'HTTP GET with --anyauth with two URLs (picking Digest)' HTTP, HTTP GET, HTTP Digest auth, --anyauth FAIL 1413: 'HTTP redirect with fragment in new URL' HTTP, HTTP GET, followlocation FAIL 1414: 'FTP PORT without SIZE or EPRT support' FTP, PORT, RETR, no SIZE FAIL 1415: 'Delete expired cookies' HTTP, HTTP GET, HTTP proxy, cookies, cookiejar, delete expired cookie FAIL 1416: 'HTTP GET with chunked Transfer-Encoding overflowed chunked size' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 1417: 'HTTP GET with chunked encoding and chunked trailer without CRs' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 1418: 'HTTP with --anyauth and connection reuse' HTTP, HTTP GET, HTTP NTLM auth, connection reuse FAIL 1419: 'HTTP with --anyauth (but no auth!) and connection reuse' HTTP, HTTP GET, HTTP NTLM auth, connection reuse FAIL 1420: '--libcurl for IMAP FETCH message' IMAP, Clear Text , FETCH, --libcurl FAIL 1421: 'Re-using HTTP proxy connection for two different host names' HTTP, HTTP GET, HTTP proxy FAIL 1422: 'HTTP GET with -O -J and Content-Disposition (empty file)' HTTP, HTTP GET, -J FAIL 1423: 'HTTP GET -o fname without Content-Disposition (empty file)' HTTP, HTTP GET FAIL 1424: 'HTTP GET -o fname without Content-Disposition (unmet time condition)' HTTP, HTTP GET, If-Modified-Since, -z FAIL 1427: 'too large -m timeout value' integer overflow FAIL 1428: 'HTTP over proxy-tunnel with --proxy-header and --header' HTTP, HTTP GET, HTTP CONNECT, HTTP Basic auth, proxytunnel FAIL 1429: 'HTTP GET with 999 response code' HTTP, HTTP GET, HTTP/0.9 FAIL 1430: 'HTTP GET with negative response code' HTTP, HTTP GET FAIL 1431: 'HTTP GET with single-digit response code' HTTP, HTTP GET FAIL 1432: 'HTTP GET with 100-digit response code and survive' HTTP, HTTP GET FAIL 1433: 'HTTP GET with 100-digit subversion number in response' HTTP, HTTP GET FAIL 1434: 'HTTP GET resume at exactly the existing file size is fine' HTTP, HTTP GET, Resume FAIL 1435: 'simple HTTP GET over Unix socket' HTTP, HTTP GET, UnixSockets FAIL 1436: 'HTTP requests with multiple connections over Unix socket' HTTP, HTTP GET, UnixSockets FAIL 1437: 'HTTP with duplicated WWW-Authenticate parameters' HTTP, HTTP GET, HTTP Digest auth FAIL 1438: 'Check if %{scheme} returns HTTP' HTTP, protocol, --write-out FAIL 1439: 'Check if %{http_version} returns 1.1' HTTP, --write-out FAIL 1440: 'Check --write-out with trailing %{' --write-out, FILE FAIL 1441: 'Check --write-out with trailing %' --write-out, FILE FAIL 1442: 'Check --write-out with trailing \' --write-out, FILE FAIL 1443: 'HTTP GET with -O and --remote-time' HTTP, HTTP GET, -O, --remote-time FAIL 1444: 'FTP with --remote-time' FTP, EPSV, RETR, --remote-time FAIL 1445: 'file:// with --remote-time' FILE, --remote-time FAIL 1447: 'Provide illegal proxy name' HTTP proxy, FAILURE FAIL 1448: 'Redirect following to UTF-8 IDN host name' HTTP, HTTP GET, IDN, followlocation, --resolve, --write-out FAIL 1449: 'FTP download range with integer overflow' FTP, PASV, RETR, Resume FAIL 1453: 'Too long tftp filename' Too long tftp filename, FAILURE FAIL 1455: 'HTTP GET when PROXY Protocol enabled' HTTP, HTTP GET, proxy, haproxy FAIL 1456: 'HTTP-IPv6 GET with PROXY protocol' HTTP, HTTP GET, proxy, haproxy, IPv6 FAIL 1457: 'Check if %{stderr} and %{stdout} switch between stdout and stderr.' HTTP, protocol, --write-out FAIL 1458: 'HTTP with wildcard --resolve' HTTP, HTTP GET, --resolve FAIL 1460: 'HTTP GET with -Ji and Content-Disposition with existing file' HTTP, HTTP GET, -J FAIL 1462: 'curl invalid category --help' --help FAIL 1463: 'curl file category --help' FILE, --help FAIL 1464: 'curl file category --help with lower/upper mix' FILE, --help FAIL 1465: '--libcurl for POST with binary content' HTTP, HTTP POST, --libcurl FAIL 1466: 'HTTP GET with 3-digit response and only digits in reason' HTTP, HTTP GET FAIL 1467: 'HTTP GET via SOCKS5 proxy via Unix sockets' HTTP, HTTP GET, SOCKS5, UnixSockets FAIL 1468: 'HTTP GET with host name using SOCKS5h via Unix sockets' HTTP, HTTP GET, SOCKS5, SOCKS5h, UnixSockets FAIL 1469: 'Space in FTP upload URL' FTP, URL, FAILURE FAIL 1471: 'Fail to resolve .onion TLD' Onion, Tor, FAILURE FAIL 1472: 'Fail to resolve .onion. TLD' Onion, Tor, FAILURE FAIL 1473: 'first HTTP header starts with white space' HTTP, HTTP GET, header line folding FAIL 1474: '--proto -all disables all protocols' HTTP, HTTP GET, --proto FAIL 1475: '-f and 416 with Content-Range: */size' HTTP, HTTP GET, Resume FAIL 1476: 'PSL violating cookie with mixed case domain and cookie domain property' HTTP, HTTP GET, cookies FAIL 1479: 'HTTP/1.1 response followed by an HTTP/0.9 response over the same connection' HTTP, HTTP/0.9 FAIL 1480: 'HTTP Continue response without final response' HTTP FAIL 1481: '--libcurl with TLS version options' HTTP, HTTP GET, --libcurl FAIL 1482: 'HTTP GET with double chunked in TE header' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1483: 'HTTP GET with double chunked in TE header' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1484: 'HTTP HEAD with response body to ignore' HTTP, HTTP HEAD FAIL 1485: 'get curlinfo on last header in callback' HTTP, HTTP GET FAIL 1487: 'HTTP GET with -J and Content-Disposition on 301' HTTP, HTTP GET, -J FAIL 1489: '-D sent to stderr' HTTP, HTTP GET FAIL 1490: '"upload" with file:// overwriting existing' FILE FAIL 1491: 'file:// don't overwrite self with --skip-existing' FILE FAIL 1492: 'HTTP GET with -J + --show-headers but no Content-Disposition:' HTTP, HTTP GET, -J, --show-headers FAIL 1493: 'HTTP GET with identity + chunked in TE header' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1494: 'HTTP GET with identity twice in TE header' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1495: 'HTTP GET with chunked + identity in TE header' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1496: 'HTTP GET with gzip + chunked transfer-encoding without being asked' HTTP, HTTP GET, chunked Transfer-Encoding, DELAY FAIL 1497: 'HTTP GET --retry on 503 error with output to /dev/null' HTTP, HTTP GET, retry FAIL 1498: 'HTTP PUT from stdin using period' HTTP, HTTP PUT, chunked Transfer-Encoding FAIL 1499: 'HTTP chunked encoding and chunked trailer, twice' HTTP, HTTP GET, chunked Transfer-Encoding FAIL 1500: 'curl_multi_wait' HTTP, HTTP GET, multi FAIL 1501: 'FTP with multi interface and slow LIST response' FTP, RETR, multi, LIST, DELAY FAIL 1502: 'HTTP multi with CURLOPT_RESOLVE, cleanup sequence UA' HTTP, HTTP GET, multi, CURLOPT_RESOLVE FAIL 1503: 'HTTP multi with CURLOPT_RESOLVE, cleanup sequence PA' HTTP, HTTP GET, multi, CURLOPT_RESOLVE FAIL 1504: 'HTTP multi with CURLOPT_RESOLVE, cleanup sequence UB' HTTP, HTTP GET, multi, CURLOPT_RESOLVE FAIL 1505: 'HTTP multi with CURLOPT_RESOLVE, cleanup sequence PB' HTTP, HTTP GET, multi, CURLOPT_RESOLVE FAIL 1506: 'HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS)' HTTP, multi, verbose logs FAIL 1507: 'SMTP with multi interface and CURLE_ABORTED_BY_CALLBACK' SMTP, multi FAIL 1508: 'Close a multi handle without using it' HTTP, multi FAIL 1509: 'simple multi http:// through proxytunnel with authentication info' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1511: 'HTTP GET time conditions in repeated requests' HTTP, CURLOPT_TIMECONDITION FAIL 1513: 'return failure immediately from progress callback' PROGRESSFUNCTION, DELAY FAIL 1514: 'HTTP POST with read callback and unknown data size' HTTP, HTTP POST, Content-Length, chunked Transfer-Encoding FAIL 1515: 'caching of manual libcurl DNS entries after DNS cache timeout' HTTP, multi, FAILURE, resolve FAIL 1516: 'caching of manual libcurl DNS entries after dead connection' HTTP, multi, FAILURE, resolve FAIL 1518: 'Extract Location: with broken URL' HTTP FAIL 1519: 'Extract Location: with broken absolute URL' HTTP FAIL 1520: 'SMTP with CRLF-dot-CRLF in data' SMTP FAIL 1521: 'Test all curl_easy_setopt and curl_easy_getinfo options' curl_easy_setopt FAIL 1522: 'CURLINFO_SIZE_UPLOAD with small SO_SNDBUF' CURLINFO_SIZE_UPLOAD FAIL 1523: 'CURLINFO_LOW_SPEED_LIMIT' CURLINFO_LOW_SPEED_LIMIT, DELAY FAIL 1524: 'HTTP PUT with 303 redirect' HTTP, HTTP PUT, followlocation FAIL 1525: 'CURLOPT_PROXYHEADER is ignored CURLHEADER_UNIFIED' HTTP, HTTP PUT, HTTP CONNECT, HTTP proxy, proxytunnel, CURLOPT_PROXYHEADER FAIL 1526: 'CURLOPT_PROXYHEADER: separate host/proxy headers' HTTP, HTTP PUT, HTTP CONNECT, HTTP proxy, proxytunnel, CURLOPT_PROXYHEADER FAIL 1527: 'Same headers with CURLOPT_HEADEROPT == CURLHEADER_UNIFIED' HTTP, HTTP PUT, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1528: 'Separately specified proxy/server headers sent in a proxy GET' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1529: 'HTTP request-injection in URL sent over proxy' HTTP, HTTP GET, HTTP proxy FAIL 1530: 'CURLOPT_OPENSOCKETFUNCTION returns bad socket' CURLOPT_OPENSOCKETFUNCTION FAIL 1531: 'CURLOPT_POSTFIELDS with binary data set after multi_add_handle' CURLOPT_POSTFIELDS FAIL 1532: 'Test CURLINFO_RESPONSE_CODE' HTTP, HTTP GET FAIL 1533: 'HTTP with CURLOPT_KEEP_SENDING_ON_ERROR and an early error response' HTTP, HTTP POST, CURLOPT_KEEP_SENDING_ON_ERROR FAIL 1534: 'CURLINFO_FILETIME init and reset' HTTP, HTTP GET, CURLINFO_FILETIME FAIL 1535: 'Test CURLINFO_RESPONSE_CODE CURLINFO_PROTOCOL' HTTP, HTTP GET FAIL 1536: 'Test CURLINFO_RESPONSE_CODE CURLINFO_SCHEME' HTTP, HTTP GET FAIL 1539: 'HTTP 1.0 POST with read callback and unknown data size' HTTP, HTTP POST, Content-Length, chunked Transfer-Encoding FAIL 1540: 'chunked with trailers and pausing the receive' HTTP, HTTP GET, CURLPAUSE_RECV, chunked Transfer-Encoding, Trailer:, DELAY FAIL 1541: 'chunked with trailers and pausing the receive' HTTP, HTTP GET, chunked Transfer-Encoding, Trailer:, DELAY FAIL 1542: 'connection reuse with CURLOPT_MAXLIFETIME_CONN' HTTP, connection reuse, persistent connection, CURLOPT_MAXLIFETIME_CONN, verbose logs FAIL 1543: 'CURLOPT_CURLU, URL with space and CURLINFO_EFFECTIVE_URL' HTTP, CURLOPT_CURLU FAIL 1545: 'use curl_formadd() data twice with unreadable file' HTTP, HTTP GET FAIL 1546: 'HTTP transfer-encoding wrong order' HTTP, HTTP GET, Transfer-Encoding FAIL 1547: 'FTP dir list PASV overriding PORT' FTP, PASV, LIST FAIL 1550: 'verify setting pipelining blocklisting options' multi FAIL 1551: 're-run redirected transfer without setting URL again' multi FAIL 1552: 'IMAP multi transfer error without curl_multi_remove_handle' IMAP, Clear Text, FETCH FAIL 1553: 'IMAP cleanup before a connection was created' IMAP, Clear Text, FETCH FAIL 1554: 'HTTP with shared connection cache' HTTP, HTTP GET, shared connections FAIL 1555: 'verify api is protected against calls from callbacks' RECURSIVE_API_CALL, DELAY FAIL 1556: 'send long HTTP headers to header callback' HTTP, HTTP GET FAIL 1557: 'Remove easy handle in pending connections doesn't leave dangling entry' multi, crash FAIL 1558: 'CURLINFO_PROTOCOL for file:// transfer' curl_easy_getinfo, CURLINFO_PROTOCOL FAIL 1559: 'Set excessive URL lengths' CURLOPT_URL, verbose logs FAIL 1563: 'Make sure redirects to CURLPROTO_GOPHER are forbidden by default' GOPHER, HTTP GET, followlocation FAIL 1564: 'wakeup before poll with no easy handles' multi, wakeup FAIL 1565: 'wakeup from another thread' HTTP, HTTP GET, multi, multi-threaded, wakeup FAIL 1566: '--etag-compare that gets a 304 back shouldn't overwrite the file' HTTP, HTTP GET, --etag-compare FAIL 1567: 're-run redirected transfer without setting CURLU URL again' HTTP, URL API, CURLOPT_CURLU, CURLOPT_FOLLOWLOCATION FAIL 1568: 'HTTP with Digest authorization on custom CURLOPT_PORT' HTTP, HTTP GET, HTTP Digest auth FAIL 1569: 'FTP first type=A then regular URL' FTP, PASV, RETR FAIL 1570: 'FTP first type=D then regular URL' FTP, PASV, RETR FAIL 1571: 'CURLFOLLOW_OBEYCODE with custom POST method, 302 => GET' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1572: 'CURLFOLLOW_OBEYCODE with custom POST method, 308 => custom' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1573: 'CURLFOLLOW_OBEYCODE with custom GET method, 301 => custom' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1574: 'CURLFOLLOW_FIRSTONLY with custom GET method, 301 => GET' CURLFOLLOW_FIRSTONLY, CURLOPT_FOLLOWLOCATION FAIL 1575: 'CURLFOLLOW_FIRSTONLY with custom POST method, 308 => POST' CURLFOLLOW_FIRSTONLY, CURLOPT_FOLLOWLOCATION FAIL 1576: 'CURLFOLLOW_OBEYCODE with custom PUT method, 302 => custom' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1577: 'CURLFOLLOW_OBEYCODE with custom PUT method, 308 => custom' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1578: 'CURLFOLLOW_FIRSTONLY with custom PUT method, 302 => PUT' CURLFOLLOW_FIRSTONLY, CURLOPT_FOLLOWLOCATION FAIL 1579: 'CURLFOLLOW_OBEYCODE with custom PUT method, 303 => GET' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1580: 'CURLFOLLOW_FIRSTONLY with custom PUT method, 308 => PUT' CURLFOLLOW_FIRSTONLY, CURLOPT_FOLLOWLOCATION FAIL 1581: 'CURLFOLLOW_OBEYCODE with custom POST301 method, 301 => custom' CURLFOLLOW_OBEYCODE, CURLOPT_FOLLOWLOCATION FAIL 1590: 'IMAP cleanup before a connection was created' IMAP, Clear Text, FETCH FAIL 1591: 'HTTP PUT with trailers at the end' HTTP, HTTP PUT, CURLOPT_HTTPTRAILER_FUNCTION, CURLOPT_HTTPTRAILER_DATA FAIL 1593: 'HTTP custom header overrides CURLOPT_TIMECONDITION' HTTP, HTTP GET, HTTP replaced headers, CURLOPT_TIMECONDITION, If-Modified-Since FAIL 1594: 'HTTP Retry-After header parsing and extraction' HTTP, HTTP GET, HTTP replaced headers, CURLOPT_TIMECONDITION, If-Modified-Since FAIL 1595: 'HTTP Retry-After header extraction (without header)' HTTP, HTTP GET, HTTP replaced headers, CURLOPT_TIMECONDITION, If-Modified-Since FAIL 1596: 'HTTP Retry-After header parsing using a date' HTTP, HTTP GET, HTTP replaced headers, CURLOPT_TIMECONDITION, If-Modified-Since FAIL 1597: 'CURLOPT_PROTOCOLS_STR' CURLOPT_PROTOCOLS_STR FAIL 1598: 'HTTP POST with trailers at the end' HTTP, HTTP POST, CURLOPT_HTTPTRAILER_FUNCTION, CURLOPT_HTTPTRAILER_DATA FAIL 1599: 'FTP with netrc using no user but control code in password' FTP, netrc FAIL 1600: 'NTLM unit tests' unittest, NTLM FAIL 1601: 'MD5 unit tests' unittest, MD5 FAIL 1605: 'Test negative data lengths as input to libcurl functions' unittest FAIL 1606: 'verify speedcheck' unittest, speedcheck FAIL 1607: 'CURLOPT_RESOLVE parsing' unittest, CURLOPT_RESOLVE FAIL 1608: 'verify DNS shuffling' unittest, curlopt_dns_shuffle_addresses FAIL 1609: 'CURLOPT_RESOLVE parsing' unittest, CURLOPT_RESOLVE FAIL 1610: 'SHA256 unit tests' unittest, SHA256 FAIL 1611: 'MD4 unit tests' unittest, MD4 FAIL 1612: 'HMAC unit tests' unittest, HMAC FAIL 1613: 'Send "OPTIONS *" with --request-target to a proxy' HTTP, HTTP proxy, --request-target FAIL 1615: 'SHA-512/256 unit tests' unittest, SHA-512/256 FAIL 1620: 'unit tests for url.c' unittest, URL FAIL 1621: 'unit tests for stripcredentials from URL' unittest, stripcredentials FAIL 1633: '--retry with a 429 response and Retry-After:' HTTP, HTTP GET, RETRY-AFTER FAIL 1634: '--retry with a 429 response and Retry-After: and --fail' HTTP, HTTP GET, RETRY-AFTER FAIL 1635: '--retry with a 429 response and Retry-After: and --fail-with-body' HTTP, HTTP GET, RETRY-AFTER FAIL 1652: 'infof' unittest, infof FAIL 1654: 'alt-svc' unittest, Alt-Svc FAIL 1660: 'HSTS' unittest, HSTS FAIL 1670: '-w individual header output' HTTP, HTTP GET, -w, %header FAIL 1671: '-w header JSON output' HTTP, HTTP GET, -w, %header FAIL 1680: 'HTTP GET with explicit clobber' HTTP, HTTP GET, --clobber FAIL 1681: 'HTTP GET without clobber' HTTP, HTTP GET, --no-clobber FAIL 1682: 'HTTP GET without clobber and --output-dir' HTTP, HTTP GET, --no-clobber FAIL 1683: 'HTTP GET without clobber when 100 files already exist' HTTP, HTTP GET, --no-clobber FAIL 1704: 'HTTP/1 doing HTTP/2 Upgrade: getting an HTTP/2 101 response' HTTP, HTTP GET, HTTP/2 FAIL 1800: 'HTTP/2 upgrade refused' HTTP, HTTP/2 FAIL 1900: 'HSTS curl_easy_duphandle' HTTP, HSTS FAIL 1901: 'Chunked HTTP POST from callback with CURLOPT_POSTFIELDSIZE set' HTTP, HTTP POST, CURLOPT_READFUNCTION FAIL 1903: 'CURLOPT_COOKIEFILE then reset then set again' HTTP, cookies, CURLOPT_COOKIEFILE FAIL 1904: 'HTTP CONNECT with 204 response' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel FAIL 1905: 'CURLOPT_COOKIELIST set to "FLUSH" of a shared cookie object' HTTP, cookies, FLUSH FAIL 1906: 'CURLOPT_CURLU and CURLOPT_PORT' CURLOPT_CURLU, CURLOPT_PORT FAIL 1907: 'CURLINFO_EFFECTIVE_URL with non-scheme URL' CURLINFO_EFFECTIVE_URL FAIL 1909: 'HTTP GET --retry-all-errors to overcome partial transfer' HTTP, HTTP GET, retry FAIL 1910: 'HTTP credentials with newline and redirect' HTTP, HTTP Basic, CURLOPT_FOLLOWLOCATION FAIL 1911: 'verify that curl_easy_setopt() rejects too long string inputs' curl_easy_option FAIL 1913: 'FTP with NOBODY set, getting a missing file' FTP, CURLOPT_NOBODY FAIL 1914: 'FTP with NOBODY and FILETIME set, getting a missing file' FTP, CURLOPT_NOBODY, CURLOPT_FILETIME FAIL 1915: 'HSTS read/write callbacks' HTTP, HSTS, CURLOPT_HSTSREADFUNCTION FAIL 1916: 'MQTT PUBLISH with no POSTFIELDSIZE set' MQTT, MQTT PUBLISH FAIL 1917: 'MQTT PUBLISH with CURLOPT_POST set (no payload)' MQTT, MQTT PUBLISH FAIL 1919: 'set CURLOPT_XOAUTH2_BEARER and do connection reuse' connection reuse FAIL 1940: 'curl_easy_header' curl_easy_header FAIL 1941: 'curl_easy_header with CONNECT' curl_easy_header, CONNECT FAIL 1942: 'curl_easy_header with 1xx response' curl_easy_header, CONNECT FAIL 1943: 'curl_easy_header with trailers' curl_easy_header, CONNECT FAIL 1944: 'curl_easy_header with redirect' curl_easy_header FAIL 1945: 'curl_easy_nextheader with server + CONNECT' curl_easy_header, CONNECT FAIL 1946: 'curl_easy_header with redirect but get headers from first request' curl_easy_header FAIL 1947: 'curl_easy_nextheader on second request after first did redirects' curl_easy_nextheader FAIL 1948: 'CURLOPT_POST after CURLOPT_UPLOAD reusing handle' HTTP, HTTP POST, HTTP PUT FAIL 1964: 'HTTP AWS_SIGV4 with X-Xxx-Date header set manually' HTTP, CURLOPT_AWS_SIGV4 FAIL 1977: 'CURLOPT_CURLU and CURLINFO_EFFECTIVE_URL' CURLOPT_CURLU, CURLINFO_EFFECTIVE_URL FAIL 2000: 'FTP RETR followed by FILE' FTP, PASV, FILE, multiprotocol FAIL 2001: 'HTTP GET followed by FTP RETR followed by FILE' HTTP, HTTP GET, FTP, PASV, FILE, multiprotocol FAIL 2002: 'HTTP GET followed by FTP RETR followed by FILE followed by TFTP RRQ' HTTP, HTTP GET, FTP, PASV, FILE, TFTP, TFTP RRQ, multiprotocol FAIL 2003: 'HTTP GET, FTP RETR, FILE, TFTP RRQ then again in rev order' HTTP, HTTP GET, FTP, PASV, FILE, TFTP, TFTP RRQ, multiprotocol FAIL 2005: 'netrc match with password only in file, no username. machine follows' HTTP, netrc FAIL 2023: 'HTTP authorization retry (Basic)' HTTP, HTTP GET, HTTP Basic auth FAIL 2024: 'HTTP authorization retry (Basic switching to Digest)' HTTP, HTTP GET, HTTP Basic auth, HTTP Digest auth FAIL 2025: 'HTTP authorization retry (Basic switching to NTLM)' HTTP, HTTP GET, HTTP Basic auth, HTTP NTLM auth, NTLM FAIL 2026: 'HTTP authorization retry (Digest switching to Basic)' HTTP, HTTP GET, HTTP Basic auth, HTTP Digest auth FAIL 2027: 'HTTP authorization retry (Digest)' HTTP, HTTP GET, HTTP Digest auth FAIL 2028: 'HTTP authorization retry (Digest switching to NTLM)' HTTP, HTTP GET, HTTP Digest auth, HTTP NTLM auth, NTLM FAIL 2029: 'HTTP authorization retry (NTLM switching to Basic)' HTTP, HTTP GET, HTTP Basic auth, HTTP NTLM auth, NTLM FAIL 2030: 'HTTP authorization retry (NTLM switching to Digest)' HTTP, HTTP GET, HTTP Digest auth, HTTP NTLM auth, NTLM FAIL 2031: 'HTTP authorization retry (NTLM)' HTTP, HTTP GET, HTTP NTLM auth, NTLM FAIL 2039: 'FTP (optional .netrc with 'default' override; no user/pass) dir list PASV' FTP, EPSV, LIST, netrc FAIL 2040: 'HTTP Basic authorization, then without authorization' HTTP, HTTP GET, HTTP Basic auth FAIL 2044: 'Attempt to set a default protocol that does not exist' --proto-default FAIL 2045: 'Set the default protocol to ftp for a schemeless URL' FTP, --proto-default FAIL 2046: 'Connection reuse with IDN host name' HTTP, HTTP GET, IDN, followlocation, --resolve, --write-out FAIL 2047: 'Connection reuse with IDN host name over HTTP proxy' HTTP, HTTP GET, HTTP proxy, IDN, followlocation, --write-out FAIL 2049: 'Connect to specific host' HTTP, HTTP GET, CURLOPT_CONNECT_TO FAIL 2050: '--connect-to via HTTP proxy (tunnel mode automatically)' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, CURLOPT_CONNECT_TO FAIL 2051: 'Connect to specific host: Reuse existing connections if possible' HTTP, HTTP GET, CURLOPT_CONNECT_TO FAIL 2052: '--connect-to: do not mix connections with and without a "connect to host"' HTTP, HTTP GET, CURLOPT_CONNECT_TO, --resolve FAIL 2053: 'Connect to specific host with IP addresses' HTTP, HTTP GET, CURLOPT_CONNECT_TO FAIL 2054: 'Connect to specific host: use the first "connect-to" string that matches' HTTP, HTTP GET, CURLOPT_CONNECT_TO FAIL 2055: '--connect-to via SOCKS proxy and HTTP proxy (tunnel mode automatically)' HTTP, HTTP GET, HTTP CONNECT, HTTP proxy, proxytunnel, CURLOPT_CONNECT_TO, SOCKS5 FAIL 2058: 'HTTP Digest with PUT, resumed upload, modified method and SHA-256' HTTP, HTTP PUT, HTTP proxy, HTTP Digest auth, Resume, Content-Range, CUSTOMREQUEST FAIL 2059: 'HTTP Digest with PUT, resumed upload, modified method, SHA-256 and userhash' HTTP, HTTP PUT, HTTP proxy, HTTP Digest auth, Resume, Content-Range, CUSTOMREQUEST FAIL 2060: 'HTTP Digest with PUT, resumed upload, SHA-512-256, userhash' HTTP, HTTP PUT, HTTP proxy, HTTP Digest auth, Resume, Content-Range, CUSTOMREQUEST FAIL 2061: 'HTTP with RFC7616 SHA256 Digest authorization' HTTP, HTTP GET, HTTP Digest auth FAIL 2062: 'HTTP with RFC7616 SHA-512-256 Digest authorization and userhash=false' HTTP, HTTP GET, HTTP Digest auth FAIL 2063: 'HTTP with RFC7616 SHA-256 Digest authorization and userhash=true' HTTP, HTTP GET, HTTP Digest auth FAIL 2064: 'HTTP with RFC7616 Digest authorization with bad password and SHA256' HTTP, HTTP GET, HTTP Digest auth FAIL 2065: 'HTTP with RFC7616 Digest, bad password, SHA-512-256 and userhash' HTTP, HTTP GET, HTTP Digest auth FAIL 2066: 'HTTP with RFC7616 Digest, bad password, SHA-256 and userhash' HTTP, HTTP GET, HTTP Digest auth FAIL 2067: 'HTTP POST --digest with SHA256 and user-specified Content-Length header' HTTP, HTTP POST, HTTP Digest auth FAIL 2068: 'HTTP POST Digest with SHA-512-256, userhash and set Content-Length' HTTP, HTTP POST, HTTP Digest auth FAIL 2069: 'HTTP POST Digest with SHA-256, userhash and set Content-Length header' HTTP, HTTP POST, HTTP Digest auth FAIL 2071: 'basic file:// file with "127.0.0.1" hostname' FILE FAIL 2072: 'file:// with Unix path resolution behavior for the case of extra slashes' FILE FAIL 2073: 'HTTP form posts with handle reset' HTTP, HTTP FORMPOST FAIL 2074: 'HTTP GET' HTTP, HTTP GET, AUTH OAUTHBEARER FAIL 2075: 'Verify usernames are not allowed in url' --disallow-username-in-url, HTTP FAIL 2076: 'HTTP with digest auth and URI contains query' HTTP, HTTP GET, HTTP Digest auth FAIL 2077: 'curl --fail --negotiate to unauthenticated service fails' HTTP, HTTP GET, GSS-API FAIL 2078: 'curl --negotiate should not send empty POST request only' HTTP, HTTP GET, GSS-API FAIL 2080: 'config file with overly long option' FILE, config FAIL 2081: 'Automatic referrer credential and anchor stripping check' HTTP, HTTP GET, referer, followlocation, --write-out FAIL 2082: 'Pre-request callback for HTTP' HTTP FAIL 2083: 'Pre-request callback for FTP' FTP FAIL 2084: 'Pre-request callback for HTTP with callback terminating transfer' HTTP FAIL 2085: 'Pre-request callback for HTTP with location following' HTTP, followlocation FAIL 2086: 'Pre-request callback for HTTP IPv6' HTTP, IPv6 FAIL 2200: 'MQTT SUBSCRIBE with user and password' MQTT, MQTT SUBSCRIBE FAIL 2201: 'MQTT PUBLISH with user and password valid' MQTT, MQTT PUBLISH FAIL 2202: 'MQTT PUBLISH with invalid user and password' MQTT, MQTT PUBLISH FAIL 2203: 'MQTT with error in CONNACK' MQTT, MQTT SUBSCRIBE FAIL 2204: 'MQTT SUBSCRIBE with user and password' MQTT, MQTT SUBSCRIBE FAIL 2205: 'MQTT with very long user name' MQTT, MQTT SUBSCRIBE FAIL 2306: 'HTTP GET reused handle with first header folded' HTTP, HTTP GET FAIL 2308: 'verify return code when write callback returns error' HTTP, HTTP GET FAIL 2309: 'HTTP with .netrc using duped easy handle' netrc, HTTP FAIL 2601: 'bufq unit tests' unittest, bufq FAIL 2603: 'http1 parser unit tests' unittest, http1 FAIL 2604: 'Curl_get_pathname unit test' unittest FAIL 3002: 'SMTP multiple and invalid (first) --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3003: 'SMTP multiple and invalid (last) --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3004: 'SMTP multiple and invalid (middle) --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3005: 'SMTP multiple invalid (all but one) --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3006: 'SMTP with multiple invalid (all) --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3007: 'SMTP with invalid --mail-rcpt and --mail-rcpt-allowfails' SMTP FAIL 3008: '--output-dir' -O FAIL 3009: '--output-dir a non-existing directory' -O FAIL 3010: 'HTTP retry-after reset' HTTP, HTTP Basic, RETRY-AFTER FAIL 3011: '--output-dir with --create-dirs' -O FAIL 3012: '--output-dir with -J and -R' -O, -J, --output-dir, --remote-time FAIL 3013: 'Two --output-dir with --next in between' -O, -J, --output-dir FAIL 3014: 'Check if %{num_headers} returns correct number of headers' HTTP, --write-out FAIL 3015: 'HTTP GET -w num_headers with redirected fetch (2 connects)' HTTP, HTTP GET, followlocation, chunked Transfer-Encoding, --write-out FAIL 3016: 'GET a directory using file://' HTTP, HTTP GET, FILE FAIL 3017: 'MQTT SUBSCRIBE with pathological PUBLISH length' MQTT, MQTT SUBSCRIBE FAIL 3018: 'MQTT SUBSCRIBE with PUBLISH larger than --max-filesize' MQTT, MQTT SUBSCRIBE, --max-filesize FAIL 3019: 'HTTP with invalid --resolve syntax' HTTP, HTTP GET, --resolve FAIL 3020: 'HTTP with invalid --connect-to syntax' HTTP, HTTP GET, --connect-to FAIL 3025: 'CURLOPT_HTTP200ALIASES' HTTP, HTTP GET FAIL 3027: 'Get a file via FTP but 550 after MDTM command' FTP, CURLOPT_FILETIME, MDTM fail FAIL 3028: 'HTTP GET when PROXY Protocol enabled behind a proxy' HTTP, HTTP CONNECT FAIL 3029: 'HTTP with multiple -D' HTTP FAIL 3030: 'HTTP with multiple transfers in one -D' HTTP FAIL 3031: '--output-dir with --create-dirs' --dump-header FAIL 3032: 'HTTP redirect loop 3x swsbounce test' HTTP, --location FAIL 3100: 'RTSP Authentication check' RTSP, RTSP Basic auth FAIL 3101: 'HTTP auth without redirection protocols' HTTP, HTTP Basic auth FAIL 3103: 'CURLOPT_COOKIELIST without expiry' cookies FAIL 3104: 'CURLOPT_COOKIELIST with Netscape format' cookies FAIL 3105: 'curl_multi_remove_handle twice' curl_multi_remove_handle FAIL 3201: 'HTTP GET when PROXY Protocol enabled and spoofed client IP' HTTP, HTTP GET, proxy, haproxy FAIL 3202: 'HTTP-IPv6 GET with PROXY protocol with spoofed client IP' HTTP, HTTP GET, proxy, haproxy, IPv6 FAIL 3203: 'GET a directory using file://' HTTP, HTTP GET, FILE FAIL 3204: 'Use --etag-compare and --etag-save on an existing file' HTTP, HTTP GET FAIL 3209: 'Upload message via IMAP with upload flags' IMAP, Clear Text, APPEND, UPLOAD FAIL 3210: 'Upload message unread via IMAP' IMAP, Clear Text, APPEND, UPLOAD FAIL 3211: 'uint_bset unit tests' unittest, uint_bset FAIL 3212: 'uint_bset unit tests' unittest, uint_bset FAIL 3213: 'uint_spbset unit tests' unittest, uint_spbset TESTFAIL: These test cases failed: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 314 315 316 317 318 319 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 357 360 361 362 365 366 367 368 369 370 371 372 373 374 376 378 379 380 381 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 402 405 411 415 416 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 434 435 436 440 441 442 443 444 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 467 468 469 470 471 473 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 507 508 509 510 511 512 513 514 515 516 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 559 561 562 563 564 565 566 567 568 569 570 571 572 574 575 576 577 578 579 580 581 584 585 586 588 589 590 591 592 593 595 596 597 598 599 632 643 645 646 647 648 649 650 651 652 653 654 655 658 659 660 661 662 663 666 667 668 669 670 671 672 673 674 675 676 677 679 680 681 682 683 684 685 686 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 746 747 748 749 750 751 752 754 784 785 786 787 788 789 790 791 792 793 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 824 825 826 827 828 829 830 831 833 834 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 870 871 872 873 874 875 876 877 879 880 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 935 936 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 962 963 964 965 966 967 968 969 973 974 975 976 977 978 979 980 981 982 983 984 985 986 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1084 1085 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1098 1099 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1114 1115 1116 1117 1118 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1133 1134 1136 1137 1138 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1164 1166 1168 1170 1171 1172 1174 1176 1178 1180 1181 1183 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1210 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1273 1274 1277 1278 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1296 1297 1298 1299 1300 1302 1303 1308 1309 1310 1311 1312 1313 1314 1315 1317 1318 1319 1320 1321 1322 1324 1325 1326 1327 1328 1329 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1396 1398 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1447 1448 1449 1453 1455 1456 1457 1458 1460 1462 1463 1464 1465 1466 1467 1468 1469 1471 1472 1473 1474 1475 1476 1479 1480 1481 1482 1483 1484 1485 1487 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1511 1513 1514 1515 1516 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1539 1540 1541 1542 1543 1545 1546 1547 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1590 1591 1593 1594 1595 1596 1597 1598 1599 1600 1601 1605 1606 1607 1608 1609 1610 1611 1612 1613 1615 1620 1621 1633 1634 1635 1652 1654 1660 1670 1671 1680 1681 1682 1683 1704 1800 1900 1901 1903 1904 1905 1906 1907 1909 1910 1911 1913 1914 1915 1916 1917 1919 1940 1941 1942 1943 1944 1945 1946 1947 1948 1964 1977 2000 2001 2002 2003 2005 2023 2024 2025 2026 2027 2028 2029 2030 2031 2039 2040 2044 2045 2046 2047 2049 2050 2051 2052 2053 2054 2055 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2071 2072 2073 2074 2075 2076 2077 2078 2080 2081 2082 2083 2084 2085 2086 2200 2201 2202 2203 2204 2205 2306 2308 2309 2601 2603 2604 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3025 3027 3028 3029 3030 3031 3032 3100 3101 3103 3104 3105 3201 3202 3203 3204 3209 3210 3211 3212 3213 make[1]: *** [Makefile:830: nonflaky-test] Error 1 make[1]: Leaving directory '/startdir/src/build-curl/tests' make: *** [Makefile:1096: test-nonflaky] Error 2 ==> ERROR: A failure occurred in check(). Aborting... ==> ERROR: Build failed, check /home/alhp/workspace/chroot/build_d7b77cee-b2a0-4388-b5e5-df3e64c3a9ac/build